简体   繁体   中英

How can I convert a WAV from stereo to mono in Python?

I don't want to use any other apps (like sox) - I want to do this in pure Python. Installing needed Python libs is fine.

I maintain an open source library, pydub , which make this pretty simple

from pydub import AudioSegment
sound = AudioSegment.from_wav("/path/to/file.wav")
sound = sound.set_channels(1)
sound.export("/output/path.wav", format="wav")

One caveat: it uses ffmpeg to handle audio format conversions, but if you only use wav it can be pure python.

If the WAV file is PCM-encoded then you can use wave . Open the source and destination files, read samples, average the channels, and write them out.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM