最近在研究项目,需要调用百度语音的api,传入参数需要本地语音文件base64位编码后内容。下面来演示一下。 其实很简单,base64 是系统自带的库。 base64.b64encode() 进行编码。 base64.b64decode() 进行解码。 下面演示我读取 file1 文件,进行编码,然后再解码,保存为另一个 file2 文件。最后的 file1 和 file2 是一样的。 图片、音频等文件都是二进制的文件,所以读取和写入要用 rb 和 wb,都多个 b。
import base64
file1 = open("16k.pcm","rb").read() # 读取二进制文件
text = base64.b64encode(file1) # 进行编码
file2 = open("17k.pcm","wb") # 写入二进制文件
text = base64.b64decode(text) # 进行解码
file2.write(text)
file2.close() # 写入文件完成后需要关闭文件才能成功写入
base64编码使用实例演示: Python 技术篇-百度语音识别API接口调用演示 音频文件base64位编码后的样子: