| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
| video [2023-03-16 11:01:24] – [HDR (Dolby Vision)] manfred | video [2024-07-15 21:13:27] (aktuell) – [die verbreitetsten Video-Standards] manfred |
|---|
| ====== Video ====== | ====== Video ====== |
| | |
| | |
| | ===== Spezielles ===== |
| | |
| | |
| | ==== die verbreitetsten Video-Standards ==== |
| | |
| | Welche Videoformate werden von WhatsApp unterstützt? |
| | |
| | __Meine Erfahrung am 15. Juli 2024:__ //**MP4** + **H.264** + **MP3**// => ''~/bin/[[https://github.com/FlatheadV8/Filmwandler|Filmwandler.sh]] -q Video.mpeg -z Video.mp4 -ca mp3'' |
| | |
| | Hier steht, dass die Video-Dateien nicht größer als 16 MB sein dürfen: [[https://www.superchat.de/blog/video-whatsapp-komprimieren|Videos versenden mit WhatsApp: So groß darf die Datei sein]] |
| | |
| | |
| | ===== Allgemeines ===== |
| |
| siehe auch: [[Videos transcodieren]] | siehe auch: [[Videos transcodieren]] |
| ^ [[https://encodingwissen.de/hintergrund/formatedschungel/container/#die-fahigkeiten-der-container-im-vergleich|Container-Format]] ^ Video-Codec ^ Audio-Codec ^ Subtitle-Codec ^ | ^ [[https://encodingwissen.de/hintergrund/formatedschungel/container/#die-fahigkeiten-der-container-im-vergleich|Container-Format]] ^ Video-Codec ^ Audio-Codec ^ Subtitle-Codec ^ |
| ^ [[https://en.wikipedia.org/wiki/MPEG-4_Part_14|MP4]] - ''mp4'' | H.263 (DivX/Xvid), [[https://de.wikipedia.org/wiki/H.264|H.264 (AVC)]] - ''libx264'', H.265 (HEVC) | [[https://de.wikipedia.org/wiki/Advanced_Audio_Coding|AAC]] - ''libfdk_aac'', ALC, SLS, MP3, MP2, MP1, speech, TTSI, SAOL | DVD subtitles - ''dvd_subtitle'', MPEG-4 Timed Text (also known as 3GPP Timed Text) | | ^ [[https://en.wikipedia.org/wiki/MPEG-4_Part_14|MP4]] - ''mp4'' | H.263 (DivX/Xvid), [[https://de.wikipedia.org/wiki/H.264|H.264 (AVC)]] - ''libx264'', H.265 (HEVC) | [[https://de.wikipedia.org/wiki/Advanced_Audio_Coding|AAC]] - ''libfdk_aac'', ALC, SLS, MP3, MP2, MP1, speech, TTSI, SAOL | DVD subtitles - ''dvd_subtitle'', MPEG-4 Timed Text (also known as 3GPP Timed Text) | |
| ^ [[https://matroska.org/technical/specs/codecid/index.html|MKV]] - ''matroska'' | H.261, H.262, H.263, H.264, H.265, Theora, VP8, [[https://de.wikipedia.org/wiki/VP9|VP9]] - ''libvpx-vp9'', AV1, ... (alle wichtigen) | AC3/a52, [[https://de.wikipedia.org/wiki/Opus_(Audioformat)|Opus]] - ''libopus'', ... (alle wichtigen) | DVD subtitles - ''dvd_subtitle'', Text, SSA, ASS, webvtt, Bitmap, VobSub | | ^ [[https://matroska.org/technical/specs/codecid/index.html|MKV]] - ''matroska'' | H.261, H.262, H.263, H.264, H.265, Theora, VP8, [[https://de.wikipedia.org/wiki/VP9|VP9]] - ''libvpx-vp9'', AV1, ... (alle wichtigen) | AC3/a52, Vorbis, [[https://de.wikipedia.org/wiki/Opus_(Audioformat)|Opus]] - ''libopus'', ... (alle wichtigen) | DVD subtitles - ''dvd_subtitle'', Text, SSA, ASS, webvtt, Bitmap, VobSub | |
| ^ [[https://www.webmproject.org/docs/container/|WebM]] - ''webm'' | Theora, VP8, VP9, [[https://de.wikipedia.org/wiki/AOMedia_Video_1|AV1]] - ''libaom-av1/libdav1d'' | Vorbis, [[https://de.wikipedia.org/wiki/Opus_(Audioformat)|Opus]] - ''libopus'' | WebVTT - ''webvtt'' | | ^ [[https://www.webmproject.org/docs/container/|WebM]] - ''webm'' | Theora, VP8, VP9, [[https://de.wikipedia.org/wiki/AOMedia_Video_1|AV1]] - ''libaom-av1/libsvtav1/libdav1d'' | Vorbis, [[https://de.wikipedia.org/wiki/Opus_(Audioformat)|Opus]] - ''libopus'' | WebVTT - ''webvtt'' | |
| |
| __für mich sind diese beiden Varianten am interessantesten:__ | __für mich sind diese beiden Varianten am interessantesten:__ |
| * sehr kompatibel, weil es ein [[https://support.mozilla.org/de/kb/html5-video-und-audio-firefox|HTML5-Standard]] ist: | * sehr kompatibel, weil es ein [[https://support.mozilla.org/de/kb/html5-video-und-audio-firefox|HTML5-Standard]] ist: |
| * Container: ''MP4'' | * Container: ''MP4'' |
| * Video-Codec: ''AVC'' | * Video-Codec: ''AVC'' |
| * Audio-Codec: ''AAC'' //(leider unterstützt FFmpeg keinen AAC-Encoder, der im Profil "HE-AAC" auch VBR beherscht)// | * Audio-Codec: ''AAC'' //(leider unterstützt FFmpeg keinen AAC-Encoder, der im Profil "HE-AAC" auch VBR beherscht)// |
| * komplett frei: | * komplett frei: |
| * Container: ''MKV'' (mit Untertitel) / ''WebM'' (ohne Untertitel) | * Container: ''MKV'' / ''WebM'' (WebM kann nur das Untertitelformat ''WebVTT'') |
| * Video-Codec: ''VP9'' //(weil "''AV1''" noch experimentell ist)// | * Video-Codec: ''VP9'' / ''AV1'' |
| * Audio-Codec: ''Opus'' | * Audio-Codec: ''Vorbis'' / ''Opus'' |
| |
| [[https://github.com/FlatheadV8|Projekt FlatheadV8]] | [[https://github.com/FlatheadV8|Projekt FlatheadV8]] |
| * VP9 - ca. 30% besser als AVC | * VP9 - ca. 30% besser als AVC |
| * AVC | * AVC |
| | * AV1 - Dateien sind ca. halb so groß wie von VP9 |
| * __Audio-Codecs__ | * __Audio-Codecs__ |
| * PCM (WAVE / 8-, 16-Bit pro Sample) | * PCM (WAVE / 8-, 16-Bit pro Sample) |
| * //OGV + VP8 + Vorbis// | * //OGV + VP8 + Vorbis// |
| * //OGV + VP8 + Opus// | * //OGV + VP8 + Opus// |
| * WebM + VP8 + Vorbis | * WebM + VP9 + Vorbis |
| * //WebM + VP8 + Opus// | * //WebM + VP9 + Opus// |
| * WebM + VP9 + Opus | * WebM + AV1 + Opus |
| * MP4 + AVC + AAC (im Gegensatz zu den anderen Profilen, enthält dieses keine Freien Elemente) | * MP4 + AVC + AAC (im Gegensatz zu den anderen Profilen, enthält dieses keine Freien Elemente) |
| |
| Mit ffmpeg in einem Durchgang: | Mit ffmpeg in einem Durchgang: |
| |
| | # ffmpeg -b 2560k -c:v libxvid -s 720x432 -padtop 72 -padbottom 72 -aspect 4:3 -c:a libmp3lame -aq 2 -ac 2 -i Film.vob -y Film.avi |
| | |
| # ffmpeg -b 2560k -vcodec libxvid -s 720x432 -padtop 72 -padbottom 72 -aspect 4:3 -acodec libmp3lame -ab 256k -ac 2 -async 48000 -i Film.vob -y Film.avi | # ffmpeg -b 2560k -vcodec libxvid -s 720x432 -padtop 72 -padbottom 72 -aspect 4:3 -acodec libmp3lame -ab 256k -ac 2 -async 48000 -i Film.vob -y Film.avi |
| |
| |
| hier wird ein Film mit Dolby-Digital-Sound übersetzt (ohne Untertitel): | hier wird ein Film mit Dolby-Digital-Sound übersetzt (ohne Untertitel): |
| > ffmpeg -i Originaler_Film_als_Quelle.mpg -c:v libaom-av1 -b:v 0 -crf 30 -strict -2 -c:a libopus -b:a 224k -af channelmap=channel_layout=5.1 -f matroska -y Film.mkv | > ffmpeg -i Originaler_Film_als_Quelle.mpg -c:v libaom-av1 -cpu-used 8 -b:v 0 -crf 30 -c:a libopus -b:a 224k -af channelmap=channel_layout=5.1 -f matroska -y Film.mkv |
| |
| hier wird ein Film übersetzt, der 1x Video-, 2x Audio- und 6x Untertitelspuren hat (die Option ''-strict -2'' ist noch nötig, weil dieser Encoder noch im experimentellem Stadium ist): | hier wird ein Film übersetzt, der 1x Video-, 2x Audio- und 6x Untertitelspuren hat: |
| > ffmpeg -probesize 9223372036G -analyzeduration 9223372036G -fflags +genpts -i Originaler_Film_als_Quelle.mpg -map 0:v -c:v libaom-av1 -b:v 0 -crf 30 -strict -2 -vf pad='max(iw\,ih*(16/9)):ow/(16/9):(ow-iw)/2:(oh-ih)/2' -keyint_min 2-8 -map 0:a:0 -c:a libopus -b:a 224k -af channelmap=channel_layout=7.1 -map 0:a:1 -c:a libopus -b:a 224k -af channelmap=channel_layout=5.1 -map 0:s:0 -c:s copy -map 0:s:1 -c:s copy -map 0:s:2 -c:s copy -map 0:s:3 -c:s copy -map 0:s:4 -c:s copy -map 0:s:5 -c:s copy -disposition:s:0 default -f matroska -y Film.mkv | > ffmpeg -probesize 9223372036G -analyzeduration 9223372036G -fflags +genpts -i Originaler_Film_als_Quelle.mpg -map 0:v -c:v libaom-av1 -cpu-used 8 -b:v 0 -crf 30 -vf pad='max(iw\,ih*(16/9)):ow/(16/9):(ow-iw)/2:(oh-ih)/2' -keyint_min 2-8 -map 0:a:0 -c:a libopus -b:a 224k -af channelmap=channel_layout=7.1 -map 0:a:1 -c:a libopus -b:a 224k -af channelmap=channel_layout=5.1 -map 0:s:0 -c:s copy -map 0:s:1 -c:s copy -map 0:s:2 -c:s copy -map 0:s:3 -c:s copy -map 0:s:4 -c:s copy -map 0:s:5 -c:s copy -disposition:s:0 default -f matroska -y Film.mkv |
| |
| Diesen Optionen haben folgende Bedeutungen: | Diesen Optionen haben folgende Bedeutungen: |
| * Datei war ca. 1,4 MB groß; in allen Punkten eine bessere Qualität als ''AV1'' mit ''-crf 63'' | * Datei war ca. 1,4 MB groß; in allen Punkten eine bessere Qualität als ''AV1'' mit ''-crf 63'' |
| * //VP9 ist also ca. 7 mal schneller als AV1 und produziert ca. 4,6 mal so große Dateien.// | * //VP9 ist also ca. 7 mal schneller als AV1 und produziert ca. 4,6 mal so große Dateien.// |
| | |
| | Will man den Transkodiervorgang signifikant beschleunigen, dann hilft die Option ''-cpu-used 8'' dabei am besten. |
| |
| |