La opcion de NodeJS es una ruta que puede ser interesante para esto.
Como dice Rafael Node usa C++ en su interior, de ahi que es mas o menos
sencillo crear una libreria que exponga en Javascript un wrapper de su
parte en C++.
NPM, es un manejador de paquetes (extensiones) para Node, en NPM
registry[1] buscando por la palabra "audio" aparecen algunos resultados
como audiolib.js[2] que segun su referencia tiene implementados:
Reverbs, Comb/IIR/Biquad/All-Pass/Low-Pass/Band-Pass/High-Pass filters,
Delays, Oscillators, FFT and other analyzing tools, Step sequencers,
Envelope controls, Noise generators, Samplers.
Javascript en este momento es un lenguaje del cual vale la pena estar
pendiente, pues usado en proyectos como Cordova[3] (antiguo PhoneGap) o
B2G[4], permite crear aplicaciones para telefonos moviles usando
herramientas estandar (HTML 5, JS, CSS) que por un lado son mucho mas
sencillas de usar comparadas a los entornos nativos de desarrollo
(Java/Objective C) y por otro, permite escribir una sola aplicacion que
puede desplegarse en diferentes plataformas moviles.
[1]http://search.npmjs.org/
[2]https://github.com/jussi-kalliokoski/audiolib.js
[3]http://phonegap.com/
[4]https://developer.mozilla.org/en/Mozilla/Boot_to_Gecko
On Sat 26 May 2012 01:31:14 AM ART, Rafael Vega wrote:
Hola.
Hay dos herramientas interesantes para audio en los browsers:
1. NaCl y Pepper: Son una API en C++ y una en javascript que permiten
agregar código C++ en una aplicación que corre en el contexto de un
navegador web (Google Chrome solamente). Como parte del SDK hay una
API para audio I/O. La limitante por ahora es que no hay entradas de
audio, solo salidas. Esto es parecido a lo que hizo Microsoft hace
años con los plugins Active-X para internet explorer pero corre en un
sandbox mucho mas seguro. Esto y el chrome web store son una
combinación interesante. Ah, google chrome para Android está próximo.
https://developers.google.com/native-client/peppercpp/classpp_1_1_audio
https://developers.google.com/native-client/peppercpp/classpp_1_1_audio_config
2. Lo otro es Web Audio, un borrador de un standard de la W3C que
especifica un a API en javascript que implementa un conjunto
interesante de objetos de audio como efectos, convolución, etc. Las
implementaciones actuales (Google y Mozilla) no tienen entrada de
audio, solo salida. Esto es lo que utilizó google para crear el doodle
de Moog.
http://www.w3.org/TR/audioproc/
http://chromium.googlecode.com/svn/trunk/samples/audio/index.html
http://www.google.com/doodles/robert-moogs-78th-birthday
Además, al lado del servidor, o en la línea de comandos, está node.js
que permite utilizar javascript como lenguaje de scripting de
propósito general, con unas características de programación asíncrona
que junto a una librería de C++ con bindings para js también podría
ser interesante.
http://nodejs.org/
http://flusspferd.github.com/
Y saliendome un poco del tema, está tambien la Sparse Fourier
Transform que, en principio, pone a los lenguajes de scripting a jugar
en el área del tiempo real.
http://groups.csail.mit.edu/netmit/sFFT/
Saludos,
Rafa Vega.
On 05/25/2012 10:23 PM, Federico Lopez wrote:
Rafa dentro de la lista de Arzexp a partir del doodle de moog salió
la pregunta de que se podía hacer en javascript con audio ...
fede.
-------- Original Message --------
Subject: Re: [Arzexp] [Expyezp] concurso de composicion
Date: Fri, 25 May 2012 17:12:29 +0100
From: Andres Cabrera <[email protected]>
Reply-To: [email protected]
To: [email protected]
Hola,
2012/5/24 federico lopez<[email protected]>:
>
> PD: Rafael Vega nos contó la semana pasada que a Javascript se le
puede
> embeber código C++ y tiene un "hueco" de salida para controlar
directamente
> la tarjeta de sonido, lo que hace al browser un potencial
instrumento con
> todo el musculo y velocidad de C++.
Muy interesante! Tienes algún enlace sobre esto?
Saludos,
Andrés
_______________________________________________
____ ____ ___ ____ _ _ ___
|__| |__/ / |___ \/ |__]
| | | \ /__ |___ _/\_ |
Arzexp mailing list
[email protected]
http://lists.slow.tk/listinfo.cgi/arzexp-slow.tk
_______________________________________________
____ ____ ___ ____ _ _ ___
|__| |__/ / |___ \/ |__]
| | | \ /__ |___ _/\_ |
Arzexp mailing list
[email protected]
http://lists.slow.tk/listinfo.cgi/arzexp-slow.tk
--
Gabriel Zea
work :: http://martinez-zea.info
updates :: http://www.whistle.randomlab.net/z3a
portfolio :: http://zea.randomlab.net
@flickr :: http://is.gd/1Mry9
@skype :: g.z.e.a
PGP :: 2048R/89157D38
Key fingerprint = 09D2 F975 9611 1729 03E0 2A38 C2E6 6B47 8915 7D38
_______________________________________________
____ ____ ___ ____ _ _ ___
|__| |__/ / |___ \/ |__]
| | | \ /__ |___ _/\_ |
Arzexp mailing list
[email protected]
http://lists.slow.tk/listinfo.cgi/arzexp-slow.tk