自动调谐/ Python / Javascript

时间:2013-06-19 13:19:14

标签: javascript python audio

我想为移动设备开发一个“我是T-Pain app”。输入是我的声音,输出是我的声音自动调整。

我在Github上找到了一个我正在寻找PyAutoTune的例子。

不幸的是它是用Python开发的,但我也发现了Skulpt,这使我能够用Javascript编写Python。你认为以这种方式产生自动调谐效果是否可能?

我正在使用Icenium,我必须用HTML / CSS / Javascript开发我的应用程序。

所以我想知道Skulpt是否允许我使用Javascript来完成这个项目,或者它是否是一个太有限的工具?

2 个答案:

答案 0 :(得分:3)

该库是用C语言编写的;它是Python的扩展。如果你的平台不允许C程序,我担心你运气不好。

如果您能够编译C代码或以某种方式将其转换为Javascript,您可以完全避免使用Python绑定(PyAutoTuner.c)并使用http://tombaran.info/autotalent.html中的原始库

答案 1 :(得分:1)

好的,所以python的东西只是暴露和使用C符号。所以Skulpt对你想要达到的目标毫无帮助。

然后,你真的很少有选择,这会带来很多工作:

  • 从头开始在Javascript中重写整个PyAutoTune C库。找出复杂的算法会很有帮助,但是很多的工作;
  • 分叉PyAutoTune C库,因此删除与python相关的所有内容。然后
    • 你用emscripten编译这些库以将它们嵌入到你的firefox浏览器中,虽然我不知道怎么做,但是从emscripten编译的东西中获取符号,这样你就可以从你将拥有的Javascript中调用C函数写(以某种方式等同于FromFileAutoTune.py)或
    • 你使用chrome的本机C代码执行扩展(我不记得它的名字),导出所有符号,这样你就可以从你编写的javascript代码中使用它们。

我从来没有做过这样的事情,我只知道这是可能的......但是这两个功能都受到chrome和Mozilla开发人员的大量开发,并且可能缺乏良好的文档,特别是如果你是初学者。