前端浏览器录音结果传入Flask Flask保存后的wav文件没有时长 wav文件不完整
1条回答 默认 最新
关注 【以下回答由 GPT 生成】
根据你的描述,录音文件保存后出现了时长不正确和音频内容缺失的问题。这可能是由于在前端浏览器的录音过程中,音频数据未能正确传递给Flask服务器导致的。下面是我给出的解决方案:
在JavaScript代码中,尝试使用
audioRecorder
对象来录制音频,而不是示例中的mediaRecorder
对象。为了使用audioRecorder
对象,我们需要使用一个Web API,如Web Audio API。这是一个简单的示例,展示如何使用Web Audio API和
audioRecorder
对象来录制音频:// 创建一个新的音频上下文对象 const audioContext = new (window.AudioContext || window.webkitAudioContext)(); // 创建一个音频输入节点 const audioInput = audioContext.createMediaStreamSource(stream); // 创建一个音频处理节点 const recorder = new Recorder(audioInput); // 开始录音 recorder.record(); // 停止录音,并保存录音文件 recorder.stop(); recorder.exportWAV(function(audioBlob) { const formData = new FormData(); formData.append('audio', audioBlob, 'recorded_audio.wav'); fetch('/save-audio', { method: 'POST', body: formData }) .then(function(response) { console.log('录音文件已保存到服务器'); }) .catch(function(error) { console.error('保存录音文件时出错:', error); }); });
这段代码中,我们使用
audioInput
作为音频输入源,创建一个Recorder
对象,并调用record()
方法开始录音。然后,我们使用stop()
方法停止录音,并使用exportWAV()
方法导出录音文件的audioBlob
对象。在Flask服务器端,我们需要使用WAV库来正确读取和保存音频文件。在
/save-audio
端点的处理函数中,我们可以按照以下方式来处理音频文件:from flask import Flask, request from scipy.io.wavfile import write app = Flask(__name__) @app.route('/save-audio', methods=['POST']) def save_audio(): audio_file = request.files['audio'] sample_rate, audio_data = wavfile.read(audio_file) # 处理音频数据 # 将音频数据写入WAV文件 write('path/to/save/recorded_audio.wav', sample_rate, audio_data) return '录音文件已保存到服务器' if __name__ == '__main__': app.run()
在这段Python代码中,我们从请求中获取
audio
文件对象,并使用wavfile.read()
函数读取音频文件数据和采样率。然后我们可以对音频数据进行处理(如果需要的话),最后使用write()
函数将音频数据写入WAV文件中。请确保在Flask服务器中安装了
scipy
库和wavfile
模块。希望这个解决方案能够帮到你,如果你还有任何问题,请随时追问。
【相关推荐】
- 这篇博客: 关于python flask处理前端传过来的二进制文件的常见操作(待更新)中的 三、mp3转wav,并设置采样率 部分也许能够解决你的问题。
如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^解决 1无用
悬赏问题
- ¥15 远程访问linux主机超时
- ¥15 odoo17存货管理优势于中国国内该行业传统ERP或MES的详细解读和举例
- ¥15 CPU卡指令整合指令数据都在图片上
- ¥15 火车票关联12306问题
- ¥15 odoo17处理受托加工产品
- ¥15 如何用MATLAB编码图三的积分
- ¥15 圆孔衍射光强随孔径变化
- ¥15 MacBook pro m3max上用vscode运行c语言没有反应
- ¥15 ESP-PROG配置错误,ALL ONES
- ¥15 结构功能耦合指标计算