പൈപ്പ് ചെയ്ത FFmpeg ഇൻപുട്ടിൽ പ്രോക്സി ഡൗൺലോഡറുടെ കൈവശമാണ്
FFmpeg-ന് ബൈറ്റുകളുടെ പൈപ്പ് മാത്രം ലഭിക്കുമ്പോൾ മീഡിയ ഇറക്കുന്ന പ്രോഗ്രാമിൽ പ്രോക്സി ഇടുക.
FFmpeg pipe:0 വായിക്കുമ്പോൾ അതിന്റെ ഇൻപുട്ട് പ്രോട്ടോക്കോൾ ഒരു പൈപ്പാണ്. മീഡിയ ഇറക്കിയത് curl ആണെങ്കിൽ നെറ്റ്വർക്ക് കണക്ഷൻ തുറന്നത് curl ആണ്, പ്രോക്സി ക്രമീകരണം ലഭിക്കേണ്ടതും അതിനാണ്.
തുടർച്ചയായ MPEG-TS ഇൻപുട്ടിന്, ഒരു Bash പൈപ്പ്ലൈൻ ഇങ്ങനെയാകാം:
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
അനുവദനീയമായ പൊതു മീഡിയ ഡൗൺലോഡിന്, HTTP പ്രോക്സി പട്ടിക curl-ന്റെ പ്രോക്സി URL-ന് സ്ഥാനാർത്ഥികൾ നൽകുന്നു. ഒഴിവാക്കൽ പട്ടിക ശൂന്യമായതിനാൽ ഈ curl അഭ്യർത്ഥന തിരഞ്ഞെടുത്ത ഇടനിലക്കാരനെ ഉപയോഗിക്കുന്നു. മുകളിലെ ഡൗൺലോഡ് പരാജയവും pipefail പൈപ്പ്ലൈനിന്റെ എക്സിറ്റ് നിലയിൽ നിലനിർത്തുന്നു.
FFmpeg-ന്റെ http_proxy ഓപ്ഷൻ പിന്തുണയുള്ള HTTP നെറ്റ്വർക്ക് ഇൻപുട്ടുകളുടെ ഭാഗമാണ്. മറ്റൊരു പ്രോഗ്രാമിന്റെ ഔട്ട്പുട്ട് FFmpeg-ലേക്ക് പൈപ്പ് ചെയ്യുന്നത് കൊണ്ട് മാത്രം അതിന് ആ പ്രോഗ്രാം ക്രമീകരിക്കാൻ കഴിയില്ല.
ഡൗൺലോഡ് FFmpeg നിർവഹിക്കേണ്ടതാണെങ്കിൽ, മീഡിയയുടെ URL നേരിട്ട് നൽകി അതിന്റെ തിരഞ്ഞെടുത്ത പ്രോട്ടോക്കോളും ബിൽഡും പിന്തുണയ്ക്കുന്ന ഓപ്ഷനുകൾ ഉപയോഗിക്കുക. HTTP ഇൻപുട്ടിന്, FFmpeg-ന്റെ പ്രോക്സി ഓപ്ഷൻ ആ ഇൻപുട്ടിന് മുമ്പ് വയ്ക്കുക. പൈപ്പിന് സാധാരണ ഫയൽ തിരയലും ഇല്ലാത്തതിനാൽ, URL-ഉം പൈപ്പ് ഇൻപുട്ടും തമ്മിൽ മാറുമ്പോൾ നിലവിലുള്ള വർക്ക്ഫ്ലോയുടെ ഫോർമാറ്റ് ആവശ്യകതകൾ നിലനിർത്തുക.