Functions to get text version of the error numbers and an enumeration of the error codes returned by libmpg123.
Most functions operating on a mpg123_handle simply return MPG123_OK on success and MPG123_ERR on failure (setting the internal error variable of the handle to the specific error code). Decoding/seek functions may also return message codes MPG123_DONE, MPG123_NEW_FORMAT and MPG123_NEED_MORE (please read up on these on how to react!). The positive range of return values is used for "useful" values when appropriate.
| enum mpg123_errors |
Enumeration of the message and error codes and returned by libmpg123 functions.
| MPG123_DONE |
Message: Track ended. Stop decoding. |
| MPG123_NEW_FORMAT |
Message: Output format will be different on next call. Note that some libmpg123 versions between 1.4.3 and 1.8.0 insist on you calling mpg123_getformat() after getting this message code. Newer verisons behave like advertised: You have the chance to call mpg123_getformat(), but you can also just continue decoding and get your data. |
| MPG123_NEED_MORE |
Message: For feed reader: "Feed me more!" (call mpg123_feed() or mpg123_decode() with some new input data). |
| MPG123_ERR |
Generic Error |
| MPG123_OK |
Success |
| MPG123_BAD_OUTFORMAT |
Unable to set up output format! |
| MPG123_BAD_CHANNEL |
Invalid channel number specified. |
| MPG123_BAD_RATE |
Invalid sample rate specified. |
| MPG123_ERR_16TO8TABLE |
Unable to allocate memory for 16 to 8 converter table! |
| MPG123_BAD_PARAM |
Bad parameter id! |
| MPG123_BAD_BUFFER |
Bad buffer given -- invalid pointer or too small size. |
| MPG123_OUT_OF_MEM |
Out of memory -- some malloc() failed. |
| MPG123_NOT_INITIALIZED |
You didn't initialize the library! |
| MPG123_BAD_DECODER |
Invalid decoder choice. |
| MPG123_BAD_HANDLE |
Invalid mpg123 handle. |
| MPG123_NO_BUFFERS |
Unable to initialize frame buffers (out of memory?). |
| MPG123_BAD_RVA |
Invalid RVA mode. |
| MPG123_NO_GAPLESS |
This build doesn't support gapless decoding. |
| MPG123_NO_SPACE |
Not enough buffer space. |
| MPG123_BAD_TYPES |
Incompatible numeric data types. |
| MPG123_BAD_BAND |
Bad equalizer band. |
| MPG123_ERR_NULL |
Null pointer given where valid storage address needed. |
| MPG123_ERR_READER |
Error reading the stream. |
| MPG123_NO_SEEK_FROM_END |
Cannot seek from end (end is not known). |
| MPG123_BAD_WHENCE |
Invalid 'whence' for seek function. |
| MPG123_NO_TIMEOUT |
Build does not support stream timeouts. |
| MPG123_BAD_FILE |
File access error. |
| MPG123_NO_SEEK |
Seek not supported by stream. |
| MPG123_NO_READER |
No stream opened. |
| MPG123_BAD_PARS |
Bad parameter handle. |
| MPG123_BAD_INDEX_PAR |
Bad parameters to mpg123_index() and mpg123_set_index() |
| MPG123_OUT_OF_SYNC |
Lost track in bytestream and did not try to resync. |
| MPG123_RESYNC_FAIL |
Resync failed to find valid MPEG data. |
| MPG123_NO_8BIT |
No 8bit encoding possible. |
| MPG123_BAD_ALIGN |
Stack aligmnent error |
| MPG123_NULL_BUFFER |
NULL input buffer with non-zero size... |
| MPG123_NO_RELSEEK |
Relative seek not possible (screwed up file offset) |
| MPG123_NULL_POINTER |
You gave a null pointer somewhere where you shouldn't have. |
| MPG123_BAD_KEY |
Bad key value given. |
| MPG123_NO_INDEX |
No frame index in this build. |
| MPG123_INDEX_FAIL |
Something with frame index went wrong. |
| MPG123_BAD_DECODER_SETUP |
Something prevents a proper decoder setup |
| MPG123_MISSING_FEATURE |
This feature has not been built into libmpg123. |
| MPG123_BAD_VALUE |
A bad value has been given, somewhere. |
| MPG123_LSEEK_FAILED |
Low-level seek failed. |
| MPG123_BAD_CUSTOM_IO |
Custom I/O not prepared. |
| MPG123_LFS_OVERFLOW |
Offset value overflow during translation of large file API calls -- your client program cannot handle that large file. |
| MPG123_INT_OVERFLOW |
Some integer overflow. |
| const char* mpg123_plain_strerror | ( | int | errcode | ) |
Return a string describing that error errcode means.
| const char* mpg123_strerror | ( | mpg123_handle * | mh | ) |
Give string describing what error has occured in the context of handle mh. When a function operating on an mpg123 handle returns MPG123_ERR, you should check for the actual reason via char *errmsg = mpg123_strerror(mh) This function will catch mh == NULL and return the message for MPG123_BAD_HANDLE.
| int mpg123_errcode | ( | mpg123_handle * | mh | ) |
Return the plain errcode intead of a string.
1.7.1