Audio ffmpeg在录制视频时留下音频间隙
我试图将视频分为两部分,然后用ffmpeg重新组装,但最终的输出在片段的交汇处有一个小的音频故障。我使用以下命令将视频1.mp4分为两部分: ffmpeg-i1.mp4-ss00:00:00-t00:00:02-async11-1.mp4 及 ffmpeg-i1.mp4-ss00:00:02-t00:00:02-async11-2.mp4 一旦我有了这两个部分,我会将它们重新组合在一起: ffmpeg-f concat-i files.txt-c copy output.mp4 files.txt正确列出了这两个文件。有人能告诉我问题出在哪里吗Audio ffmpeg在录制视频时留下音频间隙,audio,video,ffmpeg,Audio,Video,Ffmpeg,我试图将视频分为两部分,然后用ffmpeg重新组装,但最终的输出在片段的交汇处有一个小的音频故障。我使用以下命令将视频1.mp4分为两部分: ffmpeg-i1.mp4-ss00:00:00-t00:00:02-async11-1.mp4 及 ffmpeg-i1.mp4-ss00:00:02-t00:00:02-async11-2.mp4 一旦我有了这两个部分,我会将它们重新组合在一起: ffmpeg-f concat-i files.txt-c copy output.mp4 files.tx
谢谢该故障可能是由于音频显示在中间 由于您正在对这些段进行编码,因此可以通过一个命令执行此操作:
ffmpeg -i 1.mp4 -filter_complex
"[0]trim=duration=2[v1];[0]trim=2:4,setpts=PTS-STARTPTS[v2];
[0]atrim=duration=2[a1];[0]atrim=2:4,asetpts=PTS-STARTPTS[a2];
[v1][a1][v2][a2]concat=n=2:v=1:a=1[v][a]"
-map "[v]" -map "[a]" output.mp4
我有同样的问题大约3周了。 只需使用
sox
sox in1.mp3 in2.mp3 in3.mp3 out.mp3
当我将concat与FFMPEG
一起使用时,它产生了12.5ms的音频间隔(我在使用Audacity
时看到了它们)。(我不知道为什么)
对于您的情况,最好使用ffmpeg将音频和视频提取到两个单独的文件中,合并它们(使用ffmpeg的视频和使用sox的音频),然后将这些文件合并到一个容器(mp4)文件中谢谢Mulvya。我运行了这个命令,它用我原来的6s视频创建了一个4秒的视频,没有任何音频间隙。我想我了解什么是音频启动示例,但我不了解您命令的参数。您能否解释或告诉我如何调整此命令以用作源1-1.mp4和1-2.mp4?非常感谢。首先,我将源代码的视频流拆分两次:
trim=duration=2
表示从0
开始,并拆分一个2秒的片段trim=2:4
表示从t=2
拆分为t=4
。我使用过滤器的音频版本对音频执行相同的操作。然后我使用过滤器将这些部分连接在一起。除非您需要,否则我不建议使用中间文件路由(1-1.mp4,1-2.mp4
),并且setpts过滤器用于重置剪切段的时间戳。由于FFmpeg在一般情况下是如何工作的,所以需要。好吧,我真的必须使用中间文件。因为这段代码的真正目的是按顺序连接几个文件。假设我的用户可以从不同的场景中选择制作他的最终视频,这就是我打算做的。这个答案可以更新吗?已经两年了,这个问题仍然没有真正的答案。