我正在编写一个应用程序,我可以在其中录制音频并通过网络上传音频文件。为了加快上传速度,我想在录制完成之前开始上传。
我正在创建的文件是一个 WAV 文件。我的计划是使用多个数据块。因此,我使用的不是正常编码(RIFF、fmt、数据)(RIFF、fmt、数据、数据、...、数据)。第一个问题是 RIFF 标头想要整个文件的总长度,但在流式传输音频时当然不知道(我现在使用的是任意数字)。另一个问题是我不确定它是否有效,因为 Audacity 无法识别该文件,而 Windows Media Player 会打开该文件但只播放很小的一部分。我一直在阅读 WAV 规范,但还没有找到答案。
有什么建议?
你要上传到哪里?你自己的网站?听起来您需要一些服务器端代码来获取原始样本上传并将它们组装成服务器上的有效 WAV 文件(正确的文件长度字段,一个数据块)。
但如果您真的想加快上传速度,我认为您实际上想要上传 MP3 编码的帧并让服务器将它们组装成MP3文件。恐怕哪个更复杂。