一、视频加密
将视频从MP4文件切片成多个ts文件,并使用AES-128对每一片视频进行加密,最后生成m3u8文件
视频加密参考:https://www.cnblogs.com/codeAB/p/9184266.html
1、生成公有key
openssl rand 16 > encrypt.key
2、生成私有key(16进制)
openssl rand -hex 16
3、按照下面格式新建一个encrypt.keyinfo的文件
Key URI # enc.key的路径,使用http形式
Path to key file # enc.key文件
Private key # 上面生成的16进制的私有key
举个例子
http://192.168.1.111:8090/encrypt.key
/home/Admin/encrypt.key
8b4c39c498949536f8d2af1f6fec7d39
4、使用ffmpeg开始分片并加密
# 源视频文件 |单片时长(s) | key信息文件 | 设置为点播,切片不会变 | 分片名字 | m3u8名字
ffmpeg -y -i test.mp4 -hls_time 4 -hls_key_info_file encrypt.keyinfo -hls_playlist_type vod -hls_segment_filename "test_%d.ts" index.m3u8