Es gibt hier und anderswo bereits einige gute Artikel zu verschiedenen Video-Editoren, ich möchte nachfolgend kurz meinen Workflow mit Avidemux vorstellen.
Seit einigen Jahren filme ich mit einer GoPro Hero 5 im Sportverein ab und zu Wettkämpfe zur späteren Analyse. Avidemux kommt hauptsächlich für die folgenden Schritte zum Einsatz:
- Zusammenführen der einzelnen Videodateien
- Trimmen auf die relevanten Aufnahmen
- Ausschneiden von einzelnen Szenen
Für diese Schritte bietet mir Avidemux eine relativ simple, grafische Applikation, die ich mittels Tastenkombinationen und etwas Übung sehr effizient bedienen kann. Andere Features nutze ich nicht und betreibe keine weitere/tiefergehende Videobearbeitung, auch habe ich keine Erfahrungen mit anderen Applikationen. Ich kann somit nicht sagen, wie Avidemux im Quervergleich abschneidet, es bietet aber sicher eher einen reduzierten Funktionsumfang.
Installation
Auf Avidemux bin ich noch zu meinen Windows-Portable-Apps-Zeiten gestossen, glücklicherweise wird auch Linux unterstützt. Unter Debian12 nutze ich die Version 2.8.1 als AppImage, die Download Seite erwähnt auch Fremdrepositories für Debian & Ubuntu.
Bedienung
Mit File > Open kann eine Videodatei geöffnet werden, in meinem Fall typischerweise die (chronologisch) erste GoPro-Datei. Nun kann das Video angesehen werden, die Steuerungselemente dazu sind wie bei vielen Video-Applikationen in einer Navigation bar am unteren Rand zu finden. Links vom Video findet sich eine Audio/Video sidebar, die einzige relevante Einstellung für mich ist hier das Output Format, wo ich immer MP4 Muxer auswähle (MP4 in, MP4 out). Etwas mehr an Dokumentation findet sich hier.
Die folgende Auswahl der unterstützten Tastenkombinationen erlaubt mir einen effizienten Workflow:
- Ctrl+O: Datei öffnen
- Ctrl+A: Datei anhängen
- Up: Zum nächsten Intra Frame springen
- Down: Zum vorherigen Intra Frame springen
- Ctrl+Up: Eine Minute vorwärts springen
- Ctrl+Down: Eine Minute rückwärts springen
- Ctrl+PageUp: Marker A setzen
- Ctrl+PageDown: Marker B setzen
- PageUp: Zu Marker A springen
- PageDown: Zu Marker B springen
- Delete: Auswahl zwischen den Markern A & B löschen
Für die schnelle Bearbeitung nutze ich nur die sogenannten Intra-Frames als Schnittpunkte (auch Keyframes genannt), so kann aufwendiges Rendern vermieden werden. Je nach Kodierung der ursprünglichen Videodatei(en) liegen diese allerdings mehrere Sekunden auseinander, es kann also nicht besonders feingranular zugeschnitten werden.
In der abgebildeten Navigation bar sind einige Infos und Steuerungselemente zu sehen. Im Fortschrittsbalken unter dem Video stellt der rote Strich einen Schnitt- oder Zusammenführ-Punkt dar. Der graue Slider ist beim aktuellen Frame und kann mit der Maus verschoben oder mit den Steuerungselementen kontrolliert werden. Das blaue Rechteck zeigt die Auswahl zwischen den Markern A und B, die z.B. mit delete gelöscht werden kann. Diese Auswahl ist rechts noch mit den genauen Zeitstempeln detaillierter aufgeführt. Am unteren Rand sind zudem die gesamte Videolänge und Details zum momentanen Frame (Zeitstempel und Frame-Typ) dargestellt. Die Steuerungselemente zur Navigation können grösstenteils auch mit den erwähnten Tastenkombinationen bedient werden.
Weitere Features
In der Doku und den Menüoptionen am oberen Rand finden sich weitere Features, beispielsweise das Speichern des aktuellen Frames als BMP/PNG/JPG, was Screenshots ersparen kann. Weiter gibt es wohl Codec-/Processing-/Filter-Optionen, die ich aber nie ausprobiert habe. Für repetitive Arbeiten könnten Scripting oder die Benutzung per Kommandozeile interessant sein. Je nach Workflow könnte es sich dann aber auch lohnen, dies direkt mit ffmpeg zu realisieren (z.B. bei bereits bekannten oder immer gleichen Schnittpunkten).
Gesamter Workflow
Bei mir sieht der gesamte Ablauf aufgrund der riesigen GoPro-Dateigrössen nämlich so aus:
- Videodateien von SD-Karte auf Festplatte kopieren (
cp
) - Videodateien manuell zusammenführen und zuschneiden (
avidemux
) - Resultierende Videodatei verkleinern (
ffmpeg
)
Für Schritt 3 nutze ich folgenden Aufruf von ffmpeg in der Kommandozeile:
ffmpeg -i Dateipfad-Input -map_metadata 0 -crf 23 -preset fast Dateipfad-Output
Die Parameter -crf
und -preset
führen zu einem Kompromiss zwischen Laufzeit, resultierender Video-Qualität & Dateigrösse. Zudem werden die Metadaten übernommen (wäre vermutlich das Default-Verhalten ohne die Option -map_metadata
). Auf meiner Hardware mit nicht wissenschaftlichem Experimentieren hat der Parameter -crf
("Constant Rate Factor") mehr Einfluss als der -preset
. Der CRF ist abhängig vom Video-Codec (für H.264 der GoPro ist 23 der Default im Bereich von 0 bis 51, mehr Informationen hier), grössere Werte bedeuten grössere Komprimierung und somit kleinere Dateigrösse und weniger gute Video-Qualität. Für meine Zwecke liefert der Wert 23 kaum sichtbare Qualitätsverluste und die Dateigrösse reduziert sich ungefähr um Faktor 5–10.
Anscheinend wäre es auch möglich, den Schritt 2 direkt mit ffmpeg
zu machen (Stichworte/Parameter: -ss
und -f concat
), was ich mal ausprobieren werde, allerdings bin ich nicht sicher, ob das für meinen Anwendungsfall Vorteile bringt.
Irgendwo muss ich die Schnittpunkte sowieso ansehen/finden und setzen, das kann gut direkt grafisch in avidemux
passieren. Ich bin jedenfalls zufrieden mit der simplen Anwendung, bin allerdings gespannt, ob jemand Erfahrungen für ähnliche Anwendungsfälle mit anderen Applikationen hat.
Quellen:
## Quellen
Bilder (selber angefertigte Screenshots und Video):
* Main Window
* Navigation Bar
Links (zuletzt abgerufen am 2025-02-09):
https://wiki.ubuntuusers.de/Videobearbeitung/
https://gnulinux.ch/tag/video-editor
https://gnulinux.ch/open-source-video-editoren-unter-linux
https://avidemux.sourceforge.net/
https://avidemux.sourceforge.net/download.html
https://www.avidemux.org/admWiki/doku.php?id=build:doctop
https://de.wikipedia.org/wiki/Intra-Frame
https://ffmpeg.org/
https://trac.ffmpeg.org/wiki/Encode/H.264
Vielen Dank für die Vorstellung des Programms. Ich nutze AVIDEMUX ebenfalls wie du; grob zurechtschneiden und abspeichern mit AVIDEMUX. Anschließend habe ich die Komprimierung mit Handbrake vorgenommen. Dein netter Einzeiler gefällt mir besser. Da muss ich mal schauen, wie ich die Konfiguration aus Handbrake herausgefummelt bekomme und dann auf der Kommandozeile von ffmpeg abarbeiten lassen kann.
Ganz blöde Frage: Wenn du die Videos anschließend zwecks Größenreduktion ohnehin neu enkodierst, wieso schneidest du sie dann nicht vorher frame-genau (anstatt an den Keyframes/Intra-Frames) und erledigst das Rendern direkt aus dem Videoschnittprogramm? (egal, in welchem) Das würde dir einen Arbeitsschritt sparen und präzisere Schnittpunkte ermöglichen, wenn ich mich nicht irre.
Sehr gute Frage. Kurze Antwort: hab ich mir tatsächlich noch gar nie überlegt. Das würde sich tatsächlich anbieten, danke für den Input.
Lange Antwort / Ausrede: historisch gewachsen. Ursprünglich hab ich nur geschnitten, nicht neu enkodiert. Für meinen Anwendungsfall brauchte ich es nicht frame-genau, da lag die Priorität klar auf dem schnellen Ablauf. Zeitsprung ein paar Jahre vorwärts, mit jeder neuen Aufnahme ist der Datenberg auf eine stattliche Grösse gewachsen, weshalb ich mir innerhalb des letzten Jahres dann doch das Enkodieren mit
ffmpeg
nochmals angeschaut habe. Mittlerweile hab ich auch mehr Rechenpower als in den Anfängen, weshalb ich nun beide Schritte mache.Vermutlich werde ich mit dem beschriebenen Ablauf mit separaten Arbeitsschritten weitermachen, da es für mich dennoch Vorteile bietet: Das grobe Zuschneiden kann ich sehr schnell auf dem Heimweg erledigen und mir gleich erste Szenen mit den finalen Zeitstempeln anschauen & merken. Das Enkodieren kann ich dann zuhause mal noch nebenbei laufen lassen.
Hallo Arno, könntest du ausführen, wie man das macht? Würde mir helfen.
Ich kann nicht beschreiben, wie das genau in Avidemux abläuft, da ich es nicht nutze. In kdenlive ist es m.E. relativ simpel: