1

但是,我制作了一个程序,该程序使用新的 HTML5 从录音中生成 blob(包含 PCM 数据)getusermedia api;这些录音可能会变得很大,我希望可以在将文件发送到服务器之前对其进行压缩。我知道这mp3/ogg compression超出了浏览器可以处理的范围(我认为),所以我在别处寻找。

有些人谈论http compression(也将使用 Gzip)但在设置通信时这不是浏览器服务器的决定吗?

我找到了https://github.com/olle/lz77-kit;它有一个用于客户端的 javascript 实现和一个用于服务器的 php,但这甚至可以制作音频传感器吗?

有没有人有在客户端压缩音频的经验(不使用闪存)

4

3 回答 3

4

由于您使用的是getUserMedia,我想您想从用户的麦克风录制语音。

特定于音频的压缩算法应该比一般的数据压缩算法更有效。音频代码(例如 MP3)的缺点是它们是有损的。

现在,Speex对您来说可能是一个不错的编解码器。碰巧的是,有一个完整的 JavaScript Speex 编码器/解码器,并附有示例:speex.js

于 2012-11-15T14:05:07.740 回答
1

原始(或压缩)音频很难压缩,我强烈建议您编写一个压缩音频的浏览器插件或在服务器端进行。通用的压缩算法、zip、gz 等将无法为您节省任何有价值的带宽。

于 2012-11-15T18:04:48.530 回答
1

我知道我回答得很晚,这是我在不使用闪存的情况下进行客户端音频压缩的尝试:https ://github.com/Mido22/recordOpus ,

我正在通过套接字使用 opus 数据包将编码的 opus 数据包发送到服务器(nodejs),在那里我将其转换为用户请求的任何格式并向他提供链接......

于 2015-03-08T15:53:59.223 回答