https://github.com/wenet-e2e/wenet
1、github下载源码
2、安装wenet
pip install -r E:\Python_\Excel_file_processing\wenet\requirements.txt 安装wenet所需环境
pip install E:\Python_\Excel_file_processing\wenet 这是源码下载解压路径
3、直接测试
import wenet
import soundfile as sf
import sounddevice as sd
import numpy as np
from scipy.io.wavfile import write
# #读取原始音频文件
# data, samplerate = sf.read('录音.wav')
# 设置录音参数
fs = 16000 # 采样率
duration = 2.0 # 录音持续时间(秒)
# 使用sounddevice库进行实时录音
print("开始录音...")
data = sd.rec(int(duration * fs), samplerate=fs, channels=1)
sd.wait() # 等待录音完成
print("录音完成.")
# 如果需要,将音频数据转换为16位PCM(这取决于wenet的要求)
if data.dtype != np.int16:
# 注意:简单地将数据转换为int16可能会导致溢出或截断,因此你可能需要适当地缩放数据
data_16bit = np.int16(data / np.max(np.abs(data)) * 32767) # 示例缩放,可能需要调整
# 保存为 WAV 文件
filename = 'recording.wav'
write(filename, fs, data_16bit)
# # 保存为16位PCM WAV文件(如果需要)
# sf.write('converted_audio.wav', data_16bit, myrecording)
model = wenet.load_model('chinese')
result = model.transcribe("recording.wav")
print(result['text'])