cocos2d/cocos/audio/android/audio_utils/include/audio_utils/primitives.h
static inline float float_from_q8_23(int32_t ival)
{
    static const float scale = 1. / (float)(1UL << 23);

    return ival * scale;
}
/* Convert a 24-bit Q8.23 value to single-precision floating-point.
 * The nominal output float range is [-1.0, 1.0) for the fixed-point
 * range [0xff800000, 0x007fffff].  The maximum float range is [-256.0, 256.0).
 *
 * There is no rounding in the nominal range, the conversion and representation
 * is exact. For values outside the nominal range, rounding is to nearest, ties to even.
 */
Convert a 24-bit Q8.23 value to single-precision floating-point.
The nominal output float range is [-1.0, 1.0) for the fixed-point
range [0xff800000, 0x007fffff].

There is no rounding in the nominal range, the conversion and representation
is exact. For values outside the nominal range, rounding is to nearest, ties to even.
Convert a 24 - bit Q8 . 23 value to single - precision floating - point . The nominal output float range is [ - 1 . 0 1 . 0 ) for the fixed - point range [ 0xff800000 0x007fffff ] . There is no rounding in the nominal range the conversion and representation is exact . For values outside the nominal range rounding is to nearest ties to even .
static inline float float_from_q8_23(int32_t ival)
{
    static const float scale = 1. / (float)(1UL << 23);
    return ival * scale;
}
static inline float float_from_q8_23 ( int32_t ival ) { static const float scale = 1. / ( float ) ( 1UL << 23 ) ; return ival * scale ; }
Convert a 24-bit Q8.23 value to single-precision floating-point.
Convert a 24 - bit Q8 . 23 value to single - precision floating - point .