Toon posts:

[VB] Overlay in visual basic *

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hello,

ik heb een divx speler gemaakt (zo in een koffertje ;)), maar vond geen geschikte software om er op te zetten. Daarom ben ik begonnen met het schrijven van een eigen programma in vb6 om heel mijn speler te bedienen (lcd, IR, afspelen, ondertitels, ....).
Het grootste gedeelte is af; maar zit met een probleem met de ondertitels. Ik wil deze in overlay over mijn video krijgen. Verlopig toon ik deze in een eigen form, dat altijd op de voorgrond te zien is. maar met deze methode valt er een stuk film weg bij niet 16:9 films, omdat dit form niet doorzichtig is. De films worden afgespeeld in een media player component binnen vb. Wanneer ik Fullscreen kies, maakt deze component een eigen window aan en zet deze fullscreen op scherm. Iemand een idee hoe ik er voor kan zorgen dat mijn ondertitels over mijn video komt zonder dat ik een zwarte balk of iets dergelijk krijg onderaan beeld? Dus met behulp van overlay of de windows API.

[ Voor 3% gewijzigd door Verwijderd op 03-07-2003 14:49 . Reden: paar typos en veranderingen ]


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 26-06 10:37

OZ-Gump

terug van weggeweest

Dan neem ik aan dat je de ondertitels ook echt als tekst hebt?

Volgens mij is het dan best mogelijk dat je de handle van het movievenster te pakken krijgt om vervolgens de tekst naar de handle te painten....? Dat lijkt mij de oplossing in ieder geval.

My personal website


  • Brothar
  • Registratie: Oktober 2000
  • Laatst online: 04-02 09:14

Brothar

meester

Mag ik je vragen om hier te publiceren wat en hoeje dat hebt gedaan (onder het kopje case-modding). ?
Ik heb zelf nog een LCD liggen en ben wel benieuwd naar je programma.

En on topic: moet je misschien in je media player component een attribuut voor ondertitels wijzigen ? (vergeef me al sik er naast zit; ik heb nog niet in VB6 geprogrammeerd).

eagle


  • DukeMan
  • Registratie: Mei 2000
  • Niet online
Probeer je form anders eens transparant te maken, en dan het label waar je je tekst in zet ook, dan krijg je de film erdoor heen te zien

Verwijderd

Topicstarter
Ondertitels zijn idd gewoon tekst.

Wat bedoel je Brothar?

Form kun je dacht ik niet transparant maken. Ik genbruik ook liever een Textbox omdat deze om één of andere reden sneller refreshed en minder cputime nodig heeft (klinkt raar maar is zo).

  • DukeMan
  • Registratie: Mei 2000
  • Niet online
Een form is transparant te maken, dan moet je met rectangles gaan werken en gebieden selecteren die je transparant wilt hebben... MSDN heeft geloof ik enkele voorbeelden staan. Je moet met Aapies gaan werken.

Een textbox zal ook wel transparant te krijgen zijn met API's

[ Voor 19% gewijzigd door DukeMan op 03-07-2003 15:21 ]


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 26-06 10:37

OZ-Gump

terug van weggeweest

Jos: wat is er mis met het rechtstreeks tekenen op 't canvas van het venster waar de film in draait? Volgens mij is dat namelijk mogelijk en dan heb 't probleem met transparante vensters ook niet... :?

My personal website


  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
idd de handle van je window en dan gewoon setouttext... kun je em ook ineens AAliased krijgen. Ik denk dat de echte subtitles (je gebruikt vast DirectShow dus eigenlijk moeten die subtitles er al staan ... ?) het in de filter-graph doen. Want dan teken je ineens in de video niet 'erop' en 'erna'...

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 18-08 22:57

Gerco

Professional Newbie

Je kunt een label gebruiken voor je subtitle en dan de background style op Transparant zetten. Die is misschien wat slomer dan een textbox, maar ondertitels veranderen nu ook weer geen 10 keer per seconde.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Gebruik de OVTOOL van Geraint Davies!
Met deze tool kun je inderdaad de Window Handle van een DS-Window krijgen.
En met de standaard GDI+ funkties de tekst op het window plaatsen.

Helaas kan het niet anders in VB, tenzij je het in C+ kan programmeren.

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

offtopic:
Topictitle prefixed met [taal], volgende keer aub zelf doen

Professionele website nodig?


Verwijderd

Topicstarter
Ok; ik heb heel de mediaplayer component er uit gegooid en alles in directshow gemaakt.
Ben nu aan het proberen om de overlay tekst op mijn beeld te krijgen met die OVtool waar Itisme123 het over had.

Verwijderd

Topicstarter
Na het veranderen van de mediaplayer component naar directshow speelt alles veel trager en heb ik continu 100% cpu belasting. Met de mediaplayer component had ik maar een 60% belasting.

De subtitles worden nu perfect weergegeven met die OVTOOL. Als ik nu nog kon achterhalen waarom mijn film opeens zo schokt.

Verwijderd

Topicstarter
Ok; heb vorig probleem opgelost.

Nu heb ik nog één laatste probleem.
Wanneer ik mijn subtitle toon, schokt mijn film een paar frames. Net alsof er geen frames van de film getekend worden op het moment da de subtitles getekend worden.

Ik vraag de HDC van mijn movie frame bij het open van mijn film aan en elke keer als ik mijn subtitles van mijn scherm wil.

iemand een idee?
Pagina: 1