2012-03-09 89 views
7

我正致力于将音频直接在浏览器中录制并发布到网络服务器。 我目前正在依靠闪存访问用户麦克风(使用源自https://code.google.com/p/wami-recorder/的代码),并将记录的Wav/pcm blob从闪存传递给JS以便上传(使用XHR发布)。 这工作正常,但我试图避免发送未压缩的WAV数据(我可以压缩服务器上的音频,但我试图限制CPU密集型工作)。在浏览器中压缩音频的解决方案?

选项到目前为止压缩到OGG在客户端,我发现包括:

  • 依靠闪光灯的实验室功能来压缩音频OGG(labs.byhook.com/2011/02/15/OGG-Vorbis格式编码器换闪光炼金系列部分-1 /)。由于它是闪存中的一个实验性功能,因此依赖它是有风险的。

  • 将libvorbis的最小子集移植到JavaScript,以便浏览器可以压缩数据。这可能听起来有点愚蠢,但我只需要很短的音频位(几秒钟),因此性能可能不是这样的问题。我环顾四周,但找不到任何这样的项目。

  • 其他一些浏览器特定的解决方案,如http://firefogg.org需要大量的用户端安装才能工作,这是我不想要的。

我在寻找一个更好的选择来解决这个问题,如果这样的选项存在。 我显然在等待html5 getUserMedia()的工作,但我需要一个同时适用于跨浏览器的解决方案(不一定是100%,但至少在主要/最近的浏览器上)。

+0

我猜服务器端解决方案将是最好的 – 2012-03-09 14:41:40

+0

服务器端是我到目前为止。它可以完成这项工作,但在资源使用方面可能会相当繁重,这可能会影响网站的可用性。 – 2012-03-11 12:00:44

+0

是的,但在浏览器中这样做对于低规格机器来说会很困难。也许你需要排队工作,以尽量减少并发资源消耗? – 2012-03-11 18:27:46

回答