Когда вы используете аргументы -f caca -
, вы указываете ffmpeg преобразовывать кадры видео в текстовое приближение изображения, а затем записывать текст на экран через стандартный вывод. Выводимый текст не в формате видео, это текст, который ваш терминал или консоль может понять.
Это было бы, как если бы вы использовали преобразование текста в речь для преобразования предложения в аудиофайл, а затем попытались взять этот аудиофайл и передать его в текстовый файл. Чтобы сделать то, что вы пытаетесь сделать, вам нужно учитывать тот факт, что вывод текста должен быть обработан в терминале (или что-то вроде терминала), а затем перехвачен.
К счастью, есть несколько способов сделать то, что вы пытаетесь сделать. Я бы начал здесь: http://stariocek.asuscomm.com/watch-ascii-libcaca.html Эта страница содержит скрипт, где ffmpeg используется для вывода кадров фильма в файлы изображений, затем файлы изображений преобразуются в HTML-файл (HTML-файл будет очень похож на выходные данные libcaca), затем эти HTML-файлы выводятся с использованием img2txt, затем эти HTML-файлы отображаются в файлы изображений с помощью webkit2png, и, наконец, файлы изображений объединяются в фильм с помощью mencoder
,
Альтернативным способом будет использование VLC для рендеринга видео с использованием libcaca (vlc --vout caca final3.mp4
, а затем захват результирующего вывода с помощью стандартного инструмента захвата рабочего стола (например, QuickTime Screen Recording, если вы на Mac).