/* Each OMX header must include all required header files to allow the *headertocompilewithouterrors.Theincludesbelowarerequired *forthisheaderfiletocompilesuccessfully
*/
/** @defgroup audio OpenMAX IL Audio Domain *StructuresforOpenMAXILAudiodomain *@{
*/
/** Enumeration used to define the possible audio codings. *If"OMX_AUDIO_CodingUnused"isselected,thecodingselectionmust *bedoneinavendorspecificway.Sincethisisforanaudio *processingelementthisenumisrelevant.However,foranother *typeofcomponentotherenumswouldbeinthisarea.
*/ typedefenum OMX_AUDIO_CODINGTYPE {
OMX_AUDIO_CodingUnused = 0, /**< Placeholder value when coding is N/A */
OMX_AUDIO_CodingAutoDetect, /**< auto detection of audio format */
OMX_AUDIO_CodingPCM, /**< Any variant of PCM coding */
OMX_AUDIO_CodingADPCM, /**< Any variant of ADPCM encoded data */
OMX_AUDIO_CodingAMR, /**< Any variant of AMR encoded data */
OMX_AUDIO_CodingGSMFR, /**< Any variant of GSM fullrate (i.e. GSM610) */
OMX_AUDIO_CodingGSMEFR, /**< Any variant of GSM Enhanced Fullrate encoded data*/
OMX_AUDIO_CodingGSMHR, /**< Any variant of GSM Halfrate encoded data */
OMX_AUDIO_CodingPDCFR, /**< Any variant of PDC Fullrate encoded data */
OMX_AUDIO_CodingPDCEFR, /**< Any variant of PDC Enhanced Fullrate encoded data */
OMX_AUDIO_CodingPDCHR, /**< Any variant of PDC Halfrate encoded data */
OMX_AUDIO_CodingTDMAFR, /**< Any variant of TDMA Fullrate encoded data (TIA/EIA-136-420) */
OMX_AUDIO_CodingTDMAEFR, /**< Any variant of TDMA Enhanced Fullrate encoded data (TIA/EIA-136-410) */
OMX_AUDIO_CodingQCELP8, /**< Any variant of QCELP 8kbps encoded data */
OMX_AUDIO_CodingQCELP13, /**< Any variant of QCELP 13kbps encoded data */
OMX_AUDIO_CodingEVRC, /**< Any variant of EVRC encoded data */
OMX_AUDIO_CodingSMV, /**< Any variant of SMV encoded data */
OMX_AUDIO_CodingG711, /**< Any variant of G.711 encoded data */
OMX_AUDIO_CodingG723, /**< Any variant of G.723 dot 1 encoded data */
OMX_AUDIO_CodingG726, /**< Any variant of G.726 encoded data */
OMX_AUDIO_CodingG729, /**< Any variant of G.729 encoded data */
OMX_AUDIO_CodingAAC, /**< Any variant of AAC encoded data */
OMX_AUDIO_CodingMP3, /**< Any variant of MP3 encoded data */
OMX_AUDIO_CodingSBC, /**< Any variant of SBC encoded data */
OMX_AUDIO_CodingVORBIS, /**< Any variant of VORBIS encoded data */
OMX_AUDIO_CodingWMA, /**< Any variant of WMA encoded data */
OMX_AUDIO_CodingRA, /**< Any variant of RA encoded data */
OMX_AUDIO_CodingMIDI, /**< Any variant of MIDI encoded data */
OMX_AUDIO_CodingKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_CodingVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_CodingMax = 0x7FFFFFFF
} OMX_AUDIO_CODINGTYPE;
/** The PortDefinition structure is used to define all of the parameters *necessaryforthecompliantcomponenttosetupaninputoranoutputaudio *path.Ifadditionalinformationisneededtodefinetheparametersofthe *port(suchasfrequency),additionalstructuresmustbesentsuchasthe *OMX_AUDIO_PARAM_PCMMODETYPEstructuretosupplytheextraparametersfortheport.
*/ typedefstruct OMX_AUDIO_PORTDEFINITIONTYPE {
OMX_STRING cMIMEType; /**< MIME type of data for the port */
OMX_NATIVE_DEVICETYPE pNativeRender; /** < platform specific reference foranoutputdevice,
otherwise this field is 0 */
OMX_BOOL bFlagErrorConcealment; /**< Turns on error concealment if it is
supported by the OMX component */
OMX_AUDIO_CODINGTYPE eEncoding; /**< Type of data expected for this
port (e.g. PCM, AMR, MP3, etc) */
} OMX_AUDIO_PORTDEFINITIONTYPE;
/** Port format parameter. This structure is used to enumerate *thevariousdatainput/outputformatsupportedbytheport.
*/ typedefstruct OMX_AUDIO_PARAM_PORTFORMATTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< Indicates which port to set */
OMX_U32 nIndex; /**< Indicates the enumeration index for the format from 0x0 to N-1 */
OMX_AUDIO_CODINGTYPE eEncoding; /**< Type of data expected for this port (e.g. PCM, AMR, MP3, etc) */
} OMX_AUDIO_PARAM_PORTFORMATTYPE;
/** PCM mode type */ typedefenum OMX_AUDIO_PCMMODETYPE {
OMX_AUDIO_PCMModeLinear = 0, /**< Linear PCM encoded data */
OMX_AUDIO_PCMModeALaw, /**< A law PCM encoded data (G.711) */
OMX_AUDIO_PCMModeMULaw, /**< Mu law PCM encoded data (G.711) */
OMX_AUDIO_PCMModeKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_PCMModeVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_PCMModeMax = 0x7FFFFFFF
} OMX_AUDIO_PCMMODETYPE;
typedefenum OMX_AUDIO_CHANNELTYPE {
OMX_AUDIO_ChannelNone = 0x0, /**< Unused or empty */
OMX_AUDIO_ChannelLF = 0x1, /**< Left front */
OMX_AUDIO_ChannelRF = 0x2, /**< Right front */
OMX_AUDIO_ChannelCF = 0x3, /**< Center front */
OMX_AUDIO_ChannelLS = 0x4, /**< Left surround */
OMX_AUDIO_ChannelRS = 0x5, /**< Right surround */
OMX_AUDIO_ChannelLFE = 0x6, /**< Low frequency effects */
OMX_AUDIO_ChannelCS = 0x7, /**< Back surround */
OMX_AUDIO_ChannelLR = 0x8, /**< Left rear. */
OMX_AUDIO_ChannelRR = 0x9, /**< Right rear. */
OMX_AUDIO_ChannelKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_ChannelVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_ChannelMax = 0x7FFFFFFF
} OMX_AUDIO_CHANNELTYPE;
#define OMX_AUDIO_MAXCHANNELS 16/**< maximum number distinct audio channels that a buffer may contain */ #define OMX_MIN_PCMPAYLOAD_MSEC 5/**< Minimum audio buffer payload size for uncompressed (PCM) audio */
/** PCM format description */ typedefstruct OMX_AUDIO_PARAM_PCMMODETYPE {
OMX_U32 nSize; /**< Size of this structure, in Bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels (e.g. 2 for stereo) */
OMX_NUMERICALDATATYPE eNumData; /**< indicates PCM data as signed or unsigned */
OMX_ENDIANTYPE eEndian; /**< indicates PCM data as little or big endian */
OMX_BOOL bInterleaved; /**< True for normal interleaved data; false for
non-interleaved data (e.g. block data) */
OMX_U32 nBitPerSample; /**< Bit per sample */
OMX_U32 nSamplingRate; /**< Sampling rate of the source data. Use 0 for
variable or unknown sampling rate. */
OMX_AUDIO_PCMMODETYPE ePCMMode; /**< PCM mode enumeration */
OMX_AUDIO_CHANNELTYPE eChannelMapping[OMX_AUDIO_MAXCHANNELS]; /**< Slot i contains channel defined by eChannelMap[i] */
} OMX_AUDIO_PARAM_PCMMODETYPE;
/** Audio channel mode. This is used by both AAC and MP3, although the names are more appropriate *fortheMP3.Forexample,JointStereoforMP3isCouplingChannelsforAAC.
*/ typedefenum OMX_AUDIO_CHANNELMODETYPE {
OMX_AUDIO_ChannelModeStereo = 0, /**< 2 channels, the bitrate allocation between those
two channels changes accordingly to each channel information */
OMX_AUDIO_ChannelModeJointStereo, /**< mode that takes advantage of what is common between
2 channels for higher compression gain */
OMX_AUDIO_ChannelModeDual, /**< 2 mono-channels, each channel is encoded with half
the bitrate of the overall bitrate */
OMX_AUDIO_ChannelModeMono, /**< Mono channel mode */
OMX_AUDIO_ChannelModeKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_ChannelModeVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_ChannelModeMax = 0x7FFFFFFF
} OMX_AUDIO_CHANNELMODETYPE;
typedefenum OMX_AUDIO_MP3STREAMFORMATTYPE {
OMX_AUDIO_MP3StreamFormatMP1Layer3 = 0, /**< MP3 Audio MPEG 1 Layer 3 Stream format */
OMX_AUDIO_MP3StreamFormatMP2Layer3, /**< MP3 Audio MPEG 2 Layer 3 Stream format */
OMX_AUDIO_MP3StreamFormatMP2_5Layer3, /**< MP3 Audio MPEG2.5 Layer 3 Stream format */
OMX_AUDIO_MP3StreamFormatKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_MP3StreamFormatVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_MP3StreamFormatMax = 0x7FFFFFFF
} OMX_AUDIO_MP3STREAMFORMATTYPE;
/** MP3 params */ typedefstruct OMX_AUDIO_PARAM_MP3TYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels */
OMX_U32 nBitRate; /**< Bit rate of the input data. Use 0 for variable
rate or unknown bit rates */
OMX_U32 nSampleRate; /**< Sampling rate of the source data. Use 0 for
variable or unknown sampling rate. */
OMX_U32 nAudioBandWidth; /**< Audio band width (in Hz) to which an encoder should
limit the audio signal. Use 0 to let encoder decide */
OMX_AUDIO_CHANNELMODETYPE eChannelMode; /**< Channel mode enumeration */
OMX_AUDIO_MP3STREAMFORMATTYPE eFormat; /**< MP3 stream format */
} OMX_AUDIO_PARAM_MP3TYPE;
typedefenum OMX_AUDIO_AACSTREAMFORMATTYPE {
OMX_AUDIO_AACStreamFormatMP2ADTS = 0, /**< AAC Audio Data Transport Stream 2 format */
OMX_AUDIO_AACStreamFormatMP4ADTS, /**< AAC Audio Data Transport Stream 4 format */
OMX_AUDIO_AACStreamFormatMP4LOAS, /**< AAC Low Overhead Audio Stream format */
OMX_AUDIO_AACStreamFormatMP4LATM, /**< AAC Low overhead Audio Transport Multiplex */
OMX_AUDIO_AACStreamFormatADIF, /**< AAC Audio Data Interchange Format */
OMX_AUDIO_AACStreamFormatMP4FF, /**< AAC inside MPEG-4/ISO File Format */
OMX_AUDIO_AACStreamFormatRAW, /**< AAC Raw Format */
OMX_AUDIO_AACStreamFormatKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_AACStreamFormatVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_AACStreamFormatMax = 0x7FFFFFFF
} OMX_AUDIO_AACSTREAMFORMATTYPE;
/** AAC mode type. Note that the term profile is used with the MPEG-2
* standard and the term object type and profile is used with MPEG-4 */ typedefenum OMX_AUDIO_AACPROFILETYPE{
OMX_AUDIO_AACObjectNull = 0, /**< Null, not used */
OMX_AUDIO_AACObjectMain = 1, /**< AAC Main object */
OMX_AUDIO_AACObjectLC, /**< AAC Low Complexity object (AAC profile) */
OMX_AUDIO_AACObjectSSR, /**< AAC Scalable Sample Rate object */
OMX_AUDIO_AACObjectLTP, /**< AAC Long Term Prediction object */
OMX_AUDIO_AACObjectHE, /**< AAC High Efficiency (object type SBR, HE-AAC profile) */
OMX_AUDIO_AACObjectScalable, /**< AAC Scalable object */
OMX_AUDIO_AACObjectERLC = 17, /**< ER AAC Low Complexity object (Error Resilient AAC-LC) */
OMX_AUDIO_AACObjectLD = 23, /**< AAC Low Delay object (Error Resilient) */
OMX_AUDIO_AACObjectHE_PS = 29, /**< AAC High Efficiency with Parametric Stereo coding (HE-AAC v2, object type PS) */
OMX_AUDIO_AACObjectKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_AACObjectVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_AACObjectMax = 0x7FFFFFFF
} OMX_AUDIO_AACPROFILETYPE;
/** AAC tool usage (for nAACtools in OMX_AUDIO_PARAM_AACPROFILETYPE). *Requiredforencoderconfigurationandoptionalasdecoderinfooutput.
* For MP3, OMX_AUDIO_CHANNELMODETYPE is sufficient. */ #define OMX_AUDIO_AACToolNone 0x00000000 /**< no AAC tools allowed (encoder config) or active (decoder info output) */ #define OMX_AUDIO_AACToolMS 0x00000001 /**< MS: Mid/side joint coding tool allowed or active */ #define OMX_AUDIO_AACToolIS 0x00000002 /**< IS: Intensity stereo tool allowed or active */ #define OMX_AUDIO_AACToolTNS 0x00000004 /**< TNS: Temporal Noise Shaping tool allowed or active */ #define OMX_AUDIO_AACToolPNS 0x00000008 /**< PNS: MPEG-4 Perceptual Noise substitution tool allowed or active */ #define OMX_AUDIO_AACToolLTP 0x00000010 /**< LTP: MPEG-4 Long Term Prediction tool allowed or active */ #define OMX_AUDIO_AACToolAll 0x7FFFFFFF /**< all AAC tools allowed or active (*/
/** MPEG-4 AAC error resilience (ER) tool usage (for nAACERtools in OMX_AUDIO_PARAM_AACPROFILETYPE).
* Required for ER encoder configuration and optional as decoder info output */ #define OMX_AUDIO_AACERNone 0x00000000 /**< no AAC ER tools allowed/used */ #define OMX_AUDIO_AACERVCB11 0x00000001 /**< VCB11: Virtual Code Books for AAC section data */ #define OMX_AUDIO_AACERRVLC 0x00000002 /**< RVLC: Reversible Variable Length Coding */ #define OMX_AUDIO_AACERHCR 0x00000004 /**< HCR: Huffman Codeword Reordering */ #define OMX_AUDIO_AACERAll 0x7FFFFFFF /**< all AAC ER tools allowed/used */
/** AAC params */ typedefstruct OMX_AUDIO_PARAM_AACPROFILETYPE {
OMX_U32 nSize; /**< Size of this structure, in Bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< Port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels */
OMX_U32 nSampleRate; /**< Sampling rate of the source data. Use 0 for
variable or unknown sampling rate. */
OMX_U32 nBitRate; /**< Bit rate of the input data. Use 0 for variable
rate or unknown bit rates */
OMX_U32 nAudioBandWidth; /**< Audio band width (in Hz) to which an encoder should
limit the audio signal. Use 0 to let encoder decide */
OMX_U32 nFrameLength; /**< Frame length (in audio samples per channel) of the codec. Canbe1024or960(AAC-LC),2048(HE-AAC),480or512(AAC-LD).
Use 0 to let encoder decide */
OMX_U32 nAACtools; /**< AAC tool usage */
OMX_U32 nAACERtools; /**< MPEG-4 AAC error resilience tool usage */
OMX_AUDIO_AACPROFILETYPE eAACProfile; /**< AAC profile enumeration */
OMX_AUDIO_AACSTREAMFORMATTYPE eAACStreamFormat; /**< AAC stream format enumeration */
OMX_AUDIO_CHANNELMODETYPE eChannelMode; /**< Channel mode enumeration */
} OMX_AUDIO_PARAM_AACPROFILETYPE;
/** VORBIS params */ typedefstruct OMX_AUDIO_PARAM_VORBISTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels */
OMX_U32 nBitRate; /**< Bit rate of the encoded data data. Use 0 for variable rateorunknownbitrates.Encodingissettothe
bitrate closest to specified value (in bps) */
OMX_U32 nMinBitRate; /**< Sets minimum bitrate (in bps). */
OMX_U32 nMaxBitRate; /**< Sets maximum bitrate (in bps). */
OMX_U32 nSampleRate; /**< Sampling rate of the source data. Use 0 for
variable or unknown sampling rate. */
OMX_U32 nAudioBandWidth; /**< Audio band width (in Hz) to which an encoder should
limit the audio signal. Use 0 to let encoder decide */
OMX_S32 nQuality; /**< Sets encoding quality to n, between -1 (low) and 10 (high). Inthedefaultmodeofoperation,tehqualitylevelis3.
Normal quality range is 0 - 10. */
OMX_BOOL bManaged; /**< Set bitrate management mode. This turns off the normalVBRencoding,butallowshardorsoftbitrate constraintstobeenforcedbytheencoder.Thismodecan beslower,andmayalsobelowerquality.Itis
primarily useful for streaming. */
OMX_BOOL bDownmix; /**< Downmix input from stereo to mono (has no effect on
non-stereo streams). Useful for lower-bitrate encoding. */
} OMX_AUDIO_PARAM_VORBISTYPE;
/** WMA Version */ typedefenum OMX_AUDIO_WMAFORMATTYPE {
OMX_AUDIO_WMAFormatUnused = 0, /**< format unused or unknown */
OMX_AUDIO_WMAFormat7, /**< Windows Media Audio format 7 */
OMX_AUDIO_WMAFormat8, /**< Windows Media Audio format 8 */
OMX_AUDIO_WMAFormat9, /**< Windows Media Audio format 9 */
OMX_AUDIO_WMAFormatKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_WMAFormatVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_WMAFormatMax = 0x7FFFFFFF
} OMX_AUDIO_WMAFORMATTYPE;
/** WMA Profile */ typedefenum OMX_AUDIO_WMAPROFILETYPE {
OMX_AUDIO_WMAProfileUnused = 0, /**< profile unused or unknown */
OMX_AUDIO_WMAProfileL1, /**< Windows Media audio version 9 profile L1 */
OMX_AUDIO_WMAProfileL2, /**< Windows Media audio version 9 profile L2 */
OMX_AUDIO_WMAProfileL3, /**< Windows Media audio version 9 profile L3 */
OMX_AUDIO_WMAProfileKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_WMAProfileVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_WMAProfileMax = 0x7FFFFFFF
} OMX_AUDIO_WMAPROFILETYPE;
/** WMA params */ typedefstruct OMX_AUDIO_PARAM_WMATYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U16 nChannels; /**< Number of channels */
OMX_U32 nBitRate; /**< Bit rate of the input data. Use 0 for variable
rate or unknown bit rates */
OMX_AUDIO_WMAFORMATTYPE eFormat; /**< Version of WMA stream / data */
OMX_AUDIO_WMAPROFILETYPE eProfile; /**< Profile of WMA stream / data */
OMX_U32 nSamplingRate; /**< Sampling rate of the source data */
OMX_U16 nBlockAlign; /**< is the block alignment, or block size, in bytes of the audio codec */
OMX_U16 nEncodeOptions; /**< WMA Type-specific data */
OMX_U32 nSuperBlockAlign; /**< WMA Type-specific data */
} OMX_AUDIO_PARAM_WMATYPE;
/** *RealAudioformat
*/ typedefenum OMX_AUDIO_RAFORMATTYPE {
OMX_AUDIO_RAFormatUnused = 0, /**< Format unused or unknown */
OMX_AUDIO_RA8, /**< RealAudio 8 codec */
OMX_AUDIO_RA9, /**< RealAudio 9 codec */
OMX_AUDIO_RA10_AAC, /**< MPEG-4 AAC codec for bitrates of more than 128kbps */
OMX_AUDIO_RA10_CODEC, /**< RealAudio codec for bitrates less than 128 kbps */
OMX_AUDIO_RA10_LOSSLESS, /**< RealAudio Lossless */
OMX_AUDIO_RA10_MULTICHANNEL, /**< RealAudio Multichannel */
OMX_AUDIO_RA10_VOICE, /**< RealAudio Voice for bitrates below 15 kbps */
OMX_AUDIO_RAFormatKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_RAFormatVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_VIDEO_RAFormatMax = 0x7FFFFFFF
} OMX_AUDIO_RAFORMATTYPE;
/** RA (Real Audio) params */ typedefstruct OMX_AUDIO_PARAM_RATYPE {
OMX_U32 nSize; /**< Size of this structure, in Bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< Port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels */
OMX_U32 nSamplingRate; /**< is the sampling rate of the source data */
OMX_U32 nBitsPerFrame; /**< is the value for bits per frame */
OMX_U32 nSamplePerFrame; /**< is the value for samples per frame */
OMX_U32 nCouplingQuantBits; /**< is the number of coupling quantization bits in the stream */
OMX_U32 nCouplingStartRegion; /**< is the coupling start region in the stream */
OMX_U32 nNumRegions; /**< is the number of regions value */
OMX_AUDIO_RAFORMATTYPE eFormat; /**< is the RealAudio audio format */
} OMX_AUDIO_PARAM_RATYPE;
/** SBC Allocation Method Type */ typedefenum OMX_AUDIO_SBCALLOCMETHODTYPE {
OMX_AUDIO_SBCAllocMethodLoudness, /**< Loudness allocation method */
OMX_AUDIO_SBCAllocMethodSNR, /**< SNR allocation method */
OMX_AUDIO_SBCAllocMethodKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_SBCAllocMethodVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_SBCAllocMethodMax = 0x7FFFFFFF
} OMX_AUDIO_SBCALLOCMETHODTYPE;
/** SBC params */ typedefstruct OMX_AUDIO_PARAM_SBCTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels */
OMX_U32 nBitRate; /**< Bit rate of the input data. Use 0 for variable
rate or unknown bit rates */
OMX_U32 nSampleRate; /**< Sampling rate of the source data. Use 0 for
variable or unknown sampling rate. */
OMX_U32 nBlocks; /**< Number of blocks */
OMX_U32 nSubbands; /**< Number of subbands */
OMX_U32 nBitPool; /**< Bitpool value */
OMX_BOOL bEnableBitrate; /**< Use bitrate value instead of bitpool */
OMX_AUDIO_CHANNELMODETYPE eChannelMode; /**< Channel mode enumeration */
OMX_AUDIO_SBCALLOCMETHODTYPE eSBCAllocType; /**< SBC Allocation method type */
} OMX_AUDIO_PARAM_SBCTYPE;
/** ADPCM stream format parameters */ typedefstruct OMX_AUDIO_PARAM_ADPCMTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_U32 nBitsPerSample; /**< Number of bits in each sample */
OMX_U32 nSampleRate; /**< Sampling rate of the source data. Use 0 for
variable or unknown sampling rate. */
} OMX_AUDIO_PARAM_ADPCMTYPE;
/** G723 - Sample rate must be 8 KHz */ typedefstruct OMX_AUDIO_PARAM_G723TYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_AUDIO_G723RATE eBitRate; /**< todo: Should this be moved to a config? */
OMX_BOOL bHiPassFilter; /**< Enable High Pass Filter */
OMX_BOOL bPostFilter; /**< Enable Post Filter */
} OMX_AUDIO_PARAM_G723TYPE;
/** ITU G726 (ADPCM) rate */ typedefenum OMX_AUDIO_G726MODE {
OMX_AUDIO_G726ModeUnused = 0, /**< G726 Mode unused / unknown */
OMX_AUDIO_G726Mode16, /**< 16 kbps */
OMX_AUDIO_G726Mode24, /**< 24 kbps */
OMX_AUDIO_G726Mode32, /**< 32 kbps, most common rate, also G721 */
OMX_AUDIO_G726Mode40, /**< 40 kbps */
OMX_AUDIO_G726ModeKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_G726ModeVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_G726ModeMax = 0x7FFFFFFF
} OMX_AUDIO_G726MODE;
/** G.726 stream format parameters - must be at 8KHz */ typedefstruct OMX_AUDIO_PARAM_G726TYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_AUDIO_G726MODE eG726Mode;
} OMX_AUDIO_PARAM_G726TYPE;
/** G729 coder type */ typedefenum OMX_AUDIO_G729TYPE {
OMX_AUDIO_G729 = 0, /**< ITU G.729 encoded data */
OMX_AUDIO_G729A, /**< ITU G.729 annex A encoded data */
OMX_AUDIO_G729B, /**< ITU G.729 with annex B encoded data */
OMX_AUDIO_G729AB, /**< ITU G.729 annexes A and B encoded data */
OMX_AUDIO_G729KhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_G729VendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_G729Max = 0x7FFFFFFF
} OMX_AUDIO_G729TYPE;
/** G729 stream format parameters - fixed 6KHz sample rate */ typedefstruct OMX_AUDIO_PARAM_G729TYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_AUDIO_G729TYPE eBitType;
} OMX_AUDIO_PARAM_G729TYPE;
/** AMR Frame format */ typedefenum OMX_AUDIO_AMRFRAMEFORMATTYPE {
OMX_AUDIO_AMRFrameFormatConformance = 0, /**< Frame Format is AMR Conformance
(Standard) Format */
OMX_AUDIO_AMRFrameFormatIF1, /**< Frame Format is AMR Interface
Format 1 */
OMX_AUDIO_AMRFrameFormatIF2, /**< Frame Format is AMR Interface
Format 2*/
OMX_AUDIO_AMRFrameFormatFSF, /**< Frame Format is AMR File Storage
Format */
OMX_AUDIO_AMRFrameFormatRTPPayload, /**< Frame Format is AMR Real-Time
Transport Protocol Payload Format */
OMX_AUDIO_AMRFrameFormatITU, /**< Frame Format is ITU Format (added at Motorola request) */
OMX_AUDIO_AMRFrameFormatKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_AMRFrameFormatVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_AMRFrameFormatMax = 0x7FFFFFFF
} OMX_AUDIO_AMRFRAMEFORMATTYPE;
/** AMR Discontinuous Transmission mode */ typedefenum OMX_AUDIO_AMRDTXMODETYPE {
OMX_AUDIO_AMRDTXModeOff = 0, /**< AMR Discontinuous Transmission Mode is disabled */
OMX_AUDIO_AMRDTXModeOnVAD1, /**< AMR Discontinuous Transmission Mode using
Voice Activity Detector 1 (VAD1) is enabled */
OMX_AUDIO_AMRDTXModeOnVAD2, /**< AMR Discontinuous Transmission Mode using
Voice Activity Detector 2 (VAD2) is enabled */
OMX_AUDIO_AMRDTXModeOnAuto, /**< The codec will automatically select between
Off, VAD1 or VAD2 modes */
OMX_AUDIO_AMRDTXasEFR, /**< DTX as EFR instead of AMR standard (3GPP 26.101, frame type =8,9,10) */
OMX_AUDIO_AMRDTXModeKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_AMRDTXModeVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_AMRDTXModeMax = 0x7FFFFFFF
} OMX_AUDIO_AMRDTXMODETYPE;
/** AMR params */ typedefstruct OMX_AUDIO_PARAM_AMRTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels */
OMX_U32 nBitRate; /**< Bit rate read only field */
OMX_AUDIO_AMRBANDMODETYPE eAMRBandMode; /**< AMR Band Mode enumeration */
OMX_AUDIO_AMRDTXMODETYPE eAMRDTXMode; /**< AMR DTX Mode enumeration */
OMX_AUDIO_AMRFRAMEFORMATTYPE eAMRFrameFormat; /**< AMR frame format enumeration */
} OMX_AUDIO_PARAM_AMRTYPE;
/** GSM_FR (ETSI 06.10, 3GPP 46.010) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_GSMFRTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_BOOL bHiPassFilter; /**< Enable High Pass Filter */
} OMX_AUDIO_PARAM_GSMFRTYPE;
/** GSM-HR (ETSI 06.20, 3GPP 46.020) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_GSMHRTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_BOOL bHiPassFilter; /**< Enable High Pass Filter */
} OMX_AUDIO_PARAM_GSMHRTYPE;
/** GSM-EFR (ETSI 06.60, 3GPP 46.060) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_GSMEFRTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_BOOL bHiPassFilter; /**< Enable High Pass Filter */
} OMX_AUDIO_PARAM_GSMEFRTYPE;
/** TDMA FR (TIA/EIA-136-420, VSELP 7.95kbps coder) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_TDMAFRTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_BOOL bHiPassFilter; /**< Enable High Pass Filter */
} OMX_AUDIO_PARAM_TDMAFRTYPE;
/** TDMA EFR (TIA/EIA-136-410, ACELP 7.4kbps coder) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_TDMAEFRTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_BOOL bHiPassFilter; /**< Enable High Pass Filter */
} OMX_AUDIO_PARAM_TDMAEFRTYPE;
/** PDC FR ( RCR-27, VSELP 6.7kbps coder) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_PDCFRTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_BOOL bHiPassFilter; /**< Enable High Pass Filter */
} OMX_AUDIO_PARAM_PDCFRTYPE;
/** PDC EFR ( RCR-27, ACELP 6.7kbps coder) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_PDCEFRTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_BOOL bHiPassFilter; /**< Enable High Pass Filter */
} OMX_AUDIO_PARAM_PDCEFRTYPE;
/** PDC HR ( RCR-27, PSI-CELP 3.45kbps coder) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_PDCHRTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_BOOL bDTX; /**< Enable Discontinuous Transmisssion */
OMX_BOOL bHiPassFilter; /**< Enable High Pass Filter */
} OMX_AUDIO_PARAM_PDCHRTYPE;
/** CDMA Rate types */ typedefenum OMX_AUDIO_CDMARATETYPE {
OMX_AUDIO_CDMARateBlank = 0, /**< CDMA encoded frame is blank */
OMX_AUDIO_CDMARateFull, /**< CDMA encoded frame in full rate */
OMX_AUDIO_CDMARateHalf, /**< CDMA encoded frame in half rate */
OMX_AUDIO_CDMARateQuarter, /**< CDMA encoded frame in quarter rate */
OMX_AUDIO_CDMARateEighth, /**< CDMA encoded frame in eighth rate (DTX)*/
OMX_AUDIO_CDMARateErasure, /**< CDMA erasure frame */
OMX_AUDIO_CDMARateKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_CDMARateVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_CDMARateMax = 0x7FFFFFFF
} OMX_AUDIO_CDMARATETYPE;
/** QCELP8 (TIA/EIA-96, up to 8kbps coder) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_QCELP8TYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_U32 nBitRate; /**< Bit rate of the input data. Use 0 for variable
rate or unknown bit rates */
OMX_AUDIO_CDMARATETYPE eCDMARate; /**< Frame rate */
OMX_U32 nMinBitRate; /**< minmal rate for the encoder = 1,2,3,4, default = 1 */
OMX_U32 nMaxBitRate; /**< maximal rate for the encoder = 1,2,3,4, default = 4 */
} OMX_AUDIO_PARAM_QCELP8TYPE;
/** QCELP13 ( CDMA, EIA/TIA-733, 13.3kbps coder) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_QCELP13TYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_AUDIO_CDMARATETYPE eCDMARate; /**< Frame rate */
OMX_U32 nMinBitRate; /**< minmal rate for the encoder = 1,2,3,4, default = 1 */
OMX_U32 nMaxBitRate; /**< maximal rate for the encoder = 1,2,3,4, default = 4 */
} OMX_AUDIO_PARAM_QCELP13TYPE;
/** EVRC ( CDMA, EIA/TIA-127, RCELP up to 8.55kbps coder) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_EVRCTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_AUDIO_CDMARATETYPE eCDMARate; /**< actual Frame rate */
OMX_BOOL bRATE_REDUCon; /**< RATE_REDUCtion is requested for this frame */
OMX_U32 nMinBitRate; /**< minmal rate for the encoder = 1,2,3,4, default = 1 */
OMX_U32 nMaxBitRate; /**< maximal rate for the encoder = 1,2,3,4, default = 4 */
OMX_BOOL bHiPassFilter; /**< Enable encoder's High Pass Filter */
OMX_BOOL bNoiseSuppressor; /**< Enable encoder's noise suppressor pre-processing */
OMX_BOOL bPostFilter; /**< Enable decoder's post Filter */
} OMX_AUDIO_PARAM_EVRCTYPE;
/** SMV ( up to 8.55kbps coder) stream format parameters */ typedefstruct OMX_AUDIO_PARAM_SMVTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannels; /**< Number of channels in the data stream (not necessarilythesameasthenumberofchannels
to be rendered. */
OMX_AUDIO_CDMARATETYPE eCDMARate; /**< Frame rate */
OMX_BOOL bRATE_REDUCon; /**< RATE_REDUCtion is requested for this frame */
OMX_U32 nMinBitRate; /**< minmal rate for the encoder = 1,2,3,4, default = 1 ??*/
OMX_U32 nMaxBitRate; /**< maximal rate for the encoder = 1,2,3,4, default = 4 ??*/
OMX_BOOL bHiPassFilter; /**< Enable encoder's High Pass Filter ??*/
OMX_BOOL bNoiseSuppressor; /**< Enable encoder's noise suppressor pre-processing */
OMX_BOOL bPostFilter; /**< Enable decoder's post Filter ??*/
} OMX_AUDIO_PARAM_SMVTYPE;
/** MIDI Format *@ingroupmidi
*/ typedefenum OMX_AUDIO_MIDIFORMATTYPE
{
OMX_AUDIO_MIDIFormatUnknown = 0, /**< MIDI Format unknown or don't care */
OMX_AUDIO_MIDIFormatSMF0, /**< Standard MIDI File Type 0 */
OMX_AUDIO_MIDIFormatSMF1, /**< Standard MIDI File Type 1 */
OMX_AUDIO_MIDIFormatSMF2, /**< Standard MIDI File Type 2 */
OMX_AUDIO_MIDIFormatSPMIDI, /**< SP-MIDI */
OMX_AUDIO_MIDIFormatXMF0, /**< eXtensible Music Format type 0 */
OMX_AUDIO_MIDIFormatXMF1, /**< eXtensible Music Format type 1 */
OMX_AUDIO_MIDIFormatMobileXMF, /**< Mobile XMF (eXtensible Music Format type 2) */
OMX_AUDIO_MIDIFormatKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_MIDIFormatVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_MIDIFormatMax = 0x7FFFFFFF
} OMX_AUDIO_MIDIFORMATTYPE;
/** MIDI params *@ingroupmidi
*/ typedefstruct OMX_AUDIO_PARAM_MIDITYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nFileSize; /**< size of the MIDI file in bytes, where the entire MIDIfilepassedin,otherwiseif0x0,theMIDIdata ismergedandstreamed(insteadofpassedasan
entire MIDI file) */
OMX_BU32 sMaxPolyphony; /**< Specifies the maximum simultaneous polyphonic voices.Avalueofzeroindicatesthatthedefault
polyphony of the device is used */
OMX_BOOL bLoadDefaultSound; /**< Whether to load default sound
bank at initialization */
OMX_AUDIO_MIDIFORMATTYPE eMidiFormat; /**< Version of the MIDI file */
} OMX_AUDIO_PARAM_MIDITYPE;
/** Type of the MIDI sound bank *@ingroupmidi
*/ typedefenum OMX_AUDIO_MIDISOUNDBANKTYPE {
OMX_AUDIO_MIDISoundBankUnused = 0, /**< unused/unknown soundbank type */
OMX_AUDIO_MIDISoundBankDLS1, /**< DLS version 1 */
OMX_AUDIO_MIDISoundBankDLS2, /**< DLS version 2 */
OMX_AUDIO_MIDISoundBankMobileDLSBase, /**< Mobile DLS, using the base functionality */
OMX_AUDIO_MIDISoundBankMobileDLSPlusOptions, /**< Mobile DLS, using the specification-defined optional feature set */
OMX_AUDIO_MIDISoundBankKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_MIDISoundBankVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_MIDISoundBankMax = 0x7FFFFFFF
} OMX_AUDIO_MIDISOUNDBANKTYPE;
/** Bank Layout describes how bank MSB & LSB are used in the DLS instrument definitions sound bank *@ingroupmidi
*/ typedefenum OMX_AUDIO_MIDISOUNDBANKLAYOUTTYPE {
OMX_AUDIO_MIDISoundBankLayoutUnused = 0, /**< unused/unknown soundbank type */
OMX_AUDIO_MIDISoundBankLayoutGM, /**< GS layout (based on bank MSB 0x00) */
OMX_AUDIO_MIDISoundBankLayoutGM2, /**< General MIDI 2 layout (using MSB 0x78/0x79, LSB 0x00) */
OMX_AUDIO_MIDISoundBankLayoutUser, /**< Does not conform to any bank numbering standards */
OMX_AUDIO_MIDISoundBankLayoutKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_MIDISoundBankLayoutVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_MIDISoundBankLayoutMax = 0x7FFFFFFF
} OMX_AUDIO_MIDISOUNDBANKLAYOUTTYPE;
/** MIDI params to load/unload user soundbank *@ingroupmidi
*/ typedefstruct OMX_AUDIO_PARAM_MIDILOADUSERSOUNDTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nDLSIndex; /**< DLS file index to be loaded */
OMX_U32 nDLSSize; /**< Size in bytes */
OMX_PTR pDLSData; /**< Pointer to DLS file data */
OMX_AUDIO_MIDISOUNDBANKTYPE eMidiSoundBank; /**< Midi sound bank type enumeration */
OMX_AUDIO_MIDISOUNDBANKLAYOUTTYPE eMidiSoundBankLayout; /**< Midi sound bank layout enumeration */
} OMX_AUDIO_PARAM_MIDILOADUSERSOUNDTYPE;
/** Structure for Live MIDI events and MIP messages. *(MIP=MaximumInstantaneousPolyphony;partoftheSP-MIDIstandard.) *@ingroupmidi
*/ typedefstruct OMX_AUDIO_CONFIG_MIDIIMMEDIATEEVENTTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< Port that this structure applies to */
OMX_U32 nMidiEventSize; /**< Size of immediate MIDI events or MIP message in bytes */
OMX_U8 nMidiEvents[1]; /**< MIDI event array to be rendered immediately, or an arrayfortheMIPmessagebuffer,wherethesizeis
indicated by nMidiEventSize */
} OMX_AUDIO_CONFIG_MIDIIMMEDIATEEVENTTYPE;
/** MIDI sound bank/ program pair in a given channel *@ingroupmidi
*/ typedefstruct OMX_AUDIO_CONFIG_MIDISOUNDBANKPROGRAMTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< Port that this structure applies to */
OMX_U32 nChannel; /**< Valid channel values range from 1 to 16 */
OMX_U16 nIDProgram; /**< Valid program ID range is 1 to 128 */
OMX_U16 nIDSoundBank; /**< Sound bank ID */
OMX_U32 nUserSoundBankIndex;/**< User soundbank index, easier to access soundbanks
by index if multiple banks are present */
} OMX_AUDIO_CONFIG_MIDISOUNDBANKPROGRAMTYPE;
/** MIDI control *@ingroupmidi
*/ typedefstruct OMX_AUDIO_CONFIG_MIDICONTROLTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BS32 sPitchTransposition; /**< Pitch transposition in semitones, stored as Q22.10
format based on JAVA MMAPI (JSR-135) requirement */
OMX_BU32 sPlayBackRate; /**< Relative playback rate, stored as Q14.17 fixed-point
number based on JSR-135 requirement */
OMX_BU32 sTempo ; /**< Tempo in beats per minute (BPM), stored as Q22.10
fixed-point number based on JSR-135 requirement */
OMX_U32 nMaxPolyphony; /**< Specifies the maximum simultaneous polyphonic voices.Avalueofzeroindicatesthatthedefault
polyphony of the device is used */
OMX_U32 nNumRepeat; /**< Number of times to repeat playback */
OMX_U32 nStopTime; /**< Time in milliseconds to indicate when playback
will stop automatically. Set to zero if not used */
OMX_U16 nChannelMuteMask; /**< 16 bit mask for channel mute status */
OMX_U16 nChannelSoloMask; /**< 16 bit mask for channel solo status */
OMX_U32 nTrack0031MuteMask; /**< 32 bit mask for track mute status. Note: This is for tracks 0-31 */
OMX_U32 nTrack3263MuteMask; /**< 32 bit mask for track mute status. Note: This is for tracks 32-63 */
OMX_U32 nTrack0031SoloMask; /**< 32 bit mask for track solo status. Note: This is for tracks 0-31 */
OMX_U32 nTrack3263SoloMask; /**< 32 bit mask for track solo status. Note: This is for tracks 32-63 */
} OMX_AUDIO_CONFIG_MIDICONTROLTYPE;
/** MIDI Playback States *@ingroupmidi
*/ typedefenum OMX_AUDIO_MIDIPLAYBACKSTATETYPE {
OMX_AUDIO_MIDIPlayBackStateUnknown = 0, /**< Unknown state or state does not map to
other defined states */
OMX_AUDIO_MIDIPlayBackStateClosedEngaged, /**< No MIDI resource is currently open. TheMIDIengineiscurrentlyprocessing
MIDI events. */
OMX_AUDIO_MIDIPlayBackStateParsing, /**< A MIDI resource is open and is being primed.TheMIDIengineiscurrently
processing MIDI events. */
OMX_AUDIO_MIDIPlayBackStateOpenEngaged, /**< A MIDI resource is open and primed but notplaying.TheMIDIengineiscurrently processingMIDIevents.Thetransitionto thisstateisonlypossiblefromthe OMX_AUDIO_MIDIPlayBackStatePlayingstate, whenthe'playbackhead'reachestheend ofmediadataortheplaybackstopsdue
to stop time set.*/
OMX_AUDIO_MIDIPlayBackStatePlaying, /**< A MIDI resource is open and currently playing.TheMIDIengineiscurrently
processing MIDI events.*/
OMX_AUDIO_MIDIPlayBackStatePlayingPartially, /**< Best-effort playback due to SP-MIDI/DLS
resource constraints */
OMX_AUDIO_MIDIPlayBackStatePlayingSilently, /**< Due to system resource constraints and SP-MIDIcontentconstraints,thereis noaudibleMIDIcontentduringplayback currently.Thesituationmaychangeif
resources are freed later.*/
OMX_AUDIO_MIDIPlayBackStateKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_MIDIPlayBackStateVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_MIDIPlayBackStateMax = 0x7FFFFFFF
} OMX_AUDIO_MIDIPLAYBACKSTATETYPE;
/** MIDI status *@ingroupmidi
*/ typedefstruct OMX_AUDIO_CONFIG_MIDISTATUSTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U16 nNumTracks; /**< Number of MIDI tracks in the file, read only field. NOTE:Maynotreturnameaningfulvalueuntiltheentire
file is parsed and buffered. */
OMX_U32 nDuration; /**< The length of the currently open MIDI resource inmilliseconds.NOTE:Maynotreturnameaningfulvalue
until the entire file is parsed and buffered. */
OMX_U32 nPosition; /**< Current Position of the MIDI resource being played
in milliseconds */
OMX_BOOL bVibra; /**< Does Vibra track exist? NOTE: May not return a meaningful
value until the entire file is parsed and buffered. */
OMX_U32 nNumMetaEvents; /**< Total number of MIDI Meta Events in the currently openMIDIresource.NOTE:Maynotreturnameaningfulvalue
until the entire file is parsed and buffered. */
OMX_U32 nNumActiveVoices; /**< Number of active voices in the currently playing MIDIresource.NOTE:Maynotreturnameaningfulvalueuntil
the entire file is parsed and buffered. */
OMX_AUDIO_MIDIPLAYBACKSTATETYPE eMIDIPlayBackState; /**< MIDI playback state enumeration, read only field */
} OMX_AUDIO_CONFIG_MIDISTATUSTYPE;
/** MIDI Meta Event structure one per Meta Event. *MIDIMetaEventsarelikeaudiometadata,exceptthattheyareinterspersed *withtheMIDIcontentthroughoutthefileandarenotlocalizedintheheader. *Assuch,itisnecessarytoretrieveinformationabouttheseMetaEventsfrom *theengine,asitencounterstheseMetaEventswithintheMIDIcontent. *Forexample,SMFfilescanhaveupto14typesofMIDIMetaEvents(copyright, *author,defaulttempo,etc.)scatteredthroughoutthefile. *@ingroupmidi
*/ typedefstruct OMX_AUDIO_CONFIG_MIDIMETAEVENTTYPE{
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nIndex; /**< Index of Meta Event */
OMX_U8 nMetaEventType; /**< Meta Event Type, 7bits (i.e. 0 - 127) */
OMX_U32 nMetaEventSize; /**< size of the Meta Event in bytes */
OMX_U32 nTrack; /**< track number for the meta event */
OMX_U32 nPosition; /**< Position of the meta-event in milliseconds */
} OMX_AUDIO_CONFIG_MIDIMETAEVENTTYPE;
/** MIDI Meta Event Data structure - one per Meta Event. *@ingroupmidi
*/ typedefstruct OMX_AUDIO_CONFIG_MIDIMETAEVENTDATATYPE{
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nIndex; /**< Index of Meta Event */
OMX_U32 nMetaEventSize; /**< size of the Meta Event in bytes */
OMX_U8 nData[1]; /**< array of one or more bytes of meta data
as indicated by the nMetaEventSize field */
} OMX_AUDIO_CONFIG__MIDIMETAEVENTDATATYPE;
/** Audio Volume adjustment for a port */ typedefstruct OMX_AUDIO_CONFIG_VOLUMETYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< Port index indicating which port to set.Selecttheinputporttoset justthatport'svolume.Selectthe outputporttoadjustthemaster
volume. */
OMX_BOOL bLinear; /**< Is the volume to be set in linear (0.100)
or logarithmic scale (mB) */
OMX_BS32 sVolume; /**< Volume linear setting in the 0..100 range, OR Volumelogarithmicsettingforthisport.Thevalues forvolumeareinmB(millibels=1/100dB)relative toagainof1(e.g.theoutputisthesameasthe inputlevel).ValuesareinmBfromnMax (maximumvolume)tonMinmB(typicallynegative). Sincethevolumeis"voltage" andnota"power",ittakesasettingof -600mBtodecreasethevolumeby1/2.If acomponentcannotaccuratelysetthe volumetotherequestedvalue,itmust setthevolumetotheclosestvalueBELOW therequestedvalue.Whengettingthe volumesetting,thecurrentactualvolume
must be returned. */
} OMX_AUDIO_CONFIG_VOLUMETYPE;
/** Audio Volume adjustment for a channel */ typedefstruct OMX_AUDIO_CONFIG_CHANNELVOLUMETYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< Port index indicating which port to set.Selecttheinputporttoset justthatport'svolume.Selectthe outputporttoadjustthemaster
volume. */
OMX_U32 nChannel; /**< channel to select from 0 to N-1, usingOMX_ALLtoapplyvolumesettings
to all channels */
OMX_BOOL bLinear; /**< Is the volume to be set in linear (0.100) or
logarithmic scale (mB) */
OMX_BS32 sVolume; /**< Volume linear setting in the 0..100 range, OR Volumelogarithmicsettingforthisport. ThevaluesforvolumeareinmB (millibels=1/100dB)relativetoagain of1(e.g.theoutputisthesameasthe inputlevel).ValuesareinmBfromnMax (maximumvolume)tonMinmB(typicallynegative). Sincethevolumeis"voltage" andnota"power",ittakesasettingof -600mBtodecreasethevolumeby1/2.If acomponentcannotaccuratelysetthe volumetotherequestedvalue,itmust setthevolumetotheclosestvalueBELOW therequestedvalue.Whengettingthe volumesetting,thecurrentactualvolume
must be returned. */
OMX_BOOL bIsMIDI; /**< TRUE if nChannel refers to a MIDI channel,
FALSE otherwise */
} OMX_AUDIO_CONFIG_CHANNELVOLUMETYPE;
/** Audio balance setting */ typedefstruct OMX_AUDIO_CONFIG_BALANCETYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< Port index indicating which port to set.Selecttheinputporttoset justthatport'sbalance.Selectthe outputporttoadjustthemaster
balance. */
OMX_S32 nBalance; /**< balance setting for this port (-100to100,where-100indicates
all left, and no right */
} OMX_AUDIO_CONFIG_BALANCETYPE;
/** Audio Port mute */ typedefstruct OMX_AUDIO_CONFIG_MUTETYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< Port index indicating which port to set.Selecttheinputporttoset justthatport'smute.Selectthe outputporttoadjustthemaster
mute. */
OMX_BOOL bMute; /**< Mute setting for this port */
} OMX_AUDIO_CONFIG_MUTETYPE;
/** Audio Channel mute */ typedefstruct OMX_AUDIO_CONFIG_CHANNELMUTETYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_U32 nChannel; /**< channel to select from 0 to N-1, usingOMX_ALLtoapplymutesettings
to all channels */
OMX_BOOL bMute; /**< Mute setting for this channel */
OMX_BOOL bIsMIDI; /**< TRUE if nChannel refers to a MIDI channel,
FALSE otherwise */
} OMX_AUDIO_CONFIG_CHANNELMUTETYPE;
/** Enable / Disable for loudness control, which boosts bass and to a *smallerextenthighendfrequenciestocompensateforhearing *abilityattheextremeendsoftheaudiospectrum
*/ typedefstruct OMX_AUDIO_CONFIG_LOUDNESSTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bLoudness; /**< Enable/disable for loudness */
} OMX_AUDIO_CONFIG_LOUDNESSTYPE;
/** Enable / Disable for bass, which controls low frequencies
*/ typedefstruct OMX_AUDIO_CONFIG_BASSTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bEnable; /**< Enable/disable for bass control */
OMX_S32 nBass; /**< bass setting for the port, as a continuousvaluefrom-100to100
(0 means no change in bass level)*/
} OMX_AUDIO_CONFIG_BASSTYPE;
/** Enable / Disable for treble, which controls high frequencies tones
*/ typedefstruct OMX_AUDIO_CONFIG_TREBLETYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bEnable; /**< Enable/disable for treble control */
OMX_S32 nTreble; /**< treble setting for the port, as a continuousvaluefrom-100to100
(0 means no change in treble level) */
} OMX_AUDIO_CONFIG_TREBLETYPE;
/** An equalizer is typically used for two reasons: to compensate for an *sub-optimalfrequencyresponseofasystemtomakeitsoundmorenatural *ortocreateintentionallysomeunnaturalcoloringtothesoundtocreate *aneffect. *@ingroupeffects
*/ typedefstruct OMX_AUDIO_CONFIG_EQUALIZERTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bEnable; /**< Enable/disable for equalizer */
OMX_BU32 sBandIndex; /**< Band number to be set. Upper Limit is
N-1, where N is the number of bands, lower limit is 0 */
OMX_BU32 sCenterFreq; /**< Center frequecies in Hz. This is a readonlyelementandisusedtodetermine thelower,centerandupperfrequencyof
this band. */
OMX_BS32 sBandLevel; /**< band level in millibels */
} OMX_AUDIO_CONFIG_EQUALIZERTYPE;
/** Stereo widening mode type *@ingroupeffects
*/ typedefenum OMX_AUDIO_STEREOWIDENINGTYPE {
OMX_AUDIO_StereoWideningHeadphones, /**< Stereo widening for loudspeakers */
OMX_AUDIO_StereoWideningLoudspeakers, /**< Stereo widening for closely spaced loudspeakers */
OMX_AUDIO_StereoWideningKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_StereoWideningVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_StereoWideningMax = 0x7FFFFFFF
} OMX_AUDIO_STEREOWIDENINGTYPE;
/** Control for stereo widening, which is a special 2-channel *caseoftheaudiovirtualizereffect.Forexample,for5.1-channel *output,ittranslatestovirtualsurroundsound. *@ingroupeffects
*/ typedefstruct OMX_AUDIO_CONFIG_STEREOWIDENINGTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bEnable; /**< Enable/disable for stereo widening control */
OMX_AUDIO_STEREOWIDENINGTYPE eWideningType; /**< Stereo widening algorithm type */
OMX_U32 nStereoWidening; /**< stereo widening setting for the port,
as a continuous value from 0 to 100 */
} OMX_AUDIO_CONFIG_STEREOWIDENINGTYPE;
/** The chorus effect (or ``choralizer'') is any signal processor which makes *onesoundsource(suchasavoice)soundlikemanysuchsourcessinging *(orplaying)inunison.Sinceperformanceinunisonisneverexact,chorus *effectssimulatethisbymakingindependentlymodifiedcopiesoftheinput *signal.Modificationsmayinclude(1)delay,(2)frequencyshift,and *(3)amplitudemodulation. *@ingroupeffects
*/ typedefstruct OMX_AUDIO_CONFIG_CHORUSTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bEnable; /**< Enable/disable for chorus */
OMX_BU32 sDelay; /**< average delay in milliseconds */
OMX_BU32 sModulationRate; /**< rate of modulation in millihertz */
OMX_U32 nModulationDepth; /**< depth of modulation as a percentage of
delay (i.e. 0 to 100) */
OMX_BU32 nFeedback; /**< Feedback from chorus output to input in percentage */
} OMX_AUDIO_CONFIG_CHORUSTYPE;
/** Reverberation is part of the reflected sound that follows the early *reflections.Inatypicalroom,thisconsistsofadensesuccessionof *echoeswhoseenergydecaysexponentially.Thereverberationeffectstructure *asdefinedhereincludesboth(early)reflectionsaswellas(late)reverberations. *@ingroupeffects
*/ typedefstruct OMX_AUDIO_CONFIG_REVERBERATIONTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bEnable; /**< Enable/disable for reverberation control */
OMX_BS32 sRoomLevel; /**< Intensity level for the whole room effect (i.e.bothearlyreflectionsandlate
reverberation) in millibels */
OMX_BS32 sRoomHighFreqLevel; /**< Attenuation at high frequencies relativetotheintensityatlow
frequencies in millibels */
OMX_BS32 sReflectionsLevel; /**< Intensity level of early reflections
(relative to room value), in millibels */
OMX_BU32 sReflectionsDelay; /**< Delay time of the first reflection relative
to the direct path, in milliseconds */
OMX_BS32 sReverbLevel; /**< Intensity level of late reverberation
relative to room level, in millibels */
OMX_BU32 sReverbDelay; /**< Time delay from the first early reflection tothebeginningofthelatereverberation
section, in milliseconds */
OMX_BU32 sDecayTime; /**< Late reverberation decay time at low
frequencies, in milliseconds */
OMX_BU32 nDecayHighFreqRatio; /**< Ratio of high frequency decay time relative
to low frequency decay time in percent */
OMX_U32 nDensity; /**< Modal density in the late reverberation decay,
in percent (i.e. 0 - 100) */
OMX_U32 nDiffusion; /**< Echo density in the late reverberation decay,
in percent (i.e. 0 - 100) */
OMX_BU32 sReferenceHighFreq; /**< Reference high frequency in Hertz. This is thefrequencyusedasthereferenceforall
the high-frequency settings above */
} OMX_AUDIO_CONFIG_REVERBERATIONTYPE;
/** Possible settings for the Echo Cancelation structure to use *@ingroupeffects
*/ typedefenum OMX_AUDIO_ECHOCANTYPE {
OMX_AUDIO_EchoCanOff = 0, /**< Echo Cancellation is disabled */
OMX_AUDIO_EchoCanNormal, /**< Echo Cancellation normal operation -
echo from plastics and face */
OMX_AUDIO_EchoCanHFree, /**< Echo Cancellation optimized for
Hands Free operation */
OMX_AUDIO_EchoCanCarKit, /**< Echo Cancellation optimized for
Car Kit (longer echo) */
OMX_AUDIO_EchoCanKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
OMX_AUDIO_EchoCanVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
OMX_AUDIO_EchoCanMax = 0x7FFFFFFF
} OMX_AUDIO_ECHOCANTYPE;
/** Enable / Disable for echo cancelation, which removes undesired echo's *fromtheaudio *@ingroupeffects
*/ typedefstruct OMX_AUDIO_CONFIG_ECHOCANCELATIONTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_AUDIO_ECHOCANTYPE eEchoCancelation; /**< Echo cancelation settings */
} OMX_AUDIO_CONFIG_ECHOCANCELATIONTYPE;
/** Enable / Disable for noise reduction, which undesired noise from *theaudio *@ingroupeffects
*/ typedefstruct OMX_AUDIO_CONFIG_NOISEREDUCTIONTYPE {
OMX_U32 nSize; /**< size of the structure in bytes */
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
OMX_U32 nPortIndex; /**< port that this structure applies to */
OMX_BOOL bNoiseReduction; /**< Enable/disable for noise reduction */
} OMX_AUDIO_CONFIG_NOISEREDUCTIONTYPE;
/** @} */
#ifdef __cplusplus
} #endif/* __cplusplus */
#endif /* File EOF */
Messung V0.5 in Prozent
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.29Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-08-25)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.