Pri vstupe FFmpeg spracúvanom protokolom HTTP umiestnite volbu proxy pred tento vstup:

ffmpeg -http_proxy http://proxy.example:8080 \
  -i 'https://media.example/input.mp4' \
  -c copy output.mp4

-http_proxy vyberá sprostredkovateľa pre HTTP spojenie vstupu; koncový bod zo zoznamu HTTP proxy je kandidátom pre verejnú mediálnu trasu. -i stále označuje mediálny zdroj. Volba copy sa týka výstupných tokov a nenastavuje sieťovú trasu.

Aj v Jave udržujte volbu a URL ako samostatné argumenty procesu:

var command = new ProcessBuilder(
    "ffmpeg",
    "-http_proxy", "http://proxy.example:8080",
    "-i", inputUrl,
    "-c", "copy", outputPath
);

Obal, ktorý odovzdáva ďalšie argumenty, potrebuje rovnaké rozlíšenie dvoch tokenov. Jediný reťazec obsahujúci aj -http_proxy, aj jeho hodnotu nie je dvojica volby a hodnoty, ktorú FFmpeg očakáva.

Úvodzovky, ktorými shell zoskupuje URL, sa nesmú stať doslovnými znakmi v zozname argumentov ProcessBuilderu.

Volba HTTP proxy nie je všeobecné nastavenie SOCKS a nenastavuje nesúvisiaci vstup RTSP/UDP. Keď tok používa iný transport, skontrolujte zvolený protokol FFmpeg a možnosti zostavenia.

Súvisiace články