He escrito una aplicación básica SL4 para capturar datos de audio desde el micrófono usando CaptureSource
. El problema es que es una salida PCM en bruto, lo que significa enorme y sin comprimir.Silverlight 4 - codificación de datos PCM desde el micrófono
Dado que necesito que esta aplicación se ejecute puramente dentro de un entorno SL4, ¿cómo puedo comprimir los datos de audio de PCM en algo que pueda entregarse a un servidor remoto más fácilmente?
Básicamente, necesito una solución que también pueda implementar/incluir en una aplicación Windows Phone Series 7, así como una que funcione en el entorno del navegador, por lo que solo las soluciones de código administrado, ¿no?
En conversación, las personas han sugerido Speex y WMA por ejemplo, pero no he encontrado ninguna biblioteca o ejemplos que funcionen sin requerir referencia a DLL que no funcionarán en un proyecto SL4.
Gracias, estos son todos los artículos que he visto. Una cosa a tener en cuenta aquí es mi requerimiento de que necesito "comprimir los datos de audio de PCM en algo que pueda entregarse a un servidor remoto más fácilmente". La conversión de PCM a WAV es fácil, pero la compresión de la salida no lo es. WAV es indeseable porque es muy voluminoso, incluso si lo codifica como mono. El blog de Mike Taulty es excelente para mostrar cómo usar los receptores para capturar PCM y convertirlo a WAV, pero supongo que lo que realmente necesitamos aquí es un MediaStreamSource o algo similar que se emita como Speex o WMA. – Richard
@Otaku - He aceptado tu respuesta; fue el más completo. Aún queda mucho por hacer, e intentaré actualizar este artículo en algún momento en el futuro con mi respuesta real. Gracias por tu contribución. – Richard
@Richard - ¡gracias! Te escucho sobre la necesidad de algo mucho más compacto que WAV. Mantendré esto en mi mente y me toparé con cosas, y si aparece algo mejor, actualizaré la respuesta. –