Blog Digitalgesellschaft Verwaltungsbetrieb Textarchiv Textarchiv Walter Kirk (✝) Impressum

 

Audio und Video mit FFmpeg bearbeiten

 

 

Vorbemerkung

Auf vielen Plattformen werden Mediendateien zum Anhören und Ansehen bereitgestellt. Es gibt heute Apps in den jeweiligen Stores, um diese Medien abzuspielen. Wer lieber offline hören und sehen möchte, ist dann allerdings gezwungen, die Medien herunter zu laden.

Die neue Audio- und Videothek der öffentlich-rechtlichen Sender (ARD-Mediathek) bietet keine RSS-Feed zum Download mit einem Podcatcher mehr an. Jedoch werden zum Beispiel für Hörbucher und -spiele auf den Seiten der Rundfunkanstalten RSS-Feed bereitgestellt.

Dabei lassen sich die sogenannten Podcatcher der eigenen Wahl für Audiodateien und das Programm Mediathekview für Videos der öffentlich-rechtlichen Sender nutzen.

Leider liegen Audio- und Videodateien nicht immer als eine Gesamtdatei vor, wenn einzelne Folgen bereitgestellt sind. Das gilt auch, wenn Audio-CD, der Download von MP3-Dateien oder Musik-Videos genutzt werden.

Mit dem mächtigen Tool FFmpeg können die Audio- und Videodateien in eine gewünschte Form übertragen werden, um zum Beispiel ein Audiobook zu erstellen bzw. eine mehrteilige Filmreihe in einer Gesamtdatei zu erhalten.

Voraussetzungen

Die hier beschriebene Vorgehensweise berücksichtigt ein debian-basiertes Linux.

FFmpeg

Die Hinweise beschreiben die Anwendung von FFmpeg auf der Kommandozeilen-Ebene. Dies erfolgt deshalb, weil damit eine bessere Einstellung der gewünschten Ergebnisse erzielt werden kann.

Das Tool FFmpg ist auch für Windows und MacOS verfügbar. Auf der Kommandozeilen-Ebene sind jedoch die Besonderheiten der beiden Betriebssysteme zu berücksichtigen, auf die hier nicht eingegangen wird.

Wer eine graphische Benutzeroberfläche für FFmpeg anwenden möchte (GUI), kann die Programme WinFF bzw. QWinFF (Linux, Windows) nutzen.

Graphische Benutzeroberfläche

Für FFmpeg gibt es eine GUI:

Linux: WinFF

Windows:

- WinFF: https://github.com/WinFF/winff

