gpt4 book ai didi

ffmpeg - 使用 ffmpeg 剪切、连接和重新编码为 h265

转载 作者:行者123 更新时间:2023-12-04 23:10:02 26 4
gpt4 key购买 nike

我有两个 h264 视频,我想剪切(每个)、连接并重新编码为 h265 - 全部使用 ffmpeg。考虑到以下两种方法不起作用,我该如何实现?
第一种方法
我试过了

ffmpeg -ss 00:00:05.500 -to 00:12:06.200 -i video1.mp4 \
-ss 00:00:10.700 -to 01:43:47.000 -i video2.mp4 \
-filter_complex "[0:v][0:a][1:v][1:a] concat=n=2:v=1:a=1 [outv] [outa]" \
-map "[outv]" -map "[outa]" \
-c:v libx265 -vtag hvc1 -c:a copy \
final.mp4
但收到错误消息

Streamcopy requested for output stream 0:1, which is fed from a complex filtergraph. Filtering and streamcopy cannot be used together.


第二种方法
或者,我创建了文件 cutpoints.txt与内容
file video1.mp4
inpoint 5.5
outpoint 726.2
file video2.mp4
inpoint 600.7
outpoint 6227.0
并运行命令
ffmpeg -f concat -safe 0 -i cutpoints.txt -c:v libx265 -vtag hvc1 -c:a copy final.mp4
但是视频并没有准确地在 5.5 秒开始,这并不奇怪 since

inpoint timestamp

This directive works best with intra frame codecs, because for non-intra frame ones you will usually get extra packets before the actual In point and the decoded content will most likely contain frames before In point too.

最佳答案

使用第一种方法并重新编码音频:

ffmpeg -ss 00:00:05.500 -to 00:12:06.200 -i video1.mp4 \
-ss 00:00:10.700 -to 01:43:47.000 -i video2.mp4 \
-filter_complex "[0:v][0:a][1:v][1:a] concat=n=2:v=1:a=1 [outv] [outa]" \
-map "[outv]" -map "[outa]" \
-c:v libx265 -vtag hvc1 \
final.mp4
以上使用默认的音频编解码器;添加非副本 -c:a如所须。

关于ffmpeg - 使用 ffmpeg 剪切、连接和重新编码为 h265,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71681499/

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