From the good_enc
function in the format.c
file within the libmpg123 source.
It is used to check whether a specified encoding is supported on the current build.
The following image is taken from a debugging session, during which it checks whether (enc == 512, equivalent to MPG123_ENC_FLOAT_32
) 32 bit floating point encoding is supported.
As seen in the image, my build does not support 32 bit floating points encoding for some reason.
I am running this on Windows 7 x64 Home Premium, with the source codes downloaded and compiled as is.
Is there any configurations that I missed? From the docs on the site, it seems that
32bit float will be usual beginning with mpg123-1.7.0
I am using version 1.14.4
I don't know if your 1.14.4 version supports floating points already - last time I was aware of it was supported by last svn trunk "only".
So maybe pull from there and compile again.
Anyway, in the default sources is a "cheap hack" included to get your floating points enabled by force.
/* Simple hack to enable floating point output. */
if(argc >= 4 && !strcmp(argv[3], "f32")) mpg123_param(mh, MPG123_ADD_FLAGS, MPG123_FORCE_FLOAT, 0.);
As seen here: http://www.mpg123.de/api/mpg123_to_wav_8c_source.shtml