[DX9 C++] Versuche mit libvlc

Für Fragen zu Grafik APIs wie DirectX und OpenGL sowie Shaderprogrammierung.
Antworten
D3DX
Beiträge: 36
Registriert: 17.10.2010, 14:06
Echter Name: Marco
Wohnort: 58119 Hagen (NRW)

[DX9 C++] Versuche mit libvlc

Beitrag von D3DX »

Hallo,
ich versuche momentan die libvlc (http://wiki.videolan.org/LibVLC) in mein funktionierendes DirectX9 Projekt einzufügen. (c++ win32 / dx9 / libvlc v1.1.4)
Angestrebtes Ziel ist es, Videos auf einer Textur darzustellen.

Das Problem liegt nun darin, daß sich das Programm erst gar nicht mehr starten lässt und mit folgender Meldung antwortet.
Bild

Diese Fehlermeldung taucht auf, sobald sich folgende Zeile im Code befindet

Code: Alles auswählen

.
.
m_libvlc = libvlc_new (sizeof(vlc_args) / sizeof(vlc_args[0]), vlc_args);
.
.
Diese Zeile steckt in meiner Klasse Vlc::init() und obwohl ich in der Anwendung kein init() aufrufe, kommt die oben genannte Fehlermeldung.
Erst, wenn ich diese Zeile auskommentiere, läuft das Programm wieder...

Habe bereits das web erfolglos nach Antworten durchsucht.
Wäre über eure Ideen sehr dankbar
Benutzeravatar
dot
Establishment
Beiträge: 1734
Registriert: 06.03.2004, 18:10
Echter Name: Michael Kenzel
Kontaktdaten:

Re: [DX9 C++] Versuche mit libvlc

Beitrag von dot »

Sehr komischt. Verwendest du irgendwo Direct3DCreate9()!? Wenn ja, hast du die d3d9.lib gelinkt?
D3DX
Beiträge: 36
Registriert: 17.10.2010, 14:06
Echter Name: Marco
Wohnort: 58119 Hagen (NRW)

Re: [DX9 C++] Versuche mit libvlc

Beitrag von D3DX »

Ja, ich habe eine klasse device::init() in der
d3d_9 = Direct3DCreate9( D3D_SDK_VERSION );
....
vertexProcessing = D3DCREATE_HARDWARE_VERTEXPROCESSING | D3DCREATE_MULTITHREADED; //D3DCREATE_HARDWARE_VERTEXPROCESSING;
erstellt wird.
Zuletzt geändert von D3DX am 03.05.2011, 14:51, insgesamt 1-mal geändert.
Benutzeravatar
Schrompf
Moderator
Beiträge: 4884
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas Ziegenhagen
Wohnort: Dresden
Kontaktdaten:

Re: [DX9 C++] Versuche mit libvlc

Beitrag von Schrompf »

Evtl. hat die libvlc auch selber Abhängigkeiten zu D3D9? Wenn ja, versucht die Lib dann in ihrem Startup-Code, die D3D9-DLL zu laden und merkt dann, dass das irgendwie ne andere Version ist, als sie erwartet, weil sie die genannte Funktion nicht darin findet.

€dit: Ne, das ergibt keinen Sinn. Aus unerfindlichen Gründen scheint er zu denken, dass er die D3D-Funktionen in der lib findet. Wie sollte das zustandekommen?
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
D3DX
Beiträge: 36
Registriert: 17.10.2010, 14:06
Echter Name: Marco
Wohnort: 58119 Hagen (NRW)

Re: [DX9 C++] Versuche mit libvlc

Beitrag von D3DX »

das kann sehr gut sein, dass die lib das directx device nutzt.
und warscheinlich nicht das juni2010 sdk, welches ich verwende.
die verwendete libvlc ist bereits eine ältere version (1.1.4).
Aktuell gibts die 1.1.9 - nur dort gibts keine fertigen libs.
die muss man sich selber bauen, was mir aber noch nicht gelungen ist.
Falls jemand die libvlc.lib und die libvlccore.lib in der version 1.1.9 besitzt... ich könnte sie zum testen gebrauchen ;)

hat denn schon jemand diese lib in sein c++/dx9 projekt eingebunden?
D3DX
Beiträge: 36
Registriert: 17.10.2010, 14:06
Echter Name: Marco
Wohnort: 58119 Hagen (NRW)

Re: [DX9 C++] Versuche mit libvlc

Beitrag von D3DX »

Also ich habe mir jetzt die aktuelle libvlc.lib gebaut und verwende nun die version 1.1.9
Jetzt kommt keine Meldung mehr und das Programm startet - auch mit dem Aufruf vlc::init() sieht alles gut aus.

Nun kann es endlich weiter gehen.... bis zum nächsten problem
Antworten