Pregunta

¿Cuál es la mejor solución para convertir archivos WAV a WMA (y viceversa) en C#?En realidad he implementado esta vez ya con el Windows Media Encoder SDK, pero tener que distribuir el Codificador de Windows Media con mi aplicación es muy complicado, por decir lo menos.El SDK de Windows Media Format tiene grandes secciones de la API marcado como obsoleto.Parece que puede haber algo de DirectX Objetos Multimedia (Ogd) yo podría utilizar desde el SDK de Windows, pero habrá un montón de interoperabilidad para escribir.

Me pregunto si tal vez es un buen contenedor administrado por un no administrado la biblioteca que pueden realizar las conversiones.Sería necesario contar con una licencia que permite que se distribuye como parte de una fuente cerrada aplicación comercial.

¿Fue útil?

Solución

Yo no lo he probado personalmente (por lo que no estoy seguro si es la "mejor" solución), pero http://www.codeproject.com/KB/audio-video/WmaCompressor.aspx parece que debe cumplir con sus requisitos...

Otros consejos

Usted puede tomar un vistazo a la BAJO de la biblioteca.Tiene los complementos, tales como BASSWMA y BASSEnc para hacer la codificación/decodificación.Todos sus API son accesibles desde .NET usando el BASS.Net la envoltura.

Tanto los GRAVES y BASS.Net podría ser con licencia para uso comercial, con un precio razonable (de 100€cada uno).

Si eres capaz de escribir un poco de C++/CLI, entonces usted no necesita mucho código para crear un contenedor de DirectShow para ello.Esto puede ser llamado directamente desde C# de la asamblea, sin necesidad de ensuciar alrededor con la interoperabilidad.Hacerlo con DirectShow es mucho más fácil que usar WMF directamente porque usted no tiene que hacer ningún análisis de archivo de e/S o - es todo lo que hecho por ti.Para la referencia, he de código en una aplicación comercial que puede codificar/decodificar WMA/WAV archivos de menos de 100 líneas de C++, todo envuelto en un ambiente agradable .Clase Net.El uso juicioso de punteros inteligentes de ayuda si usted va esta ruta...

Primero de todo, mira esto:

http://windowsmedianet.sourceforge.net/

A continuación, busque IWMWritter - y las diversas formas de inicializar.Se le suministro raw PCM de datos, y se escribirá el archivo wma.

Etiqueta de mi respuesta por favor para más información sobre esto.

Usted puede mirar en www.mitov.com.Hay algunas bibliotecas que puedan ayudar.Usted tendrá que comprar una copia para enviar en un producto comercial, creo, pero creo que es un precio razonable.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top