
Ich möchte eine MP4 Datei mit FFmpeg verschlüsseln und fragmentieren. Dazu verwende ich folgenden Befehl:
ffmpeg \
-i input.mp4 \
-c copy \
-encryption_scheme cenc-aes-ctr \
-encryption_kid 30313233343536373839303132333435 \
-encryption_key ebdd62f16814d27b68ef122afce4ae3c \
-movflags frag_keyframe+empty_moov+default_base_moof \
output.mp4
Der Versuch die verschlüsselte Datei zu entschlüsseln oder wiederzugeben schlägt fehl:
ffplay \
-i output.mp4 \
-decryption_key ebdd62f16814d27b68ef122afce4ae3c
FFplay gibt wiederholt den Fehler aus saio atom found without saiz
.
Wenn ich -movflags
im Verschlüsselungsbefehl das durch ersetze -movflags frag_keyframe
, können die ersten paar Frames dekodiert werden (vermutlich aus der ersten mdat
Box). Die Fehlermeldung ändert sich zu Incorrect number of samples in encryption info
. Wenn ich das -movflags
vollständig entferne (das Video nicht fragmentiere), funktioniert die Wiedergabe einwandfrei.
Ich verwende Version 5.1 von FFmpeg. Ist das ein bekanntes Problem von FFmpeg? Kann das behoben werden?
Ich habe einige Leute gefunden, die über dasselbe reden/ähnliche Probleme, aber noch keine Lösungen.