Mercurial > audlegacy-plugins
comparison src/alsa-ng/alsa-util.c @ 3187:360e92f3211d
alsa-ng: Apparently 24bit values are padded to 32bit, so we need to tell ALSA that.
The FMT_*24_* constants are misleading.
author | William Pitcock <nenolod@atheme.org> |
---|---|
date | Fri, 19 Jun 2009 08:38:14 -0500 |
parents | d3cf6d14c960 |
children | 68bb898b8ae0 |
comparison
equal
deleted
inserted
replaced
3186:2e988f44b85d | 3187:360e92f3211d |
---|---|
19 | 19 |
20 #include "alsa-stdinc.h" | 20 #include "alsa-stdinc.h" |
21 | 21 |
22 static alsaplug_format_mapping_t alsaplug_format_conv_tbl[] = { | 22 static alsaplug_format_mapping_t alsaplug_format_conv_tbl[] = { |
23 {FMT_FLOAT, SND_PCM_FORMAT_FLOAT}, | 23 {FMT_FLOAT, SND_PCM_FORMAT_FLOAT}, |
24 {FMT_S24_LE, SND_PCM_FORMAT_S24_LE}, | 24 {FMT_S32_LE, SND_PCM_FORMAT_S32_LE}, |
25 {FMT_S24_BE, SND_PCM_FORMAT_S24_BE}, | 25 {FMT_S32_BE, SND_PCM_FORMAT_S32_BE}, |
26 {FMT_S24_NE, SND_PCM_FORMAT_S24}, | 26 {FMT_S32_NE, SND_PCM_FORMAT_S32}, |
27 {FMT_U24_LE, SND_PCM_FORMAT_U24_LE}, | 27 {FMT_S24_LE, SND_PCM_FORMAT_S24_3LE}, |
28 {FMT_U24_BE, SND_PCM_FORMAT_U24_BE}, | 28 {FMT_S24_BE, SND_PCM_FORMAT_S24_3BE}, |
29 {FMT_U24_NE, SND_PCM_FORMAT_U24}, | 29 #if G_BYTE_ORDER == G_LITTLE_ENDIAN |
30 {FMT_S24_NE, SND_PCM_FORMAT_S24_3LE}, | |
31 #else | |
32 {FMT_S24_NE, SND_PCM_FORMAT_S24_3BE}, | |
33 #endif | |
34 {FMT_U24_LE, SND_PCM_FORMAT_U24_3LE}, | |
35 {FMT_U24_BE, SND_PCM_FORMAT_U24_3BE}, | |
36 #if G_BYTE_ORDER == G_LITTLE_ENDIAN | |
37 {FMT_U24_NE, SND_PCM_FORMAT_U24_3LE}, | |
38 #else | |
39 {FMT_U24_NE, SND_PCM_FORMAT_U24_3BE}, | |
40 #endif | |
30 {FMT_S16_LE, SND_PCM_FORMAT_S16_LE}, | 41 {FMT_S16_LE, SND_PCM_FORMAT_S16_LE}, |
31 {FMT_S16_BE, SND_PCM_FORMAT_S16_BE}, | 42 {FMT_S16_BE, SND_PCM_FORMAT_S16_BE}, |
32 {FMT_S16_NE, SND_PCM_FORMAT_S16}, | 43 {FMT_S16_NE, SND_PCM_FORMAT_S16}, |
33 {FMT_U16_LE, SND_PCM_FORMAT_U16_LE}, | 44 {FMT_U16_LE, SND_PCM_FORMAT_U16_LE}, |
34 {FMT_U16_BE, SND_PCM_FORMAT_U16_BE}, | 45 {FMT_U16_BE, SND_PCM_FORMAT_U16_BE}, |