объединить фоновый аудиофайл - PullRequest
0 голосов
/ 01 декабря 2009

У меня есть 2 аудиофайла для основной и фоновой музыки, которые я хочу объединить (не объединять). Окончательный аудиофайл должен иметь длину, равную первичному файлу, и если фоновая музыка короче, она должна повторяться.

Если есть команда Linux или библиотека Python, которую можно использовать для этого? Sox поддерживает слияние, но не позволяет повторять фоновый звук.

1 Ответ

1 голос
/ 01 декабря 2009

Как возможное решение, почему бы не определить, если длина фонового файла <длина файла переднего плана, а затем создать фоновый файл, который является циклом, если необходимо? Тогда вы можете передать это в sox. </p>

Вы должны быть в состоянии получить длину от sndhdr (посмотрите на количество кадров).

Что касается Python-способа слияния потоков, audioop.add может делать то, что вам нужно, хотя если вы объединяете два источника полной громкости, вы можете уменьшить громкость одного их (попробуйте -12db для начала), если вы микшируете музыку, а нет.

Больше аудиобиблиотек можно найти здесь .

...