SDL Wiki
(This function is part of SDL_mixer, a separate library from SDL.)

Mix_LoadMUS

Load a supported audio format into a music object.

Header File

Defined in <SDL3_mixer/SDL_mixer.h>

Syntax

Mix_Music * Mix_LoadMUS(const char *file);

Function Parameters

const char * file a file path from where to load music data.

Return Value

(Mix_Music *) Returns a new music object, or NULL on error.

Remarks

SDL_mixer has two separate data structures for audio data. One it calls a "chunk," which is meant to be a file completely decoded into memory up front, and the other it calls "music" which is a file intended to be decoded on demand. Originally, simple formats like uncompressed WAV files were meant to be chunks and compressed things, like MP3s, were meant to be music, and you would stream one thing for a game's music and make repeating sound effects with the chunks.

In modern times, this isn't split by format anymore, and most are interchangeable, so the question is what the app thinks is worth predecoding or not. Chunks might take more memory, but once they are loaded won't need to decode again, whereas music always needs to be decoded on the fly. Also, crucially, there are as many channels for chunks as the app can allocate, but SDL_mixer only offers a single "music" channel.

When done with this music, the app should dispose of it with a call to Mix_FreeMusic().

Version

This function is available since SDL_mixer 3.0.0.

See Also


CategoryAPI, CategoryAPIFunction, CategorySDLMixer


[ edit | delete | history | feedback | raw ]

[ front page | index | search | recent changes | git repo | offline html ]

All wiki content is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
Wiki powered by ghwikipp.