- QWinFF (https://qwinff.github.io/)

- FFmpeg for Windows: https://ffmpeg.org/download.html#build-windows

Organisation und Namensregeln

Sinnvoll ist für die Umsetzung eine einheitliche Organisation und Namensregeln für die Ordner- und Dateinamen.

├── beschreibung.pdf ├── cd01 │   ├── 01. track 1.wav │   ├── 02. track 2.wav │   ├── 03. track 3.wav │   ├── 04. track 4.wav │   ├── 05. track 5.wav │   ├── 06. track 6.wav │   ├── 07. track 7.wav │   ├── 08. track 8.wav │   ├── 09. track 9.wav │   ├── 10. track 10.wav │   ├── 11. track 11.wav │   ├── 12. track 12.wav │   ├── 13. track 13.wav │   ├── 14. track 14.wav │   ├── 15. track 15.wav │   ├── 16. track 16.wav │   └── 17. track 17.wav

usw. bis cd04

├── cover.jpg ├── gesamt │   ├── beispiel-cd01.wav │   ├── beispiel-cd02.wav │   ├── beispiel-cd03.wav │   ├── beispiel-cd04.wav │   ├── beispiel.flac │   ├── beispiel.mp3 │   └── beispiel.wav ├── inlay1.png └── inlay.png

In diesem Beispiel werden alle Namen klein geschrieben und enthalten keine deutschen Umlaute bzw. Sonderzeichen.

Standardformate

Audio

Obwohl das .mp3-Format zwischenzeitlich nicht mehr lizenzpflichtig ist, gilt es für künftige Entwicklungen vorbereitet zu sein. Denn: 1. .mp3 ist ein verlustbehaftetes Format, 2. die heutigen Speichermöglichkeiten benötigen grundsätzlich keine Kompression von Daten mehr.

Deshalb ist es heute ratsam, die gängigen verlustfreien Formate wie .wav oder .flac zu wählen.

Eine weitere Alternative ist ein neueres Audioformat: Opus (.opus). Dabei handelt es sich um ein verlustbehaftetes Format, das allerdings erheblich bessere Klangeigenschaften bietet als .mp3.

Video

Wer nicht unbedingt auf .mp4 angewiesen ist, sollte auf das alternative .webm ausweichen. Das gilt insbesondere für eigene Veröffentlichungen auf dem Blog oder der Website.

Vor- und Nachteile beider Formate:

 WebMMP4
QualitätBessere QualitätGute Qualität
Dateigrößekleine Dateiengroße Dateien
VerbreitungVor allem von Google getragenSehr verbreitet
PatenteOpen SourceLizenzpflichtig

Quelle: Verschiedene, Google und Co.

Für die Konvertierung von .mp4 ist auszuführen:

Hinweis: libopus = Audioformat OPUS, libvorbis = Audioformat OGG

Quelle: Ask Ubuntu, URL.: https://askubuntu.com/questions/351593/bulk-batch-convert-mp4-and-m4v-files-to-webm-via-command-line

Ergänzende Hinweise enthält der Blogbeitrag Bilder und Videoformate für das Web.

Beispiel für eine Umwandlung mit den vorgenannten Einstellungen: 1. Größe der .mp4: 1,6 GB (100 %), 2. Größe der .webm: 1,1 GB (68,75 %), 3. Dauer: ca. 50 Min.
Fazit: Die Dateigröße ist bei vergleichbarer Qualität um etwas mehr als 1/4 verringert.

Vergleich

Die Tabelle zeigt im Vergleich die Größe der umgewandelten Formate von einer .mp4:

.mp4597,1 MB
.flac372,3 MB
.mp3104,4 MB
.opus108,4 MB
.wav1,0 GB
.webm359,5 MB

Hieraus folgt: Als Audioformate sind .flac, ggf. .opus und als Videoformat ist .webm in Kombination mit .opus aktuell eine gute Wahl.

Audio

Von den meisten Plattformen werden standardmäßig Audiodateien als .mp3 zur Verfügung gestellt. Dies gilt insbesondere für kostenfreie Hörbücher und -spiele (Audiobook) der öffentlich-rechtlichen Rundfunkanstalten.

Ist die Quelle eine Audio-CD werden die Tracks im Dateimanager in einigen Fällen bereits als .wav dargestellt: Track 1.wav, etc. Diese Dateien lassen sich dann idealerweise direkt in ein Verzeichnis auf den eigenen Speicherort kopieren. Dadurch liegt die Originalquelle im Verhältnis 1:1 auf dem Speicherort vor.

Wenn die Audio-CD keine .wav darstellt, sind die Daten auf den eigenen Speicherort mit speziellen Hilfsprogrammen zu übertragen (CD-Ripper). In diesem Beispiel wird vom Format .wav als Zielformat ausgegangen. Selbstverständlich kann das Audioformat in den Hilfsprogrammen nach den eigenen Wünschen angepasst werden.

Bei MP3-CD/DVD liegen die Audiodateien bereits in einem speziellen Format vor und können auf den eigenen Speicherort kopiert und direkt weiterbearbeitet werden.

Cover einfügen

Mit FFmpeg lassen sich Cover in Audio-/Videodateien einbetten.

Im Beipiel wird ein Cover in alle .mp3 eingebettet und es werden die Metadaten übernommen.

Bei .m4a lässt sich das Cover einfügen mit AtomicParsley, das aus den Paketquellen installiert werden kann

Zum Einfügen ein Terminal im Verzeichnis mit den .m4a öffnen und folgendes ausführen:

Mit AtomicParsley werden nur Cover im Format .jpg und .png eingefügt.

Bash-Script

Für eine vereinfachte Ausführung der o.a. Kommandos bietet sich ein Bash-Script an. Eine Alternative ist der folgende Aufbau:

Dieses Script eignet sich für einzelne Audio-Dateien, z.B. von Radioaufnahmen, um die manuelle Bearbeitung auf eine vereinfachte Form zu reduzieren. Die meta.txt lässt sich entsprechend manuell anpassen.

Bei einer Vielzahl von Audio-Dateien, z.B. ganze CD, sind die einschlägigen Tag-Editoren weiterhin die bessere Wahl.

Kombination

Aus mehreren .wav wird eine Datei mit den Programmen FFmpeg und SoX. Zur Installation in einem Terminalfenster eingeben:

In das Verzeichnis mit den Audio-Dateien wechseln, ein Terminalfenster öffnen und folgendes ausführen:

Der Ausgabe-Dateiname output ist durch den eigenen Titel abzuändern.

Die so gewonnene verlustfreie Originalquelle kann dann in Audioformate der eigenen Wahl wie .flac, .mp3 oder .opus transcodiert werden.

Tipp

Diese Befehle können auch für andere Audioformate genutzt werden, indem die Angaben wav entsprechend geändert werden: .mp3, .flac, .opus, etc.

Kombination von .aac

Vorhandene .aac lassen sich in zwei Schritten zu einer Audiodatei zusammen fügen:

Schritt 1: Fileliste erstellen

In das Verzeichnis mit den .aac wechseln, ein Terminal öffnen und ausführen:

Bei bereits nummerierten Dateien werden diese in der Reihenfolge der Nummern in eine Textdatei eingetragen.

Schritt 2: Gesamtdatei erstellen

Der Name output ist den eigenen Verhältnissen anzupassen. Anstelle von .aac kann auch .mp4 eingegeben werden.

Die Ausgabe könnte so aussehen:

Quelle: https://superuser.com/questions/1690026/ffmpeg-combine-concat-multiple-audio-tracks-into-single-audio

Metadaten extrahieren und einfügen

Mit FFmpeg lassen sich Metadaten in externe .txt speichern. Die Syntax lautet:

ffmpeg i Audiodatei - f ffmetadata Textdatei

Beispiel

Damit werden die globalen Metadaten in einer .txt gespeichert. Darüber hinaus lassen sich auch die Metadaten für die Audio- und Videospur auslesen (s. Dokumentation zu FFmpeg).

Vorhandene Metadaten lassen sich in Audio-/Videodateien einfügen. Eine Alternative ist:

Natürlich ist auch die Übernahme von Metadaten möglich:

Die Angabe 0 steht für Ausgangsdatei und 1 für externe .txt.

FFmpeg bietet nur die Möglichkeit, den Inhalt von .txt in einer neuen Audio-/Videodatei zu speichern, wobei die neue Datei nicht wieder codiert werden muss.

Nummerierung

Die Nummerierung erfolgt beim Rippen automatisch. Aus Audiotheken herunter geladene oder von der CD/DVD kopierte .mp3 sind regelmäßig nummeriert, z.B. Folgen von Hörbüchern und -spielen.

Die vorgenannten Tracks als .wav sind noch zu nummerieren, damit eine Datei in der Abfolge der Tracks zusammen gestellt werden kann: 01 Track 1.wav, etc.

Gerade Audiobook lassen sich so vereinfacht abspielen.

Video

Von den meisten Plattformen werden standardmäßig .mp4 zum Download zur Verfügung gestellt. Zumeist werden sogenannte Episoden oder Folgen als Einzelvideo angeboten. Darüber hinaus werden Musikvideos oftmals als einzelne .mp4 bereitgestellt, z.B. auf YouTube (ganzes Album, einzelne Tracks).

Die Übertragung einer Videoquelle von DVD auf den eigenen Speicherort unterliegt nach dem deutschen Urheberrecht restriktiven Beschränkungen, auf die hier nicht eingegangen wird.

Kombination

Einzelne Videodateien lassen sich mit ffmpeg zu einer Gesamtdatei kombinieren. Der für die Verbindung von Audio-Dateien genutzte Befehl kann auch hier eingesetzt werden:

Der Ausgabe-Dateiname output ist durch den eigenen Titel abzuändern.

Dieser Befehl kann auch für andere Videoformate genutzt werden, indem die Angaben mp4 entsprechend geändert werden: .mkv, .webm, etc.

Nummerierung

Soweit die Videodateien nicht bereits nummeriert sind, ist dies nachträglich vorzunehmen.

Audio aus Video

Will man aus einem Video die Tondaten separat speichern, so kann auch hier ffmpeg eingesetzt werden:

.wav

Die verlustfreie Quelle lässt sich dann in andere Audioformate transcodieren.

Selbstverständlich ist auch

- eine Extraktion aus weiteren Videoformaten möglich: avi, mkv, webm, etc. Hierzu wird das Videoformat entsprechend angepasst:

- eine direkte Umwandlung in bestimmte Audioformate möglich mp3, flac, opus, etc. Hierzu wird das Audioformat entsprechend angepasst:

.mp3

.flac

.opus

.m4a (Apple Losless Audio Codec)

Weitere Informationen enthält der Blogbeitrag Audiospur aus Video-Datei extrahieren.

Standbild in Video einfügen

Ein Standbild wird eingefügt mit

Bei Roh-Audiodateien (.wav, .w64 .raw, ) erfolgt dies mit

Erläuterung:

https://stackoverflow.com/questions/25381086/convert-mp3-video-with-static-image-ffmpeg-libav-bash

Besonderheiten

Teilen

Auf die Möglichkeit, Audio- und Videodateien in mehrere Dateien aufzuteilen (Split) wird hier nicht eingegangen.

Digitalisate

Wer seine alten Ton- und Bildträger (Platten, Audio- und Videokassetten in ein digitales Format übertragen will, kann die hier aufgezeigten Handlungsweisen sinngemäß berücksichtigen.

Ergänzende Literatur:

Kirk, Wolfgang: Good Practice - 18: Der digitale Ton - Aufnahme, Bearbeitung und Abspielen

Kirk, Wolfgang: Good Practice - 20: Das digitale Video - Capturing, Screencast, Postproduktion

Checkliste Audiobook und Gesamtfilm

1. Quelle vorbereiten

- Audio: möglichst gemein- und verlustfreies Format wählen

- Video: möglichst gemeinfreies und speicherarmes Format wählen

- auf dem Speicherort ein vorher festgelegtes Ordner- und Namenssystem verwenden

2. Nummerierung

Audio-/Videodateien sind einheilich zu nummerieren:

01-output.format

3. FFmpeg

- kann in Linux, MacOS und Windows genutzt werden

- GUI: WinFF (Linux, Windows), Alternative für MacOS

4. Kombination

Für Audio und Video kann FFmpeg genutzt werden:

output und format mit den gewünschten Formaten anpassen

5. Audio aus Video

- der Ton kann mit FFmpeg gewonnen werden

- möglichst ein gemein- und verlustfreies Format wählen

6. Umwandlung

Die Umwandlung in ein anderes Format kann mit ffmpeg erfolgen:

- audio: möglichst ein gemein- und verlustfreies Format wählen

- video:

7. Digitalisate

- die Hinweise sinngemäß anwenden, wenn alte Bild-/Tonträger in ein heutiges Audio-/Videoformat übertragen werden

- möglichst ein gemein- und verlustfreies Format wählen.

Zusammenfassung

Wer die Wahl, hat die Qual. Es gibt sehr viele Möglichkeiten, Audio- und Videodateien zu erstellen und zu bearbeiten. Wichtig ist, dass man in keiner rechtlichen Grauzone arbeitet bzw. nicht wirtschaftlich von Lizenzen abhängig ist.

Microsoft hat mit .wav und .avi, Google mit .webm gemeinfreie Software bereitgestellt, die es auch dem privaten Nutzer ohne und sogar mit finanziellen Interessen erlauben, Medien rechtlich und wirtschaftlich ohne unangenehme Folgen zu erstellen und zu vertreiben.

Aufgrund der heutigen relativ niedrigen Kosten für Speichermedien ist das Ausweichen auf verlustbehaftete Umwandlungstechnik und lizenzpflichtige Software (Codec) nicht mehr notwendig, um Speicherplatz zu sparen oder im LAN zu kommunizieren. Es gibt viele gute Alternativen. Die beste scheint zu sein, die Rohdaten selbst zu nutzen.

Das Betriebssystem Linux und die anderen gängigen Betriebssysteme bieten heute ein Fülle von (kostenfreien) Möglichkeiten, die digitalen Medien nach den persönlichen Präferenzen nutzen zu können. Dies wird anhand der vorgenannten Hinweise geradezu verdeutlicht.

Mindmap

FFmpegnutzen1. VoraussetzungenGUIOrganisationNamensregeln2. StandardformateAudioVideoVergleich3. OrganisierenNummerierungKombinationStandbild4. BesonderheitenAudio extrahierenTeilenDigitalisate

 

Top

 

Wolfgang Kirk

 

Veröffentlicht: 2022-12-26 aktualisiert: 2024-08-19, 08:00 Uhr