在应用程序引擎上将wav转换为ogg(或在javascript?中)

Convert wav to ogg on app engine (or in javascript?)

本文关键字:或在 javascript ogg 引擎 应用程序 转换 wav      更新时间:2023-09-26

我构建了一个小型应用程序引擎应用程序,允许用户上传短录音。一些录音是在浏览器中使用https://github.com/mattdiamond/Recorderjs,用于创建wav文件。为了节省空间,我想在将它们写入应用程序引擎数据存储之前将它们转换为ogg,这样当我向用户播放录音时,我就可以减少输出带宽。

我该怎么做?我在谷歌上搜索了一下,显然有一个名为oggnc的命令行工具可以编码为ogg——但我很确定我不能在应用程序引擎上安装它(或者,即使我可以安装它,也不能调用它)。

我在JavaScript中从getUserMedia()到.OGG的Encode音频中发现了一个类似的问题——这个链接到https://github.com/jpemartins/speex.js,一个看起来可能最终能够用javascript从wav转换为ogg的项目(这将非常棒),但据我所知,目前还没有这样做。在https://github.com/jpemartins/speex.js/issues/4作者提到WAV->…->OGG还不可能。

我还应该尝试什么?

编辑:我的应用程序引擎代码是用Python编写的,所以另一种可能性是在那里进行转换,使用一个可以将wav转换为ogg的Python模块。我想http://pymedia.org/可以做到这一点,但我必须以某种方式将其安装在应用程序引擎上——这可能吗?

Pymedia不是纯python,因此您将无法在应用程序引擎上使用它。

您可能想要在计算引擎上构建一些东西来实现这一点。

如果可以用AppEngine中的fork chris-rudmin/recorderjs(演示页面)替换Matt Diamond的recorderjs,这应该是可行的。或者先编码到WAV,然后使用opusenc.js(演示页面),这是opusenc工具的Emscripten端口,将临时WAV文件转换到Ogg Opus客户端。