Gdy FFmpeg czyta pipe:0, jego protokołem wejściowym jest potok. Jeśli multimedia pobrał curl, to curl otworzył połączenie sieciowe i musi otrzymać konfigurację proxy.

Dla sekwencyjnego wejścia MPEG-TS potok Bash może wyglądać tak:

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

Do dozwolonego pobierania publicznych multimediów lista proxy HTTP dostarcza kandydatów na adres URL proxy dla curl. Pusta lista obejść sprawia, że to żądanie curl korzysta z wybranego pośrednika. pipefail zachowuje też błąd pobierania po stronie nadrzędnej w statusie wyjścia potoku.

Opcja http_proxy FFmpeg należy do obsługiwanych wejść sieciowych HTTP. Nie może skonfigurować innego programu tylko dlatego, że jego wyjście jest przekazywane do FFmpeg potokiem.

Jeśli pobieranie ma wykonać FFmpeg, podaj mu adres URL multimediów bezpośrednio i użyj opcji obsługiwanych przez wybrany protokół i kompilację. Dla wejścia HTTP umieść opcję proxy FFmpeg przed tym wejściem. Potok nie ma też zwykłego wyszukiwania w pliku, więc zachowaj wymagania formatu istniejącego przepływu pracy przy przełączaniu między adresem URL a wejściem potokowym.

Powiązane artykuły