如何解密用ffmpeg加密的分段部分.ts文件?

How to decrypt segmented parts .ts files which are encrypted with ffmpeg?

我使用ffmpeg生成加密的m3u8播放列表,生成和播放都完美无缺

我用来生成m3u8的语句:

ffmpg -i "source.mp4"  -c:v h264_nvenc 
 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 10 -hls_playlist_type vod
 -hls_key_info_file "d:\enc.keyinfo" -hls_segment_filename "output_d.ts" "output.m3u8";

d 的内容:\enc.keyinfo:

/enc.key
d:\enc.key
261daad184c6acf4a3a21393ds232e1a

现在我需要解密一个或多个生成的.ts片段(不是整个m3u8播放列表),我该怎么办?

如果你只想手动完成,你可以使用 openssl

openssl aes-128-cbc -d -in encrypted.ts -out decrypted.ts -nosalt -K 261daad184c6acf4a3a21393ds232e1a -iv <iv>

为此,您还需要从 output.m3u8 播放列表文件中获取 IV。它是 #EXT-X-KEY 标签上的 属性。如果未在该标签上明确指定,则第一个段隐式为 0,第二个段为 1,依此类推。