1b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 2b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* 3b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Copyright (C) Texas Instruments - http://www.ti.com/ 4b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 5b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * This library is free software; you can redistribute it and/or 6b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * modify it under the terms of the GNU Lesser General Public 7b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * License as published by the Free Software Foundation; either 8b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * version 2.1 of the License, or (at your option) any later version. 9b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 10b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 11b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * This library is distributed in the hope that it will be useful, 12b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * but WITHOUT ANY WARRANTY; without even the implied warranty of 13b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Lesser General Public License for more details. 15b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 16b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 17b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * You should have received a copy of the GNU Lesser General Public 18b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * License along with this library; if not, write to the Free Software 19b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 20b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 21b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ============================================================================= 22b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Texas Instruments OMAP (TM) Platform Software 23b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * (c) Copyright Texas Instruments, Incorporated. All Rights Reserved. 24b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 25b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Use of this software is controlled by the terms and conditions found 26b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * in the license agreement under which this software has been supplied. 27b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * =========================================================================== */ 28b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 29b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @file OMX_G722Enc_Utils.h 30b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 31b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * This header file contains data and function prototypes for G722 ENCODER OMX 32b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 33b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @path $(OMAPSW_MPU)\linux\audio\src\openmax_il\g722_enc\inc 34b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 35b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @rev 0.1 36b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 37b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ----------------------------------------------------------------------------- 38b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin *! 39b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin *! Revision History 40b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin *! =================================== 41b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin *! Date Author(s) Version Description 42b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin *! --------- ------------------- ------- --------------------------------- 43b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin *! 08-Mar-2007 A.Donjon 0.1 Code update for G722 ENCODER 44b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin *! 45b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin *! 46b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * ================================================================================= */ 47b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 48b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 49b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#include <OMX_Component.h> 50b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#include "LCML_DspCodec.h" 51b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#include "OMX_G722Encoder.h" 52b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 53b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define NEWSENDCOMMAND_MEMORY 123 54b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*#endif*/ 55b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 56b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#include <TIDspOmx.h> 57b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 58b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ComponentThread constant */ 59b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define EXIT_COMPONENT_THRD 10 60b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 61b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 62b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_XXX_VER Component version 63b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 64b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 65b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_MAJOR_VER 1 66b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_MINOR_VER 1 67b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 68b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 69b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 70b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def NOT_USED Defines a value for "don't care" parameters 71b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 72b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 73b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define NOT_USED 10 74b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 75b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 76b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 77b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def NORMAL_BUFFER Defines the flag value with all flags turned off 78b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 79b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 80b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define NORMAL_BUFFER 0 81b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 82b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 83b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 84b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def OMX_G722ENC_DEFAULT_SEGMENT Default segment ID for the LCML 85b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 86b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 87b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define OMX_G722ENC_DEFAULT_SEGMENT (0) 88b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 89b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 90b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 91b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 92b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def OMX_G722ENC_SN_TIMEOUT Timeout value for the socket node 93b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 94b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 95b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define OMX_G722ENC_SN_TIMEOUT (-1) 96b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 97b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 98b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 99b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def OMX_G722ENC_SN_PRIORITY Priority for the socket node 100b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 101b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 102b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define OMX_G722ENC_SN_PRIORITY (10) 103b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 104b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 105b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 106b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_TIMEOUT_MILLISECONDS Timeout value for the component thread 107b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 108b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 109b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_TIMEOUT_MILLISECONDS (1000) 110b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 111b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 112b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 113b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_CACHE_ALIGN_MALLOC Value to add to the size needed to 114b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * malloc to ensure cache alignment 115b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 116b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 117b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_CACHE_ALIGN_MALLOC 256 118b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 119b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 120b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 121b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_CACHE_ALIGN_OFFSET Value to add to the pointer returned 122b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * by malloc to ensure cache alignment 123b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 124b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 125b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_CACHE_ALIGN_OFFSET 128 126b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 127b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 128b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 129b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_MAX_NUM_OF_BUFS Maximum number of buffers 130b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 131b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 132b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_MAX_NUM_OF_BUFS 10 133b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 134b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 135b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 136b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 137b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def USN_DLL_NAME Path to the USN 138b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 139b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 140b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef UNDER_CE 141b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define USN_DLL_NAME "\\windows\\usn.dll64P" 142b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 143b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define USN_DLL_NAME "usn.dll64P" 144b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 145b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 146b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 147b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_DLL_NAME Path to the G722ENC SN 148b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 149b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 150b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef UNDER_CE 151b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_DLL_NAME "\\windows\\g722enc_sn.dll64P" 152b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 153b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_DLL_NAME "g722enc_sn.dll64P" 154b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 155b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 156b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 157b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def DONT_CARE Don't care value for the LCML initialization params 158b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 159b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 160b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define DONT_CARE 0 161b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 162b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 163b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 164b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 165b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_DEBUG Turns debug messaging on and off 166b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 167b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 168b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#undef G722ENC_DEBUG 169b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*#define G722ENC_DEBUG*/ 170b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 171b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 172b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 173b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_MEMCHECK Turns memory messaging on and off 174b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 175b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 176b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#undef G722ENC_MEMCHECK /* try to avoid the time out due to print message */ 177b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 178b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 179b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 180b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 181b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_DPRINT Debug print macro 182b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 183b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 184b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 185b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifndef UNDER_CE /* Linux definitions */ 186b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef G722ENC_DEBUG 187b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_DPRINT(...) fprintf(stdout,__VA_ARGS__) 188b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 189b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_DPRINT(...) 190b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 191b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 192b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef G722ENC_MEMCHECK 193b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_MEMPRINT(...) fprintf(stdout,__VA_ARGS__) 194b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 195b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_MEMPRINT(...) 196b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 197b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 198b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 199b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef G722ENC_DEBUG 200b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_DPRINT(STR, ARG...) printf() 201b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 202b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 203b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 204b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 205b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 206b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_MEMCHECK Memory print macro 207b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 208b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 209b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef G722ENC_MEMCHECK 210b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_MEMPRINT(STR, ARG...) printf() 211b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 212b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 213b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_DPRINT printf 214b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_MEMPRINT printf 215b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 216b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 217b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 218b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef UNDER_CE 219b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 220b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef DEBUG 221b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_DPRINT printf 222b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_MEMPRINT printf 223b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 224b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 225b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_DPRINT 226b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_MEMPRINT 227b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 228b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 229b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 230b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 231b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 232b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 233b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 234b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_NUM_OF_PORTS Number of ports 235b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 236b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 237b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_NUM_OF_PORTS 2 238b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 239b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 240b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 241b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_NUM_STREAMS Number of streams 242b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 243b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 244b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_NUM_STREAMS 2 245b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 246b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 247b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 248b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_NUM_INPUT_DASF_BUFFERS Number of input buffers 249b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 250b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 251b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_NUM_INPUT_DASF_BUFFERS 2 252b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 253b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 254b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 255b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 256b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_AM_DEFAULT_RATE Default audio manager rate 257b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 258b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 259b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_AM_DEFAULT_RATE 48000 260b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 261b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 262b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 263b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @def G722ENC_SAMPLE_RATE G722ENC SN sampling frequency 264b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 265b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 266b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define G722ENC_SAMPLE_RATE 16000 267b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 268b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 269b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 270b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * M A C R O S FOR MALLOC and MEMORY FREE and CLOSING PIPES 271b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 272b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 273b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 274b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define OMX_G722CONF_INIT_STRUCT(_s_, _name_) \ 275b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin memset((_s_), 0x0, sizeof(_name_)); \ 276b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin (_s_)->nSize = sizeof(_name_); \ 277b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin (_s_)->nVersion.s.nVersionMajor = 0x1; \ 278b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin (_s_)->nVersion.s.nVersionMinor = 0x1; \ 279b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin (_s_)->nVersion.s.nRevision = 0x0; \ 280b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin (_s_)->nVersion.s.nStep = 0x0 281b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 282b65f253fdc60f6208a54911bee793d225f23cdf8James Dong#define OMX_G722MEMFREE_STRUCT(_pStruct_) \ 283b65f253fdc60f6208a54911bee793d225f23cdf8James Dong if(_pStruct_ != NULL) \ 284b65f253fdc60f6208a54911bee793d225f23cdf8James Dong { \ 285b65f253fdc60f6208a54911bee793d225f23cdf8James Dong G722ENC_MEMPRINT("%d :: [FREE] %p\n", __LINE__, _pStruct_); \ 286b65f253fdc60f6208a54911bee793d225f23cdf8James Dong free(_pStruct_); \ 287b65f253fdc60f6208a54911bee793d225f23cdf8James Dong _pStruct_ = NULL; \ 288b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin } 289b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 290b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define OMX_G722CLOSE_PIPE(_pStruct_,err) \ 291b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_DPRINT("%d :: CLOSING PIPE \n", __LINE__); \ 292b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin err = close (_pStruct_); \ 293b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin if(0 != err && OMX_ErrorNone == eError) \ 294b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin { \ 295b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin eError = OMX_ErrorHardware; \ 296b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin printf("%d :: Error while closing pipe\n", __LINE__); \ 297b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin goto EXIT; \ 298b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin } 299b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 300b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define OMX_G722MALLOC_STRUCT(_pStruct_, _sName_) \ 301b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin _pStruct_ = (_sName_*)malloc(sizeof(_sName_)); \ 302b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin if(_pStruct_ == NULL) \ 303b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin { \ 304b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin printf("***********************************\n"); \ 305b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin printf("%d :: Malloc Failed\n", __LINE__); \ 306b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin printf("***********************************\n"); \ 307b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin eError = OMX_ErrorInsufficientResources; \ 308b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin goto EXIT; \ 309b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin } \ 310b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin memset(_pStruct_,0,sizeof(_sName_)); \ 311b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_MEMPRINT("%d :: [ALLOC] %p\n", __LINE__, _pStruct_); 312b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 313b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** G722ENC_STREAM_TYPE Values for create phase params 314b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 315b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param G722ENCSTREAMDMM Indicates DMM 316b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 317b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param G722ENCSTREAMINPUT Sets input stream 318b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 319b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param G722ENCSTREAMOUTPUT Sets output stream 320b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 321b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 322b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ==================================================================== */ 323b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef enum { 324b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENCSTREAMDMM, 325b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENCSTREAMINPUT, 326b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENCSTREAMOUTPUT 327b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin} G722ENC_STREAM_TYPE; 328b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 329b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 330b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** IUALG_Cmd Values for create phase params 331b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 332b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param IULAG_CMD_STOP Socket node stop command 333b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 334b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param IULAG_CMD_PAUSE Socket node pause command 335b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 336b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param IULAG_CMD_GETSTATUS Socket node get status command. 337b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 338b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param IULAG_CMD_SETSTATUS Socket node set status command. 339b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 340b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param IUALG_CMD_USERCMDSTART Socket node start command. 341b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 342b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 343b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ==================================================================== */ 344b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef enum { 345b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin IULAG_CMD_STOP = 0, 346b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin IULAG_CMD_PAUSE = 1, 347b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin IULAG_CMD_GETSTATUS = 2, 348b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin IULAG_CMD_SETSTATUS = 3, 349b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin IUALG_CMD_USERCMDSTART = 100 350b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin}IUALG_Cmd; 351b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 352b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 353b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ======================================================================= */ 354b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** G722ENC_COMP_PORT_TYPE Port definition for component 355b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 356b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param G722ENC_INPUT_PORT Index for input port 357b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 358b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param G722ENC_OUTPUT_PORT Index for output port 359b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 360b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 361b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ==================================================================== */ 362b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef enum G722ENC_COMP_PORT_TYPE { 363b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_INPUT_PORT = 0, 364b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_OUTPUT_PORT 365b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin}G722ENC_COMP_PORT_TYPE; 366b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 367b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 368b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 369b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =================================================================================== */ 370b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 371b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Socket node input buffer parameters. 372b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 373b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ================================================================================== */ 374b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef struct G722ENC_UAlgInBufParamStruct { 375b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin unsigned long bLastBuffer; 376b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin}G722ENC_UAlgInBufParamStruct; 377b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 378b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =================================================================================== */ 379b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 380b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * LCML data header. 381b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 382b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ================================================================================== */ 383b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef struct G722ENC_LCML_BUFHEADERTYPE { 384b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_DIRTYPE eDir; 385b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BUFFERHEADERTYPE *pBufHdr; 386b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin void *pOtherParams[10]; 387b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_UAlgInBufParamStruct *pIpParam; 388b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /*G722ENC_UAlgOutBufParamStruct *pOpParam; */ 389b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin}G722ENC_LCML_BUFHEADERTYPE; 390b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 391b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 392b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =================================================================================== */ 393b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 394b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Socket node audio codec parameters 395b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 396b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ================================================================================== */ 397b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef struct G722ENC_AudioCodecParams 398b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin{ 399b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin unsigned long iSamplingRate; 400b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin unsigned long iStrmId; 401b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin unsigned short iAudioFormat; 402b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 403b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin}G722ENC_AudioCodecParams; 404b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 405b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =================================================================================== */ 406b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 407b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Structure for buffer list 408b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 409b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ================================================================================== */ 410b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef struct _BUFFERLIST G722ENC_BUFFERLIST; 411b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavinstruct _BUFFERLIST{ 412b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BUFFERHEADERTYPE *pBufHdr[G722ENC_MAX_NUM_OF_BUFS]; /* records buffer header send by client */ 413b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bufferOwner[G722ENC_MAX_NUM_OF_BUFS]; 414b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 numBuffers; 415b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bBufferPending[G722ENC_MAX_NUM_OF_BUFS]; 416b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin}; 417b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 418b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =================================================================================== */ 419b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 420b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Component private data 421b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 422b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ================================================================================== */ 423b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef struct G722ENC_COMPONENT_PRIVATE 424b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin{ 425b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Array of pointers to BUFFERHEADERTYPE structues 426b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin This pBufHeader[G722ENC_INPUT_PORT] will point to all the 427b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin BUFFERHEADERTYPE structures related to input port, 428b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin not just one structure. Same is for output port 429b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin also. */ 430b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BUFFERHEADERTYPE* pBufHeader[G722ENC_NUM_OF_PORTS]; 431b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 432b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Structure of callback pointers */ 433b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_CALLBACKTYPE cbInfo; 434b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 435b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Handle for use with async callbacks */ 436b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_PORT_PARAM_TYPE sPortParam; 437b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 438b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Input port parameters */ 439b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_AUDIO_PARAM_PORTFORMATTYPE* pInPortFormat; 440b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 441b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Output port parameters */ 442b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_AUDIO_PARAM_PORTFORMATTYPE* pOutPortFormat; 443b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 444b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Keeps track of whether a buffer is owned by the 445b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin component or by the IL client */ 446b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bIsBufferOwned[G722ENC_NUM_OF_PORTS]; 447b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 448b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /* Audio codec parameters structure */ 449b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_AudioCodecParams *pParams; 450b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 451b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** This will contain info like how many buffers 452b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin are there for input/output ports, their size etc, but not 453b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin BUFFERHEADERTYPE POINTERS. */ 454b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_PARAM_PORTDEFINITIONTYPE* pPortDef[G722ENC_NUM_OF_PORTS]; 455b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_AUDIO_PARAM_ADPCMTYPE* g722Params; 456b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_AUDIO_PARAM_ADPCMTYPE* pcmParams; 457b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_PRIORITYMGMTTYPE* sPriorityMgmt; 458b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 459b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** This is component handle */ 460b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_COMPONENTTYPE* pHandle; 461b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 462b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Current state of this component */ 463b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_STATETYPE curState; 464b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 465b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** The component thread handle */ 466b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin pthread_t ComponentThread; 467b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 468b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** The pipes for sending buffers to the thread */ 469b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int dataPipe[2]; 470b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 471b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** The pipes for sending command data to the thread */ 472b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int cmdDataPipe[2]; 473b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 474b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** The pipes for sending buffers to the thread */ 475b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int cmdPipe[2]; 476b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 477b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** The pipes for sending buffers to the thread */ 478b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int lcml_Pipe[2]; 479b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 480b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Set to indicate component is stopping */ 481b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bIsStopping; 482b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 483b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bIsEOFSent; 484b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 485b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Count of number of buffers outstanding with bridge */ 486b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 lcml_nIpBuf; 487b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 488b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Count of number of buffers outstanding with bridge */ 489b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 lcml_nOpBuf; 490b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 491b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Count of buffers sent to the LCML */ 492b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 lcml_nCntIp; 493b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 494b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Count of buffers received from the LCML */ 495b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 lcml_nCntOpReceived; 496b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 497b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Count of buffers pending from the app */ 498b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 app_nBuf; 499b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 500b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag for DASF mode */ 501b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 dasfmode; 502b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 503b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Audio Stream ID */ 504b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 streamID; 505b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 506b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** LCML Handle */ 507b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_HANDLETYPE pLcmlHandle; 508b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 509b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** LCML Buffer Header */ 510b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_LCML_BUFHEADERTYPE *pLcmlBufHeader[2]; 511b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 512b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Tee Mode Flag */ 513b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 teemode; 514b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 515b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag set when port definitions are allocated */ 516b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bPortDefsAllocated; 517b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 518b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag set when component thread is started */ 519b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bCompThreadStarted; 520b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 521b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Mark data */ 522b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_PTR pMarkData; 523b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 524b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Mark buffer */ 525b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_MARKTYPE *pMarkBuf; 526b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 527b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Mark target component */ 528b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_HANDLETYPE hMarkTargetComponent; 529b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 530b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag set when buffer should not be queued to the DSP */ 531b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bBypassDSP; 532b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 533b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Create phase arguments */ 534b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U16 *pCreatePhaseArgs; 535b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 536b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Input buffer list */ 537b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_BUFFERLIST *pInputBufferList; 538b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 539b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Output buffer list */ 540b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_BUFFERLIST *pOutputBufferList; 541b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 542b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** LCML stream attributes */ 543b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin LCML_STRMATTR *strmAttr; 544b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 545b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Component version */ 546b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 nVersion; 547b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 548b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** LCML Handle */ 549b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin void *lcml_handle; 550b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 551b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Number of initialized input buffers */ 552b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int noInitInputBuf; 553b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 554b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Number of initialized output buffers */ 555b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int noInitOutputBuf; 556b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 557b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag set when LCML handle is opened */ 558b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int bLcmlHandleOpened; 559b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 560b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag set when initialization params are set */ 561b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bInitParamsInitialized; 562b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 563b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Pipe write handle for audio manager */ 564b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int fdwrite; 565b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 566b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Pipe read handle for audio manager */ 567b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int fdread; 568b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 569b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Stores input buffers while paused */ 570b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BUFFERHEADERTYPE *pInputBufHdrPending[G722ENC_MAX_NUM_OF_BUFS]; 571b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 572b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Number of input buffers received while paused */ 573b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 nNumInputBufPending; 574b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 575b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Stores output buffers while paused */ 576b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BUFFERHEADERTYPE *pOutputBufHdrPending[G722ENC_MAX_NUM_OF_BUFS]; 577b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 578b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Number of output buffers received while paused */ 579b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 nNumOutputBufPending; 580b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 581b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Keeps track of the number of invalid frames that come from the LCML */ 582b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 nInvalidFrameCount; 583b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 584b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag set when a disable command is pending */ 585b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bDisableCommandPending; 586b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 587b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Parameter for pending disable command */ 588b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bDisableCommandParam; 589b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 590b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag to set when socket node stop callback should not transition 591b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin component to OMX_StateIdle */ 592b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bNoIdleOnStop; 593b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 594b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag set when idle command is pending */ 595b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bIdleCommandPending; 596b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 597b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag set when socket node is stopped */ 598b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bDspStoppedWhileExecuting; 599b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 600b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Number of outstanding FillBufferDone() calls */ 601b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 nOutStandingFillDones; 602b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 603b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Flag set when StrmCtrl has been called */ 604b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 bStreamCtrlCalled; 605b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 606b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_PARAM_COMPONENTROLETYPE componentRole; 607b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_STRING* sDeviceString; 608b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BOOL bLoadedCommandPending; 609b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 610b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Holds the value of RT Mixer mode */ 611b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 rtmx; 612b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin TI_OMX_DSP_DEFINITION tiOmxDspDefinition; 613b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 614b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /* Removing sleep() calls. Definition. */ 615b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifndef UNDER_CE 616b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin pthread_mutex_t AlloBuf_mutex; 617b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin pthread_cond_t AlloBuf_threshold; 618b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U8 AlloBuf_waitingsignal; 619b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 620b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin pthread_mutex_t InLoaded_mutex; 621b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin pthread_cond_t InLoaded_threshold; 622b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U8 InLoaded_readytoidle; 623b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 624b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin pthread_mutex_t InIdle_mutex; 625b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin pthread_cond_t InIdle_threshold; 626b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U8 InIdle_goingtoloaded; 627b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 628b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_Event AlloBuf_event; 629b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U8 AlloBuf_waitingsignal; 630b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 631b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_Event InLoaded_event; 632b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U8 InLoaded_readytoidle; 633b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 634b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_Event InIdle_event; 635b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U8 InIdle_goingtoloaded; 636b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 637b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 638b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef __PERF_INSTRUMENTATION__ 639b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin PERF_OBJHANDLE pPERF, pPERFcomp; 640b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 nLcml_nCntIp; 641b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 nLcml_nCntOpReceived; 642b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 643b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 644b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Keep buffer timestamps **/ 645b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_S64 arrTimestamp[G722ENC_MAX_NUM_OF_BUFS]; 646b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Keep buffer nTickCounts **/ 647b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_S64 arrTickCount[G722ENC_MAX_NUM_OF_BUFS]; 648b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Index to arrTimestamp[], used for input buffer timestamps */ 649b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U8 IpBufindex; 650b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin /** Index to arrTimestamp[], used for output buffer timestamps */ 651b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U8 OpBufindex; 652b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 653b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 654b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BOOL bPreempted; 655b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 656b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin} G722ENC_COMPONENT_PRIVATE; 657b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 658b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 659b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 660b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * OMX_ComponentInit() Initializes component 661b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 662b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 663b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param hComp OMX Handle 664b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 665b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 666b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 667b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 668b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 669b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 670b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifndef UNDER_CE 671b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE OMX_ComponentInit (OMX_HANDLETYPE hComp); 672b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 673b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* WinCE Implicit Export Syntax */ 674b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define OMX_EXPORT __declspec(dllexport) 675b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_EXPORT OMX_ERRORTYPE OMX_ComponentInit (OMX_HANDLETYPE hComp); 676b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 677b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 678b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 679b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 680b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_Fill_LCMLInitParams() Fills the parameters needed 681b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * to initialize the LCML 682b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 683b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pHandle OMX Handle 684b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 685b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param plcml_Init LCML initialization parameters 686b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 687b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 688b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 689b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 690b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 691b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 692b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_Fill_LCMLInitParams(OMX_HANDLETYPE pHandle, 693b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin LCML_DSP *plcml_Init); 694b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 695b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 696b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 697b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_GetBufferDirection() Returns direction of pBufHeader 698b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 699b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pBufHeader Buffer header 700b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 701b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param eDir Buffer direction 702b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 703b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 704b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 705b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 706b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 707b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 708b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 709b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_GetBufferDirection(OMX_BUFFERHEADERTYPE *pBufHeader, 710b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_DIRTYPE *eDir, 711b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_COMPONENT_PRIVATE *pComponentPrivate); 712b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 713b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 714b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 715b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_LCML_Callback() Callback from LCML 716b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 717b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param event Codec Event 718b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 719b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param args Arguments from LCML 720b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 721b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 722b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 723b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 724b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 725b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_LCML_Callback (TUsnCodecEvent event,void * args [10]); 726b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 727b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 728b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 729b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_HandleCommand() Handles commands sent via SendCommand() 730b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 731b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 732b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 733b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 734b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 735b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 736b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 737b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_U32 G722ENC_HandleCommand (G722ENC_COMPONENT_PRIVATE *pComponentPrivate); 738b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 739b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 740b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 741b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 742b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_HandleDataBuf_FromApp() Handles data buffers received 743b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * from application 744b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 745b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pBufHeader Buffer header 746b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 747b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 748b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 749b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 750b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 751b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 752b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 753b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_HandleDataBuf_FromApp(OMX_BUFFERHEADERTYPE *pBufHeader, 754b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_COMPONENT_PRIVATE *pComponentPrivate); 755b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 756b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 757b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 758b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 759b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 760b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_HandleDataBuf_FromLCML() Handles data buffers received 761b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * from LCML 762b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 763b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 764b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 765b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 766b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 767b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 768b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 769b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/***** NO LCML ******* 770b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_ERRORTYPE G722ENC_HandleDataBuf_FromLCML(G722ENC_COMPONENT_PRIVATE* 771b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin pComponentPrivate); 772b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin**********************/ 773b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 774b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 775b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * GetLCMLHandle() 776b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 777b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param 778b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 779b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return * 780b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 781b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 782b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_HANDLETYPE GetLCMLHandle(); 783b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 784b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 785b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 786b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 787b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_GetCorresponding_LCMLHeader() Returns LCML header 788b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * that corresponds to the given buffer 789b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 790b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 791b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 792b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 793b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 794b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 795b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 796b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_GetCorresponding_LCMLHeader(OMX_U8 *pBuffer, 797b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_DIRTYPE eDir, 798b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin G722ENC_LCML_BUFHEADERTYPE **ppLcmlHdr); 799b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 800b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 801b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 802b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 803b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722Enc_FreeCompResources() Frees component resources 804b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 805b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponent OMX Handle 806b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 807b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 808b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 809b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 810b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 811b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722Enc_FreeCompResources(OMX_HANDLETYPE pComponent); 812b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 813b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 814b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 815b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722Enc_StartCompThread() Starts component thread 816b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 817b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponent OMX Handle 818b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 819b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 820b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 821b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 822b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 823b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722Enc_StartCompThread(OMX_HANDLETYPE pComponent); 824b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 825b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 826b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 827b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_GetLCMLHandle() Returns handle to the LCML 828b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 829b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 830b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return Handle to the LCML 831b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 832b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 833b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_HANDLETYPE G722ENC_GetLCMLHandle(); 834b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 835b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 836b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ========================================================================== */ 837b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 838b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @G722ENC_StopComponentThread() This function is called by the component during 839b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * de-init to close component thread. 840b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 841b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponent handle for this instance of the component 842b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 843b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @pre 844b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 845b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @post 846b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 847b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return none 848b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 849b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ========================================================================== */ 850b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_StopComponentThread(OMX_HANDLETYPE pComponent); 851b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 852b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 853b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 854b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_FreeLCMLHandle() Frees the handle to the LCML 855b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 856b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 857b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 858b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 859b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 860b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 861b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_FreeLCMLHandle(); 862b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 863b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 864b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 865b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 866b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_CleanupInitParams() Starts component thread 867b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 868b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponent OMX Handle 869b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 870b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 871b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 872b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 873b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 874b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_CleanupInitParams(OMX_HANDLETYPE pComponent); 875b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 876b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 877b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 878b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 879b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_CommandToIdle() Called when the component is commanded 880b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * to idle 881b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 882b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 883b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 884b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 885b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 886b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 887b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 888b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_CommandToIdle(G722ENC_COMPONENT_PRIVATE *pComponentPrivate); 889b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 890b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 891b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 892b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_CommandToIdle() Called when the component is commanded 893b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * to idle 894b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 895b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 896b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 897b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 898b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 899b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 900b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 901b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_CommandToLoaded(G722ENC_COMPONENT_PRIVATE *pComponentPrivate); 902b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 903b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 904b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 905b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_CommandToExecuting() Called when the component is commanded 906b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * to executing 907b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 908b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 909b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 910b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 911b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 912b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 913b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 914b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_CommandToExecuting(G722ENC_COMPONENT_PRIVATE *pComponentPrivate); 915b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 916b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 917b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 918b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_CommandToPause() Called when the component is commanded 919b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * to paused 920b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 921b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 922b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 923b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 924b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 925b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 926b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 927b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_CommandToPause(G722ENC_COMPONENT_PRIVATE *pComponentPrivate); 928b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 929b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 930b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 931b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_CommandToWaitForResources() Called when the component is commanded 932b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * to WaitForResources 933b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 934b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 935b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 936b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = Successful 937b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Other error code = fail 938b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 939b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 940b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_CommandToWaitForResources(G722ENC_COMPONENT_PRIVATE *pComponentPrivate); 941b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 942b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 943b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 944b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_SetPending() Called when the component queues a buffer 945b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * to the LCML 946b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 947b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 948b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 949b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pBufHdr Buffer header 950b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 951b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param eDir Direction of the buffer 952b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 953b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return None 954b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 955b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 956b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavinvoid G722ENC_SetPending(G722ENC_COMPONENT_PRIVATE *pComponentPrivate, OMX_BUFFERHEADERTYPE *pBufHdr, OMX_DIRTYPE eDir); 957b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 958b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 959b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 960b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_ClearPending() Called when a buffer is returned 961b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * from the LCML 962b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 963b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 964b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 965b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pBufHdr Buffer header 966b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 967b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param eDir Direction of the buffer 968b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 969b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return None 970b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 971b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 972b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavinvoid G722ENC_ClearPending(G722ENC_COMPONENT_PRIVATE *pComponentPrivate, OMX_BUFFERHEADERTYPE *pBufHdr, OMX_DIRTYPE eDir) ; 973b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 974b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 975b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 976b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_IsPending() Returns the status of a buffer 977b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 978b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 979b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 980b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pBufHdr Buffer header 981b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 982b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param eDir Direction of the buffer 983b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 984b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return None 985b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 986b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 987b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_U32 G722ENC_IsPending(G722ENC_COMPONENT_PRIVATE *pComponentPrivate, OMX_BUFFERHEADERTYPE *pBufHdr, OMX_DIRTYPE eDir); 988b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 989b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 990b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 991b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_Fill_LCMLInitParamsEx() Fills the parameters needed 992b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * to initialize the LCML without recreating the socket node 993b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 994b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponent OMX Handle 995b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 996b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return None 997b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 998b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 999b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_Fill_LCMLInitParamsEx(OMX_HANDLETYPE pComponent); 1000b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 1001b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 1002b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 1003b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_IsValid() Returns whether the buffer is a valid buffer 1004b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 1005b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 1006b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 1007b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pBuffer Buffer 1008b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 1009b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param eDir Direction of the buffer 1010b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 1011b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return None 1012b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 1013b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 1014b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_U32 G722ENC_IsValid(G722ENC_COMPONENT_PRIVATE *pComponentPrivate, OMX_U8 *pBuffer, OMX_DIRTYPE eDir) ; 1015b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 1016b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* =========================================================== */ 1017b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 1018b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * G722ENC_TransitionToIdle() Transitions component to idle 1019b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 1020b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 1021b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @param pComponentPrivate Component private data 1022b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 1023b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * @return OMX_ErrorNone = No error 1024b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * OMX Error code = Error 1025b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 1026b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*================================================================== */ 1027b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz ZavinOMX_ERRORTYPE G722ENC_TransitionToIdle(G722ENC_COMPONENT_PRIVATE *pComponentPrivate); 1028b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 1029b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 1030b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*void printEmmEvent (TUsnCodecEvent event);*/ 1031