Länge/Dauer einer Videodatei in Python mit ffprobe abrufen

English Deutsch

In unserem vorherigen Beitrag Videometadaten als JSON mit ffmpeg/ffprobe abrufen haben wir gezeigt, wie man json-formatierte Ausgabe mit ffprobe erzeugt, das zusammen mit ffmpeg mitgeliefert wird.

Vorausgesetzt ffprobe ist installiert, kann dies einfach verwendet werden, um die Dauer eines Videoclips (z.B. in input.mp4) mit Python abzurufen:

ffprobe_duration.py
import subprocess
import json

input_filename = "input.mp4"

out = subprocess.check_output(["ffprobe", "-v", "quiet", "-show_format", "-print_format", "json", input_filename])

ffprobe_data = json.loads(out)
duration_seconds = float(ffprobe_data["format"]["duration"])
# Example: duration_seconds = 11.6685
# Beispiel: duration_seconds = 11.6685

Beim Schreiben solchem Codes auf das Risiko von Shell-Code-Injection achten, wenn subprocess nicht korrekt verwendet wird!


Check out similar posts by category: Audio/Video, Python