x74*_*x61 206 ffmpeg video-editing
我有一个 30 分钟的视频文件,但我想提取从 00:09:23 到 00:25:33 的视频。
我可以用 定义开始位置-ss,但找不到结束位置的位置。请问有什么帮助吗?
slh*_*hck 328
确保您下载了最新版本的ffmpeg,并且不要使用您的发行版(例如 Ubuntu)附带的版本。来自各种发行版的打包版本通常已经过时并且无法按预期运行。
或者自己编译。
使用它从视频剪切[start]为[duration]:
ffmpeg -ss [start] -i in.mp4 -t [duration] -c copy out.mp4
Run Code Online (Sandbox Code Playgroud)
使用它来剪切视频[start]到[end]:
ffmpeg -ss [start] -i in.mp4 -to [end] -c copy -copyts out.mp4
Run Code Online (Sandbox Code Playgroud)
此处,选项的含义如下:
-ss指定开始时间,例如00:01:23.000或83(以秒为单位)-t 指定剪辑的持续时间(相同格式)。-t,您还可以使用-to,它指定结束时间(需要-copytsif -ssis before -i,以便更快地查找)。请注意,如果您使用了-ss,则必须从-to时间戳中减去它。例如,如果您使用 剪切-ss 3 -i in.mp4 -to 5,输出将是五秒长。-c copy将第一个视频、音频和字幕比特流从输入复制到输出文件,无需重新编码。这不会损害质量并使命令在几秒钟内运行。有关更多信息,请参阅https://trac.ffmpeg.org/wiki/Seeking
如果您省略该-c copy选项,ffmpeg将根据您选择的格式自动重新编码输出视频和音频。对于高质量的视频和音频,请分别阅读x264 编码指南和AAC 编码指南。
例如:
ffmpeg -ss [start] -i in.mp4 -t [duration] -c:v libx264 -c:a aac -strict experimental -b:a 128k out.mp4
Run Code Online (Sandbox Code Playgroud)
小智 44
我认为您现在可以使用以下命令。
ffmpeg -i inputFile -vcodec copy -acodec copy -ss 00:09:23 -to 00:25:33 outputFile
Run Code Online (Sandbox Code Playgroud)
也看看ffmpeg Doc,或这个 wiki 页面。
mal*_*lat 18
奇怪的是没有人建议使用trim filter。
删除除输入的第二分钟以外的所有内容:
ffmpeg -i INPUT -vf trim=60:120
Run Code Online (Sandbox Code Playgroud)
只保留第一秒:
ffmpeg -i INPUT -vf trim=duration=1
Run Code Online (Sandbox Code Playgroud)
删除除第 13 秒到第 58 秒以外的所有内容:
ffmpeg -i INPUT -vf trim=13:58 OUTPUT
Run Code Online (Sandbox Code Playgroud)
您可以使用这两种适用于 Windows 和 Linux 的方法。
ffmpeg 有两种分割视频文件的方法。第一个本身就很好,不仅如此 - 它更快,但有时会创建具有某些缺陷的输出文件。所以对于这些情况,有第二种分割视频文件的方法:它相当慢,输出文件更大,但它们似乎总是与使用的输入文件具有相同的质量水平。
方式一:
Run Code Online (Sandbox Code Playgroud)ffmpeg -ss <start> -i in1.avi -t <duration> -c copy out1.avi方式二:
Run Code Online (Sandbox Code Playgroud)ffmpeg -ss <start> -i in1.avi -t <duration> out1.avi
<start>——一段视频ffmpeg的开头部分就是剪掉了。格式:00:00:00.0000,表示时:分:秒:毫秒。
<duration>– 视频 ffmpeg 部分的时长是要剪掉的。格式和上面一样。例子:
Run Code Online (Sandbox Code Playgroud)ffmpeg -ss 01:19:00 -i in1.avi -t 00:05:00 -c copy out1.avi ffmpeg -ss 01:19:00 -i in1.avi -t 00:05:00 out1.aviffmpeg 从 1 小时 19 分 0 秒开始剪切视频文件的一部分。截取的视频序列时长为 5 分 0 秒。
小智 -3
我使用以下语法使用 ffmpef 剪切视频:
ffmpeg -sameq -ss [start_seconds] -t [duration_seconds] -i [input_file] [outputfile]
-t 用于设置持续时间(以秒为单位) - 您无法指定结束时间,但这应该适合您。
| 归档时间: |
|
| 查看次数: |
359128 次 |
| 最近记录: |