使用 FFMPEG 剪切部分字幕文件

Ana*_*nas 5 command-line ffmpeg subtitle

我想编辑带有音频视频字幕流的输入 mp4 文件,我可以通过以下方式成功剪切视频和音频流: 1- 将每个部分转换为新的 mp4 文件 2- 将 mp4 文件转换为 mpg 文件

ffmpeg -i out00.mp4 -qscale:v 0 intermediate1.mpg
ffmpeg -i out01.mp4 -qscale:v 0 intermediate2.mpg
Run Code Online (Sandbox Code Playgroud)

3-合并mpg文件

ffmpeg -i concat:"intermediate1.mpg|intermediate2.mpg" -c copy intermediate_all.mpg
Run Code Online (Sandbox Code Playgroud)

4- 将 mpg 文件转换回 mp4

ffmpeg -i intermediate_all.mpg  -f mp4 output.mp4
Run Code Online (Sandbox Code Playgroud)

我可以将字幕流提取到 srt 文件,但我无法剪切字幕文件的部分内容,您知道如何做到这一点吗?

Ana*_*nas 4

好吧,经过长时间的搜索之旅,它起作用了,这是我所做的:

1-从这里下载最新的 FFMPEG (这给我带来了很多问题)。

2- 将字幕添加到输入文件中:

ffmpeg -i "input.mkv" -i subtitles.srt -c copy -c:s srt -metadata:s:s:1 language=eng -map 0 -map 1 -map_metadata 0 output.mkv
Run Code Online (Sandbox Code Playgroud)

3-像平常一样剪切你需要的部分ffmpeg也会剪切字幕流

ffmpeg -i input.mkv -ss 00:00:00 -t 00:01:35 -c copy -map 0:0 -map 0:1 -map 0:2 -qscale:0:V 0 -y out0.mkv
Run Code Online (Sandbox Code Playgroud)

4- 使用 concat demux 连接剪切文件:

ffmpeg  -f concat -i mylist.txt  -c copy output.mkv
Run Code Online (Sandbox Code Playgroud)

其中 mylist.txt 包含:

文件out0.mkv

文件out1.mkv

享受 :)。

  • 所以一定是MKV!我之前用 MP4 尝试过,我想知道为什么低音炮没有被修剪。虽然我知道 MP4 可以包含低音炮,但不知道为什么它不起作用。谢谢你! (2认同)