HTTP прокси опцията на FFmpeg предхожда нейния вход
Подавайте http_proxy като опция на входния протокол и запазвайте отделни аргументи за опцията и стойността, когато Java приложение стартира FFmpeg.
За вход на FFmpeg, обработван от протокола HTTP, поставете опцията за прокси преди този вход:
ffmpeg -http_proxy http://proxy.example:8080 \
-i 'https://media.example/input.mp4' \
-c copy output.mp4
-http_proxy избира посредника за HTTP връзката на входа; крайна точка от списъка с HTTP прокси сървъри е кандидат за публичен медиен маршрут. -i все още указва медийния ресурс. Опцията copy засяга изходните потоци и не конфигурира мрежовия маршрут.
В Java също дръжте опцията и URL като отделни аргументи на процеса:
var command = new ProcessBuilder(
"ffmpeg",
"-http_proxy", "http://proxy.example:8080",
"-i", inputUrl,
"-c", "copy", outputPath
);
Обвивка, която подава допълнителни аргументи, се нуждае от същото разграничение между два токена. Един низ, съдържащ едновременно -http_proxy и стойността му, не е двойката опция и стойност, която FFmpeg очаква.
Кавичките, с които шелът групира URL, не бива да стават буквални знаци в списъка с аргументи на ProcessBuilder.
Опцията за HTTP прокси не е обща настройка за SOCKS и не конфигурира несвързан RTSP/UDP вход. Проверявайте избрания протокол на FFmpeg и възможностите на компилацията, когато потокът използва друг транспорт.