eas_audioconst.h revision 7df30109963092559d3760c0661a020f9daf1030
17df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*---------------------------------------------------------------------------- 27df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * 37df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * File: 47df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * eas_audioconst.h 57df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * 67df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Contents and purpose: 77df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Defines audio constants related to the sample rate, bit size, etc. 87df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * 97df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * 107df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Copyright Sonic Network Inc. 2005 117df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 127df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 137df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * you may not use this file except in compliance with the License. 147df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * You may obtain a copy of the License at 157df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * 167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * 187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 197df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 207df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * See the License for the specific language governing permissions and 227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * limitations under the License. 237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * 247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *---------------------------------------------------------------------------- 257df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Revision Control: 267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * $Revision: 82 $ 277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * $Date: 2006-07-10 11:45:19 -0700 (Mon, 10 Jul 2006) $ 287df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *---------------------------------------------------------------------------- 297df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/ 307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#ifndef _EAS_AUDIOCONST_H 327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _EAS_AUDIOCONST_H 337df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 347df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*---------------------------------------------------------------------------- 357df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * These macros define the various characteristics of the defined sample rates 367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *---------------------------------------------------------------------------- 377df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * BUFFER_SIZE_IN_MONO_SAMPLES size of buffer in samples 387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * _OUTPUT_SAMPLE_RATE compiled output sample rate 397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * AUDIO_FRAME_LENGTH length of an audio frame in 256ths of a millisecond 407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * SYNTH_UPDATE_PERIOD_IN_BITS length of an audio frame (2^x samples) 417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *---------------------------------------------------------------------------- 427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/ 437df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#if defined (_SAMPLE_RATE_8000) 457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define BUFFER_SIZE_IN_MONO_SAMPLES 32 467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _OUTPUT_SAMPLE_RATE 8000 477df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define AUDIO_FRAME_LENGTH 1024 487df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define SYNTH_UPDATE_PERIOD_IN_BITS 5 497df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 507df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#elif defined (_SAMPLE_RATE_16000) 517df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define BUFFER_SIZE_IN_MONO_SAMPLES 64 527df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _OUTPUT_SAMPLE_RATE 16000 537df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define AUDIO_FRAME_LENGTH 1024 547df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define SYNTH_UPDATE_PERIOD_IN_BITS 6 557df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 567df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#elif defined (_SAMPLE_RATE_20000) 577df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define BUFFER_SIZE_IN_MONO_SAMPLES 128 587df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _OUTPUT_SAMPLE_RATE 20000 597df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define AUDIO_FRAME_LENGTH 1638 607df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define SYNTH_UPDATE_PERIOD_IN_BITS 7 617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 627df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#elif defined (_SAMPLE_RATE_22050) 637df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define BUFFER_SIZE_IN_MONO_SAMPLES 128 647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _OUTPUT_SAMPLE_RATE 22050 657df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define AUDIO_FRAME_LENGTH 1486 667df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define SYNTH_UPDATE_PERIOD_IN_BITS 7 677df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 687df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#elif defined (_SAMPLE_RATE_24000) 697df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define BUFFER_SIZE_IN_MONO_SAMPLES 128 707df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _OUTPUT_SAMPLE_RATE 24000 717df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define AUDIO_FRAME_LENGTH 1365 727df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define SYNTH_UPDATE_PERIOD_IN_BITS 7 737df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 747df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#elif defined (_SAMPLE_RATE_32000) 757df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define BUFFER_SIZE_IN_MONO_SAMPLES 128 767df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _OUTPUT_SAMPLE_RATE 32000 777df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define AUDIO_FRAME_LENGTH 1024 787df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define SYNTH_UPDATE_PERIOD_IN_BITS 7 797df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 807df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#elif defined (_SAMPLE_RATE_44100) 817df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define BUFFER_SIZE_IN_MONO_SAMPLES 256 827df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _OUTPUT_SAMPLE_RATE 44100 837df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define AUDIO_FRAME_LENGTH 1486 847df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define SYNTH_UPDATE_PERIOD_IN_BITS 8 857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 867df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#elif defined (_SAMPLE_RATE_48000) 877df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define BUFFER_SIZE_IN_MONO_SAMPLES 256 887df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _OUTPUT_SAMPLE_RATE 48000 897df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define AUDIO_FRAME_LENGTH 1365 907df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define SYNTH_UPDATE_PERIOD_IN_BITS 8 917df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 927df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#else 937df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#error "_SAMPLE_RATE_XXXXX must be defined to valid rate" 947df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#endif 957df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 967df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#endif /* #ifndef _EAS_AUDIOCONST_H */ 977df30109963092559d3760c0661a020f9daf1030The Android Open Source Project 98