SDL_mixer.h

Función Mix_LoadMUS

Sintaxis

Mix_Music * Mix_LoadMUS(const char *file);

Descripción

Carga un formato de audio compatible en un objeto musical.

Parámetros

file
Una ruta de archivo desde donde cargar los datos musicales.

Valor de retorno

Devuelve un nuevo objeto musical, o NULL en caso de error.

Observaciones

SDL_mixer tiene dos estructuras de datos separadas para los datos de audio. Una se denomina "chunk" (trozo), y está pensada para ser un archivo completamente decodificado en memoria por adelantado, y la otra se denomina "music" (música), que es un archivo pensado para ser decodificado bajo demanda. Al principio, los formatos sencillos, como los archivos WAV sin comprimir, eran "chunks" y los comprimidos, como los MP3, eran "música", y se transmitía una cosa para la música de un juego y se hacían efectos de sonido repetitivos con los "chunks".

En los tiempos modernos, esto ya no se divide por formatos, y la mayoría son intercambiables, así que la cuestión es qué cree la aplicación que merece la pena predecodificar o no. Los chunks pueden ocupar más memoria, pero una vez cargados no será necesario descodificarlos de nuevo, mientras que la música siempre hay que descodificarla sobre la marcha. Además, y esto es crucial, hay tantos canales para los trozos como la aplicación pueda asignar, pero SDL_mixer sólo ofrece un único canal de "música".

Cuando se termina con esta música, la aplicación debe deshacerse de ella con una llamada a Mix_FreeMusic().