Para una entrada de FFmpeg gestionada por su protocolo HTTP, coloca la opción de proxy antes de esa entrada:

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

-http_proxy selecciona el intermediario para la conexión HTTP de la entrada; un extremo de la lista de proxies HTTP es candidato para una ruta pública de medios. -i sigue nombrando el recurso de medios. La opción copy afecta a los flujos de salida y no configura la ruta de red.

En Java también hay que mantener la opción y la URL como argumentos de proceso separados:

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

Un envoltorio que expone argumentos adicionales necesita la misma distinción entre dos tokens. Una sola cadena que contenga tanto -http_proxy como su valor no es el par opción/valor que FFmpeg espera.

Las comillas que un shell usa para agrupar una URL no deben convertirse en caracteres literales en la lista de argumentos de ProcessBuilder.

La opción de proxy HTTP no es un ajuste general de SOCKS ni configura una entrada RTSP/UDP no relacionada. Comprueba el protocolo de FFmpeg elegido y las capacidades de compilación cuando un flujo usa otro transporte.

Artículos relacionados