使用 ffmpeg 下载加密的 m3u8“HTTP 错误 403 禁止”

发布于 2025-01-14 18:30:11 字数 1002 浏览 6 评论 0原文

我一直在使用 ffmepg 和许多工具来下载在线视频,但我有以下情况:

来自流媒体服务器的主 m3u8 文件显示不同的分辨率:

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=133241,RESOLUTION=426x240, CODECS="avc1.42e00a,mp4a.40.2"
240.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=216379,RESOLUTION=640x360, CODECS="avc1.42e00a,mp4a.40.2"
360.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=239756,RESOLUTION=852x480, CODECS="avc1.42e00a,mp4a.40.2"
480.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=408978,RESOLUTION=1280x720, CODECS="avc1.42e00a,mp4a.40.2"
720.m3u8

然后对于每个分辨率有 2 个文件,例如让我们选择 720:

720.m3u8
720.key

720 .m3u8 有段,720.key 有 base64 加密密钥

现在,当我使用 ffmpeg 时,出现以下错误:

[https @ 0x7fc00a40e0c0] HTTP error 403 Forbidden
[hls @ 0x7fc00a204100] Unable to open key file https://hls2.videos.*****/video/720.key

我确信我在 ffmpeg 中添加了所有必需的标头命令:

-user_agent
-referer

我不确定问题是什么,我已经测试了所有其他工具,如 yt-dlp、yotube-dl 和 Streamlink

I have been using ffmepg and many tools to download online videos but I have the following case:

The main m3u8 file from the streaming server shows different resolutions:

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=133241,RESOLUTION=426x240, CODECS="avc1.42e00a,mp4a.40.2"
240.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=216379,RESOLUTION=640x360, CODECS="avc1.42e00a,mp4a.40.2"
360.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=239756,RESOLUTION=852x480, CODECS="avc1.42e00a,mp4a.40.2"
480.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=408978,RESOLUTION=1280x720, CODECS="avc1.42e00a,mp4a.40.2"
720.m3u8

Then for every resolution there are 2 files, for example let us pick the 720:

720.m3u8
720.key

The 720.m3u8 has the segments and the 720.key has base64 encrypted key

Now when I use ffmpeg I got the following error:

[https @ 0x7fc00a40e0c0] HTTP error 403 Forbidden
[hls @ 0x7fc00a204100] Unable to open key file https://hls2.videos.*****/video/720.key

I was sure that I added all the required headers in my ffmpeg command:

-user_agent
-referer

I am not sure what is the problem and I have tested all other tools like yt-dlp, yotube-dl and streamlink

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文