Intereting Posts
xkb: как переключить раскладку клавиатуры с помощью win + caplock? Простая точка доступа для удаленной электроники Linux / FVWM / Acroread – не авторизовать Какой каталог занимает наибольшее пространство фильтровать документ через aspell Как получить группу пользователей и их последний статус логина и пароля в gnu / linux или Unix Перенаправление пакетов и сохранение содержимого на диск Как запустить скрипт оболочки, содержащий команду awk Devilspie2 только обнаруживает окна Firefox при перезагрузке; Как я могу это исправить? Измерение скорости обмена данными между процессами скрипт bash для проверки права собственности на файл Перерыв в работе для цикла после текущей итерации Есть ли встроенная функция (bash / gentoo) для обеспечения хорошо читаемого вывода пользователю? Как запустить такую ​​команду изнутри «найти»? Действительно ли `dd` действительно необходимо клонировать диск?

Как подключить вывод ffmpeg?

Я хотел бы использовать вывод ffmpeg для шифрования видео с помощью openssl :

Я пытался использовать трубку имен без sucess. С помощью команды:

 mkfifo myfifo ffmpeg -f alsa -ac 2 -i plughw:0,0 -f video4linux2 -s vga -i /dev/video0 myfifo 

Я получаю ошибку

 [NULL @ 0x563c02ce5c00] Unable to find a suitable output format for 'myfifo' myfifo: Invalid argument 

Идея состоит в том, чтобы позже зашифровать stdout ffmpeg с помощью

 dd if=myfifo | openssl enc -des3 -out video.mp4 

Как я могу передать вывод ffmpeg в openssl


PS: Я знаю, что шифрование с помощью ffmpeg возможно, но предпочитает использовать openssl с каналом.

ffmpeg пытается угадать формат видео на основе расширения имени файла. Либо «установить параметры для формата вывода и такие», как состояния @ alex-stragies, либо использовать расширение имени файла для вашего fifo, о котором знает ffmpeg.

Если openssl должен быть отключен, также укажите пароль шифрования в командной строке.

При использовании канала или fifo в качестве выхода ffmpeg не может возвращаться и возвращаться в выходной файл, поэтому выбранный формат должен быть чем-то, что не требует случайного доступа во время записи. Например, если вы попытаетесь создать mp4 с видео x264 и аудио aac ( ffmpeg -c:v libx264 -c:a aac ), ffmpeg умрет с помощью [mp4 @ 0xc83d00] muxer does not support non seekable output .

  ( umask 066 ; echo password >/tmp/myfilepasswd ) mkfifo /tmp/schproutz-vid openssl enc -des3 -out video.enc \ -in /tmp/schproutz-vid \ -pass file:/tmp/myfilepasswd & sleep 1 ffmpeg -f alsa -ac 2 -i plughw:0,0 \ -f video4linux2 \ -s vga -i /dev/video0 \ -f ogg /tmp/schproutz-vid 

Как только вы его заработаете, вы можете легко удалить fifo и использовать канал между ffmpeg и openssl:

  ffmpeg -f alsa -ac 2 -i plughw:0,0 \ -f video4linux2 \ -s vga -i /dev/video0 \ -f ogg - | openssl enc -des3 \ -pass file:/tmp/myfilepasswd \ > outputfile.enc