Как возможное решение, почему бы не определить, если длина фонового файла <длина файла переднего плана, а затем создать фоновый файл, который является циклом, если необходимо? Тогда вы можете передать это в sox. </p>
Вы должны быть в состоянии получить длину от sndhdr (посмотрите на количество кадров).
Что касается Python-способа слияния потоков, audioop.add может делать то, что вам нужно, хотя если вы объединяете два источника полной громкости, вы можете уменьшить громкость одного их (попробуйте -12db для начала), если вы микшируете музыку, а нет.
Больше аудиобиблиотек можно найти здесь .