Вы можете сделать это программно с демпфером concat ffmpeg.
Сначала создайте файл с именем input.txt с такими строками:
file '/path/to/input1.mp3'
file '/path/to/input2.mp3'
file '/path/to/input3.mp3'
...так далее. Затем выполните следующую команду ffmpeg:
ffmpeg -f concat -i inputs.txt -c copy output.mp3
Можно легко создать файл input.txt с помощью цикла bash for (вероятно, это можно сделать и с помощью пакета Windows for loop), если вы хотите объединить файлы в алфавитном порядке. Это будет соответствовать каждому * .mp3 в рабочем каталоге, но его можно легко изменить:
for f in ./*.mp3; do echo "file '$f'" >> inputs.txt; done
## Alternatively
printf "file '%s'\n" ./*.mp3 >> inputs.txt
Также возможно сделать все целиком в одной строке, избегая создания промежуточного файла списка с подстановкой процесса:
ffmpeg -f concat -i <(printf "file '%s'\n" ./*.mp3) -c copy output.mp3