将音频与ffmpeg叠加在一起并循环播放3分钟

问题描述 投票:0回答:1

我正在尝试在 Flutter 中使用 ffmpeg 将两个音频文件叠加在一起并循环播放 3 分钟。现在我有这个命令

 -i $path1 
 -i $path2 
  -filter_complex 
      \"
      [0]aloop=loop=-1:size=7938000[b]; 
      [1]aloop=loop=-1:size=7938000[a]; 
      [b][a]amix=inputs=2:duration=longest
     \" 
   -t 180 -c:a pcm_s16le $outputPath

音频确实播放了 3 分钟,较长的音频($path1)循环了 3 分钟,但第二个只在开始时播放一次。

ffmpeg
1个回答
0
投票

只需使用stream_loop

 -stream_loop -1 -i $path1 
 -stream_loop -1 -i $path2 
  -filter_complex 
      \"
      [0][1]amix=inputs=2:duration=longest
     \" 
   -t 180 -c:a pcm_s16le $outputPath
© www.soinside.com 2019 - 2024. All rights reserved.