1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19#ifndef __SND_COMPRESS_PARAMS_H 20#define __SND_COMPRESS_PARAMS_H 21#include <linux/types.h> 22#define MAX_NUM_CODECS 32 23#define MAX_NUM_CODEC_DESCRIPTORS 32 24#define MAX_NUM_BITRATES 32 25#define MAX_NUM_SAMPLE_RATES 32 26#define SND_AUDIOCODEC_PCM ((__u32) 0x00000001) 27#define SND_AUDIOCODEC_MP3 ((__u32) 0x00000002) 28#define SND_AUDIOCODEC_AMR ((__u32) 0x00000003) 29#define SND_AUDIOCODEC_AMRWB ((__u32) 0x00000004) 30#define SND_AUDIOCODEC_AMRWBPLUS ((__u32) 0x00000005) 31#define SND_AUDIOCODEC_AAC ((__u32) 0x00000006) 32#define SND_AUDIOCODEC_WMA ((__u32) 0x00000007) 33#define SND_AUDIOCODEC_REAL ((__u32) 0x00000008) 34#define SND_AUDIOCODEC_VORBIS ((__u32) 0x00000009) 35#define SND_AUDIOCODEC_FLAC ((__u32) 0x0000000A) 36#define SND_AUDIOCODEC_IEC61937 ((__u32) 0x0000000B) 37#define SND_AUDIOCODEC_G723_1 ((__u32) 0x0000000C) 38#define SND_AUDIOCODEC_G729 ((__u32) 0x0000000D) 39#define SND_AUDIOCODEC_BESPOKE ((__u32) 0x0000000E) 40#define SND_AUDIOCODEC_MAX SND_AUDIOCODEC_BESPOKE 41#define SND_AUDIOPROFILE_PCM ((__u32) 0x00000001) 42#define SND_AUDIOCHANMODE_MP3_MONO ((__u32) 0x00000001) 43#define SND_AUDIOCHANMODE_MP3_STEREO ((__u32) 0x00000002) 44#define SND_AUDIOCHANMODE_MP3_JOINTSTEREO ((__u32) 0x00000004) 45#define SND_AUDIOCHANMODE_MP3_DUAL ((__u32) 0x00000008) 46#define SND_AUDIOPROFILE_AMR ((__u32) 0x00000001) 47#define SND_AUDIOMODE_AMR_DTX_OFF ((__u32) 0x00000001) 48#define SND_AUDIOMODE_AMR_VAD1 ((__u32) 0x00000002) 49#define SND_AUDIOMODE_AMR_VAD2 ((__u32) 0x00000004) 50#define SND_AUDIOSTREAMFORMAT_UNDEFINED ((__u32) 0x00000000) 51#define SND_AUDIOSTREAMFORMAT_CONFORMANCE ((__u32) 0x00000001) 52#define SND_AUDIOSTREAMFORMAT_IF1 ((__u32) 0x00000002) 53#define SND_AUDIOSTREAMFORMAT_IF2 ((__u32) 0x00000004) 54#define SND_AUDIOSTREAMFORMAT_FSF ((__u32) 0x00000008) 55#define SND_AUDIOSTREAMFORMAT_RTPPAYLOAD ((__u32) 0x00000010) 56#define SND_AUDIOSTREAMFORMAT_ITU ((__u32) 0x00000020) 57#define SND_AUDIOPROFILE_AMRWB ((__u32) 0x00000001) 58#define SND_AUDIOMODE_AMRWB_DTX_OFF ((__u32) 0x00000001) 59#define SND_AUDIOMODE_AMRWB_VAD1 ((__u32) 0x00000002) 60#define SND_AUDIOMODE_AMRWB_VAD2 ((__u32) 0x00000004) 61#define SND_AUDIOPROFILE_AMRWBPLUS ((__u32) 0x00000001) 62#define SND_AUDIOPROFILE_AAC ((__u32) 0x00000001) 63#define SND_AUDIOMODE_AAC_MAIN ((__u32) 0x00000001) 64#define SND_AUDIOMODE_AAC_LC ((__u32) 0x00000002) 65#define SND_AUDIOMODE_AAC_SSR ((__u32) 0x00000004) 66#define SND_AUDIOMODE_AAC_LTP ((__u32) 0x00000008) 67#define SND_AUDIOMODE_AAC_HE ((__u32) 0x00000010) 68#define SND_AUDIOMODE_AAC_SCALABLE ((__u32) 0x00000020) 69#define SND_AUDIOMODE_AAC_ERLC ((__u32) 0x00000040) 70#define SND_AUDIOMODE_AAC_LD ((__u32) 0x00000080) 71#define SND_AUDIOMODE_AAC_HE_PS ((__u32) 0x00000100) 72#define SND_AUDIOMODE_AAC_HE_MPS ((__u32) 0x00000200) 73#define SND_AUDIOSTREAMFORMAT_MP2ADTS ((__u32) 0x00000001) 74#define SND_AUDIOSTREAMFORMAT_MP4ADTS ((__u32) 0x00000002) 75#define SND_AUDIOSTREAMFORMAT_MP4LOAS ((__u32) 0x00000004) 76#define SND_AUDIOSTREAMFORMAT_MP4LATM ((__u32) 0x00000008) 77#define SND_AUDIOSTREAMFORMAT_ADIF ((__u32) 0x00000010) 78#define SND_AUDIOSTREAMFORMAT_MP4FF ((__u32) 0x00000020) 79#define SND_AUDIOSTREAMFORMAT_RAW ((__u32) 0x00000040) 80#define SND_AUDIOPROFILE_WMA7 ((__u32) 0x00000001) 81#define SND_AUDIOPROFILE_WMA8 ((__u32) 0x00000002) 82#define SND_AUDIOPROFILE_WMA9 ((__u32) 0x00000004) 83#define SND_AUDIOPROFILE_WMA10 ((__u32) 0x00000008) 84#define SND_AUDIOMODE_WMA_LEVEL1 ((__u32) 0x00000001) 85#define SND_AUDIOMODE_WMA_LEVEL2 ((__u32) 0x00000002) 86#define SND_AUDIOMODE_WMA_LEVEL3 ((__u32) 0x00000004) 87#define SND_AUDIOMODE_WMA_LEVEL4 ((__u32) 0x00000008) 88#define SND_AUDIOMODE_WMAPRO_LEVELM0 ((__u32) 0x00000010) 89#define SND_AUDIOMODE_WMAPRO_LEVELM1 ((__u32) 0x00000020) 90#define SND_AUDIOMODE_WMAPRO_LEVELM2 ((__u32) 0x00000040) 91#define SND_AUDIOMODE_WMAPRO_LEVELM3 ((__u32) 0x00000080) 92#define SND_AUDIOSTREAMFORMAT_WMA_ASF ((__u32) 0x00000001) 93#define SND_AUDIOSTREAMFORMAT_WMA_NOASF_HDR ((__u32) 0x00000002) 94#define SND_AUDIOPROFILE_REALAUDIO ((__u32) 0x00000001) 95#define SND_AUDIOMODE_REALAUDIO_G2 ((__u32) 0x00000001) 96#define SND_AUDIOMODE_REALAUDIO_8 ((__u32) 0x00000002) 97#define SND_AUDIOMODE_REALAUDIO_10 ((__u32) 0x00000004) 98#define SND_AUDIOMODE_REALAUDIO_SURROUND ((__u32) 0x00000008) 99#define SND_AUDIOPROFILE_VORBIS ((__u32) 0x00000001) 100#define SND_AUDIOMODE_VORBIS ((__u32) 0x00000001) 101#define SND_AUDIOPROFILE_FLAC ((__u32) 0x00000001) 102#define SND_AUDIOMODE_FLAC_LEVEL0 ((__u32) 0x00000001) 103#define SND_AUDIOMODE_FLAC_LEVEL1 ((__u32) 0x00000002) 104#define SND_AUDIOMODE_FLAC_LEVEL2 ((__u32) 0x00000004) 105#define SND_AUDIOMODE_FLAC_LEVEL3 ((__u32) 0x00000008) 106#define SND_AUDIOMODE_FLAC_LEVEL4 ((__u32) 0x00000010) 107#define SND_AUDIOMODE_FLAC_LEVEL5 ((__u32) 0x00000020) 108#define SND_AUDIOMODE_FLAC_LEVEL6 ((__u32) 0x00000040) 109#define SND_AUDIOMODE_FLAC_LEVEL7 ((__u32) 0x00000080) 110#define SND_AUDIOMODE_FLAC_LEVEL8 ((__u32) 0x00000100) 111#define SND_AUDIOSTREAMFORMAT_FLAC ((__u32) 0x00000001) 112#define SND_AUDIOSTREAMFORMAT_FLAC_OGG ((__u32) 0x00000002) 113#define SND_AUDIOPROFILE_IEC61937 ((__u32) 0x00000001) 114#define SND_AUDIOPROFILE_IEC61937_SPDIF ((__u32) 0x00000002) 115#define SND_AUDIOMODE_IEC_REF_STREAM_HEADER ((__u32) 0x00000000) 116#define SND_AUDIOMODE_IEC_LPCM ((__u32) 0x00000001) 117#define SND_AUDIOMODE_IEC_AC3 ((__u32) 0x00000002) 118#define SND_AUDIOMODE_IEC_MPEG1 ((__u32) 0x00000004) 119#define SND_AUDIOMODE_IEC_MP3 ((__u32) 0x00000008) 120#define SND_AUDIOMODE_IEC_MPEG2 ((__u32) 0x00000010) 121#define SND_AUDIOMODE_IEC_AACLC ((__u32) 0x00000020) 122#define SND_AUDIOMODE_IEC_DTS ((__u32) 0x00000040) 123#define SND_AUDIOMODE_IEC_ATRAC ((__u32) 0x00000080) 124#define SND_AUDIOMODE_IEC_SACD ((__u32) 0x00000100) 125#define SND_AUDIOMODE_IEC_EAC3 ((__u32) 0x00000200) 126#define SND_AUDIOMODE_IEC_DTS_HD ((__u32) 0x00000400) 127#define SND_AUDIOMODE_IEC_MLP ((__u32) 0x00000800) 128#define SND_AUDIOMODE_IEC_DST ((__u32) 0x00001000) 129#define SND_AUDIOMODE_IEC_WMAPRO ((__u32) 0x00002000) 130#define SND_AUDIOMODE_IEC_REF_CXT ((__u32) 0x00004000) 131#define SND_AUDIOMODE_IEC_HE_AAC ((__u32) 0x00008000) 132#define SND_AUDIOMODE_IEC_HE_AAC2 ((__u32) 0x00010000) 133#define SND_AUDIOMODE_IEC_MPEG_SURROUND ((__u32) 0x00020000) 134#define SND_AUDIOPROFILE_G723_1 ((__u32) 0x00000001) 135#define SND_AUDIOMODE_G723_1_ANNEX_A ((__u32) 0x00000001) 136#define SND_AUDIOMODE_G723_1_ANNEX_B ((__u32) 0x00000002) 137#define SND_AUDIOMODE_G723_1_ANNEX_C ((__u32) 0x00000004) 138#define SND_AUDIOPROFILE_G729 ((__u32) 0x00000001) 139#define SND_AUDIOMODE_G729_ANNEX_A ((__u32) 0x00000001) 140#define SND_AUDIOMODE_G729_ANNEX_B ((__u32) 0x00000002) 141#define SND_RATECONTROLMODE_CONSTANTBITRATE ((__u32) 0x00000001) 142#define SND_RATECONTROLMODE_VARIABLEBITRATE ((__u32) 0x00000002) 143struct snd_enc_wma { 144 __u32 super_block_align; 145}; 146struct snd_enc_vorbis { 147 __s32 quality; 148 __u32 managed; 149 __u32 max_bit_rate; 150 __u32 min_bit_rate; 151 __u32 downmix; 152} __attribute__((packed, aligned(4))); 153struct snd_enc_real { 154 __u32 quant_bits; 155 __u32 start_region; 156 __u32 num_regions; 157} __attribute__((packed, aligned(4))); 158struct snd_enc_flac { 159 __u32 num; 160 __u32 gain; 161} __attribute__((packed, aligned(4))); 162struct snd_enc_generic { 163 __u32 bw; 164 __s32 reserved[15]; 165} __attribute__((packed, aligned(4))); 166union snd_codec_options { 167 struct snd_enc_wma wma; 168 struct snd_enc_vorbis vorbis; 169 struct snd_enc_real real; 170 struct snd_enc_flac flac; 171 struct snd_enc_generic generic; 172} __attribute__((packed, aligned(4))); 173struct snd_codec_desc { 174 __u32 max_ch; 175 __u32 sample_rates[MAX_NUM_SAMPLE_RATES]; 176 __u32 num_sample_rates; 177 __u32 bit_rate[MAX_NUM_BITRATES]; 178 __u32 num_bitrates; 179 __u32 rate_control; 180 __u32 profiles; 181 __u32 modes; 182 __u32 formats; 183 __u32 min_buffer; 184 __u32 reserved[15]; 185} __attribute__((packed, aligned(4))); 186struct snd_codec { 187 __u32 id; 188 __u32 ch_in; 189 __u32 ch_out; 190 __u32 sample_rate; 191 __u32 bit_rate; 192 __u32 rate_control; 193 __u32 profile; 194 __u32 level; 195 __u32 ch_mode; 196 __u32 format; 197 __u32 align; 198 union snd_codec_options options; 199 __u32 reserved[3]; 200} __attribute__((packed, aligned(4))); 201#endif 202