【发布时间】:2017-05-05 23:27:57
【问题描述】:
我有一段很长的音频部分 和一个我想混合在一起的短视频部分。
我正在尝试对 mux 执行以下命令:
- Video_0-0002.h264 - 整个文件(2 秒长)
- Audio.wav - 4 到 6 秒
但是声音很乱... 我怎样才能正确地做到这一点?
也试过了,听上去好像最后还是沉默了。
ffmpeg -y -i Video_0-0003.h264 -i Audio.wav -c:v copy -af atrim=6:8,asetpts=PTS-STARTPTS -strict experimental -movflags +faststart Video_0-0003.mp4 输入 #0,h264,来自“Video_0-0003.h264”: 持续时间:不适用,比特率:不适用 流 #0:0:视频:h264(主要)、yuv420p(渐进式)、388x388 [SAR 1:1 DAR 1:1]、30 fps、30 tbr、1200k tbn、60 tbc 输入流#1.0 的猜测通道布局:立体声 输入 #1,wav,来自“Audio.wav”: 时长:00:00:16.98,比特率:1411 kb/s 流 #1:0:音频:pcm_s16le ([1][0][0][0] / 0x0001),44100 Hz,立体声,s16,1411 kb/s 输出#0,mp4,到“Video_0-0003.mp4”: 元数据: 编码器:Lavf57.56.100 流 #0:0:视频:h264(主)([33][0][0][0] / 0x0021),yuv420p(渐进式),388x388 [SAR 1:1 DAR 1:1],q=2- 31、30 fps、30 tbr、1200k tbn、1200k tbc 流 #0:1:音频:aac (LC) ([64][0][0][0] / 0x0040),44100 Hz,立体声,fltp,128 kb/s 元数据: 编码器:Lavc57.64.101 aac 流映射: 流 #0:0 -> #0:0(复制) 流 #1:0 -> #0:1 (pcm_s16le (native) -> aac (native)) 按 [q] 停止,按 [?] 寻求帮助 [mp4 @ 0x7fca8f015000] 未在流 0 的数据包中设置时间戳。这已被弃用,将来将停止工作。修复您的代码以正确设置时间戳 [mp4 @ 0x7fca8f015000] 开始第二遍:将 moov atom 移动到文件开头 帧= 60 fps=0.0 q=-1.0 Lsize= 242kB 时间=00:00:02.02 比特率= 982.2kbits/s 速度= 21x 视频:207kB 音频:32kB 字幕:0kB 其他流:0kB 全局标题:0kB 复用开销:1.382400% [aac@0x7fca8f017400] Qavg:1076.270【问题讨论】:
-
隔离问题是您的第一步。您可以尝试
-c:v copy -c:a aac和-c copy来检查是否是音频重新编码问题?您的命令是否适用于其他文件?你试过-ss和-d开关吗?如果您分享您的努力,它会有所帮助。 -
我尝试了 -ss 和 -d 但它在单个输入上不起作用。