FFmpeg合并.ts(或.m3u8)文件和字幕文件为新的视频文件

发布时间:2026/10/21 7:00:55

FFmpeg合并.ts(或.m3u8)文件和字幕文件为新的视频文件 目录1 下载安装适合您操作系统的FFmpeg版本2 将所有的.ts文件放在一个文件夹中合并.ts文件2.1 方法一使用FFmpeg的concat协议来合并.ts文件2.2 方法二直接使用concat协议适用于少量文件3 使用FFmpeg将合并后的.ts文件与字幕文件合并成视频3.1 一次性合成.m3u8和字幕文件4 字幕不同步的问题4.1 先合并生成新视频4.2 用视频播放器同步字幕5 中英文双语字幕问题5.1 手动翻译字幕5.2 软件翻译字幕5.3 用音视频剪辑软件生成6 生成目标视频使用多媒体视频处理工具FFmpeg工具将.ts(或.m3u8)文件和字幕文件合并成带同步字幕的新视频。.ts文件:MPEG2-TSTransport Stream是一种音视频封装格式。.m3u8文件:m3u8文件是m3uMP3 URLMP3地址文件的Unicode统一编码版本。m3u8中的“8”代表UTF-8编码这是目前网络通信中最常见的全球通用编码标准。.vtt文件:VTT文件是Web Video Text TracksWebVTT格式的字幕文件。.vtt是纯文本文件可用文本编辑器打开并查看其内容是哪种语言。.srt文件SRTSubRip文本是一种广泛应用于视频字幕同步的行业标准格式其文件扩展名为.srt可通过纯文本编辑器直接编辑。可以先通过下载工具如IDM下载.ts文件或.m3u8文件和.vtt文件或.srt文件等。注意建议将所有的字幕文件编码统一为UTF-8格式避免乱码。1 下载安装适合您操作系统的FFmpeg版本下载和配置FFmpeg环境变量的方法自行搜索。2 将所有的.ts文件放在一个文件夹中合并.ts文件用.ts文件举例2.1 方法一使用FFmpeg的concat协议来合并.ts文件就地新建一个文本文件如filelist.txt其内容为逐行列举所有的.ts文件。即每行一个TS文件名格式为file xxx.ts如下文或见图示file 001.tsfile 002.tsfile 003.ts…列举完后保存退出即可。在当前ts文件夹空白处按 windows r 键弹出运行框输入PowerShell 或 CMD打开命令行运行命令/* ffmpeg -f concat -safe 0 -i filelist.txt -c copy output.ts */说明上述output为自定义的合并后的ts文件名。2.2 方法二直接使用concat协议适用于少量文件命令为/* ffmpeg -i concat:001.ts|002.ts|003.ts -c copy output.ts */说明跟方法一的区别是直接在命令中列举所有的ts文件。3 使用FFmpeg将合并后的.ts文件与字幕文件合并成视频如合并后的ts文件名为output.ts对应的中英文字幕文件是merged.vtt期望合并后的视频为mp4格式且名称为output_final则命令为/* ffmpeg -i output.ts -i merged.vtt -c copy -c:s mov_text output_final.mp4 说明 -c copy 表示视频和音频流直接复制不重新编码以保持高清质量。 -c:s mov_text 表示将字幕流设置为mov_text格式适用于MP4容器。 */3.1 一次性合成.m3u8和字幕文件也可以通过开发者工具获取到原视频文件的.m3u8文件的链接地址然后直接一次性合并原视频和字幕文件转换成新的视频。如m3u8的地址是https://hls.ted.com/project_masters/10514/manifest.m3u8对应的字幕文件是Talk.vtt期望生成的视频是output_final.mp4则命令为/* ffmpeg -i https://hls.ted.com/project_masters/10514/manifest.m3u8 -i Talk.vtt -c c opy -c:s mov_text output_final.mp4 */4 字幕不同步的问题以上方法可能会遇到合并后的mp4视频文件字幕不同步的问题。4.1 先合并生成新视频建议把字幕文件放一边先将下载的ts或m3u8文件转换成mp4文件再用其它工具解决字幕不同步的问题。FFmpeg将ts或m3u8转为mp4文件的命令是/* ffmpeg -i input.ts -c:v libx264 -c:a aac output.mp4 */或/* ffmpeg -i input.mkv -c:v libx264 -c:a aac -strict experimental output.mp4 mkv转mp4视频H264、音频AAC编码微信视频号要求视频是视频H264、音频AAC编码 */或/* ffmpeg -i http://xxx.com:8891/1231/index.m3u8 -c copy -bsf:a aac_adtstoasc output.mp4 */不会的命令可搜索。4.2 用视频播放器同步字幕推荐用PotPlayer视频播放器解决字幕不同步的方法:1、将视频和字幕文件改为同一个名字如video.mp4和video.vtt (其它格式的字幕文件也可以如video.srt)便于打开视频时让播放器自动识别字幕文件否则需要手动导入字幕。2、PotPlayer可以手动调整字幕跟视频同步这个就是纯PotPlayer中操作了不会的搜索一下。提示导入原视频和字幕文件后PotPlayer可以将原字幕格式导出保存为另一种格式。5 中英文双语字幕问题上述操作完成后视频应该有一种语言的字幕了且字幕是同步的。但想要同步的双语字幕该怎么办呢5.1 手动翻译字幕字幕文件可以是.vtt或.srt或.txt等多种格式且字幕文件本质上是文本可以用文本编辑器如Notepad直接打开编辑。假如原字幕是英文字幕现在想添加同步的中文字幕笨方法是将英文一句一句翻译为中文后粘贴回去如图单一字幕双语字幕手动翻译完成之后还是将视频和字幕命名为相同名称再次播放视频时PotPlayer即可自动识别。但PotPlayer无法生成和导出双语同步字幕视频需要使用PotPlayer重新录制一遍。如感觉麻烦可以使用剪映等视频剪辑软件合并原视频和双语字幕文件生成一个合二为一的新视频。5.2 软件翻译字幕使用字幕翻译软件如SrtTranslator若SrtTranslator失效可找其它类似软件直接将原单一字幕文件翻译生成为一个新的双语字幕文件用PotPlayer打开即可自动识别。合并原视频和双语字幕文件的方法仍然需要使用其它的视频剪辑软件。5.3 用音视频剪辑软件生成如将原视频和单一字幕文件导入剪映后开启它的双语字幕功能后可傻瓜式地生成我们需要的目标视频但需要会员请自行考虑。6 生成目标视频上文提过解决了.ts(或.m3u8)合成mp4或mkv等其它格式视频问题、字幕不同步问题、无双语字幕问题等最终需要借助视频剪辑软件生成合并后的目标视频文件这才是我们想要的。关注我: Accrual
延伸阅读

