Как присоединиться к двум wav файлам с помощью Python?

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

И также у меня был prob проигрывание моего собственного wav файла, с помощью winsound модуль.. Я смог играть звук, но использование time.sleep в течение определенного времени прежде, чем играть любой звук окон, остроумие недостатка, которое это - то, если я хотел играть звук дольше thn time.sleep (N), N секунда также, окна, звучит как wil перекрытие JST после того, как N секунда играют, winsound без обозначения даты останавливаются..

Кто-либо может помочь?? предложите тому, как решить эти prob...

Заранее спасибо

20
задан tom10 31 October 2015 в 23:04
поделиться

3 ответа

Вы можете использовать аудиолабораторию :

import audiolab, scipy
a, fs, enc = audiolab.wavread('file1.wav')
b, fs, enc = audiolab.wavread('file2.wav')
c = scipy.vstack((a,b))
audiolab.wavwrite(c, 'file3.wav', fs, enc)
1
ответ дан 29 November 2019 в 22:39
поделиться

Python поставляется с модулем wave , который сделает то, что вам нужно. Пример ниже работает, когда детали файлов (моно или стерео, частота кадров и т. Д.) Одинаковы:

import wave

infiles = ["sound_1.wav", "sound_2.wav"]
outfile = "sounds.wav"

data= []
for infile in infiles:
    w = wave.open(infile, 'rb')
    data.append( [w.getparams(), w.readframes(w.getnframes())] )
    w.close()

output = wave.open(outfile, 'wb')
output.setparams(data[0][0])
output.writeframes(data[0][1])
output.writeframes(data[1][1])
output.close()
43
ответ дан 29 November 2019 в 22:39
поделиться

Я использую библиотеку SOX [1], а затем вызываю ее как

>>> import subprocess
>>> sound_output_path = /tmp
>>> sox_filenames = ['file.wav', 'file1.wav']
>>> subprocess.call(['sox'] + sox_filenames + ['%s/out.wav' % sound_output_path])

[1] http://sox.sourceforge.net/

0
ответ дан 29 November 2019 в 22:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: