播放http服务器的音频文件,HTTP实时音频流

作为概念证明,我需要创建一个HTTP服务器,在GET请求时应该启动非编码/非压缩音频数据的连续流—WAV、PCM16。假设音频数据是4096个随机生成的单声道音频样本,采样率为44.1kHz。在

我应该在HTTP响应头中放入什么,以便在另一端的浏览器中启动一个播放器,让用户实时监听?在

我在读“传输编码:分块”,“多部分”,mimetype=“audio/xwav”,但仍然不知道什么和如何使用。。。在

如果有人能给我一个关于Python/Flask的确切例子,那就太好了,因为我对web开发不是很有信心。在

PS1:用硬件功率有限的嵌入式设备取代HTTP服务器将是PoC之后的下一个阶段。在

PS2:这是实际工作的代码,它将WAV块作为单个HTTP响应发送:from flask import Flask, Response,render_template

import pyaudio

import audio_processing as audioRec

app = Flask(__name__)

def genHeader(sampleRate, bitsPerSample, channels, samples):

datasize = samples * channels * bitsPerSample // 8

o = bytes("RIFF",'ascii') # (4byte) Marks file as RIFF

o += (datasize + 36).to_bytes(4,'little') # (4byte) File size in bytes e

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值