PyQt6+SpeechRecognition音频转文本:路径格式致程序崩溃求助
解决PyQt6获取路径导致SpeechRecognition崩溃的问题
针对你遇到的问题,以下是几种可行的解决办法:
1. 标准化路径格式
SpeechRecognition的AudioFile对路径的处理可能对Windows原生格式更友好,你可以用os.path.normpath()将斜杠路径转换为反斜杠格式:
import os # 假设wb_patch是QFileDialog获取的路径 wb_patch = os.path.normpath(wb_patch)
或者使用pathlib模块确保路径是绝对且标准化的:
from pathlib import Path wb_patch = str(Path(wb_patch).resolve())
2. 检查并清理路径字符串
有时QFileDialog返回的路径可能包含不可见字符或多余空格,先做清理:
wb_patch = wb_patch.strip()
3. 捕获异常排查具体错误
退出码0xC0000409通常指向参数错误或资源加载失败,给SpeechRecognition的代码加上异常捕获,输出详细错误信息能帮你精准定位问题:
import speech_recognition as sr try: recognizer = sr.Recognizer() with sr.AudioFile(wb_patch) as source: audio_data = recognizer.record(source) transcript = recognizer.recognize_google(audio_data) print("转录结果:", transcript) except Exception as e: print(f"详细错误信息: {str(e)}")
4. 处理非ASCII路径
如果路径包含非英文字符,可显式指定编码格式确保识别正常:
wb_patch = wb_patch.encode('utf-8').decode('utf-8')
内容的提问来源于stack exchange,提问作者takenao
相关产品推荐
相关产品推荐

