东莞规划局官方网站,wordpress 标签页,杭州建设招标平台,商城系统哪家的好背景
我想给自己的视频添加字幕#xff0c;但是市面上比较好的软件都不太对我口味#xff0c;要么贵#xff0c;要么就是学习版不给力。兜兜转转#xff0c;我决定用多款开源软件分步实现#xff0c;当然#xff0c;也可以去白piao某些软件的字幕功能。
驱动力
ffmpeg…背景
我想给自己的视频添加字幕但是市面上比较好的软件都不太对我口味要么贵要么就是学习版不给力。兜兜转转我决定用多款开源软件分步实现当然也可以去白piao某些软件的字幕功能。
驱动力
ffmpeg -i video.mp4 -vf subtitlessrt_file.srt output.mp4 成果
于是我写了一个脚本
import osdef start_question():print(\033[38;2;0;255;0m 请确认已下载ffmpeg并已将其的bin文件夹添加至环境变量 \033[0m)print(您可以在此获取 https://www.gyan.dev/ffmpeg/builds/)confirm1 input(Y/N?[Y])if confirm1 N:input([回车退出])return Falseprint(\033[38;2;0;255;0m 请确认您已知晓本程序的基本原理 \033[0m)print(\033[38;2;255;0;0m ffmpeg -i video.mp4 -vf subtitlessrt_file.srt output.mp4 \033[0m)confirm2 input(Y/N?[Y])if confirm2 N:input([回车退出])return Falsereturn Truedef out_mp4_file():print(您可以使用相对路径三条路径均不能包含中文字符)mp4_file input(\033[36m 请输入mp4文件路径: \033[0m)srt_file input(\033[36m 请输入srt文件路径: \033[0m)out_file input(\033[36m 请输入输出文件路径: \033[0m)if mp4_file and srt_file and out_file:os.system(ffmpeg -i {0} -vf subtitles{1} {2}.format(mp4_file, srt_file, out_file))else:print(\033[38;2;255;0;0m 您的输入好像有问题请检查后再试 \033[0m)flag Falsewhile True:if not flag:flag start_question()if not flag:breakout_mp4_file()confirm3 input([回车继续/q 退出])if confirm3 q:break值得注意的是字幕文件要自己写好要能对应的上视频至于对应不上的没有尝试过。 核心是这个
os.system(ffmpeg -i {0} -vf subtitles{1} {2}.format(mp4_file, srt_file, out_file))
运行结果
毫无疑问失败了不过错误也很经典——千万不要在路径中带有中文字符
输出时会显示视频和字幕详情命令行。
当然这种脚本是不可能为字幕添加特效的要专门的剪辑软件才行。