]> git.alsa-project.org Git - alsa-lib.git/commitdiff
bring pcm.h and pcm.c in sync with the kernel list
authorDaniel Mack <zonque@gmail.com>
Thu, 18 Apr 2013 08:37:50 +0000 (10:37 +0200)
committerTakashi Iwai <tiwai@suse.de>
Thu, 18 Apr 2013 09:45:11 +0000 (11:45 +0200)
In particular, this adds definitions and descriptions for G.723 and
DSD types.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
include/pcm.h
src/pcm/pcm.c

index d94ba90dc174e5a19b090c8345e39d9a03c5cccf..e440030f03c593686ecc11d3b2dcc39713383c73 100644 (file)
@@ -199,7 +199,19 @@ typedef enum _snd_pcm_format {
        SND_PCM_FORMAT_U18_3LE,
        /** Unsigned 18bit Big Endian in 3bytes format */
        SND_PCM_FORMAT_U18_3BE,
-       SND_PCM_FORMAT_LAST = SND_PCM_FORMAT_U18_3BE,
+       /* G.723 (ADPCM) 24 kbit/s, 8 samples in 3 bytes */
+       SND_PCM_FORMAT_G723_24,
+       /* G.723 (ADPCM) 24 kbit/s, 1 sample in 1 byte */
+       SND_PCM_FORMAT_G723_24_1B,
+       /* G.723 (ADPCM) 40 kbit/s, 8 samples in 3 bytes */
+       SND_PCM_FORMAT_G723_40,
+       /* G.723 (ADPCM) 40 kbit/s, 1 sample in 1 byte */
+       SND_PCM_FORMAT_G723_40_1B,
+       /* Direct Stream Digital (DSD) in 1-byte samples (x8) */
+       SND_PCM_FORMAT_DSD_U8,
+       /* Direct Stream Digital (DSD) in 2-byte samples (x16) */
+       SND_PCM_FORMAT_DSD_U16_LE,
+       SND_PCM_FORMAT_LAST = SND_PCM_FORMAT_DSD_U16_LE,
 
 #if __BYTE_ORDER == __LITTLE_ENDIAN
        /** Signed 16 bit CPU endian */
index 2a87a7be51dff57235a9526104304db15786f105..438fb3fdd2f81817baaa4faf730ef91adb40fa18 100644 (file)
@@ -1558,6 +1558,12 @@ static const char *const snd_pcm_format_names[] = {
        FORMAT(S18_3BE),
        FORMAT(U18_3LE),
        FORMAT(U18_3BE),
+       FORMAT(G723_24),
+       FORMAT(G723_24_1B),
+       FORMAT(G723_40),
+       FORMAT(G723_40_1B),
+       FORMAT(DSD_U8),
+       FORMAT(DSD_U16_LE),
 };
 
 static const char *const snd_pcm_format_aliases[SND_PCM_FORMAT_LAST+1] = {
@@ -1611,6 +1617,12 @@ static const char *const snd_pcm_format_descriptions[] = {
        FORMATD(S18_3BE, "Signed 18 bit Big Endian in 3bytes"),
        FORMATD(U18_3LE, "Unsigned 18 bit Little Endian in 3bytes"),
        FORMATD(U18_3BE, "Unsigned 18 bit Big Endian in 3bytes"),
+       FORMATD(G723_24, "G.723 (ADPCM) 24 kbit/s, 8 samples in 3 bytes"),
+       FORMATD(G723_24_1B, "G.723 (ADPCM) 24 kbit/s, 1 sample in 1 byte"),
+       FORMATD(G723_40, "G.723 (ADPCM) 40 kbit/s, 8 samples in 3 bytes"),
+       FORMATD(G723_40_1B, "G.723 (ADPCM) 40 kbit/s, 1 sample in 1 byte"),
+       FORMATD(DSD_U8,  "Direct Stream Digital, 1-byte (x8), oldest bit in MSB"),
+       FORMATD(DSD_U16_LE, "Direct Stream Digital, 2-byte (x16), little endian, oldest bits in MSB"),
 };
 
 static const char *const snd_pcm_type_names[] = {