videos_transcodieren
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| videos_transcodieren [2023-04-24 11:21:09] – [Allgemeines zu Farbräumen] manfred | videos_transcodieren [2024-05-01 15:30:14] (aktuell) – [Beispiele mit FFmpeg] manfred | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Videos transcodieren ====== | ||
| + | |||
| + | siehe auch: [[VideoSoftware]] | ||
| + | |||
| + | |||
| + | ===== Allgemeines zu Farbräumen ===== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * Farbtemperatur vom Tageslicht (ISO-3664 - Klasse-C): 6504 Kelvin | ||
| + | * CIE-Farb-Normen-System zum Abgleich der einzelnen Farbräume // | ||
| + | * D50 // | ||
| + | * D55 | ||
| + | * D60 | ||
| + | * **D65** //(sRGB, Adobe RGB, BT.709, ...)// | ||
| + | * D75 | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | Das YUV-Farbmodell geht von einem Modell mit linearer Addition der Farbreize aus. Was jedoch keinen echten (sondern nur einen synthetischen) Farbraum abbildet. | ||
| + | Im allgemeinen sollte man den Farbraum bzw. das Farbmodell nur dann ändern, wenn das Abspielgerät nur einen anderen Farbraum versteht und den vorhandenen nicht richtig darstellen kann. | ||
| + | |||
| + | Also sollte man prinzipiell beim transkodieren keine Angaben zur Farbraumkonvertierung vornehmen, solange man alle seine Videos gut ansehen kann. | ||
| + | |||
| + | * " | ||
| + | * YIQ (NTSC -> USA, Japan) | ||
| + | * YUV (PAL -> Deutschland) | ||
| + | * YDbDr (SECAM -> DDR, Frankreich) | ||
| + | |||
| + | Alle haben genau so viele Farben drin, aber das Farbdreieck ist bei allen dreien verdreht... | ||
| + | |||
| + | YPbPr ist eine anders skalierte Version von YUV, was meist in der Digitalform als YCbCr verwendet wird. Die Benutzung ist bei der Video- und Bildkompression weit verbreitet, wie bei MPEG und JPEG. | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | " | ||
| + | |||
| + | HDR benötigt mindestens den Farbraum " | ||
| + | |||
| + | |||
| + | ==== Farbraum vs. Farbmodell vs. Farbprofil ==== | ||
| + | |||
| + | Der Farbraum (z.B. " | ||
| + | |||
| + | Das Farbmodell (z.B. " | ||
| + | |||
| + | Das Farbprofil beschreibt den Schwarzpunkt, | ||
| + | |||
| + | //Farbraum -> steht im Video// | ||
| + | |||
| + | // | ||
| + | |||
| + | |||
| + | ==== Beispiele mit FFmpeg ==== | ||
| + | |||
| + | > ffmpeg -i test.avi -c:v libx264 -x264opts colorprim=bt709: | ||
| + | | ||
| + | > mediainfo test_bt709_x264.mkv | grep -Fi 'Color primaries' | ||
| + | Color primaries | ||
| + | | ||
| + | > ffprobe -i test_bt709_x264.mkv -show_data 2>&1 | grep -F bt709 | ||
| + | Stream #0:0(und): Video: h264 (High 10) (avc1 / 0x31637661), | ||
| + | | ||
| + | > ffprobe -v error -i test_bt709_x264.mkv -show_streams -select_streams v | grep -F color_primaries= | ||
| + | color_primaries=bt709 | ||
| + | | ||
| + | > ffprobe -v error -i test_02.mp4 -show_entries stream=index: | ||
| + | 0|bt709 | ||
| + | |||
| + | > ffmpeg -i test.avi -c:v libaom-av1 -aom-params color-primaries=bt709: | ||
| + | | ||
| + | > mediainfo test_bt709_av1.mkv | grep -Fi 'Color primaries' | ||
| + | Color primaries | ||
| + | | ||
| + | > ffprobe -i test_bt709_av1.mkv -show_data 2>&1 | grep -F bt709 | ||
| + | Stream #0:0: Video: av1 (Main), yuv420p10le(tv, | ||
| + | | ||
| + | > ffprobe -v error -i test_bt709_av1.mkv -show_streams -select_streams v | grep -F color_primaries= | ||
| + | color_primaries=bt709 | ||
| + | | ||
| + | > ffprobe -v error -i test_bt709_av1.mkv -show_entries stream=index: | ||
| + | 0|bt709 | ||
| + | |||
| + | |||
| + | ===== So erstellen Sie eine Screenshot-Galerie über die Befehlszeile ===== | ||
| + | |||
| + | |||
| + | ==== MPlayer ==== | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | mit diesem Aufruf kann man durch drücken von '' | ||
| + | und durch drücken von '' | ||
| + | > mplayer -vf screenshot file.mp4 | ||
| + | |||
| + | dieser Aufruf erzeugt von den ersten 5 Frames jeweils eine einzelne Bilddatei: | ||
| + | > mplayer -nosound -frames 5 -vo png:z=9 file.mp4 | ||
| + | |||
| + | |||
| + | ===== Filmwandler ===== | ||
| + | |||
| + | * [[https:// | ||
| + | |||
| + | **//Only '' | ||
| + | |||
| + | ^ Stand: Mai 2022 ^^^^^ | ||
| + | ^ Größenvergleich | ||
| + | | 2057 | WebM | AV1 | Opus | webm | | ||
| + | | 2057 | Matroska | ||
| + | | 4873 | MP4 | H.264 | AAC | mp4 | | ||
| + | | 5001 | OGG | VP8 | Vorbis | ||
| + | | 5129 | Flash Video | Sorenson Spark | MP3 | flv | | ||
| + | | 5769 | MPEG-TS | ||
| + | | 5897 | AVCHD | H.264 | AC3 | m2ts | | ||
| + | | 8585 | 3GPP | H.263 | AAC | 3gp | | ||
| + | | 9609 | DivX 5 | H.263++ | ||
| + | | | // | ||
| + | | | //DVD (1995)// | ||
| + | | 11537 | DVD (ab 1996) | MPEG-2 | ||
| + | | 12561 | 3GPP2 | H.263 | AAC | 3g2 | | ||
| + | |||
| + | //Die Werte für den '' | ||
| + | |||
| + | ein paar Anwendungsbeispiele: | ||
| + | ~/ | ||
| + | ~/ | ||
| + | ~/ | ||
| + | ~/ | ||
| + | |||
| + | hier müssen die Positionen (in Sekunden) zwischen den Werbepausen angegeben werden (vor der ersten Werbepause geht der Filmausschnitt von Sekunde 0 bis Sekunde 207, danach kommt die erste Werbepause bis Sekunde 338, dort beginnt der zweite Filmausschnitt... :) | ||
| + | ~/ | ||
| + | |||
| + | so wird der Film in das MP4-Format und zusätzlich in das WebM-Format transkodiert, | ||
| + | ~/ | ||
| + | |||
| + | Das Format der Optionen ist ist bei allen Skripten gleich. | ||
| + | |||
| + | Alle Filme, die so mit diesen Skripten erstellt werden, liegen am Ende entweder in dem Format 4:3 oder 16:9 vor und haben quadratische Bildpunkte (Pixel). | ||
| + | |||
| + | Es ist auch möglich den Namen für die Sprache einer Ton- oder Untertitelspur zu setzen bzw. zu überschreiben. | ||
| + | Hierfür werden die Sprach-Kürzel nach [[https:// | ||
| + | Chinesisch: | ||
| + | Deutsch: | ||
| + | Englisch: | ||
| + | Französisch: | ||
| + | Italienisch: | ||
| + | Japanisch: | ||
| + | Russisch: | ||
| + | Spanisch: | ||
| + | Türkisch: | ||
| + | Dutch: | ||
| + | Danish: | ||
| + | Finnish: | ||
| + | Norwegian: | ||
| + | Swedish: | ||
| + | |||
| + | Beispiel: | ||
| + | > ls -lha UNCHARTED_1.mpg | ||
| + | -rw-r--r-- | ||
| + | | ||
| + | > time ~/ | ||
| + | ... | ||
| + | -rw-r--r-- | ||
| + | -rw-r--r-- | ||
| + | -rw-r--r-- | ||
| + | -rw-r--r-- | ||
| + | -rw-r--r-- | ||
| + | -rw-r--r-- | ||
| + | -rw-r--r-- | ||
| + | -rw-r--r-- | ||
| + | | ||
| + | real 218m18.527s | ||
| + | user 576m58.494s | ||
| + | sys | ||
| + | |||
| + | |||
| + | ===== HandBrake ===== | ||
| + | |||
| + | * [[HandBrake]] | ||
| + | |||
