Logo

¡Bienvenido a Stratos!

Acceder

Foros



Micrófono sin LoopBack

Iniciado por mi-go, 11 de Octubre de 2008, 01:02:27 AM

« anterior - próximo »

mi-go

Buenas!!

Estoy haciendo pruebas con el micro y tengo un problema.
Si ejecuto el código que pongo más abajo, que lo he sacado directamente de la ayuda de flash, me funciona todo bien.

Pero si quito lo de: mic.setLoopBack(true);
Porque no quiero escucharme a mi mismo...  ya no me sale la ventana que me pide permiso para usar el micro y no pasa nada. No salta el evento ACTIVITY ni nada.

Según he leído en la ayuda nada más hacer Microphone.getMicrophone(); debería saltar la ventana que pide permiso, pero a mi no me salta y supongo que por eso después el micro no va.

¿Alguien sabe como hacerlo sin el LoopBack?


código del ejemplo:

import flash,events.ActivityEvent;
import flash,events.StatusEvent;
import flash.media.Microphone;

var deviceArray:Array = Microphone.names;
trace("Available sound input devices:");
for (var i:int = 0; i < deviceArray.length; i++)
{
trace(" " + deviceArray);
}

var mic:Microphone = Microphone.getMicrophone();
mic.gain = 60;
mic.rate = 11;
mic.setUseEchoSuppression(true);
mic.setLoopBack(true);
mic.setSilenceLevel(5, 1000);

mic.addEventListener(ActivityEvent.ACTIVITY, this.onMicActivity);
mic.addEventListener(StatusEvent.STATUS, this.onMicStatus);

var micDetails:String = "Sound input device name: " + mic.name + '\n';
micDetails += "Gain: " + mic.gain + '\n';
micDetails += "Rate: " + mic.rate + " kHz" + '\n';
micDetails += "Muted: " + mic.muted + '\n';
micDetails += "Silence level: " + mic.silenceLevel + '\n';
micDetails += "Silence timeout: " + mic.silenceTimeout + '\n';
micDetails += "Echo suppression: " + mic.useEchoSuppression + '\n';
trace(micDetails);

function onMicActivity(event:ActivityEvent):void
{
trace("activating=" + event.activating + ", activityLevel=" +
mic.activityLevel);
}

function onMicStatus(event:StatusEvent):void
{
trace("status: level=" + event.level + ", code=" + event.code);
}
Web personal: www.javiermairena.net
The Game Kitchen: www.thegamekitchen.com
AccessAble Games: www.accessablegames.com
Blog Videojuegos Accesibles: www.videojuegosaccesibles.es

ShAq

Buenas,
Puede parecer una tonteria...
pero has probado a hacer:
mic.setLoopBack(true);
mic.setLoopBack(false);

un saludo.

mi-go

Sí, esa "tontería"   ;)  también la he probado.
Se queda desactivado en cuanto pongo el LooBack a false.
También lo he probado porner a false la primera vez que recibe algún sonido y lo que hace es que ya se queda siempre activo  :-\
Web personal: www.javiermairena.net
The Game Kitchen: www.thegamekitchen.com
AccessAble Games: www.accessablegames.com
Blog Videojuegos Accesibles: www.videojuegosaccesibles.es

mi-go


Lo conseguí !!!!   ^_^'

sólo tenía que poner esta línea:
mic.soundTransform = new SoundTransform(0);

Así modificamos el canal de sonido que tiene asociado mic. Con ese constructor de SoundTransform estoy poniendo volume a 0.
Fuuuu... me ha costado   >.<

Web personal: www.javiermairena.net
The Game Kitchen: www.thegamekitchen.com
AccessAble Games: www.accessablegames.com
Blog Videojuegos Accesibles: www.videojuegosaccesibles.es






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.
Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.