Audio Signal Processing/audio_codecs_chipset_api.h
author Arnaud Lenoir
Tue, 27 Jul 2010 14:02:05 +0100
changeset 17 fc9a6286e87d
parent 2 ea09f30a96a5
permissions -rw-r--r--
FYI - READ ONLY - contact arnaudl@symbian.org for any changes you want. Added data code availabe for OS&Base Services.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
     1
/*
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
     2
  audio_codecs_chipset_api.h
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
     3
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
     4
  Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
     5
  All rights reserved.
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
     6
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
     7
  This program and the accompanying materials are made available 
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
     8
  under the terms of the Eclipse Public License v1.0 which accompanies 
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
     9
  this distribution, and is available at 
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    10
  http://www.eclipse.org/legal/epl-v10.html
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    11
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    12
  Initial Contributors:
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    13
  Nokia Corporation - initial contribution.
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    14
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    15
  Contributors:
2
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    16
*/
0
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    17
#ifndef AUDIO_CODECS_CHIPSET_API_H
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    18
#define AUDIO_CODECS_CHIPSET_API_H
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    19
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    20
#ifdef __cplusplus
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    21
extern "C" {
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    22
#endif /* __cplusplus */
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    23
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    24
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    25
/* Each OMX header must include all required header files to allow the
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    26
 *  header to compile without errors.  The includes below are required
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    27
 *  for this header file to compile successfully 
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    28
 */
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    29
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    30
#include <OMX_Audio.h>
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    31
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    32
2
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    33
/** WMA param **/
0
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    34
2
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    35
typedef struct OMX_AUDIO_PARAM_WMAAVGBYTESTYPE { 
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    36
OMX_U32 nSize; 
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    37
OMX_VERSIONTYPE nVersion; 
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    38
OMX_U32 nPortIndex;  
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    39
OMX_U32 nAvgBytesPerSec;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    40
} OMX_AUDIO_PARAM_WMAAVGBYTESTYPE;
0
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    41
2
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    42
/** End of WMA related **/
0
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    43
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    44
/** WMA Pro params **/
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    45
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    46
typedef enum OMX_AUDIO_WMAPROPROFILETYPE {
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    47
    OMX_AUDIO_WMAPROProfileUnused = 0,          /**< AMRNB Mode unused / unknown */
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    48
    OMX_AUDIO_WMAPROProfileM0,
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    49
    OMX_AUDIO_WMAPROProfileM1,
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    50
    OMX_AUDIO_WMAPROProfileM2,
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    51
    OMX_AUDIO_WMAPROProfileM3,               
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    52
    OMX_AUDIO_WMAPROProfileMax = 0x7FFFFFFF
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    53
} OMX_AUDIO_WMAPROPROFILETYPE;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    54
    
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    55
typedef struct OMX_AUDIO_PARAM_WMAPROTYPE {
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    56
		OMX_U32 nSize;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    57
		OMX_VERSIONTYPE nVersion;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    58
		OMX_U32 nPortIndex;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    59
		OMX_U16 nChannels;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    60
		OMX_U32 nBitRate;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    61
		OMX_AUDIO_WMAPROPROFILETYPE eProfile;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    62
		OMX_U32 nSamplingRate;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    63
		OMX_U32 nBlockAlign;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    64
		OMX_U32 nSuperBlockAlign;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    65
		OMX_U32 nEncodeOptions;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    66
		OMX_U32 nAdvancedEncodeOptions;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    67
		OMX_U32 nAdvancedEncodeOptions2;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    68
		OMX_U32 nChannelMask;
2
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    69
		OMX_U32 nSourceBitsPerSample;
0
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    70
} OMX_AUDIO_PARAM_WMAPROTYPE;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    71
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    72
/** End of WMA Pro related **/
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    73
2
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    74
typedef struct OMX_AUDIO_CONFIG_AMRMODETYPE {
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    75
		OMX_U32 nSize;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    76
		OMX_VERSIONTYPE nVersion;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    77
		OMX_U32 nPortIndex;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    78
		OMX_U32 nBitRate;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    79
		OMX_AUDIO_AMRBANDMODETYPE eAMRBandMode;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    80
} OMX_AUDIO_CONFIG_AMRMODETYPE;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    81
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    82
typedef struct OMX_AUDIO_CONFIG_ILBCFRAMETYPE {
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    83
		OMX_U32 nSize;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    84
		OMX_VERSIONTYPE nVersion;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    85
		OMX_U32 nPortIndex;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    86
		OMX_U32 nFrameLength; 
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    87
} OMX_AUDIO_CONFIG_ILBCFRAMETYPE;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    88
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    89
/** SBC codec related **/
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    90
typedef struct OMX_AUDIO_CONFIG_SBCBITPOOLTYPE {
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    91
	  OMX_U32 nSize;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    92
	  OMX_VERSIONTYPE nVersion;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    93
	  OMX_U32 nPortIndex;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    94
	  OMX_U32 nNewBitPool; 
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    95
} OMX_AUDIO_CONFIG_SBCBITPOOLTYPE;
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    96
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    97
/** End of SBC codec related **/
ea09f30a96a5 Bunch of SHAIs Updates
arunabha
parents: 0
diff changeset
    98
0
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
    99
/** iLBC related **/
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   100
typedef struct OMX_AUDIO_PARAM_ILBCTYPE  { 
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   101
     OMX_U32 nSize;                                    
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   102
     OMX_VERSIONTYPE nVersion;                   
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   103
     OMX_U32 nPortIndex;            
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   104
     OMX_U32 nFrameLength;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   105
     OMX_BOOL bIsDTXCNGSupported;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   106
     OMX_BOOL bDTXCNGSelected;                       
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   107
     OMX_BOOL bPLCSelected;                                                                       
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   108
 } OMX_AUDIO_PARAM_ILBCTYPE;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   109
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   110
/** End of iLBC related **/
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   111
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   112
/** G711 related **/
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   113
typedef struct OMX_AUDIO_PARAM_G711TYPE  { 
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   114
     OMX_U32 nSize;                                    
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   115
     OMX_VERSIONTYPE nVersion;                   
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   116
     OMX_U32 nPortIndex; 
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   117
     OMX_BOOL bIsDTXCNGSupported;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   118
     OMX_BOOL bIsPLCSupported;       
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   119
     OMX_BOOL bDTXCNGEnabled;           
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   120
     OMX_BOOL bPLCEnabled;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   121
     OMX_U32  nFrameLength;                                                                     
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   122
 } OMX_AUDIO_PARAM_G711TYPE;
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   123
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   124
/** End of G711 related **/
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   125
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   126
#ifdef __cplusplus
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   127
}
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   128
#endif /* __cplusplus */
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   129
bb4b476bbb96 Initial contribution of SHAI APIs from Nokia.
Daniel Rubio <danielr@symbian.org>
parents:
diff changeset
   130
#endif