He estado experimentando conectando un elemento de audio a la API de audio usando createMediaElementSource y lo he puesto a funcionar, pero una cosa que tengo que hacer es cambiar la velocidad de reproducción del audio etiqueta y no pude hacer que eso funcione.Configuración de playbackRate en el elemento de audio conectado a audio web api
Si intenta ejecutar el siguiente código, verá que funciona hasta que descomente la línea donde establecemos la velocidad de reproducción. Cuando esta línea está en el audio se silencia.
Sé que puedo establecer la velocidad de reproducción en un AudioBufferSourceNode utilizando source.playbackRate.value, pero esto no es lo que me gustaría hacer, necesito establecer la velocidad de reproducción en el elemento de audio mientras está conectado a la web aplicación de audio usando createMediaElementSource, así que no tengo ningún AudioBufferSourceNode.
¿Alguien ha logrado hacer eso?
var _source,
_audio,
_context,
_gainNode;
_context = new webkitAudioContext();
function play(url) {
if (_audio) {
_audio.pause();
}
_audio = new Audio(url);
//_audio.playbackRate = 0.6;
setTimeout(function() {
if (!_gainNode) {
_gainNode = _context.createGainNode();
_gainNode.gain.value = 0.1;
_gainNode.connect(_context.destination);
}
_source = _context.createMediaElementSource(_audio);
_source.connect(_gainNode);
_audio.play();
}, 0);
}
play("http://geo-samples.beatport.com/items/volumes/volume2/items/3000000/200000/40000/9000/400/60/3249465.LOFI.mp3");
setTimeout(function() {
_audio.pause();
}, 4000);
Es extraño, esto parece funcionar para mí en Chrome. http://jsfiddle.net/9gLKM/ - Chrome: Versión 22.0.1229.94 m –