Revisando después de muchos años la evolución de Sphinx C–, me he encontrado con una de esas joyitas de la programación, que de vez en cuando le sorprenden a uno.

Se trata de MiniMP3 y MP3Play. El primero es un básico reproductor de MP3 que ¡ocupa 2 Kb!. El segundo, y más sorprendente, es también un reproductor de audio, en sólo 4 Kb, soporta listas de reproducción, permitiendo escuchar los formatos MIDI (MID), WAVE (WAV), MPEG Layer 3 (MP3), RMI, AIFF (AIF), AU y SND. Cabe decir, que comprimiendo MP3Play con un compresor de ejecutables, su tamaño final, ronda los 1,5 Kb.

Ambos programas, forman parte de los ejemplos que vienen a demostrar la potencia y eficiencia de C– como lenguaje de propósito general.

Tal como explica su autor, Ron Thomas, el pequeño truco que, que por otro lado no desmerece en absoluto el mérito de ambas aplicaciones, radica en utilizar la biblioteca Msvfw32.dll (incluída en el Windows Media Player), para delegar el trabajo de reproducción.

Sphinx C– es un lenguaje de programación de medio nivel, vendría a ser algo intermedio entre Ensamblador y C/C++, lo que le permite sin duda tener una eficiencia muy cercana al código máquina, al mismo tiempo que mantiene una facilidad de programación al nivel de los lenguajes estructurados de alto nivel.

Descargar MP3Play y su código fuente en C– (9 Kb en formato ZIP).