2017-04-30 11 views
0

저는 애니메이션 GIF에서 일부 텍스트를 인쇄하기 위해 drawtext을 사용하고 있습니다.FFMpeg 텍스트 너비?

모든 것이 작동하지만 경계 상자를 지정하고 텍스트를 줄 바꿈 할 수 없습니다.

ffmpeg -i image.gif -filter_complex "drawtext=textfile=text.txt:x=main_w/2 - text_w/2:y=main_h/2 - text_h/2:fontfile=Roboto-Regular.ttf:fontsize=24:fontcolor=000000" image_out.gif 

텍스트 줄 바꿈 할 수있는 방법이 있나요 :

나는 현재이 사용하고 있습니다?

+0

대신 자막을 사용합니다. 이 사이트의 [examples] (http://stackoverflow.com/a/21369850/1109017) 또는 [documentation] (https://ffmpeg.org/ffmpeg-filters.html#subtitles) 및 [FFmpeg wiki] (https://trac.ffmpeg.org/wiki/HowToBurnSubtitlesIntoVideo). drawtext를 사용해야한다면'text.txt'에 줄 바꿈을 추가하십시오. – LordNeckbeard

+0

알겠습니다. 그래도 텍스트 줄 바꿈을 허용 할 수 있습니까? 텍스트 대신 자막을 사용하면 문서를 빠르게 볼 때 이점이 없습니다. – nbrogi

+0

네, 자막이 자동으로 텍스트를 감쌀 것입니다. – LordNeckbeard

답변

2

FFmpeg subtitles filter을 자동 줄 바꿈 및 가운데 가운데에 배치 할 수 있습니다.

많은 자막 형식이 있지만이 대답에는 ASS 및 SRT 자막에 대한 예제가 있습니다. ASS는 더 많은 형식 지정 옵션을 지원하지만 SRT는 더 간단한 형식이며 자막 필터의 force_style 옵션을 사용하여 수정할 수 있습니다.

enter image description here

ASS는

Aegisub에 자막을 확인 자막. 스타일 관리자를 열려면 핑크색 "S"모양의 단추를 클릭하십시오. 수정을 클릭하십시오. 정렬 값 5. ASS 형식으로 자막 파일을 저장하십시오.

ffmpeg 예 :

ffmpeg -i input -filter_complex subtitles=subs.srt -c:a copy output 

SRT 자막

SRT는 ASS보다 간단하지만 자막 필터에 force_style 옵션을 사용해야 할 수 있도록 기능이 부족하다. 이러한 자막을 텍스트 편집기로 만들 수 있습니다. 예 SRT 파일 :

1 
00:00:00,000 --> 00:00:05,000 
Text with 
manual line break 
and with automatic word wrapping of long lines. 

2 
00:00:07,000 --> 00:00:10,000 
Another line. Displays during 7-10 seconds. 

ffmpeg 예 : 더 force_style 옵션을 보려면

ffmpeg -i input -filter_complex "subtitles=subs.srt:force_style='Alignment=10,Fontsize=24'" -c:a copy output 
  • 가 ASS 파일의 내용에 Styles 섹션을 확인하고 ASS Tags를 참조하십시오.

  • 이 경우 Alignmentlegacy line position numbers을 사용하지만 위의 ASS 예는 최신 "numpad"번호 시스템을 사용합니다.

+0

고마워요. ASS 형식으로 UTF-8을 지원했으면 좋겠지 만 작동합니다. – nbrogi

+0

... 글꼴 디렉토리를 지정하는 방법이 있는지 또는 하위가 있어야하는 글꼴인지 알 수 있습니까? – nbrogi

+0

@nbrogi'force_style'에서'Fontname = Arial'과 같은 것을 사용할 수 있습니다. 또는 SRT에서' Foo'(테스팅되지 않음), 을 사용하거나 Aegisub의 글꼴. – LordNeckbeard