Video-Daten zerlegen in Datenströme von Bild und Ton (Video demuxen) per PVAStrumento (Freeware) ################################################################################################ www.offeryn.de/dv.htm Gründe für das Zerlegen (Demuxen) --------------------------------- Das Zerlegen des Video-Datenstromes in seine Komponenten macht aus folgenden Gründen Sinn: Alle Arten von Bild und Ton trennen, um dann nur bestimmte Art weiterzuverarbeiten. Bsp.: Audio Trennung von Stereo-Ton und AC3-Ton und wobei AC3 weiter verarbeiten. Audio Trennung von Zweikanal-Ton, um nur einen Kanal weiterzuverarbeiten. Audiodaten umwandeln z.B. von Stereo nach AC3 5.1-Surround. 4:3-Video trennen von 16:9-Video (Audio passend dazu trennen) Fehlerkorrektur von Bild und Ton getrennt Synchronisierung von Bild und Ton Verknüpfung von Bild und Ton bei der Compilation der DVD. Vermeidung von Rendern jeder Art (auch Smart-Rendern). Das deutsche Staats-TV mit den Sendern von ARD und ZDF sendet über DVB-T grundsätzlich inkompatibel zur DVD-D2-Norm. 3-Sat und ZDF-Info senden als ZDF-Ableger amerikanische Bildnorm 704x576, die sich NICHT mit multiAVCHD verarbeiten lässt. Zu dieser abartigen Bildnorm gesellt sich Audio in Stereo UND Mono gleichzeitig. ARD und seine 3. Programme senden im DVT-T grundsätzlich fehlerhafte Daten, so dass PVAStrumento versagt. Dann hilft Demux per z.B. MPEG2VCR. Datenströme nach dem Demuxen ---------------------------- Wer DVD-Daten verarbeitet, wird häufig mit mpv oder m2v oder mpa arbeiten. Dazu gibt es weitere Programme, die Kenntnisse in Datenstrukturen nicht voraussetzen, bis auf folgende Informationen: Bild und Audio werden als Datenstrom behandelt, wenn das Video im DVD-Player angezeigt wird (Analogon ist z.B. MP3-Datei). Damit gilt nach dem demuxen: Bild und Audio haben getrennte Datenströme. Der Datenstrom bedeutet eine Bitanzahl oder Bytesanzahl pro Sekunde. Je mehr Bits pro Sekunde anliegen, um so schneller ist die DVD voll. Die DVD hat einen Maximalwert an Bitrate, da die DVD einheitlich maximal ca. 4,3 MBytes (Singel-Layer DVD) zulässt und DVD-Player diese Maximalrate kennen. Die Datenrate unterhalb der Maximalrate ist im Prinzip frei wählbar z.B. 192 kbps (kilo-bit-per-second) für Audio in CD-Qualität. Video als DVD liegt in Form von JPEG-Bildern vor (vereinfachte Erklärung): JPEG - gepacktes Bildformat mit entfernen von unnötigen Informationen ohne wesentliche Änderung der Bildqualität. enthält gepackte Bilddaten Folge von JPEG - Startbild enthält alle Informationen (Frame, Rahmen) Folgebilder enthalten nur die Unterschiede zum Vorgänger. GOP - Group of Pictures mit bestimmer Bytesanzahl z.B. 980 KB Folge von GOP - Bilddaten des Video ist prinzipiell identisch mit der Bildaufzeichnung per Filmkamera: Folge von Bildern auf Filmrolle Anzahl der GOP also Startbilder und deren Folgebilder wird nach Sekunden messsen: Frames per sercond (fps) PAL hat 25 fps. Schneiden eines GOP - immer VOR dessen Startbild Schneiden der Folge von GOP - immer GOP-weise Audio kann als mpa erzeugt demuxt worden sein MPA ist allerdings ein Container, dessen Inhalt in andere Formate (und deren Container) kovertiert werden können z.B. MPA zu WAV. Audio auf DVD muss 48 kHz haben (44,1 ist nur für Audio-CD zulässig). kann unkomprimiert sein z.B. Wave (PCM-Wave) und hat damit mehr Daten auf DVD komprimiert sein z.B. AC3 5.1 und hat damit weniger Daten auf DVD kann nur bestimmte Formate haben, da DVD-Player dieses kennen müssen (z.B. kennen viele CD-Audio-Player nur MP3 als Format, dafür WMA nicht), wobei Software-DVD-Player wesentlich mehr kennen und können (z.B. wegen Formatumwandlungen per Software). ausserhalb eines Videos z.B. als eine Audio-DVD aus lauter AC3-Dateien muss mit einem Programm auf DVD gebracht werden, dass praktisch eine Video-DVD nur mit Audio-Ton erzeugt. (Das können nicht viele Programme). Es gibt diverse Programme, die gemuxte (nicht-demuxte) Daten (Bild- und Ton in 1 gemeinsamen Datei) verarbeiten, wobei Schnitte mit Smart-Rendern behandelt werden (nur die Schnittstelle und deren kleine Umgebung), um framegenaues Schneiden zu erhalten. Rendern dient auch dem Bereinigen von Filmrissen (alternativ sind natürlich defekte Stellen auch rausschneidbar). Rendern kann allerdings oft Qualitätsverlust und oder nicht immer geringen Verbrauch an Zusatzzeit bedeuten. (Beispiel für ein Programm: Ahead Nero 8). Es gibt diverse Programm, die nur demuxte Daten (Bild- und Ton in eigener Datei) verarbeiten. Diese Programme werden Rendern jeder Art (also Veränderung der Qualität) vermeiden und so Zeit des Rendern einsparen. Die Daten müssen fehlerfrei sein (z.B. Bildrisse framegenau herausgeschnitten sein), bzw. das Programm muss Fehler, deren Korrektur kein Rendern benötigt, selbst korrigieren können. (Beispiel für ein Programm: PVAStrumento, MPEG2Schnitt, Imago Muxer, MediaChance DVDLab). Dass ein Programm gemuxte UND demuxte Daten verlangt, kommt auch vor (siehe unten Nero 8). Programme müssen nicht zwingend einen nicht-internen Demuxer mitliefern (siehe unten unten Nero 8). Ein DVD-Menü muss immer komplett neu gerendert werden, da Bild- und oder Tonelemente eingebaut werden sollen. Es ist also eigentlich egal, ob die Daten zum DVD-Menü demuxt oder nicht-demuxt vorliegen: Nur das DVD-Authoring-Programm schreibt die Art vor. Formate der Daten nach dem Demuxen ---------------------------------- Demuxte Daten können diverse Formate haben: Übliche Formate sind z.B. mpv - motion pictures video m2v - mpeg 2 video mpa - motion pictures audio ac3 - AC3-Audio z.B. AC3 5.1. Je nach erzeugte Formate müssen diese weiterverarbeitet werden z.B. Bild und Ton synchronisieren Schneiden von Bild und Ton synchron. Demux mit Fehlerkorrektur - PVAStrumento ---------------------------------------- Das Zerlegen des Datenstromes sollte so einfach wie möglich gehalten werden, aber auch optimal den Datenstrom bereinigen. Als Freeware bietet sich PVAStrumento an. Nachfolgend eine Protokolldatei, welche zeigt, was für Aktionen PVAStrumento beim Deuxen ausführt und welche Datenformate erzeugt werden. *** *** PVAStrumento 2.1.0.17 *** running at 02-05-2008 17:54 *** Pre-Scanning input. May take some time. Stream info for H:\test.mpg Found 1 video stream. Found 1 MPEG audio stream. VIDEO #1 Bilddatenstrom Resolution 720 x 576 (full D1) Auflösung und DVD-Art D1 Aspect ratio is 4:3 Bildformat Frame rate 25.00 fps Frame pro Sekunde, txpisch für PAL Nominal bitrate 2965600 bps Bitrate des Videodatenstromes (Bild und Ton) bit-per-second First PTS: 01:22:37.640 MPEG AUDIO #1 MPEG1, Layer 2 typisch DVD stereo, sampled at 48.0 kHz. stereo-Ton, 48 KHz typisch DVD Bitrate 192 kbps Audio in CD-Qualität (besser wäre mehr) Each frame contains 24.0 ms audio (576 bytes) 576 Bytes pro Audio-Frame First PTS: 01:22:37.456 <> Input: H:\test.mpg Die MPG-Datei, welche demuxt wird Options automatische .. fixing startup delay. ... Korrektur der Beginn-Wartezeit .. fixing stream synch. ... Korrektur der Datestrom-Synchronisierung .. keeping track of audio offset accumulation. .. strict checking of audio framing. ... Prüfung der Audio-Frames .. falling back to relaxed semantics on TS .. dropping GOPs longer than 980 KB ... Normierung der GOP-Länge auf 980 KB .. splitting on change of video format. ... neue Videodatendatei (z.B. mpv) erzeugen, wenn Video-Format sich ändert (neue Audio-Datei wird synchron immer dazu erzeugt) Achtung: Der Wechsel des Bildformates z.B. von 4:3 auf 16:9 bewirkt dasselbe ! .. splitting on change of audio format. ... neue Audiodatendatei (z.B. mpa) erzeugen, wenn Audio-Format sich ändert (neue Video- Datei wird synchron immer dazu erzeugt) Achtung: Der Wechsel von stereo auf AC3 5.1 bewirkt dasselbe ! .. splitting on number of audio tracks. ... Erzeugung einer Audiodatei pro Tonspur (z.B. bei 2-Kanal-Ton: 2 Dateien) .. clearing CDF .. creating new GOP timecodes. ... Zeitcode der GOP neu schreiben Closing starting GOP. Aiming for sync at 01:22:37.720 Cutting audio. Audio stream 1 now starts at 01:22:37.720 ideal: Audio- und .... Video stream 1 now starts at 01:22:37.720 .... Videostrom starten zum gleichen Zeitpunkt Aber Achtung: Es muss inhaltlich der Ton nicht lippensynchron zum Bild sein ! New MPEG video : \test.mpv erzeugte Videodatei Achtung: Wenn Video-Formatwechsel so nächste Datei z.B. test_1.mpv automatisch erzeugt (Audio passend als test_1.mpa) New MPEG audio : \test.mpa erzeugte Audiodatei Achtung: Wenn Audio-Formatwechsel so nächste Datei z.B. test_1.mpa automatisch erzeugt (Video passen test_1.mpv) [ Found a GOP with more than 15 pics. Diese Meldung tritt im DVB-T fast immer ein. This is not DVD compliant, but many players accept it. See summary for total number at end. ] Adjusting audio to frames in last GOP at EOF Last fileset: 93804506 total bytes written Summe der per demux erzeugten Daten Video 1: 6550 frames, 00:04:22.000 Anzahl der erkannten Frames Audio 1: 10917 frames, 00:04:22.008 Anzahl der erkannten Frames Sync estimate at EOF: MPEG Audio #1 : sync Video statistics GOP-Statistik ================ GOP length (min/avg/max): 6 / 11 / 18 [frames] 64074 / 160136 / 325922 [Bytes] GOP bitrate (min/avg/max): 1719 / 2671 / 4314 [kbps] ++ INFO: ++ 1 GOP(s) with more than 15 frames were found Diese Meldung tritt bei DVB-T fast immer ein ++ This is not "DVD-compliant" ++ It _may_ cause problems in DVD-authoring or ++ with some DVD players Hinweis: PVAStrumento kann GOP nicht schliessen. Offene GOP werden von vielen DVD- Authoring-Programmen akzeptiert, da es nur ganz wenige Fälle im DVD-Standard gibt, in denen GOP geschlossen sein müssen. Mediachance DVDLab bemeckert regelmäßig offene GOP, verarbeitet diese aber. (Autosaving log to \test.txt) Demuxte Daten und DVD-Authoring-Programme - Beispielhaft Ahead Nero 8 und MediaChance DVDLab -------------------------------------------------------------------------------------------- Es gibt DVD-Authoring-Programme, die erwarten nicht-demuxte Daten. Aber auch diese Programme müssen Bild und Ton letztendlich compilieren (zur DVD zusammenstellen). Eine Software, die nicht-demuxte UND demuxte Daten erwartet, ist Ahead Nero 8 und seine Vorgänger (keine Freeware): Nero bietet allerdings keinen Demuxer an. Man MUSS ein Fremdtool verwenden ! Will man ein DVD-Menü mit eigenem Hintergrund als Video versehen, dann kann das Bildmaterial als Videodatei mit Bild und Ton vorliegen z.B. mpg, oder nur als Bild (dann aber nicht jedes Format). darf das Audiomatarial nicht etwa als Videodatei mit Bild UND Ton vorliegen z.B. nicht als mpg, sondern demuxt, also nur als Tonspur, z.B. mpa. Nero bietet den mpa-Dateityp allerdings nicht gleich zur Auswahl an: Man muss erst alle Dateitypen wählen, um dann eine mpa-Dateien markieren zu können. Dieses Verhalten von Ahead ist ziemlich steinzeitlich, zumal selbst ältere Freeware da fortschrittlicher ist. Der Grund steht im Zusammenhang mit weiteren, nachfolgend genannten Konzeptionsproblemen von Nero. Nero hat ein Problem mit dem (inzwischen betagten) 16:9-Bildformat: Es kann kein Menü-Hintergrund aus einem 16:9-Video ohne Neurenderung zu 4:3 erzeugen. Ein DVD-Menü muss immer neu gerendert werden. Aber die Zwangs- Änderung der Bildproportionen kostet eben mehr Zeit - bei Nero verlängert sich die Zeit der DVD-Erstellung praktisch so erheblich, dass es sich oft nicht lohnt, Nero zu verwenden: Wenn das Rendern des Filmes, der per Menü angewählt wird, wegen Smartrendern auch bei 16:9 nur noch Minutensache ist (Nero kann einen 16:9-Film, der nicht Menü-Hintergrund ist, smartrendern), so wird das DVD-Menü wegen zwangsweisem 16:9 zu 4:3 in einem Vielfachen an Zeit erzeugt. Es gibt eine Lösung des Problemes: Das Hintergrundvideo z.B. mit Freeware wie SuperC auf 4:3 konvertieren und dann Nero neu zureichen. Nero hat ein Problem mit dem inzwischen verbreiteten Smartrendern bei GOP- Problemen am Filmanfang: Das Smartrendern wird komplett ausgesetzt, wenn Nero direkt am Filmanfang eine Verletzung der GOP-Grenzen erkennt. Nero rendert dann (so verschoben) ab Filmanfang bis Ende komplett neu - entsetzliche Zeitverschwendung. Es gibt eine Lösung des Problemes: Film framegenau schneiden, also den Anfang des Filmes auf einen Frame setzen, und dann Nero erneut zureichen - plötzlich kann Nero Smartrendern ! Verlustfreies Schneiden per demuxte Daten: MPEG2Schnitt. (demuxte Daten zu DVD mit Menü per MediaChance DVDLab möglich; demuxte Daten verlustfrei zu mpg muxen per Imago Muxer möglich;) Schneiden ungemuxter Daten (also z.B. mpg-Datei) per Smartrendern der Schnittstellen, um Framegenauigkeit zu erhalten: Womble MPEG2VCR. (Womble bietet das auch mit seinem DVD-Authoring-Programm an). Nero erkennt nicht, wo der nächste fehlerfreie GOP beginnt, ab dem Smartrendern möglich wäre. Dass es GOP-Korrekturmöglichkeiten gibt, beweisen PVAStrumento und MPEG2Schnitt: Diese arbeiten deswegen mit demuxten Daten bzw. korrigieren diese direkt nach Demux - Nero verlangt dafür nicht-demuxte Daten und korriegiert GOP-Fehler am Filmanfang durch Neurenderung des gesamten Filmes - unglaublich !! Es ist enorm wichtig, das der Schnitt von Video framegenau erfolgt, also exakt an GOP-Grenzen. Dieses kann nicht jede Software - geschweige einer Anwahl und Anzeige der Framepostionen im Schnittfenster. Als geeignete Schnittprogramme sind MPEG2Schnitt oder Womble MPG2VCR zu empfehlen (Womble hat zusätzlich Smartrendern im Angebot, damit die Schnittgrenzen auf Framegenauigkeit kommen, denn es werden undemuxte Eingabedaten verlangt: Nur Schnittstellen neu rendern, den Rest unverändert übernehmen (= Smartrendern). Eine Software, die demuxte Daten erwartet bzw. nicht-demuxte Daten zerlegt, ist MediaChance DVDLab (keine Freeware). Mit dieser Software ist das Compilieren der DVD eine Sache von wenigen Minuten. Rendern fällt grundsätzlich weg: DVDLab erwartet weitgehend fehlerfreie Daten (z.B. aus PVAStrumento und MPEG2Schnitt). Probleme mit 16:9, wie Nero Ahead 8 sie hat, kennt DVDLab nicht - woher auch, da ja nicht gerendert wird.