Frage von Robert Fischer:Hallo ihr Lieben,
ich arbeite gerade an einem Forschungsprojekt und habe
140 GB Sequenzen im DV format (Apple Quicktime kann sie
abspielen), die ich dringend in meiner DirectShow basierten
Anwendung verwenden muss.
Ich habe bereits den DV codec von MainConcept (testversion)
installiert, aber DirectShow kann immernoch keinen Graph aufbauen.
Bin fuer jeden Hinweis dankbar!
- Robert
Antwort von Stefan:
Dachte immer Du musst DirectShow sagen, wie der Graph aufgebaut werden soll. Jedenfalls klappt das ganz gut mit dem Tool GRAPHEDIT aus dem M$ DirectX SDK. MAl sehen, ob ich es im Kopf zusammenbekomme... AVI File Reader (*) => AVI Muxer/Splitter => Video: DS DV Decoder => Video Renderer bzw. Audio: Directsound Gerät. Den zusammengebastelten Graphen kannst Du auch speichern und in Deiner Anwendung laden.
(*) Kann es sein, dass Du keine AVI Dateien hast?
Gruss
Stefan
Antwort von Stefan:
Ja, das ist ein Feature von Graphedit, hatte ich nicht dran gedacht. So einen automatisch erstellten Graphen kannst Du natürlich auch Abspeichern.
Eigene Anwendungen kann man auch soweit bringen, sich einen Graphen zu basteln, meine ich gelesen zu haben. Müsste ich nochmal genauer nachschlagen.
Jedenfalls wenn dem DirectShow System der Dateityp bekannt ist... daran scheint es bei Deinem Vorhaben zu hapern. Einen Filereader für *.dv* habe ich bei DirectShow noch nicht gesehen, nur Filereader für rel. bekannte Container.
Zwei Auswege: Einen DS Filereader für *.dv* suchen oder schreiben. Oder *.dv* in AVI wandeln. But this is a pain in the a** with 140 GB.
Ich bin nicht so sicher, dass QT dieses Einlesen über DS macht oder ob es nur Daten aus dem Speicher an DS verfüttert. Wenn doch, müsstest Du mit Graphedit auch rausbekommen, welchen Filtergraphen QT aufbaut. Wenn das Graphedit nicht schafft, kannst Du das mit den Systemmonitoren REGMON und FILEMON von Sysinternals ausspionieren...
Gruss
Stefan
Antwort von Robert Fischer:
Hi Stefan,
eigentlich wurde directX ja mal geschrieben, um das
automatisch ablaufen zu lassen, sprich, wenn Du z.B.
eine Datei in den Graphedit ziehst sucht er selbst
die passenden/noetigen Filter.
Nein, leider habe ich kein AVI dateien, sondern welche
mit der Endung "*.dv" . Wie gesagt, apple quiktime kann
sie abspielen, und das nutzt ja unter Windows sicher auch
DirectX. Vermutlich muss man eine Filterkombination
erzwingen, ich weiss aber leider nicht welche.
Gruss & Dank,
Robert