将24位音频转换为16位音频的最佳库或方法是什么?

时间:2019-07-03 08:18:47

标签: python-3.x audio type-conversion

我正在使用一个音频接口,该接口只记录每个样本24位的音频。稍后,我想将其更改为每个样本16位。

此操作可以使用哪个libmethod?我想在python-3.x中做到这一点。

1 个答案:

答案 0 :(得分:2)

如果必须使用Python,则可以使用PySoundFile。这是一个小代码段:

import soundfile

data, samplerate = soundfile.read('old.wav')
soundfile.write('new.wav', data, samplerate, subtype='PCM_16')

您还应该使用soundfile.available_subtypes来查看可以将文件转换为哪些子类型。这是其示例用法:

>>> 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'}