将现有视频音频替换为新音频并循环播放音频,直到视频完成 [FFMPEG]



我想用新的音频替换视频中的现有音频,更新后的音频将循环播放,直到视频完成[因为音频持续时间可能低于视频持续时间]。我已经尝试使用以下命令并且循环工作正常,但是如何替换现有音频?

String[] command = new String[]{"-y", "-i", videoPath ,"-filter_complex", "amovie="+audioPath+":loop=0,asetpts=N/SR/TB[aud];[0:a][aud]amix[a]", "-map", "0:v" ,"-map", "[a]", "-c:v", "copy", "-c:a", "aac", "-shortest","-preset", "ultrafast", videoOutputDestination};

只需省略 amix 过滤器即可。

取代:

amovie="+audioPath+":loop=0,asetpts=N/SR/TB[aud];[0:a][aud]amix[a]

跟:

amovie="+audioPath+":loop=0,asetpts=N/SR/TB[a]

最新更新