HLS 視頻加密小記

我是在ubuntu中,安裝好了 ffmpeghtml

加密用的 key(生成一個encrypt2.key文件)git

openssl rand  16 > encrypt2.key

另外一個是 iv(生成一段字符串,記下來)github

openssl rand -hex 16

新建一個文件 encrypt2.keyinfo 內容格式以下:ubuntu

Key URI  # encrypt2.key的路徑,使用http形式

Path to key file  # encrypt2.key文件路徑

IV  #  上面生成的iv

如:安全

http://localhost/test/encrypt2.key
./encrypt2.key
88c674428c1e719751565ad00fe24243

最後使用 ffmpeg 命令,將一個mp4文件 轉換成 m3u8格式app

ffmpeg -y   -i test.mp4  -hls_time 60  -hls_key_info_file encrypt2.keyinfo  -hls_segment_filename "file%d.ts" playlist.m3u8

以上參數說明:ide

  1. -hls_time 每段文件的時間長度(單位:秒)
  2. -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上再細看code


Reference

  1. 視頻內容誰來保護?阿里雲視頻加密技術大揭祕,打造雲上視頻安全體系 從這個文章中,知道一個 HLS 視頻標準加密
  2. HLS 如何實現加密 ? - 閒散將軍的回答 - 知乎 知道一個 github項目和HLS有關的
  3. 使用ffmpeg視頻切片並加密
相關文章
相關標籤/搜索