我可以使用pysox将wav转换为mp3,使用以下代码:
def process_audio(in_name_wav):
sox_in_file = pysox.CSoxStream(in_name_wav)
tof = tempfile.NamedTemporaryFile(delete=False, suffix='.mp3')
temp_out_file_name = tof.name
tof.close()
sox_signal = sox_in_file.get_signal()
sox_out_file = pysox.CSoxStream(temp_out_file_name, 'w', sox_signal)
chain = pysox.CEffectsChain(sox_in_file, sox_out_file)
chain = normalize(chain)
chain = make_louder(chain)
chain.flow_effects()
sox_out_file.close()
我检查了pysox用于生成输出文件的默认比特率是128kbps:
#mp3check -l a.mp3
a.mp3:
mpeg 1.0 layer 3 44.1kHz 128kbps joint stereo no emph --- orig ---- 4:27.46
如何指定我对pysox的比特率选择?
提前致谢。
答案 0 :(得分:0)
似乎可以通过传递它来通过CEncodingInfo类来完成
http://pythonhosted.org/pysox/reference.html#pysox.CEncodingInfo
使用CEncodingInfo.set_param函数。
您可以创建编码信息,然后将其传递给CSoxStream。