我正在尝试根据以下内容编写 Twilio 的录音本文。
我有video1.mkv
和audio1.mka
(视频通话的第一位参与者) 和video2.mkv
和audio2.mka
(第二位参与者)。通话时长摘要为54 秒- video1 和 audio1 有54 秒并且video2
,audio2
有27 秒持续时间。第二位参与者在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
我的第一个命令有什么问题?