1 2/* 3 * Copyright (C) Texas Instruments - http://www.ti.com/ 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2.1 of the License, or (at your option) any later version. 9 * 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * 17 * You should have received a copy of the GNU Lesser General Public 18 * License along with this library; if not, write to the Free Software 19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 20 */ 21/* ============================================================================= 22* Texas Instruments OMAP(TM) Platform Software 23* (c) Copyright Texas Instruments, Incorporated. All Rights Reserved. 24* 25* Use of this software is controlled by the terms and conditions found 26* in the license agreement under which this software has been supplied. 27* ============================================================================ */ 28/** 29* @file OMX_WbAmrEncoder.h 30* 31* This is an header file for an WBAMR Encoder that is fully 32* compliant with the OMX Audio specification 1.5. 33* This the file that the application that uses OMX would include in its code. 34* 35* @path $(CSLPATH)\OMAPSW_MPU\linux\audio\src\openmax_il\wbamr_enc\inc 36* 37* @rev 1.0 38*/ 39/* --------------------------------------------------------------------------- */ 40/* ---------------------------------------------------------------------------- 41*! 42*! Revision History 43*! =================================== 44*! 21-sept-2006 bk: updated review findings for alpha release 45*! 24-Aug-2006 bk: Khronos OpenMAX (TM) 1.0 Conformance tests some more 46*! 18-July-2006 bk: Khronos OpenMAX (TM) 1.0 Conformance tests validated for few cases 47*! 21-Jun-2006 bk: Khronos OpenMAX (TM) 1.0 migration done 48*! 22-May-2006 bk: DASF recording quality improved 49*! 19-Apr-2006 bk: DASF recording speed issue resloved 50*! 23-Feb-2006 bk: DASF functionality added 51*! 18-Jan-2006 bk: Repated recording issue fixed and LCML changes taken care 52*! 14-Dec-2005 bk: Initial Version 53*! 16-Nov-2005 bk: Initial Version 54*! 23-Sept-2005 bk: Initial Version 55*! 10-Sept-2005 bk: Initial Version 56*! 10-Sept-2005 bk: 57*! This is newest file 58* =========================================================================== */ 59 60#ifndef OMX_WBAMRENCODER_H 61#define OMX_WBAMRENCODER_H 62 63#include <OMX_Component.h> 64#include <pthread.h> 65 66/* ======================================================================= */ 67/** 68 * @def WBAMRENC_NUM_INPUT_BUFFERS Default number of input buffers 69 */ 70/* ======================================================================= */ 71#define WBAMRENC_NUM_INPUT_BUFFERS 5 72/* ======================================================================= */ 73/** 74 * @def WBAMRENC_NUM_INPUT_BUFFERS_DASF Default No.of input buffers DASF 75 */ 76/* ======================================================================= */ 77#define WBAMRENC_NUM_INPUT_BUFFERS_DASF 2 78/* ======================================================================= */ 79/** 80 * @def WBAMRENC_NUM_OUTPUT_BUFFERS Default number of output buffers 81 */ 82/* ======================================================================= */ 83#define WBAMRENC_NUM_OUTPUT_BUFFERS 9 84/* ======================================================================= */ 85/** 86 * @def WBAMRENC_INPUT_BUFFER_SIZE Default input buffer size 87 * WBAMRENC_INPUT_BUFFER_SIZE_DASF Default input buffer size DASF 88 * WBAMRENC_INPUT_FRAME_SIZE Default input Frame Size 89 */ 90/* ======================================================================= */ 91#define WBAMRENC_INPUT_BUFFER_SIZE 640 92#define WBAMRENC_INPUT_BUFFER_SIZE_DASF 640 93#define WBAMRENC_INPUT_FRAME_SIZE 640 94/* ======================================================================= */ 95/** 96 * @def WBAMRENC_OUTPUT_BUFFER_SIZE Default output buffer size 97 * WBAMRENC_OUTPUT_FRAME_SIZE Default output frame size 98 */ 99/* ======================================================================= */ 100#define WBAMRENC_OUTPUT_BUFFER_SIZE 116 101#define WBAMRENC_OUTPUT_FRAME_SIZE 116 102/* ======================================================================= */ 103/** 104 * @def WBAMRENC_OUTPUT_BUFFER_SIZE_MIME Default input buffer size MIME 105 */ 106/* ======================================================================= */ 107#define WBAMRENC_OUTPUT_BUFFER_SIZE_MIME 61 108/* ======================================================================= */ 109/** 110 * @def WBAMRENC_OUTPUT_BUFFER_SIZE_MIME Default input buffer size IF2 111 */ 112/* ======================================================================= */ 113#define WBAMRENC_OUTPUT_BUFFER_SIZE_IF2 32 114 115/* ======================================================================= */ 116/* 117 * @def WBAMRENC_APP_ID App ID Value setting 118 */ 119/* ======================================================================= */ 120#define WBAMRENC_APP_ID 100 121 122/* ======================================================================= */ 123/** WBAMRENC_OMX_INDEXAUDIOTYPE Defines the custom configuration settings 124* for the component 125* @param OMX_WbIndexCustomModeEfrConfig Sets the EFR mode 126* 127* @param OMX_WbIndexCustomModeAmrConfig Sets the WBAMR mode 128* 129* @param OMX_WbIndexCustomModeDasfConfig Sets the DASF mode 130* 131* @param OMX_WbIndexCustomModeAcdnConfig Sets the ACDN mode 132* 133* @param OMX_WbIndexCustomModeMimeConfig Sets the MIME mode 134* 135* @param OMX_WbIndexCustomModeMultiFrameConfig Sets the MultiFrame mode 136*/ 137/* ======================================================================= */ 138typedef enum WBAMRENC_OMX_INDEXAUDIOTYPE { 139 OMX_WbIndexCustomModeEfrConfig = 0xFF000001, 140 OMX_WbIndexCustomModeAmrConfig, 141 OMX_WbIndexCustomModeAcdnConfig, 142 OMX_WbIndexCustomModeDasfConfig, 143 OMX_WbIndexCustomModeMimeConfig, 144 OMX_WbIndexCustomModeMultiFrameConfig, 145 OMX_IndexCustomWbAmrEncHeaderInfoConfig, 146 OMX_IndexCustomWbAmrEncStreamIDConfig, 147 OMX_WbIndexCustomDataPath, 148 OMX_IndexCustomDebug 149} WBAMRENC_OMX_INDEXAUDIOTYPE; 150 151#endif /* OMX_WBAMRENCODER_H */ 152