
我想用 FFmpeg 對 MP4 檔案進行加密和分段。為此,我使用以下命令:
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
嘗試解密或重播加密檔案不起作用:
ffplay \
-i output.mp4 \
-decryption_key ebdd62f16814d27b68ef122afce4ae3c
FFplay 重複輸出錯誤saio atom found without saiz
。
-movflags
當加密命令中的替換為 時-movflags frag_keyframe
,可以解碼前幾幀(大概是從第一個mdat
方塊開始)。錯誤訊息更改為Incorrect number of samples in encryption info
。如果我完全刪除-movflags
(不分割影片),重播效果很好。
我使用的是 FFmpeg 5.1 版本。這是 FFmpeg 的已知問題嗎?這可以解決嗎?
我發現有些人在談論同樣的事情/類似問題,但還沒有解決方案。