проблема с использованием ffmpeg drawtext для RTL язык - PullRequest
0 голосов
/ 01 октября 2018

я использую эту команду для записи на видео:

 ffmpeg -i source.mp4 -vf drawtext=\"text_shaping=1:fontfile=font.ttf:
    text='یه نوشته فارسی!': fontcolor=black: fontsize=$font_size: box=1: boxcolor=black@0:boxborderw=0: x=(w-text_w)/2: y=(h-text_h)/2 :enable='between(t,5,10)'\"  -c:a copy -force_key_frames 0:05:00,0:6:00 end.mp4

она отлично работает, когда у меня нет цифр и символов (!,?, $ И ...) в начале и концемой текст.мой язык справа налево и эта команда не поддерживает RTL.что я должен сделать, чтобы решить эту проблему?

1 Ответ

0 голосов
/ 09 января 2019

Прежде всего, проблема на самом деле не связана с rtl или FFMPEG .Если вы хотите использовать символы типа "!" , вам нужно экранировать их .Я смог нарисовать текст без каких-либо проблем, избежав восклицательного знака (например: text='مرحبا بيتر\!'), без каких-либо других специальных мер.

Во-вторых, вы всегда должны быть осторожны, оставляя пробелывнутри фильтров или между параметрами фильтра .

В-третьих, при задании вопросов всегда лучше предоставить дополнительную информацию (например, отчеты , logs и т. Д.), А не общие утверждения типа «это не работает».

Я знаю, что это уже старый вопрос, но я действительно надеюсь, что это поможет вам и / или другим людям.

...