HTTP/HTTPS 代理和 FFmpeg

HTTP/HTTPS 代理和 FFmpeg

我需要在 HTTP/HTTPS 代理服务器后面使用 FFmpeg。我使用以下命令行:

ffmpeg -v debug -http_proxy http://localhost:8888 -i "https://bitmovin-a.akamaihd.net/content/sintel/sintel.mpd"

命令成功执行,FFmpeg 下载 DASH 清单和初始化段,但它不会通过代理服务器执行此操作。

我发现,如果我将 URL 更改为http而不是 ,https它将通过代理下载清单,但片段不会通过代理下载。这很可能是因为清单中的片段是 HTTPS。

我如何才能说服 FFmpeg 除了 HTTP 请求之外还使用我的代理来处理 HTTPS 请求?

答案1

据消息人士透露,

if (!strcmp(proto, "https")) {
    lower_proto = "tls";
    use_proxy   = 0;

所以 ffmpeg 命令行选项将不起作用。

但是,如果您使用环境变量提供路径,安全传输似乎允许使用代理。

proxy_path = getenv("http_proxy");
...

if (use_proxy) {
    char proxy_host[200]...

我将看看是否可以添加 CLI 选项。

相关内容