ist es möglich von meiner Samsung VP-D381 das Livebild mit 50 Halbbilder/sec per FireWire auf den PC zu bekommen?
Ich möchte dann die Daten mit DirectShow weiterverarbeiten.
Bis jetzt kann ich nur aus dem Buffer ein Vollbild (die letzten zwei Frames zusammen gesetzt) raushohlen, das alle 40 ms erstellt wird (25 Frames/sec).
Ist es generel bei solchen Kameras nicht möglich? (abgesehen von den prof. Camcorder, die progressiv aufnehmen)
Gibt es eine spezielle Funktion in DirectX / DirectShow?
Ja genau. Aber so einen Deinterlacing Algorithmus würde ich gerne selber schreiben.
Da ich zum Deinterlacen auf jeden Fall die Halbbilder getrennt brauche, wäre jetzt halt die Frage:
Fasst schon mein DV-Camcorder die Halbbilder zusammen und schickt immer nur alle 40 ms das Vollbild per FireWire, welches man dann per Hand mit DirectShow aufteilen muss?
Wenn nein und ich kann meinem Camcorder alle 20 ms ein Halbbild entlocken, wäre die nächste Frage:
Wie kann ich das einzelne Halbbild mit DirectX auslesen?
juriman hat geschrieben:
Da ich zum Deinterlacen auf jeden Fall die Halbbilder getrennt brauche,
Die Halbbilder getrennt ist gleich Deinterlaced (in dem Fall nennt sich das BOB). Was willst Du aus einzelnen Halbbildern noch weiter deinterlacen? Das geht nicht.
Und falls Du aus den 50 Halbbildern wieder 25 Vollbilder ohne Interlacing machen möchtest... wieso das Rad neu erfinden?
juriman hat geschrieben:Fasst schon mein DV-Camcorder die Halbbilder zusammen und schickt immer nur alle 40 ms das Vollbild per FireWire, welches man dann per Hand mit DirectShow aufteilen muss?
Ja, musst Du. Das Bild was dein Camcorder liefert ist immer 25i, also 25 Interlaced-Bilder.
Die einzige Möglichkeit hier was anderes zu kriegen wäre ein Camcorder der progressiv aufzeichnet, z.B. 50p. Das können Geräte wie die JVC GY-HD1** Reihe (576p50) oder die JVC GY-HD2** Reihe (576p50 und 720p50) - das ist jedoch alles "HDV" in divers abgewandelter Form.
DV sieht keine Möglichkeit Halbbilder als Vollbilder zu verschicken. DV schickt immer 25i (selbst wenns angeblich progressives 25p Material ist) und das lässt sich nicht beheben außer durch eine Aufspaltung in Directshow.
ffdshow ist ja quelloffen, kannst Dir also gerne dort das Bobbing-Script ausleihen. Oder gleich ffdshow nutzen. Anders geht es nicht.
Ein DV-Stream ist rein digital, eine Übertragung des verschachtelten Interlaced-Streams erfolgt also Framesweise, beide Fields gleichzeitig.
Nur ein analoger Stream würde jedes Halbbild hintereinander übertragen - zumindest würde ein Röhren-TV das so darstellen.
Das was da also aus dem Firewire-Kabel raus kommt sind genau 25 interlaced Frames. Nichts anderes. Man kann den Camcorder auch nicht zwingen statt der 25 720x576 Pixel großen Frames pro Sekunde 50 Stück à 720x288 zu übertragen. Das geht nicht.
Rechtliche Notiz: Wir übernehmen keine Verantwortung für den Inhalt der Beiträge
und behalten uns das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.