ffmpeg -i sourcepath.mov -filter_complex "[0]split[base][text];[text]drawtext=fontfile=Arial.ttf:text='Mark Simson': fontcolor=white: fontsize=44: box=1: boxcolor=black@0.8:boxborderw=10:x=(200):y=(900),format=yuva444p,fade=t=in:25:st=0:s=125:alpha=1,fade=t=out:250:25:alpha=1[subtitles];[base][subtitles]overlay" -pix_fmt yuv422p10le -c:v prores -c:a pcm_s24le outfiele.mov
This will draw text which looks like this
- Screenshot 2021-10-23 at 13.05.50.png (278.93 KiB) Viewed 1520 times
You control: position (in pixels from top left corner), font type, font size, font color, box color and opacity (@0.8 value), box border (10 pixels). Then time it appears in video (s=125 in frame numbers, will be subtracted by fade in time), fade in/out times (both 25 frames here) and how long to keep text (this is difference between out:250 and s=125 frames, so 125 frames, but will be actually subtracted by 50 frames (25 for fading/out).
In example above overlay starts at 4 seconds (s=125-25 frames for fade in time) and last up to 9th second and then 1 sec fade out (so ends at 250th frame). Full visibility if from 5th to 9th second.
End result saved as ProRes and PCM.
You just now add bit of code which takes file after file with equivalent text and job done
I could write it for you (in Python), but not for free.