2012-03-23 25 views
5

Estoy exhausto en busca de una biblioteca de decodificación de C++ mp3, preferiblemente libre (como lgpl) y multiplataforma o para Windows y Mac. ¿Alguien puede sugerir tal biblioteca y publicar algún tutorial para usarla? ffmpeg y sdl (sdl_sound, sdl_mixer) no se están compilando. No puedo hacer funcionar el mpg123, ¿es solo para linux world o qué? ¿Hay algún tutorial sobre el uso de mpg123 en Windows? mpg123 no puede encontrar algunos símbolos, es decir, no estoy poniendo algunos archivos DLL en el camino correcto, ¿pero cuál?C++ mp3 library

En general, quiero poder leer y escribir los principales formatos de archivos de audio en Windows y Mac, empezando por Windows.

+3

Las entrañas de VLC es ffmpeg y se ejecuta en Windows y Mac. –

+0

hmm a la derecha - ¿puedes publicar algún tutorial sobre cómo hacer funcionar a ffmpeg? – user1288043

+0

Probablemente puedas evitar muchos problemas de compilación empezando aquí. http://ffmpeg.zeranoe.com/ –

Respuesta

1

¿Has mirado en LAME? Además, tenga en cuenta que el algoritmo mp3 está sujeto a patentes, por lo que debe pisar con cuidado, independientemente de la biblioteca que utilice.

+0

Creo que LAME es solo para codificación. Y sí, estoy al tanto de las patentes, pero todavía hay muchas bibliotecas para hacer el trabajo. – user1288043

+0

Lame tiene un decodificador incorporado que usa mpg123 – ShrekOverflow

0

Tome un vistazo a bass:

He trabajado con él hace unos años, era fácil de usar, multiplataforma, con una buena calidad de sonido y el desarrollador fue un gran apoyo. Es gratis para uso no comercial.

1

Creo que la última vez que necesité usé libMAD. Funcionó bien, pero es una C lib.

2

Hay un par de opciones:

GStreamer es una biblioteca multiplataforma para la construcción de gráficos de componentes de manejo de soporte. Las aplicaciones que admite abarcan desde la reproducción simple de Ogg/Vorbis, la transmisión de audio/video hasta el procesamiento complejo de audio (mezcla) y de video (edición no lineal).

This page tiene alguna información muy interesante sobre GStreamer y el formato MP3, es una lectura obligada si usted decide ir con GStreamer:

El formato de audio MP3 es un dolor. Está gravado con patentes, lo que dificulta que los distribuidores de Linux empaqueten (o los usuarios de Linux lo hagan) legalmente en varias partes del mundo. Ni siquiera suena tan bien, en comparación con algunas de las alternativas. Sin embargo, MP3 es difícil de evitar;

Además de eso, ofers Gstreamer una interfaz de línea de comandos a través GST-lanzamiento que es muy útil para probar la tubería que está ensamblando en su programa antes de empezar a escribir código el código real:

gst-launch filesrc location=/path/to/audiofile ! decodebin ! oss4sink 

Y si necesita build GStreamer on Windows, consulte este tutorial for Visual Studio.

PortAudio es A, multiplataforma, de código abierto, audio biblioteca de I/O. Le permite escribir programas de audio simples en 'C' o C++ que se compilarán y ejecutarán en muchas plataformas, incluidas Windows, Macintosh OS X y Unix (OSS/ALSA).

La compatibilidad con MP3 viene a través de libmad. Hay tutorials que ayudan a construir y usar la biblioteca.

0

Supongo que el gstreamer es la mejor opción, pero también podría usar el LibVLC, que es un núcleo del reproductor vlc.

1

Puede probar Helix.

Tiene una versión optimizada para plataformas integradas y arquitecturas de brazo.