1*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 2*f81fb7c4SAndroid Build Coastguard Worker * 3*f81fb7c4SAndroid Build Coastguard Worker * File: 4*f81fb7c4SAndroid Build Coastguard Worker * eas_audioconst.h 5*f81fb7c4SAndroid Build Coastguard Worker * 6*f81fb7c4SAndroid Build Coastguard Worker * Contents and purpose: 7*f81fb7c4SAndroid Build Coastguard Worker * Defines audio constants related to the sample rate, bit size, etc. 8*f81fb7c4SAndroid Build Coastguard Worker * 9*f81fb7c4SAndroid Build Coastguard Worker * 10*f81fb7c4SAndroid Build Coastguard Worker * Copyright Sonic Network Inc. 2005 11*f81fb7c4SAndroid Build Coastguard Worker 12*f81fb7c4SAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 13*f81fb7c4SAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 14*f81fb7c4SAndroid Build Coastguard Worker * You may obtain a copy of the License at 15*f81fb7c4SAndroid Build Coastguard Worker * 16*f81fb7c4SAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 17*f81fb7c4SAndroid Build Coastguard Worker * 18*f81fb7c4SAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 19*f81fb7c4SAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 20*f81fb7c4SAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 21*f81fb7c4SAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 22*f81fb7c4SAndroid Build Coastguard Worker * limitations under the License. 23*f81fb7c4SAndroid Build Coastguard Worker * 24*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 25*f81fb7c4SAndroid Build Coastguard Worker * Revision Control: 26*f81fb7c4SAndroid Build Coastguard Worker * $Revision: 82 $ 27*f81fb7c4SAndroid Build Coastguard Worker * $Date: 2006-07-10 11:45:19 -0700 (Mon, 10 Jul 2006) $ 28*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 29*f81fb7c4SAndroid Build Coastguard Worker */ 30*f81fb7c4SAndroid Build Coastguard Worker 31*f81fb7c4SAndroid Build Coastguard Worker #ifndef _EAS_AUDIOCONST_H 32*f81fb7c4SAndroid Build Coastguard Worker #define _EAS_AUDIOCONST_H 33*f81fb7c4SAndroid Build Coastguard Worker 34*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 35*f81fb7c4SAndroid Build Coastguard Worker * These macros define the various characteristics of the defined sample rates 36*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 37*f81fb7c4SAndroid Build Coastguard Worker * BUFFER_SIZE_IN_MONO_SAMPLES size of buffer in samples 38*f81fb7c4SAndroid Build Coastguard Worker * _OUTPUT_SAMPLE_RATE compiled output sample rate 39*f81fb7c4SAndroid Build Coastguard Worker * AUDIO_FRAME_LENGTH length of an audio frame in 256ths of a millisecond 40*f81fb7c4SAndroid Build Coastguard Worker * SYNTH_UPDATE_PERIOD_IN_BITS length of an audio frame (2^x samples) 41*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 42*f81fb7c4SAndroid Build Coastguard Worker */ 43*f81fb7c4SAndroid Build Coastguard Worker 44*f81fb7c4SAndroid Build Coastguard Worker #if defined (_SAMPLE_RATE_8000) 45*f81fb7c4SAndroid Build Coastguard Worker #define BUFFER_SIZE_IN_MONO_SAMPLES 32 46*f81fb7c4SAndroid Build Coastguard Worker #define _OUTPUT_SAMPLE_RATE 8000 47*f81fb7c4SAndroid Build Coastguard Worker #define AUDIO_FRAME_LENGTH 1024 48*f81fb7c4SAndroid Build Coastguard Worker #define SYNTH_UPDATE_PERIOD_IN_BITS 5 49*f81fb7c4SAndroid Build Coastguard Worker 50*f81fb7c4SAndroid Build Coastguard Worker #elif defined (_SAMPLE_RATE_16000) 51*f81fb7c4SAndroid Build Coastguard Worker #define BUFFER_SIZE_IN_MONO_SAMPLES 64 52*f81fb7c4SAndroid Build Coastguard Worker #define _OUTPUT_SAMPLE_RATE 16000 53*f81fb7c4SAndroid Build Coastguard Worker #define AUDIO_FRAME_LENGTH 1024 54*f81fb7c4SAndroid Build Coastguard Worker #define SYNTH_UPDATE_PERIOD_IN_BITS 6 55*f81fb7c4SAndroid Build Coastguard Worker 56*f81fb7c4SAndroid Build Coastguard Worker #elif defined (_SAMPLE_RATE_20000) 57*f81fb7c4SAndroid Build Coastguard Worker #define BUFFER_SIZE_IN_MONO_SAMPLES 128 58*f81fb7c4SAndroid Build Coastguard Worker #define _OUTPUT_SAMPLE_RATE 20000 59*f81fb7c4SAndroid Build Coastguard Worker #define AUDIO_FRAME_LENGTH 1638 60*f81fb7c4SAndroid Build Coastguard Worker #define SYNTH_UPDATE_PERIOD_IN_BITS 7 61*f81fb7c4SAndroid Build Coastguard Worker 62*f81fb7c4SAndroid Build Coastguard Worker #elif defined (_SAMPLE_RATE_22050) 63*f81fb7c4SAndroid Build Coastguard Worker #define BUFFER_SIZE_IN_MONO_SAMPLES 128 64*f81fb7c4SAndroid Build Coastguard Worker #define _OUTPUT_SAMPLE_RATE 22050 65*f81fb7c4SAndroid Build Coastguard Worker #define AUDIO_FRAME_LENGTH 1486 66*f81fb7c4SAndroid Build Coastguard Worker #define SYNTH_UPDATE_PERIOD_IN_BITS 7 67*f81fb7c4SAndroid Build Coastguard Worker 68*f81fb7c4SAndroid Build Coastguard Worker #elif defined (_SAMPLE_RATE_24000) 69*f81fb7c4SAndroid Build Coastguard Worker #define BUFFER_SIZE_IN_MONO_SAMPLES 128 70*f81fb7c4SAndroid Build Coastguard Worker #define _OUTPUT_SAMPLE_RATE 24000 71*f81fb7c4SAndroid Build Coastguard Worker #define AUDIO_FRAME_LENGTH 1365 72*f81fb7c4SAndroid Build Coastguard Worker #define SYNTH_UPDATE_PERIOD_IN_BITS 7 73*f81fb7c4SAndroid Build Coastguard Worker 74*f81fb7c4SAndroid Build Coastguard Worker #elif defined (_SAMPLE_RATE_32000) 75*f81fb7c4SAndroid Build Coastguard Worker #define BUFFER_SIZE_IN_MONO_SAMPLES 128 76*f81fb7c4SAndroid Build Coastguard Worker #define _OUTPUT_SAMPLE_RATE 32000 77*f81fb7c4SAndroid Build Coastguard Worker #define AUDIO_FRAME_LENGTH 1024 78*f81fb7c4SAndroid Build Coastguard Worker #define SYNTH_UPDATE_PERIOD_IN_BITS 7 79*f81fb7c4SAndroid Build Coastguard Worker 80*f81fb7c4SAndroid Build Coastguard Worker #elif defined (_SAMPLE_RATE_44100) 81*f81fb7c4SAndroid Build Coastguard Worker #define BUFFER_SIZE_IN_MONO_SAMPLES 256 82*f81fb7c4SAndroid Build Coastguard Worker #define _OUTPUT_SAMPLE_RATE 44100 83*f81fb7c4SAndroid Build Coastguard Worker #define AUDIO_FRAME_LENGTH 1486 84*f81fb7c4SAndroid Build Coastguard Worker #define SYNTH_UPDATE_PERIOD_IN_BITS 8 85*f81fb7c4SAndroid Build Coastguard Worker 86*f81fb7c4SAndroid Build Coastguard Worker #elif defined (_SAMPLE_RATE_48000) 87*f81fb7c4SAndroid Build Coastguard Worker #define BUFFER_SIZE_IN_MONO_SAMPLES 256 88*f81fb7c4SAndroid Build Coastguard Worker #define _OUTPUT_SAMPLE_RATE 48000 89*f81fb7c4SAndroid Build Coastguard Worker #define AUDIO_FRAME_LENGTH 1365 90*f81fb7c4SAndroid Build Coastguard Worker #define SYNTH_UPDATE_PERIOD_IN_BITS 8 91*f81fb7c4SAndroid Build Coastguard Worker 92*f81fb7c4SAndroid Build Coastguard Worker #else 93*f81fb7c4SAndroid Build Coastguard Worker #error "_SAMPLE_RATE_XXXXX must be defined to valid rate" 94*f81fb7c4SAndroid Build Coastguard Worker #endif 95*f81fb7c4SAndroid Build Coastguard Worker 96*f81fb7c4SAndroid Build Coastguard Worker #endif /* #ifndef _EAS_AUDIOCONST_H */ 97*f81fb7c4SAndroid Build Coastguard Worker 98