前面有记录过用过ffmpeg来将mp4文件转成个m3u8和ts文件
因为考虑到普通ts文件容易被盗链,所以要给ts来个简单加密,通过ffmpeg转ts时就能实现,步骤如下:
首先,新建一个.key文件,名字随便起,这里sham命名成key.key,然后在里面写入16个字节的字符串,随便写,如:
thisismp4forsham
然后在这个key同目录下,新建一个.keyinfo文件,名字也是随便起,这里sham命名为key.keyinfo,然后再里面写入:
其中第一行的数据会写入到m3u8文件里,是你最终key.key文件存放的位置路径
第二行的当前key.key文件的路径,如果和.keyinfo不在同一目录,需要写上路径
key.key
key.key
最后是在执行ffmpeg时,加入如下代码即可
-hls_key_info_file key.keyinfo
完整的就是
ffmpeg -i demo.mp4 -profile:v baseline -level 3.0 -start_number 0 -hls_time 10 -hls_key_info_file key.keyinfo -hls_list_size 0 -f hls demo.m3u8
这样,生成的m3u8文件里就会添加一行,里面的key.key就是上面说的key.keyinfo中第一行的数据
#EXT-X-KEY:METHOD=AES-128,URI="key.key"
然后生成的ts文件是加密过的,单独下载下来无法播放,除非再用ffmpeg合并解密才行
评论前必须登录!
注册