擅长:python、mysql、java
<p>我建议用<a href="http://sox.sourceforge.net" rel="noreferrer" title="SoX">SoX</a>来完成这个任务。更改位深度非常简单:</p>
<pre><code>sox old.wav -b 16 new.wav
</code></pre>
<p>如果必须使用Python,那么可以使用找到的PySoundFile。下面是一些代码片段:</p>
<pre><code>import soundfile
data, samplerate = soundfile.read('old.wav')
soundfile.write('new.wav', data, samplerate, subtype='PCM_16')
</code></pre>
<p>您还应该使用<a href="http://pysoundfile.readthedocs.io/en/0.9.0/#soundfile.available_subtypes" rel="noreferrer" title="soundfile.available_subtypes">^{<cd1>}</a>查看可以将文件转换为哪些子类型。以下是它的示例用法,摘自它们的文档:</p>
<pre><code>>>> import soundfile as sf
>>> sf.available_subtypes('FLAC')
{'PCM_24': 'Signed 24 bit PCM',
'PCM_16': 'Signed 16 bit PCM',
'PCM_S8': 'Signed 8 bit PCM'}
</code></pre>