Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

FFMPEG - Fading text with background

I'm trying to fade a text in and out (the text has a background), at the moment, what I have is this command:

1. Blend command

ffmpeg -y -i input.mp4 -filter_complex "drawtext=fontfile=HelveticaNeue.ttf:text='Testing': fontcolor=white:fontsize=40: box=1: [email protected]:boxborderw=5:x=(w-text_w)/2:y=(h-text_h)/2[subtitles];[subtitles][0:v]blend=all_expr='A*(if(between(T,1,2),(T-1),0))+B*(1-(if(between(T,1,2),(T-1),0)))'[out]"  -map '[out]' -map 0:a output.mp4

The command above successfully fades in the drawtext (aka subtitles in this filter), but I haven't managed to make it fade them out for some reason, because changing the numeric values of it don't quite have the result I expect.

I've also tried a command that is less complex but doesn't work too for other reasons:

2. Fade command

ffmpeg -y -i input.mp4 -filter_complex "drawtext=fontfile=HelveticaNeue.ttf:text='Testing': fontcolor=white:fontsize=40: box=1: [email protected]:boxborderw=5:x=(w-text_w)/2:y=(h-text_h)/2[subtitles]; [subtitles]fade=t=in:st=2:d=1,fade=t=out:st=3:d=1[out]"  -map '[out]' -map 0:a output.mp4

This second command fades in and out, but applies to the entire video and not the subtitles part alone.

Any way someone can give me a hand with this?

like image 617
Helder Santos Avatar asked Dec 19 '22 04:12

Helder Santos


1 Answers

ffmpeg -y -i input.mp4 -filter_complex "[0:v]drawtext=fontfile=Lato-Light.ttf:text='Sample Text':fontsize=40:fontcolor=985a5a:alpha='if(lt(t,2),0,if(lt(t,3),(t-2)/1,if(lt(t,6),1,if(lt(t,7),(1-(t-6))/1,0))))':x=(w-text_w)/2:y=(h-text_h)/2" output.mp4

Follow this link to generate your own ffmpeg command for text fade in fade out: http://ffmpeg.shanewhite.co/

like image 174
Sunny Rajdeep Avatar answered Dec 27 '22 04:12

Sunny Rajdeep