【发布时间】:2019-01-17 15:58:37
【问题描述】:
我正在编写一个音频流服务器 - 类似于 Icecast,但我遇到了流音频文件的问题。代理音频工作正常(音频源实时连接并发送音频,然后通过 HTTP 传输到客户端),但是当我尝试流式传输音频文件时,它会快速通过 - 客户端最终将整个音频文件包含在其中他们的本地缓冲区。我希望他们在本地缓冲区中只有几十秒。
基本上,我怎样才能减慢通过 HTTP 发送音频文件的速度? 文件都是MP3。通过尝试硬编码的线程延迟等,我已经设法让它几乎正常工作......但这不是一个可持续的解决方案。
【问题讨论】:
-
您使用哪些 crate 来读取音频然后进行流式传输?
-
无,只是标准库文件方法打开文件,以及 TcpStream 流原始二进制数据
-
如果没有您目前拥有的minimal reproducible example,我们只能猜测。请考虑制作一个,包括您迄今为止为解决问题所做的尝试。