cocos2d/cocos/audio/android/audio_utils/include/audio_utils/primitives.h
static inline int32_t i32_from_p24(const uint8_t *packed24)
{
    /* convert to 32b */
    return (packed24[0] << 8) | (packed24[1] << 16) | (packed24[2] << 24);
}
/* Convert a packed 24bit Q0.23 value stored native-endian in a uint8_t ptr
 * to a signed fixed-point 32 bit integer Q0.31 value. The output Q0.31 range
 * is [0x80000000, 0x7fffff00] for the fixed-point range [0x800000, 0x7fffff].
 * Even though the output range is limited on the positive side, there is no
 * DC offset on the output, if the input has no DC offset.
 *
 * Avoid relying on the limited output range, as future implementations may go
 * to full range.
 */
Convert a packed 24bit Q0.23 value stored native-endian in a uint8_t ptr
to a signed fixed-point 32 bit integer Q0.31 value.

Avoid relying on the limited output range, as future implementations may go
to full range.
Convert a packed 24bit Q0 . 23 value stored native - endian in a uint8_t ptr to a signed fixed - point 32 bit integer Q0 . 31 value . Avoid relying on the limited output range as future implementations may go to full range .
static inline int32_t i32_from_p24(const uint8_t *packed24)
{
    return (packed24[0] << 8) | (packed24[1] << 16) | (packed24[2] << 24);
}
static inline int32_t i32_from_p24 ( const uint8_t * packed24 ) { return ( packed24 [ 0 ] << 8 ) | ( packed24 [ 1 ] << 16 ) | ( packed24 [ 2 ] << 24 ) ; }
Convert a packed 24bit Q0.23 value stored native-endian in a uint8_t ptr
 to a signed fixed-point 32 bit integer Q0.31 value.
Convert a packed 24bit Q0 . 23 value stored native - endian in a uint8_t ptr to a signed fixed - point 32 bit integer Q0 . 31 value .
/* convert to 32b */