【问题标题】:how to use ffmpeg encrypt AES-128 HLS m3u8 playlist? [duplicate]如何使用 ffmpeg 加密 AES-128 HLS m3u8 播放列表? [复制]
【发布时间】:2016-03-29 05:50:12
【问题描述】:

我使用ffmpeg -i fighter.mp4 -hls_time 10 stream.m3u8 创建了一个 m3u8 文件。 但是 m3u8 文件中没有 #EXT-X-KEY 信息。 如何在 HLS 播放列表中添加 key?

【问题讨论】:

    标签: ffmpeg aes http-live-streaming


    【解决方案1】:

    要使用 FFmpeg 的 HLS 分段加密功能,请查看 the documentation 的 22.7.1。

    您可以传递hls_key_info_file 选项,指向包含密钥信息的文件。该文件可能如下所示:

    http://server/file.key
    /path/to/file.key
    

    该文件的第一行说明了密钥的 URI,该密钥被写入 HLS 播放列表。文件的第二行指向密钥文件(可以是本地或 http),媒体将根据该密钥文件进行加密。

    因此,在您的 FFmpeg 命令中添加类似这样的内容应该可以:

    ffmpeg -i fighter.mp4 -hls_time 10 -hls_key_info_file file.keyinfo stream.m3u8

    【讨论】:

    • 我在 mac os x 上使用 ffmpeg,通过 brew 安装。运行命令后出现如下错误:Unrecognized option 'hls_key_info_file'。如何解决?
    • 请提供完整的 FFmpeg 命令,另外,请运行 ffmpeg -version 并告诉我您在 Mac 上运行的软件版本。 FFmpeg 在 2014 年 12 月增加了对 -hls_key_info_file 选项的支持,因此您需要最新版本的 FFmpeg 才能完成这项工作。
    猜你喜欢
    • 2021-10-27
    • 2018-05-30
    • 1970-01-01
    • 1970-01-01
    • 2014-09-12
    • 1970-01-01
    • 1970-01-01
    • 2017-11-07
    • 1970-01-01
    相关资源
    最近更新 更多