API documentation for libmpg123, libout123, and libsyn123
Let me emphasize that the policy for the lib*123 family is to always stay backwards compatible -- only additions are planned (and it's not yet planned to change the plans;-).
|MPG123_EXPORT const char **||mpg123_decoders (void)|
|MPG123_EXPORT const char **||mpg123_supported_decoders (void)|
|MPG123_EXPORT int||mpg123_decoder (mpg123_handle *mh, const char *decoder_name)|
|MPG123_EXPORT const char *||mpg123_current_decoder (mpg123_handle *mh)|
Functions to list and select the available decoders. Perhaps the most prominent feature of mpg123: You have several (optimized) decoders to choose from (on x86 and PPC (MacOS) systems, that is).
|MPG123_EXPORT const char** mpg123_decoders||(||void||)|
Get available decoder list.
- NULL-terminated array of generally available decoder names (plain 8bit ASCII)
|MPG123_EXPORT const char** mpg123_supported_decoders||(||void||)|
Get supported decoder list.
This possibly writes to static storage in the library, so avoid calling concurrently, please.
- NULL-terminated array of the decoders supported by the CPU (plain 8bit ASCII)
Set the active decoder.
mh handle decoder_name name of decoder
- MPG123_OK on success
Get the currently active decoder name. The active decoder engine can vary depening on output constraints, mostly non-resampling, integer output is accelerated via 3DNow & Co. but for other modes a fallback engine kicks in. Note that this can return a decoder that is only active in the hidden and not available as decoder choice from the outside.
- The decoder name or NULL on error.