ffmpeg 切片加密 手札

需要一个通用的KEY和一个IV
生成KEY

openssl rand -base64 20 > enc.key 

生成IV

openssl rand -hex 16

新建一个文件enc.keyinfo 内容格式如下:

Key URI # enc.key的路径,使用http形式
Path to key file # enc.key文件
IV # 上面生成的iv

播放是通过M3U8文件得到需要HTTP(即第一行的 Key URI)访问的key,然后取得key,进行解码访问。

http://edu.gamagou.cn/enc.key
/usr/share/nginx/html/enc.key
682f5033538cf71567e1bdb38f5f9a07

enc.keyinfo仅用于视频切片,可以多个视频都用一个文件进行切片

ffmpeg -y -i input.mp4 -hls_time 12 -hls_key_info_file enc.keyinfo -hls_playlist_type vod -hls_segment_filename "file%d.ts" playlist.m3u8

建议还是先转码后再切片。

发表回复