В настоящее время я нахожусь в каталоге с открытой командной строкой и объединяю файлы wav с помощью команды

copy /b *.wav allAudio.wav

В этом каталоге 29 файлов wav, каждый из которых имеет длину ровно 00:00:59.

Однако объединенный файл «allAudio.wav», сгенерированный этой командой, имеет размер файла, соответствующий всем объединенным файлам .wav в каталоге, но длина файла составляет только 00:00:59, как и все остальные. WAV файлы в каталоге.

Это не имеет смысла для меня. Если кто-то может объяснить это и предложить способ объединить файлы так, чтобы конечный файл имел правильную длину, было бы здорово.

Вот текущий каталог

В общей сложности у меня есть несколько папок, содержащих несколько сотен файлов WAV, которые необходимо объединить, поэтому любое программное обеспечение, которое объединяет по одному, не выполнимо для этой задачи.

1 ответ1

3

Это связано с тем, что заголовок RIFF содержит информацию о продолжительности файла. Вам необходимо удалить заголовки RIFF из всех файлов и создать новый, описывающий новый файл. Вы относитесь к ним как к файлам RAW, а они к ним не относятся

Вы можете использовать sox для этого, это было бы лучшим подходом

http://sox.sourceforge.net/

Бинарная загрузка Windows находится на

http://sourceforge.net/projects/sox/files/sox/

Вы также можете использовать его для рендеринга png-файла, содержащего данные FFT и тому подобное. Это очень аккуратный инструмент.

https://stackoverflow.com/questions/9457020/merge-2-audio-files-in-sox

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .