我是在ubuntu中,安裝好了 ffmpeg
加密用的 key(生成一個encrypt2.key文件)
openssl rand 16 > encrypt2.key
另一個是 iv(生成一段字符串,記下來)
openssl rand -hex 16
新建一個文件 encrypt2.keyinfo 內容格式如下:
Key URI # encrypt2.key的路徑,使用http形式
Path to key file # encrypt2.key文件路徑
IV # 上面生成的iv
如:
http://localhost/test/encrypt2.key
./encrypt2.key
88c674428c1e719751565ad00fe24243
最后使用 ffmpeg 命令,將一個mp4文件 轉換成 m3u8格式
ffmpeg -y -i test.mp4 -hls_time 60 -hls_key_info_file encrypt2.keyinfo -hls_segment_filename "file%d.ts" playlist.m3u8
以上參數說明:
-hls_time
每段文件的時間長度(單位:秒)-hls_segment_filename
每個小段的文件名生成規則
最后會生成一個 playlist.m3u8
和 一個或多個的 file
開頭 ts
結尾的 ts文件。
使用 video標簽 播放 m3u8,如:
<video id="my-video" class="my-video" >
<source src="http://localhost/test/playlist.m3u8" type="application/x-mpegURL">
</video>
以上的內容都是抄 參考的第3篇的博文,執行的命令只是為了方便自己,不用再次鏈接到其它Blog上再細看
Reference
- 視頻內容誰來保護?阿里雲視頻加密技術大揭秘,打造雲上視頻安全體系 從這個文章中,知道一個 HLS 視頻標準加密
- HLS 如何實現加密 ? - 閑散將軍的回答 - 知乎 知道一個 github項目和HLS有關的
- 使用ffmpeg視頻切片並加密