Я установил ffmpeg в Debian и попробовал две командной строки.В одном каталоге находятся два файла: first.wav и second.wav. Первый способ - создать txt-файл, внутри a.txt они
file 'first.wav'
file 'second.wav'
Я запустил
ffmpeg -f concat -i a.txt -c copy final.wav
тогда я запускаю его, он может работать нормально.Но я хочу попробовать другой метод, который является
ffmpeg -i "concat:first.wav|second.wav" -c copy final2.wav
. В командной строке sdcond нет ошибки, он только захватывает первый файл, а длина final2.wav почти такая же, как first.wav,Файл second.wav вообще не прошивается.Поскольку я использую golang для выполнения командной строки, я хочу использовать
cmd := exec.Command("ffmpeg",args)
для сшивания носителей вместе, я могу прочитать все медиа-файлы в массив, но этот API не может работать для массива,поэтому я хочу сшить файлы вместе в
"concat:file1.wav|file2.wav|file3.wav|......"
, в этом случае может быть легко сшить файлы вместе, и мне не нужно зацикливать cmd.как
cmd = exec.Command("ffmpeg","-i","concat:first.wav|second.wav|third.wav|......","-c","copy","final2.wav")
Я не хочу создавать какие-либо дополнительные файлы, такие как файл .txt, так как мне нужно удалить его позже, и это может также коснуться разрешения.Так есть ли возможное решение для второй командной строки?