diff options
Diffstat (limited to 'extra/alsa-lib/alsa-lib-1.0.27-kernel.patch')
-rw-r--r-- | extra/alsa-lib/alsa-lib-1.0.27-kernel.patch | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/extra/alsa-lib/alsa-lib-1.0.27-kernel.patch b/extra/alsa-lib/alsa-lib-1.0.27-kernel.patch new file mode 100644 index 000000000..3d4eaf3cb --- /dev/null +++ b/extra/alsa-lib/alsa-lib-1.0.27-kernel.patch @@ -0,0 +1,73 @@ +From 886f0cc3c274643de464e646535afb4ceee1d816 Mon Sep 17 00:00:00 2001 +From: Daniel Mack <zonque@gmail.com> +Date: Thu, 18 Apr 2013 10:37:50 +0200 +Subject: [PATCH] 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> +--- + include/pcm.h | 14 +++++++++++++- + src/pcm/pcm.c | 12 ++++++++++++ + 2 files changed, 25 insertions(+), 1 deletion(-) + +diff --git a/include/pcm.h b/include/pcm.h +index d94ba90..e440030 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 2a87a7b..438fb3f 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[] = { +-- +1.7.11.7 + |