ffmpeg 输出的录音合成比应有的长

ffmpeg 输出的录音合成比应有的长

我正在尝试根据以下内容编写 Twilio 的录音本文

我有video1.mkvaudio1.mka(视频通话的第一位参与者) 和video2.mkvaudio2.mka(第二位参与者)。通话时长摘要为54 秒- video1 和 audio1 有54 秒并且video2audio227 秒持续时间。第二位参与者在26.9 秒

当我使用此命令时:

ffmpeg -i video1.mkv -i video2.mkv -acodec libopus -i audio1.mka -acodec libopus -i audio2.mka -y -filter_complex "[0]scale=512:-2,setsar=1:1,pad=512:768:(ow-iw)/2:(oh-ih)/2[vs0],color=black:size=512x768:duration=0.189[b0],[b0][vs0]concat[r0c0];   [1]scale=512:-2,setsar=1:1,pad=512:768:(ow-iw)/2:(oh-ih)/2[vs1],color=black:size=512x768:duration=26.932[b1],[b1][vs1]concat[r0c1];[r0c0][r0c1]hstack=inputs=2[video];[2]aresample=async=1[a0];[3]aresample=async=1,adelay=26901|26901[a1];[a0][a1]amix=inputs=2[audio]" -map [video] -map [audio] -acodec libopus -vcodec libvpx output.webm

我的输出文件有1 分 14 秒持续时间(但应该54 秒)。

当我仅使用音频时,输出具有正确的持续时间:

ffmpeg -i audio1.mka -i audio2.mka -filter_complex "[0]aresample=async=1[a0];[1]aresample=async=1,adelay=26901|26901[a1];[a0][a1]amix=inputs=2" -map [audio] -acodec libopus -strict -2 output_audio.webm

仅视频和结合音频和视频也有正确的持续时间:

ffmpeg -i video1.mkv -i video2.mkv -filter_complex "[0]scale=512:-2,setsar=1:1,pad=512:768:(ow-iw)/2:(oh-ih)/2[vs0],color=black:size=512x768:duration=0.189[b0],[b0][vs0]concat[r0c0]; [1]scale=512:-2,setsar=1:1,pad=512:768:(ow-iw)/2:(oh-ih)/2[vs1],color=black:size=512x768:duration=26.932[b1],[b1][vs1]concat[r0c1];[r0c0][r0c1]hstack=inputs=2" -vcodec libvpx output_video.webm



ffmpeg -i output_video.webm -i output_audio.webm -c copy output.webm

我的第一个命令有什么问题?

相关内容