Как я могу передать вывод ffmpeg в ffplay?
В настоящее время я использую обходной путь в bash :
mkfifo spam
(ffplay spam 2> /dev/null &) ; capture /dev/stdout | ffmpeg -i - spam
Я не знаю, это ffmpeg
не может вывести свои данные в stdout, или ffplay
не может принять входные данные из stdin.
Если это ffmpeg
, который не может выводить свои данные в stdout:
capture /dev/stdout | ffmpeg -i - >(ffplay 2> /dev/null)
(Вам может понадобиться добавить аргумент -
к ffplay
, чтобы он принимал данные с stdin).
Если это ffplay
, который не может принимать входные данные из stdin:
ffplay <(capture /dev/stdout | ffmpeg -i -) 2> /dev/null
Более подробную информацию о конструкции <(command)
и >(command)
смотрите в разделе Подстановка процессов руководства bash.