如何使用 ffmpeg 在一个视频中随机添加多个音频?

How can i add multiple audio randomly in one video using ffmpeg?

(Number of audios in a folder )
[ audio1 , audio2 , audio3 , audio4 , audio5 ]

[我有视频] [我想将这些音频随机合并到一个视频中]

例如:合并后应该像这样加入随机音频

Video 
audio3 + audio5 + audio2

音频不应该重复[不应该这样]

Video 
audio3 audio5 audio3

在这个audio3中重复是不允许的, 所以不允许重复音频

这里必须使用ffmpeg代码

( 代码应该适用于任意数量的音频 随机喜欢20到50个音频 )

音频应适合视频大小 (在 bash 中你可以自由使用) (如果你不明白问题,请在评论部分告诉我)

是的,如果您有一个文件夹 ./mp3/(例如)和一个名为 video.mp4 的视频,您可以:

1.创建文件列表

for f in ./mp3/*.mp3; do echo "file '$f'" >> mylist.txt; done

2。 (带有 PERL 的选项): 按 rand 这个文件排序,但在 txt (perl) 中

perl -MList::Util=shuffle -e 'print shuffle(<STDIN>);' < mylist.txt >> random.txt;

2。 (带有 BASH 的选项): 按兰德顺序排列此文件,但在 txt 中 (bash)

sort -Ru mylist.txt >> random.txt; done

3。随机创建唯一的音频文件

ffmpeg -f concat -safe 0 -i random.txt -c copy output_rand.mp3

4.用视频和音频创建一个独特的文件

 ffmpeg -i video.mp4 -c:a mp3 -i output_rand.mp3   -c copy -map 0:v -map 1:a:0   -disposition:a:0 default   -disposition:a:1 default  -strict -2 -sn -dn -map_metadata -1 -map_chapters -1  -movflags faststart end_example.mp4

此致