首页 > 解决方案 > FFMPEG 忽略设置用户代理或其他标头的尝试

问题描述

我在 Windows 上,使用来自 ffmpeg 网站的 Zeranoe 的最新版本。

我的命令是:

ffmpeg.exe -headers 'User-Agent: "This does not Work"' -protocol_whitelist file,http,https,tcp,tls,crypto  -i "local.m3u8" -c copy "out.mp4" -v trace

我的 local.m3u8 文件是:

#EXTM3U
#EXT-X-TARGETDURATION:10
#EXTINF:10.000,
http://127.0.0.1/
#EXT-X-ENDLIST

在 localhost 上,我运行了一个简单的服务器来记录用户代理。它输出:

{ 'user-agent': 'Lavf/58.29.100',
  accept: '*/*',
  connection: 'keep-alive',
  host: '127.0.0.1',
  'icy-metadata': '1' }

尚未设置用户代理。我尝试使用 -user-agent "test" 和 -user_agent "test" 而不是 -header,并尝试以不同的顺序放置参数,但没有成功。-v 跟踪的跟踪输出是https://pastebin.com/raw/W9hsjraT

为什么用户代理没有被覆盖,我该如何覆盖它?

标签: ffmpeguser-agent

解决方案


如果输入 m3u8 是通过 http/s 访问的,FFMPEG 似乎只发送自定义标头,而不是本地文件。感谢@Gyan。


推荐阅读