如何从IP Webcam获取音频?requests.get()调用失败问题咨询
IP Webcam音频请求无响应的原因及解决方法
问题根源:IP Webcam的
/audio.wav是持续输出的流式音频,并非静态文件。requests.get()默认会等待完整响应返回才结束,但这个音频流会一直持续生成(只要设备在推流),所以会无限加载。而浏览器会边接收音频数据边解码播放,不需要等待完整文件,因此能正常访问。解决方法:使用requests的流式请求模式,设置
stream=True,逐块读取音频数据:
import requests # 替换成你的IP Webcam音频地址 audio_url = "http://<你的设备IP>/audio.wav" # 启用流式请求 resp = requests.get(audio_url, stream=True) # 逐块读取并保存音频流(可根据需求修改处理逻辑) with open("live_audio.wav", "ab") as f: for chunk in resp.iter_content(chunk_size=1024): if chunk: f.write(chunk)
- 注意:生成的
live_audio.wav是持续增长的流式文件,需要用支持流式播放的工具打开,或者停止录制后再播放。
内容的提问来源于stack exchange,提问作者Tyron
相关产品推荐
相关产品推荐

