Atsisiuntėjas valdo tarpinį serverį vamzdiniame FFmpeg įėjime
Nustatykite tarpinį serverį programai, kuri atsisiunčia mediją, kai FFmpeg gauna tik baitų vamzdį.
Kai FFmpeg skaito pipe:0, jo įėjimo protokolas yra vamzdis. Jei mediją atsisiuntė curl, tinklo ryšį atidarė curl ir jis turi gauti tarpinio serverio konfigūraciją.
Nuosekliam MPEG-TS įėjimui Bash vamzdynas gali atrodyti taip:
set -o pipefail
curl --fail --silent --show-error \
--proxy http://proxy.example.net:8080 --noproxy "" \
'https://media.example.net/stream.ts' |
ffmpeg -i pipe:0 -c copy output.ts
Leidžiamam viešos medijos atsisiuntimui HTTP tarpinių serverių sąrašas siūlo kandidatus curl tarpinio serverio URL adresui. Tuščias aplenkimo sąrašas lemia, kad ši curl užklausa naudos pasirinktą tarpininką. pipefail taip pat išsaugo aukštesnio lygio atsisiuntimo klaidą vamzdyno išėjimo būsenoje.
FFmpeg parinktis http_proxy priklauso palaikomiems HTTP tinklo įėjimams. Ji negali sukonfigūruoti kitos programos vien todėl, kad tos programos išvestis perduodama į FFmpeg vamzdžiu.
Jei atsisiuntimą turi atlikti FFmpeg, perduokite jam medijos URL tiesiogiai ir naudokite parinktis, kurias palaiko jo pasirinktas protokolas ir kompiliavimas. HTTP įėjimui padėkite FFmpeg tarpinio serverio parinktį prieš tą įėjimą. Vamzdis taip pat neturi įprastos failo paieškos, todėl išsaugokite esamo darbo eigos formato reikalavimus perjungdami tarp URL ir vamzdinio įėjimo.