Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/03/2013, 11:39
Avatar de jhg
jhg
 
Fecha de Ingreso: marzo-2012
Mensajes: 96
Antigüedad: 13 años
Puntos: 1
Audio de HTML5 desde Javascript

Hola, estoy intentando desde Javascript crear objetos de audio, para descargarlos y controlar la reproducción, etc; busque por google y intente hacerlo pero mirando desde las herramientas de diseño web de crhome me sale que el archivo MP3 y OGG lo intenta descargar pero luego es cancelada la carga. Intente usar el evento onerror para volverlo a cargar y lo unico que consigo es un bucle infinito de cargarlo y error. Estoy trabajando en local, sin servidor.

El ultimo código que me ha fallado y da este error es:
Código:
function descarga_audio(nombre, url){
  var audio = new Audio();
  auddic[nombre] = audio;
  auddic[nombre].onerror = function(){this.src=url;}
  auddic[nombre].src = url;
}
También habia probado anteriormente:
Código:
function descarga_audio(nombre, url){
  var audio = new Audio();
  auddic[nombre] = audio;
  auddic[nombre].src = url;
  auddic[nombre].play();
}
auddic es una variable global que quiero usar unicamente para mantener hay un diccionario de todos los objetos de audio (hice algo similar con imagenes y funciono perfectamente, es porque quiero controlar todo desde Javascript para crear un juego sencillo con canvas).

¿Tienen alguna idea de porque puede estar fallando cuando llamo a descarga_audio('test', 'test.mp3'); y el archivo test.mp3 existe y esta en el mismo directorio?

Gracias de antemano.

EDITO:
Probando un código para trabajar con workers en javascript que me fallaba, me encontre con una pagina en la que ponia:
Cita:
RESTRICCIONES CON ACCESO LOCAL
Debido a las restricciones de seguridad de Google Chrome, los Workers no se ejecutarán de forma local (por ejemplo, desde file://) en las últimas versiones del navegador. En su lugar, fallan de forma automática. Para ejecutar tu aplicación desde el esquema file://, ejecuta Chrome con el conjunto de marcadores --allow-file-access-from-files. NOTA: no es recomendable ejecutar tu navegador principal con este conjunto de marcadores, pues solo se debe utilizar para realizar pruebas y no para navegar con normalidad.
Lo cual, pues supongo tendra su motivos por lo que consideran más seguro eso, etc; y actuan asi con los .js pero me quede pensando si ¿seria posible que el fallo del audio tuviera que ver con esto? voy a probar y ya les comento, aunque no veo demasiado problema de seguridad en acceder a un mp3 local cuando puedo acceder a un png o un jpg local.

EDITO:
Creo que va a ser ese mecanismo de seguridad de chrome porque acabo de abrirlo con firefox y funciona todo perfecto. Marco el tema como solucionado por si a alguien le es de utilidad.
__________________
JHG

Última edición por jhg; 04/03/2013 a las 12:59 Razón: Agregar información