HLS加密、解密细节 您所在的位置:网站首页 在线视频加密怎么解除 HLS加密、解密细节

HLS加密、解密细节

2023-08-17 20:04| 来源: 网络整理| 查看: 265

加密:使用FFmpeg进行视频文件切割转m3u8索引文件(ts文件)并AES-128加密;

解密:索引m3u8文件含有获取解密匙URI,大致如下: #EXT-X-KEY:METHOD=AES-128,URI=“https://priv.example.com/key.php?r=53” URI部分就是去获取解密匙的http请求,进行边解密边播放。 URI可以加token进行权限控制。

加密解密原理参考:https://blog.csdn.net/coloriy/article/details/47295499?utm_source=blogxgwz9 使用ffmpeg将视频切片并加密参考:https://blog.csdn.net/zyxzj/article/details/104520298 java调用ffmpeg开源项目(maven引入,免安装FFmpeg):https://github.com/a-schild/jave2

//java调用ffmpeg开源项目:https://github.com/a-schild/jave2 //使用FFmpeg命令如下 FFMPEGLocator locator = new DefaultFFMPEGLocator(); FFMPEGExecutor ffmpeg = locator.createExecutor(); ffmpeg.addArgument("some i need self operation here"); ffmpeg.execute(); ffmpeg.destroy();

使用ffmpeg将视频切片并加密: 前提条件,需要有ffmpeg,最新版格式工厂安装后,会自动装上ffmpeg 在这里插入图片描述

新建一个记事本,取名enc.key(名字可以随便取),添加16个字节的秘钥,如

qwertyuiop123456

新建一个文件,enc.keyinfo,添加如下内容

http://localhost:8080/enc.key enc.key

这里需要把enc.key和enc.keyinfo放在同一目录下

在当前目录运行cmd或者powershell

执行

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

解释:

video.mp4 --需要处理的视频

-hls_time 12 --将分片时长设置为12秒

-hls_segment_filename “file%5d.ts” --设置ts文件格式化名称

video.m3u8 --m3u8文件名

生成后,将所有文件移动到本地搭建的tomcat中,方便测试

同时,将enc.key也放到本地服务中,保证KeyUrl可以访问:http://localhost:8080/enc.key,这样一来,m3u8就可以在支持网络串流的播放器中播放了,这里推荐使用VLC media player,播放时,m3u8文件会自动寻找秘钥keyUrl

在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有