Я пытаюсь нарисовать текст на видео, используя команды avconv или ffmpeg. При указании x = для того, где в последнем видео разместить текст, значение text_w оценивается как 0, а не как ширина отображаемого текста, как это должно быть.
- Я использую Ubuntu 12.04
- У меня есть версия avconv 0.8.3-4:0.8.3-0ubuntu0.12.04.1
- и ffmpeg версия 0.8.3-4:0.8.3-0ubuntu0.12.04.1
Пример команды:
avconv -i test.mov -vf "drawtext=fontfile='/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf':text='test text':x=text_w:y=50:fontsize=24:fontcolor=black" texted.mov
Эта команда заставляет текст печататься так, как если бы x было установлено в 0.
То, что я действительно хотел бы сделать, это центрировать текст по горизонтали, используя что-то вроде этого:
avconv -i test.mov -vf "drawtext=fontfile='/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf':text='test text':x=(main_w-text_w)/2:y=50:fontsize=24:fontcolor=black" texted.mov
Использование ffmpeg для попытки выполнить то же самое заканчивается с тем же результатом
ffmpeg -i test.mov -vf "drawtext=fontfile='/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf':text='test text':x=(main_w-text_w)/2:y=50:fontsize=24:fontcolor=black" texted.mov