使用ffmpeg进行ts切片并AES-128加密

2019-08-16 13:18:48

参考链接 使用ffmpeg进行ts切片并AES-128加密

目录应包含文件

input.mp4videokey.infovideo.key

videokey.info文件内容示例

http://example.com/video.keyvideo.key

video.key文件内容示例

DMvkBs7vNlok1kj9

切片并加密

ffmpeg -i input.mp4 -c copy -bsf:v h264_mp4toannexb -hls_time 5 -hls_list_size 0 -hls_key_info_file videokey.info output.m3u8

-hls_time 设置每片的时长,默认值为2。单位为秒
-hls_list_size 设置播放列表保存的最多条目,设置为0会保存所有切片信息,默认值为5

由于解密的key文件都是公开的,所以并不能算上完全加密,用户只要把你的key+m3u8里的ts切片文件全部下载,用ffmpeg还是能解,这时就要考虑url的key防止用户直接下载和盗链。


  • 2020-12-01 16:14:54

    HTTP状态码429的含义

    发生429是服务器接口并发太多引起的,可根据代码进行修改,放开限制次数

  • 2020-12-01 16:19:26

    vue中动画分布解析

    enter, enter-active, enter-active-to, (开始 进入阶段的)第1帧 属性值,到 (默认属性值 的过渡阶段),移除enter动画, leave, leave-active, leave-active-to (开始 离开 阶段的)第1帧 默认属性值,到 (属性值 的过渡阶段),移除leave动画

  • 2020-12-01 16:21:47

    Meteor与express结合开发

    Meteor本质上是一个已经公开了连接 http服务器的节点应用程序,这意味着您可以像下面这样定义服务器路由:,如果您坚持使用Express,则可以将Express路由注册为Connect中间件,如下所示:

  • 2020-12-01 16:25:32

    nuxtjs引入jquery

    nuxt引入jQuery库 nuxtjs如何添加 Webpack 插件?

  • 2020-12-01 16:43:37

    fieldset标签做输入框

    比如 vuetify中的 input组件,就用到了fieldset做边框, 这个时候我们想改边框,却找不到border,因为fieldset是靠color来修改边框颜色的。