Frage von - Udo -:Hi, eine Verständnisfrage an die Experten:
Wenn ich DV capture, hat das AVI ja den Codec von der Kamera (in meinem Fall Panasonic). MSP kann ohne neu zu encoden schnell rendern, wenn ich MS-DV-Type1 und denn richtigen Ton wähle. Obwohl MS ja nicht Panasonic ist!?
Wenn ich mit Type2 capture, damit VirtualDub damit umgehen kann und in VD den Panasonic-DV-Codec wähle und die von VD erstellte Datei dann in MSP aufmache, funktioniert das schnelle Rendern nicht mehr. Zumindest, wenn ich den MS-Codec wähle. Und selbst wenn ich den Panasonic-Codec wähle, ist MSP zwar mit dem Bild zufrieden, will aber den Ton neu encoden.
Warum? Wo ist der Unterschied zwischen einer Datei direkt von der Kamera und einer Datei mit dem Panasonic-Codec in VD gerendert?
Ciao, Udo
Antwort von Stefan:
Udo,
Der Unterschied ist der DV AVI Typ und die Softwareroutinen, die damit umgehen. Unterschiede zwischen Hardware- und Software-Panasonic-DV-Codec wird es geben, aber die betreffen IMHO eher die Bildqualität, nicht das Handling auf dem Rechner.
Typ-1 wird mit DirectShow Routinen verarbeitet. Dazu wird der MS DV Codec verwendet, der ein DirectShow Codec ist. Die Datei besteht aus vielen "Bildstückchen", die komprimiert Bild und Ton enthalten. Das smarte Rendern von MSP ist anscheinend für solche Dateien programmiert worden.
Typ-2 wird mit Video-für-Windows Routinen verarbeitet, wenn man einen VFW DV Codec hat, wie z.B. den Software-Panasonic-DV-Codec. Die Datei besteht aus vielen "Bildstückchen", die komprimiert Bild und Ton enthalten PLUS "Tonstückchen". Typ-2 kann von MSP auch bearbeitet werden, ABER zuvor muss umgerechnet werden. MSP nimmt - zu Recht - an, dass der zu verwendende Ton bei Typ-2 Dateien in der zusätzlichen Tonspur steckt. Denn normalerweise packen VFW-Programme bei einer Bearbeitung den Ton NICHT in mit dem Bild in die komprimierten Bildstücken, sondern in die extra Tonspur. Um die extra Tonspur in das DirectShow System, kann man programmtechnisch eine extra Datei nur mit dem Ton anlegen, das vereinfacht den Umgang mit der AVI Datei.
Gruss
Stefan
Antwort von Duo:
Ein Codec ist PC-Software, die Kamera hat überhaupt keinen Codec. Die Wandlung für die Aufzeichnung aufs Band geschieht mit Hilfe eines Stückes Hardware in der Kamera. Capturen von Kamera auf PC bedeutet einfach nur, das Daten eins zu eins von der Kamera auf den PC übertragen werden. Type1 bedeutet, das die Audiodaten zusammen mit den Videodaten einen Datenstrom bilden, Type2 dass die Audiodaten nochmal zusätzlich als eigenständiger Strom an den Type1-Strom drangepappt werden.
MSP rendert immer dann neu, wenn die MSP-Rendereinstellungen von denen des vorliegenden Datenstroms abweichen. Angenommen, MSP steht auf Type1 und der bearbeitete Datenstrom ist Type2, wird auf Type1 gerendert. Angenommen, MSP steht auf MS-Codec aber der vorliegende Datenstrom ist mit dem MainConceptCodec gerendert worden, rendert MSP auf MS-Codec um. Bedeutet, fürs Smartrendern musst du MSP genau so einstellen, wie der auf der Zeitlinie angezeigte Datenstrom zuletzt gerendert wurde.
Antwort von Stefan:
Richtig Udo.
Antwort von - Udo -:
Danke für die Antworten!
Ich merke immer wieder, dass ich keine Fragen stellen kann.
Aber wenn folgende Aussage stimmt, habe ich es verstanden:
Eine mit VirtualDub und dem Panasonic-DV-Codec erzeugte AVI ist Type2.
Dann war mein Verständnisproblem nämlich nur die falsche Annahme, dass der PanaCodec Type1 sei.
Kann mir das noch mal jemand bestätigen?
Ciao, Udo
Antwort von - Udo -:
: Ein Codec ist PC-Software, die Kamera hat überhaupt keinen Codec.
Das kann ich so nicht glauben. Auch die Hardware nutzt einen Codec!? Wie sonst soll sie komprimieren? Ich war bis jetzt der Annahme, dass der Panasonic-DV-Codec identische Ergebnisse erzeugt, wie die Hardware der Kamera!?
Antwort von - Udo -:
Danke für die Ausführungen. das war jetzt zwar alles tief in der Theorie, aber ich denke ich habe genug verstanden. Das mit "Scenalyzer sagen, welche Kennung" muss ich mir auch mal näher ansehen.
Antwort von Stefan:
-BEI- Duo
:
: Leider ist das mit den fourcc nicht ganz so eindeutig, wie du es darstellst.
Stimmt.
:
: Es gibt
: verschiedene fourcc für DV-codecs; der Canopus z.B. nennt sich CDVC (Canopus
: verwendet auch noch andere DV-fourcc), die häufigsten fourcc sind wohl DSVD und
: DVSD.
Den Canopus Spezialfall hatte ich aussen vor gelassen, da es "nur" um MS oder Panasonic Codecs ging. Ich muss auch bekennen, dass ich nur den CDVC Fourcc von Canopus kenne. Welche werden noch verwendet - vielleicht noch 'dvsd' bei den OHCI-kompatiblen Canopuskarten, oder noch andere?
BTW. ich halte die Kennung 'dsvd' für einen Programmierfehler von AP (?) und würde mich freuen, wenn ich dazu eine Bestätigung oder Richtigstellung erhalten könnte. Programmierfehler können an dieser Stelle leicht entstehen. Die Kennungen werden, jedenfalls bei M$ SDKs, normalerweise mit Makros aus einzelnen Buchstaben zusammengesetzt und auseinadergepflückt, weil in den AVI Dateien eine gedrehte Byteorder im Vergleich zu PC Programmen vorhanden ist (vereinfacht). 'dsvd' halte ich für einen Dreher bei einer beabsichtigten 'dvsd' Kennung, der seit dem mitgeschleppt wurde.
:
: Ein DV-Video ist also nicht einfach anhand der fourcc erkennbar.
Genau das wollte ich schreiben ;)
:
: Das nur der Form halber und als Vorwort für den Nachsatz.
Kein Problem.
:
: Unabhängig davon, mit welcher Kamera das DV-Video aufgenommen wurde ist das
: Captureprogramm entscheidend dafür, welchen Codec MSP beim (Smart)rendern erkennt.
: MSP selbst und auch die meisten anderen schreiben gecaptureten DV-AVIs immer und
: unaufgefordert in den header, dass das Video ein "MS-Video" sei
: (Scenalyzer kann man auch so einstellen, das es "Canopus" schreibt).
Das ist interessant und muss ich mir mal bei Gelegenheit ansehen. Die erste Überraschung bzgl. Zusatzinfo hatte ich bereits bei der Problembehebung bei meinem DV_Datecode und DV AVI Dateien von VegasVideo. VV schreibt sehr viel nützliche Zusatzinformationen in den AVI Header rein. Für mich Canopussy war das erste VV DV AVI eine Litfasssäule im Vergleich zu den nackten Canopus DV AVIs.
Bye
Stefan
Antwort von Duo:
Lieber Stefan.
Leider ist das mit den fourcc nicht ganz so eindeutig, wie du es darstellst. Es gibt verschiedene fourcc für DV-codecs; der Canopus z.B. nennt sich CDVC (Canopus verwendet auch noch andere DV-fourcc), die häufigsten fourcc sind wohl DSVD und DVSD. Ein DV-Video ist also nicht einfach anhand der fourcc erkennbar. Das nur der Form halber und als Vorwort für den Nachsatz.
Unabhängig davon, mit welcher Kamera das DV-Video aufgenommen wurde ist das Captureprogramm entscheidend dafür, welchen Codec MSP beim (Smart)rendern erkennt. MSP selbst und auch die meisten anderen schreiben gecaptureten DV-AVIs immer und unaufgefordert in den header, dass das Video ein "MS-Video" sei (Scenalyzer kann man auch so einstellen, das es "Canopus" schreibt). Egal, ob mit einer Sony, Pana oder was weiss ich aufgenommen wurde, steht das DV-AVI nach dem Capturen also in den weitaus meisten Fällen erst mal als ein "MS-Video" auf der PLatte und wird von MSP dann als solches erkannt. D.h., dass, wenn beim Rendern ein anderer Codec als der MS angewählt wird, MSP auf den gewählten Codec umrendert.
Würde sich unser Freund Udo G-Spot oder Ähnliches zulegen und sein Material damit vor dem Rendern untersuchen, könnte er durch die richtigen Einstellungen unnötiges Rendern vermeiden.
Nachsatz: G-Spot kann leider nicht immer den richtigen Codec erkennen, weil viele Codec-Hersteller (z.B. MainConcept)leider identische fourcc benutzen :-)
Antwort von Stefan:
Jein Duo. Die DV Kamera hat natürlich auch einen Codec, einen Hardware-Codec halt.
Bei AVI Dateien ist die FOURCC Kennung im Dateianfangsbereich dafür kennzeichnend, mit welchem TYP Codec sie entpackt werden kann.
Bei DV Video ist diese Kennung 'dvsd'. Sowohl beim MS-DV-Codec als auch beim Mainconcept-DV- als auch bei mehreren weiteren DV Codecs.
MSP kann anhand der pauschalen Kennung nicht feststellen, mit wessen Herstellers Codec die Datei erstellt oder bearbeitet wurde.
Gruss
Stefan