gpt4 book ai didi

FFmpeg:如何有效地分割视频?

转载 作者:行者123 更新时间:2023-12-04 23:18:14 28 4
gpt4 key购买 nike

我希望将一个大的 avi 视频分成两个较小的连续视频。我正在使用 ffmpeg。

一种方法是运行 ffmpeg 两次:

ffmpeg -i input.avi -vcodec copy -acodec copy -ss 00:00:00 -t 00:30:00 output1.avi
ffmpeg -i input.avi -vcodec copy -acodec copy -ss 00:30:00 -t 00:30:00 output2.avi

但是根据 ffmpeg 的手册页,我可以只使用 从一个输入文件制作多个输出文件。一个 线:
ffmpeg -i input.avi -vcodec copy -acodec copy -ss 00:00:00 -t 00:30:00 output1.avi \
-vcodec copy -acodec copy -ss 00:30:00 -t 00:30:00 output2.avi

我的问题是,后一种方法是否节省了计算时间和内存?

最佳答案

ffmpeg wiki 链接回此页面,引用“如何有效分割视频”。我不相信这个页面回答了这个问题,所以我按照@AlcubierreDrive 的建议做了……

echo "Two commands" 
time ffmpeg -v quiet -y -i input.ts -vcodec copy -acodec copy -ss 00:00:00 -t 00:30:00 -sn test1.mkv
time ffmpeg -v quiet -y -i input.ts -vcodec copy -acodec copy -ss 00:30:00 -t 01:00:00 -sn test2.mkv
echo "One command"
time ffmpeg -v quiet -y -i input.ts -vcodec copy -acodec copy -ss 00:00:00 -t 00:30:00 \
-sn test3.mkv -vcodec copy -acodec copy -ss 00:30:00 -t 01:00:00 -sn test4.mkv
哪个输出...
Two commands
real 0m16.201s
user 0m1.830s
sys 0m1.301s

real 0m43.621s
user 0m4.943s
sys 0m2.908s

One command
real 0m59.410s
user 0m5.577s
sys 0m3.939s
经过几次运行和一些数学运算后,我测试了一个 SD 和 HD 文件。
Two commands SD 0m53.94 #2 wins  
One command SD 0m49.63

Two commands SD 0m55.00
One command SD 0m52.26 #1 wins

Two commands SD 0m58.60 #2 wins
One command SD 0m58.61

Two commands SD 0m54.60
One command SD 0m50.51 #1 wins

Two commands SD 0m53.94
One command SD 0m49.63 #1 wins

Two commands SD 0m55.00
One command SD 0m52.26 #1 wins

Two commands SD 0m58.71
One command SD 0m58.61 #1 wins

Two commands SD 0m54.63
One command SD 0m50.51 #1 wins

Two commands SD 1m6.67s #2 wins
One command SD 1m20.18

Two commands SD 1m7.67
One command SD 1m6.72 #1 wins

Two commands SD 1m4.92
One command SD 1m2.24 #1 wins

Two commands SD 1m1.73
One command SD 0m59.72 #1 wins

Two commands HD 4m23.20
One command HD 3m40.02 #1 wins

Two commands SD 1m1.30
One command SD 0m59.59 #1 wins

Two commands HD 3m47.89
One command HD 3m29.59 #1 wins

Two commands SD 0m59.82
One command SD 0m59.41 #1 wins

Two commands HD 3m51.18
One command HD 3m30.79 #1 wins
标清文件 = 1.35GB DVB 传输流
高清文件 = 3.14GB DVB 传输流
结论
如果您正在处理 HD,则单个命令会更好,它与手册关于在输入文件后使用 -ss 进行“慢速搜索”的评论一致。 SD 文件的差异可以忽略不计。
通过在输入文件之前添加另一个 -ss 用于“快速搜索”,然后是更准确的慢速搜索,这两个命令版本应该更快。

关于FFmpeg:如何有效地分割视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72218116/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com