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
,它指定结束时间(需要-copyts
if -ss
is 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.avi
ffmpeg 从 1 小时 19 分 0 秒开始剪切视频文件的一部分。截取的视频序列时长为 5 分 0 秒。
小智 -3
我使用以下语法使用 ffmpef 剪切视频:
ffmpeg -sameq -ss [start_seconds] -t [duration_seconds] -i [input_file] [outputfile]
-t 用于设置持续时间(以秒为单位) - 您无法指定结束时间,但这应该适合您。
归档时间: |
|
查看次数: |
359128 次 |
最近记录: |