mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-10-29 05:40:27 -04:00
audioconvert: fix pack/unpack of s24/u24
Copy the values into the right place in the struct.
This commit is contained in:
parent
a46d4aedd7
commit
e3951cc1f1
1 changed files with 8 additions and 2 deletions
|
|
@ -155,9 +155,12 @@ static inline uint32_t u24_to_u32(uint24_t src)
|
|||
return ((uint32_t)src.v1 << 16) | ((uint32_t)src.v2 << 8) | (uint32_t)src.v3;
|
||||
}
|
||||
|
||||
#define U32_TO_U24(s) (uint24_t) { .v1 = (uint8_t)(((uint32_t)s) >> 16), \
|
||||
.v2 = (uint8_t)(((uint32_t)s) >> 8), .v3 = (uint8_t)((uint32_t)s) }
|
||||
|
||||
static inline uint24_t u32_to_u24(uint32_t src)
|
||||
{
|
||||
return (uint24_t) { src >> 16, src >> 8, src };
|
||||
return U32_TO_U24(src);
|
||||
}
|
||||
|
||||
static inline int32_t s24_to_s32(int24_t src)
|
||||
|
|
@ -165,9 +168,12 @@ static inline int32_t s24_to_s32(int24_t src)
|
|||
return ((int32_t)src.v1 << 16) | ((uint32_t)src.v2 << 8) | (uint32_t)src.v3;
|
||||
}
|
||||
|
||||
#define S32_TO_S24(s) (int24_t) { .v1 = (int8_t)(((int32_t)s) >> 16), \
|
||||
.v2 = (uint8_t)(((uint32_t)s) >> 8), .v3 = (uint8_t)((uint32_t)s) }
|
||||
|
||||
static inline int24_t s32_to_s24(int32_t src)
|
||||
{
|
||||
return (int24_t) { src >> 16, src >> 8, src };
|
||||
return S32_TO_S24(src);
|
||||
}
|
||||
|
||||
static inline uint24_t bswap_u24(uint24_t src)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue