Toon posts:

[VB.Net] Directshow en DirectX 9.0c problemen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een probleem met een programma. Ik heb het programma geschreven in DirectX 8.1 en in Visual Basic .NET. Nu heb ik dit programma laatst willen omzetten naar DirectX 9.0c, maar nu heb ik het probleem dat Microsoft niet meer Directshow heeft geïntegreerd in DirectX 9.0c.
Laat ik eerst eens uitleggen wat het programma precies doet. Met het programma is het mogelijk om videobestanden af te spelen en te capturen. Tevens is ht mogelijk om frames te capturen, maar sinds ik het programma heb omgezet naar DirectX 9.0c, is dit niet meer mogelijk!
De eerste oplossing die ik ben gaan zoeken, is Directshow installeren. Ik heb gevonden op de Microsoft website, dat deze Directshow nu toegevoed is aan Platform SDK. Helaas kreeg ik dit programma niet geïnstalleerd. Toen heb ik via de website http://www.kohsuke.org/dotnet/directshowTypelib/ geprobeerd losse componenten van DIrectshow te installeren, maar ik heb nog niet de juiste commando's gevonden, en ik heb ook nog nooit gewerkt met deze losse bestandjes.
Nu is mijn vraag: weet iemand misschien een oplossing voor mijn probleem? Wat moet ik doen, een andere Directshow installeren, Platform SDK installeren, of is er misschien een andere manier om dit aan het werken te krijgen?

[ Voor 188% gewijzigd door Verwijderd op 30-08-2005 10:17 ]


  • MrBucket
  • Registratie: Juli 2003
  • Laatst online: 29-10-2022
Allereerst bedankt voor je links, want ik zit met een soortgelijk probleem :)
Verwijderd schreef op dinsdag 30 augustus 2005 @ 10:08:
Nu heb ik dit programma laatst willen omzetten naar DirectX 9.0c, maar nu heb ik het probleem dat Microsoft niet meer Directshow heeft geïntegreerd in DirectX 9.0c.
Hoe bedoel je dit? Bij mijn weten maakt DirectShow nog steeds deel uit van DirectX hoor. Wat wel klopt is dat DirectShow lastig te benaderen is vanuit .NET.
De eerste oplossing die ik ben gaan zoeken, is Directshow installeren. Ik heb gevonden op de Microsoft website, dat deze Directshow nu toegevoed is aan Platform SDK. Helaas kreeg ik dit programma niet geïnstalleerd.
Je moet de DirectX SDK hebben, zoals deze of deze. Zie o.a. http://msdn.microsoft.com/directx/sdk/.
Toen heb ik via de website http://www.kohsuke.org/dotnet/directshowTypelib/ geprobeerd losse componenten van DIrectshow te installeren, maar ik heb nog niet de juiste commando's gevonden, en ik heb ook nog nooit gewerkt met deze losse bestandjes.
Eitje :)
Type Library (.tlb) bestanden kun je rechtstreeks in je .NET-applicatie importeren (gewoon een reference ernaar toevoegen in je project manager). De .tlb wordt dan geconverteerd naar een .NET-assembly met type-informatie (interfaces e.d.) die je nodig hebt om DirectShow te kunnen gebruiken. De DLL op die pagina is de geconverteerde Type Library, die kan je evt. ook importeren in plaats van de .tlb.

--edit--
Trouwens, als je (wel C#, helaas) voorbeelden wil zien van hoe je via Interop gebruik maakt van de DirectShow-interfaces, moet je hier eens kijken: http://www.codeproject.com/cs/media/directshownet.asp. Let met name op
"object comobj = Activator.CreateInstance( comtype );" - zo maak je nieuwe comobjecten mbv Interop.

[ Voor 9% gewijzigd door MrBucket op 30-08-2005 13:42 ]


Verwijderd

Topicstarter
MrBucket schreef op dinsdag 30 augustus 2005 @ 13:37:
Allereerst bedankt voor je links, want ik zit met een soortgelijk probleem :)
ach ja, ik help graag :)
Hoe bedoel je dit? Bij mijn weten maakt DirectShow nog steeds deel uit van DirectX hoor. Wat wel klopt is dat DirectShow lastig te benaderen is vanuit .NET.
ik kan me natuurlijk vergissen, maar volgens mij is zit het er echt niet meer in. Ik citeer vanuit de website http://www.toymaker.info/Games/html/directx_9_0c.html:
Note: DirectShow was moved to the Platform SDK in the April release
Je moet de DirectX SDK hebben, zoals deze of deze. Zie o.a. http://msdn.microsoft.com/directx/sdk/.
Ik heb de DirectX SDK van juni al geïnstalleerd, en daarna de update van augustus.
Eitje :)
Type Library (.tlb) bestanden kun je rechtstreeks in je .NET-applicatie importeren (gewoon een reference ernaar toevoegen in je project manager). De .tlb wordt dan geconverteerd naar een .NET-assembly met type-informatie (interfaces e.d.) die je nodig hebt om DirectShow te kunnen gebruiken. De DLL op die pagina is de geconverteerde Type Library, die kan je evt. ook importeren in plaats van de .tlb.

--edit--
Trouwens, als je (wel C#, helaas) voorbeelden wil zien van hoe je via Interop gebruik maakt van de DirectShow-interfaces, moet je hier eens kijken: http://www.codeproject.com/cs/media/directshownet.asp. Let met name op
"object comobj = Activator.CreateInstance( comtype );" - zo maak je nieuwe comobjecten mbv Interop.
Ik heb de tlb en de .dll file al toegevoegd aan mijn programma, maar het grootste probleem is dat ik niet weet welke commando's ik moet gebruiken. Ik geloof dat het maar een paar regeltjes zijn, om een frame te capturen.
Teven had ik de C# voorbeelden ook al gevonden, maar daar kan ik natuurlijk niet veel mee. Heeft misschien iemand Visual Basic .NET voorbeelden? Dat zou echt heel erg helpen...
Ik moet vooral weten hoe ik een frame kan grabben onder DirectX 9.0c. Het liefst heb ik hier voorbeelden van in Visual Basic .NET taal.

Verwijderd

Topicstarter
Er heeft niemand meer gereageerd, maar ik probeer het toch nog maar even...

Heeft iemand misschien een oplossing voor mijn probleem?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 27-04 18:17

gorgi_19

Kruimeltjes zijn weer op :9

:? Wat is het probleem met C# omzetten naar VB.Net? Met een beetje moeite kan je C# zo lezen; je weet de juiste classes + methods welke je moet gebruiken. :)

[ Voor 51% gewijzigd door gorgi_19 op 09-09-2005 11:21 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 19:09

pjvandesande

GC.Collect(head);

Je kunt ook een C# to VB.NET converter gebruiken, die zijn er zat. Er zijn ook gratis online converters, misschien niet zo goed maar ze doen hun werk nog best netjes. Zie bijvoorbeeld deze of kijk zelf even hier.
Pagina: 1