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-ը։

Այն չակերտները, որոնք shell-ը օգտագործում է URL-ը խմբավորելու համար, չպետք է դառնան բառացի նշաններ ProcessBuilder-ի արգումենտների ցանկում։

HTTP վստահված սերվերի ընտրանքը ընդհանուր SOCKS կարգավորում չէ և չի կարգավորում նաև անկապ RTSP/UDP մուտք։ Ստուգեք ընտրված FFmpeg արձանագրությունը և կառուցման հնարավորությունները, երբ հոսքը օգտագործում է այլ տրանսպորտ։

Առնչվող հոդվածներ