diff options
author | Daniel Mack <zonque@gmail.com> | 2013-04-18 10:37:50 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-04-18 11:45:11 +0200 |
commit | 886f0cc3c274643de464e646535afb4ceee1d816 (patch) | |
tree | 831e0eb98dba25dc3f5a4ba8cb5ebec1c22c0080 | |
parent | 697f8c296ccb4b38cec930782b5ef1419aaf4245 (diff) | |
download | alsa-lib-886f0cc3c274643de464e646535afb4ceee1d816.tar.gz |
bring pcm.h and pcm.c in sync with the kernel list
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>
-rw-r--r-- | include/pcm.h | 14 | ||||
-rw-r--r-- | src/pcm/pcm.c | 12 |
2 files changed, 25 insertions, 1 deletions
diff --git a/include/pcm.h b/include/pcm.h index d94ba90d..e440030f 100644 --- a/include/pcm.h +++ b/include/pcm.h @@ -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 */ diff --git a/src/pcm/pcm.c b/src/pcm/pcm.c index 2a87a7be..438fb3fd 100644 --- a/src/pcm/pcm.c +++ b/src/pcm/pcm.c @@ -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[] = { |