1
pydub에서 2 개의 오디오 wav 파일을 하나의 wav 파일로 믹싱하려고합니다. 여기Raise_child 예외 출력
from pydub import AudioSegment
sound1 = AudioSegment.from_wav("Test_1.wav")
sound2 = AudioSegment.from_wav("Test_2.wav")
# mix sound2 with sound1, starting at 5000ms into sound1)
output = sound1.overlay(sound2, position=5000)
# save the result
output.export("mixed.wav", format="wav")
정확한 오류 로그입니다 : 여기에 내 현재 코드는
Traceback (most recent call last):
File "heterodyning.py", line 10, in <module>
output.export("mixed.wav", format = "wav")
File "build/bdist.linux-armv6l/egg/pydub/audio_segment.py", line 234, in export
File "/usr/lib/python2.7/subprocess.py", line 493, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1259, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
그러나, 어떤 이유로, 나는 이것을 실행하려고 할 때마다, 그것은 raise_child 예외를 제기하기위한, 그리고 하더군요 그러한 파일이나 디렉토리가 없으며 내보낼 것을 말한 마지막 행을 참조하십시오. 나는 이유를 모른다. 아무도 왜 이것이 일어나고 있는지 말해 줄 수 있습니까?
내가 그 현재, 내 코드가 mixed.wav 파일을 생성합니다 확인할 수 있지만, 실제로 그 안에 혼합 된 오디오를 넣어하지 않습니다
는이 같은 결과가 발생해야한다. 여기에 파일을 열어 코드의 비트를 추가 작동하지 않았다, 그것은 나에게 똑같은 오류를 주었다. –
오케이. 'wave'파이썬 라이브러리를 살펴본 후 https://docs.python.org/2/library/wave.html을 가져 오는 것이 좋습니다. 그런 다음'mixed_file = wave.open ("mixed.wav", "w")'및'mixed_file.writeframes (output)' – The2ndSon
@PhilipR과 같은 것을 할 수 있습니다. 당신은 바이너리 파일'mixed_file = open ("mixed.wav", "wb")'로 열어야하고 파일을 내보내기 방법으로 전달해야한다 :'output.export (mixed_file, format = "wav")' – Jiaaro