更多相关文章

2026/10/18 2:18:59

Mac恢复出厂设置全攻略:从备份到重装,彻底解决系统顽疾

1. 为什么你需要“恢复出厂设置”?在Mac用户群体里,“恢复出厂设置”这个操作,常常被看作是一剂猛药。它不像日常清理缓存、卸载几个App那么简单,而是一个将你的MacBook、iMac或Mac mini从里到外“格式化”的过程,最终…

2026/10/19 15:48:40

VMware安装Rocky Linux 9:从零搭建Linux虚拟机实验环境

1. 项目概述:为什么选择VMware与Linux的组合?如果你刚接触软件开发、网络安全或者系统运维,听到“虚拟机”和“Linux”这两个词,可能会觉得有点门槛。但别担心,我今天要分享的,就是如何用最经典的工具VMwar…

2026/10/21 14:53:40

轻量适配层设计:跨环境响应式引擎架构的工程实践

1. 从“rea”这个标题说起:一个极简命名背后的完整项目思维 第一次看到“rea”这个标题的时候,我脑子里蹦出来的第一个念头是——这大概率是个缩写。在技术圈混久了,你会发现大家给项目起名有个习惯:要么往长了堆,堆到…

2026/10/21 14:53:40

个人技能管理指南:盘点、组合、习得、展示与迭代

“skills”是个再常见不过的词,可放到个人成长和职业发展里,它既是硬通货,也是很多人最说不清的东西。我见过太多人一边焦虑"没有核心竞争力",一边连自己到底会什么、擅长什么、哪些技能正在贬值,都列不出一…

2026/10/21 14:53:40

轻量级地图可视化组件lingbot-map:从零搭建轨迹与围栏实践

1. 从零搭建 lingbot-map:一个轻量级地图可视化组件的完整实践 第一次看到 lingbot-map 这个命名的时候,我脑子里蹦出来的第一反应是:这大概率又是一个把地图渲染和机器人轨迹叠加在一起的可视化小工具。后来在实际项目里折腾了几周&#x…

2026/10/21 14:53:40

低压电器符号识图与绘图:国标分类、文字与图形符号全解析

简介:电气图纸绘制与识读中,低压电器的图形符号和文字符号是工程师沟通的基础。围绕GB 5094—85、GB 7159—87及GB 4728—85三项标准,这份doc文档系统整理了单字母和双字母基本文字符号、辅助文字符号的含义与用法,并通过分类表格…

2026/10/21 14:53:40

WebSocket+React:实时日志监控与事件流分析看板实践

1. 项目概述与设计初衷1.1 我看到的需求盲区:日志不止要看,还要"实时"在做运维监控和数据排查的时候,我最怕遇到一种场景:线上服务明明报了错,日志文件也一直在滚动,但等我把几十MB的文本拖到编辑…

2026/10/21 14:48:36

FreeSWITCH SDP中external_rtp_ip固定配置详解

1. 项目概述:为什么必须把 FreeSWITCH 的 SDP 中的 external_rtp_ip “钉死”?在 VoIP 系统集成现场,我见过太多次“通话能接通、但声音单向/断续/一接就卡死”的案例——客户急得直拍桌子,开发团队抓耳挠腮查了三天 SIP 消息流&a…

2026/10/21 4:53:08

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/21 0:00:35

交通流仿真实战:IDM跟驰与MOBIL换道模型参数调优与避坑指南

简介:这份资源是面向交通工程学习者与Python开发者的微观交通流仿真项目,核心实现智能驾驶模型(IDM)下的车辆跟驰与换道行为,可用于理解速度、密度与流量之间的动态关系,适合具备Python基础、希望深入交通模…

2026/10/21 0:00:35

揭穿智能体表面顺从:用追踪代码重建任务执行确定性

1. 表面顺从不是智能体的“礼貌”,而是任务执行链路上的隐性断点最近在调试一个跨平台长周期任务调度系统时,我反复遇到一种令人困惑的现象:智能体在用户指令发出后,几乎秒级响应“已收到”“正在处理”“请稍候”,UI上…

2026/10/21 0:00:35

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