我正在将音频从服务器传输到浏览器,Android和iOS客户端。现在我正在做的是通过标题 Range 发送客户端请求的文件范围。
我的应用程序需要同步,所以我必须知道与文件开头相关的块的时间戳。
我使用mp3文件进行了测试,并得出结论和我的网页阅读,如果不下载以前的数据就无法确定时间戳。
我根据问题MP3: a way to get position in miliseconds for any given byte position?提出问题,该问题有类似的问题,但试图找到仅适用于mp3文件的解决方案,并选择了一种无法获得良好精度的方法。
1。在整个文件中查找其标题/帧中包含时间戳信息的其他音频格式。我开始查看有关自我同步的AAC文件,但它可能与确定时间戳无关;
2。使用没有mp3限制的文件格式来确定给定字节位置的时间戳。似乎不同于由于限制与压缩音频有关,如果我使用原始附近的东西会更好地下载整个压缩的。
第3。在具有时间戳信息的自定义结构中对音频文件进行解码和重新编码。这可能是新音频格式的创建,不是我的意图,必须有类似的东西。
4。忘记将文件放在任何位置,因为不值得将每个音频文件转换为新格式的服务器开销。我怀疑服务器对重新编码音频的牺牲将大于下载所需的带宽,因为开始。
我很高兴听到任何建议,有关解决方案的讨论,新解决方案或更清楚我想要的方法。提前谢谢。