Opcja proxy HTTP FFmpeg poprzedza jej wejście
Przekaż http_proxy jako opcję protokołu wejściowego i zachowaj osobne argumenty opcji oraz wartości, gdy aplikacja Java uruchamia FFmpeg.
Dla wejścia FFmpeg obsługiwanego przez jego protokół HTTP umieść opcję proxy przed tym wejściem:
ffmpeg -http_proxy http://proxy.example:8080 \
-i 'https://media.example/input.mp4' \
-c copy output.mp4
-http_proxy wybiera pośrednika dla połączenia HTTP wejścia; punkt końcowy z listy proxy HTTP jest kandydatem do publicznej trasy mediów. -i nadal wskazuje zasób mediów. Opcja copy dotyczy strumieni wyjściowych i nie konfiguruje trasy sieciowej.
W Javie również trzymaj opcję i URL jako osobne argumenty procesu:
var command = new ProcessBuilder(
"ffmpeg",
"-http_proxy", "http://proxy.example:8080",
"-i", inputUrl,
"-c", "copy", outputPath
);
Nakładka udostępniająca dodatkowe argumenty potrzebuje tego samego rozróżnienia dwóch tokenów. Pojedynczy ciąg zawierający zarówno -http_proxy, jak i jego wartość nie jest parą opcji i wartości, której oczekuje FFmpeg.
Cudzysłowy używane przez powłokę do grupowania URL nie powinny stawać się dosłownymi znakami na liście argumentów ProcessBuildera.
Opcja proxy HTTP nie jest ogólnym ustawieniem SOCKS i nie konfiguruje niepowiązanego wejścia RTSP/UDP. Sprawdź wybrany protokół FFmpeg i możliwości kompilacji, gdy strumień używa innego transportu.