avconv - не работает фильтр drawtext
Я собираюсь добавить текст в видео фрагмент, используя -vf но это не работает Вот что я пробовал
avconv -ss 00:00:20 -i input.mp4 -t 00:00:10 -vcodec copy -acodec copy \
-vf "drawtext=fontfile='/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf':text='hello world':x=0:y=0:fontsize=24:fontcolor=black" output.mp4
Но текст не появляется. я знаю это -t аргумент должен появиться после -i или продолжительность не будет установлена. Интересно, если я ошибся -vf в этом случае. Кто-нибудь скажет мне, как это сделать?
PS я устанавливаю это с apt-get install ffmpeg, Информация о программном обеспечении:
avconv version 0.8.9-6:0.8.9-0ubuntu0.13.04.1, Copyright (c) 2000-2013 the Libav developers
built on Nov 9 2013 19:09:48 with gcc 4.7.3
2 ответа
Решение
Если мы хотим добавить текст к нашему видео, используя drawtext Фильтр мы не можем использовать copy видео кодек.
Добавление текста к видео изменит данные видео. Поэтому мы должны перекодировать видеопоток, используя любой кодек, кроме copy,
Следующая команда работала для меня:
avconv -i input.mp4 -vf "drawtext=fontfile='/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf':text='hello world':x=0:y=0:fontsize=24:fontcolor=black" output.mp4
протестировано на этом примере файла mp4.