Codec Engine Application Programming Interface (API): Codec Engine API Reference

  • Main Page
  • Modules
  • Data Structures
  • Files
  • Directories
  • Related Pages

Codec Engine API Reference

ce-q18

Modules

The Codec Engine is partitioned into several components:

  • The Codec Engine Runtime (CERuntime_* and Engine_*) - Provides codec-independent services.
  • VISA - Alg-independent user APIs (VISA_*) - A set of services that can be used on algorithms of any class.
  • Codec Engine Server Interface (Server_*) - Provides an interface to Servers containing remote algorithms.
  • The latest VISA APIs - Providing codec-specific interfaces, reflecting the XDM interfaces for the following classes:
    • Video
      • Encoding
        • VIDENC2 - Video Encoder Interface (preferred)
        • VIDENC1 - Video Encoder Interface (supported)
      • Decoding
        • VIDDEC3 - Video Decoder Interface (preferred)
        • VIDDEC2 - Video Decoder Interface (supported)
    • Imaging
      • IMGDEC1 - Image Decoder Interface
      • IMGENC1 - Image Encoder Interface
    • Speech
      • SPHDEC1 - Speech Decoder Interface
      • SPHENC1 - Speech Encoder Interface
    • Audio
      • AUDDEC1 - Audio Decoder Interface
      • AUDENC1 - Audio Encoder Interface
    • Video Trancoding
      • VIDTRANSCODE - Video Transcoder Interface
  • Older VISA APIs continue to be supported, but to align with the XDM 0.9 roadmap, they are deprecated in this release. These interfaces are comprised of the following:
    • Video
      • VIDDEC1 - Video Decoder Interface
      • VIDDEC - Video Decoder Interface
      • VIDENC - Video Encoder Interface
    • Imaging
      • IMGDEC - Image Decoder Interface
      • IMGENC - Image Encoder Interface
    • Speech
      • SPHDEC - Speech Decoder Interface
      • SPHENC - Speech Encoder Interface
    • Audio
      • AUDDEC - Audio Decoder Interface
      • AUDENC - Audio Encoder Interface
  • Also, this release includes Beta support for the following XDM interfaces:
    • VIDANALYTICS - Video Analytics Interface
    • UNIVERSAL - Universal Algorithm Interface

Additionally, there are several utility modules provided:

  • Memory - OS Independent Memory Interface
Copyright 2011, Texas Instruments Incorporated


Codec Engine Application Programming Interface (API): Remote Command Message Overview

  • Files
  • Directories
  • Related Pages

Remote Command Message Overview

Modules

Remote Command Message - message based remote function execution

The Remote Command Message (RCM) package provides a client/server implementation for executing functions on a remote processor. The package contains the following modules.

  • RcmClient - Client Module
  • RcmServer - Server Module

This package provides modules for a client/server based implementation for executing functions on a remote processor. The IPC layer is based on messages. The application uses the RcmClient module to allocate a message, specify the remote function and its arguments, and then send the message to the server for execution. When the message returns, it contains the remote function's return values. The server is typically on a remote processor, but local server instances (on the same processor as the client) are also supported.

The following image provides an overview of a typical use case. An application running on the local cpu creates an RcmClient instance. Using the RcmClient instance handle, the application has access to all the necessary operations for executing a message on the remote server. The application must fill in the message with the remote function index, as supplied by the server, and the context needed by the remote function to execute. For higher level operations such as RPC, see the link ti.sdo.rpc.gen package which provides support for generating the stub and skeleton functions.

Diagram 1: RCM Overview

The RcmClient module is used to create instance objects. Each instance can send messages only to the server specified at create time. You create an instance for each server you want to send messages to. At create time the heap must be specified. The heap is used by the instance for allocating messages.

There are four types of execute commands:

  • synchronous blocking
  • synchronous non-blocking
  • synchronous deferred
  • asynchronous non-blocking

Here is an overview of the exec commands. See the RcmClient module for more details on each function.

  • RcmClient_exec() - synchronous blocking This function sends a message to the server and waits for the server to execute the message and to send the return message back to the client.
  • RcmClient_execNoWait() - synchronous non-blocking This function sends a message to the server but does not wait for the return message. Control returns to the caller as soon as the message has been delivered to the underlying transport. The server will execute the message and send the return message back to the client where it is placed in a mailbox. The client collects the return message with a call to RcmClient_waitUntilDone() which is a blocking call. This is useful when the client has more work to do while the remote function is executing. It is also efficient because it does not require a local callback thread.
  • RcmClient_execDpc() - synchronous deferred This function sends a message to the server and waits for the return message. When the server receives the message, it does not immediately execute it. Instead, it copies the message context into a local buffer and sends the message back to the client. Only after the message has been sent to the client, does the server execute the function. This is useful for server shutdown. This allows the client to regain ownership of the message and to return it to the heap and allows the server to shutdown without owning any resources allocated by the client.
  • RcmClient_execAsync() - asynchronous non-blocking This function sends a message to the server but does not wait for the return message. Control returns to the caller as in the synchronous non-blocking case above. The server will execute the message and send the return message back to the client for delivery to a callback thread. When the return message arrives, the callback thread will invoke an application callback to notify the application that the return message has arrived. This is the only asynchronous part of the sequence as the application will be preempted by the callback thread. It is the application's responsibility to periodically monitor a flag (set by the callback) to complete the message delivery.

RTSC Configuration

When using XDCtools to build your executable, use the following module to define the build time configuration options.

RCM Settings Module


Codec Engine Application Programming Interface (API):

disclaimer.html
IMPORTANT NOTICE
Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements, improvements, and other changes to its products and services at any time and to discontinue any product or service without notice. Customers should obtain the latest relevant information before placing orders and should verify that such information is current and complete. All products are sold subject to TI's terms and conditions of sale supplied at the time of order acknowledgment.
TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI's standard warranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where mandated by government requirements, testing of all parameters of each product is not necessarily performed.
TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products and applications using TI components. To minimize the risks associated with customer products and applications, customers should provide adequate design and operating safeguards.
TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, mask work right, or other TI intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information published by TI regarding third party products or services does not constitute a license from TI to use such products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual property of that third party, or a license from TI under the patents or other intellectual property of TI.
Reproduction of information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied by all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an unfair and deceptive business practice. TI is not responsible or liable for such altered documentation.
Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or service voids all express and any implied warranties for the associated TI product or service and is an unfair and deceptive business practice. TI is not responsible or liable for any such statements.
Mailing Address:
Texas Instruments
Post Office Box 655303
Dallas, Texas 75265


Codec Engine Application Programming Interface (API): Todo List

Todo List

Global Engine_DllAlgDesc::codecClassConfig
Figure out what this is.

Global Engine_DllAlgDesc::uuid
Figure out what should be put for uuid.

Global ISPEECH1_G722_BITRATE_RATE0
Need clearer description

Global ISPEECH1_G722_BITRATE_RATE1
Need clearer description

Global ISPEECH1_G722_BITRATE_RATE2
Need clearer description

Global ISPEECH1_G722_BITRATE_RATE3
Need clearer description

Global IVIDANALYTICS_MAXEVENTS
Need to understand the size of structs that use this and whether they're "too big".

Global IVIDANALYTICS_MAXTARGETS
This could be 64 if needed. Need to understand the size of structs that use this and whether they're "too big".

Global IVIDANALYTICS_ViewState
Need to further review and define. Probably need hooks for user-defined states, in addition to some pre-defined ones.

Global IVIDENC2_Fxns::process )(IVIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs)
Need to review these comments. Not sure inBufs and outBufs are correctly described.

Global IVIDENC2_Status::encDynamicParams
Need to better wordsmith this section.

Global IVIDEO2_BufDesc::dataLayout
Need further description. Is there an enum we should reference for valid values? Perhaps IVIDEO_VideoLayout?

Global IVIDEO2_BufDesc::enableRangeReductionFlag
We should explore what we did in the speech interfaces and perhaps create an ivideo_vc1.h with VC1-specific definitions.

Global IVIDEO2_BufDesc::metadataPlaneDesc [3]
Need further description.

Global IVIDEO2_BufDesc::numMetaPlanes
Need further description.

Global IVIDEO2_BufDesc::numPlanes
Need further description.

Global IVIDEO2_BufDesc::rangeMappingChroma

Need further description.

We should explore what we did in the speech interfaces and perhaps create an ivideo_vc1.h with VC1-specific definitions.

Global IVIDEO2_BufDesc::rangeMappingLuma

Need further description.

We should explore what we did in the speech interfaces and perhaps create an ivideo_vc1.h with VC1-specific definitions.

Global IVIDEO2_BufDesc::scalingHeight
Is this in pixels?

Global IVIDEO2_BufDesc::scalingWidth

Is this in pixels?

Should this field and scalingHeight use a XDM_Rect data type?

Global IVIDEO2_BufDesc::secondFieldOffsetHeight [3]
Need further description. Which "above pointer"? Is this relavent to planeDesc or metadataPlaneDesc... or both?

Global IVIDEO2_BufDesc::secondFieldOffsetWidth [3]
Need further description. Which "above pointer"? Is this relavent to planeDesc or metadataPlaneDesc... or both? Is the "width in pixels" comment correct?

Global IVIDEO_BitRange
Do we need a default value for this enum?

Global IVIDEO_DataMode

Do we need a default value for this enum?

Request from DM365 team to split IVIDEO_SLICEMODE into IVIDEO_SLICEMODE_BYTE and IVIDEO_SLICEMODE_NAL.

Global IVIDEO_OperatingMode

Do we need a default value for this enum?

Should "decode" and "encode" modes change to "process full frame"? For example, setting DECODE_ONLY for an encoder is wrong - can we make it impossible for codecs/apps to make this error?

Global IVIDEO_SKIP_NONREFERENCE
add documentation

Global IVIDEO_VideoLayout
Do we need a default value for this enum?

Global IVIDTRANSCODE_MAXOUTSTREAMS
Document this.

Global XDM1_AlgBufInfo::minNumBufSets
need more details

Global XDM_DataSyncGetFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
Needs review

Global XDM_DataSyncPutBufferFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)

What cache coherency responsibilities are placed on this buffer?

Needs review and further detail

Global XDM_DataSyncPutFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
Needs review

Global XDM_ENCODING_PRESET_MAX
need to add documentation

Global XDM_MEMTYPE_RAW
add documentation

Global XDM_MEMTYPE_TILED16
add documentation

Global XDM_MEMTYPE_TILED32
add documentation

Global XDM_MEMTYPE_TILED8
add documentation

Global XDM_MEMTYPE_TILEDPAGE
add documentation


Codec Engine Application Programming Interface (API): Deprecated List

Deprecated List

Global Engine_getCpuLoad (Engine_Handle engine)
This service has been replaced by Server_getCpuLoad() to better indicate that this API is not intended for obtaining the current processor's CPU load, rather it obtains the CPU load of a remote Server.

Global Engine_getUsedMem (Engine_Handle engine)
This service has been replaced by Server_getMemStat() to better indicate that this API is not intended for obtaining the current processor's memory statistics, rather it obtains the memory statistics of a remote Server. Also, Server_getMemStat() provides more granularity than Engine_getUsedMem().

Global IAUDIO_ChannelId
This enumeration is only supported on 0.9 XDM. To use it, you must define "XDM_INCLUDE_DOT9_SUPPORT" prior to including this file. In XDM 1.00, this has been superceded by IAUDIO_ChannelMode.

Global ti_sdo_ce_osal_Memory_contigAlloc (UInt size, UInt align)
This function has been superceded by ti_sdo_ce_osal_Memory_alloc() and will be removed in a future release. Users are recommended to modify their applications to use the new, more flexible ti_sdo_ce_osal_Memory_alloc() instead.

Group ti_xdais_dm_IAUDDEC
This XDM audio decoder interface has been deprecated, and superceeded by newer IAUDDECx audio decoder interfaces.

Group ti_xdais_dm_IAUDENC
This XDM audio encoder interface has been deprecated, and superceeded by newer IAUDENCx audio encoder interfaces.

Group ti_xdais_dm_IIMGDEC
This XDM image decoder interface has been deprecated, and superceeded by newer IIMGDECx image decoder interfaces.

Group ti_xdais_dm_IIMGENC
This XDM image encoder interface has been deprecated, and superceeded by newer IIMGENCx image encoder interfaces.

Group ti_xdais_dm_ISPHDEC
This XDM speech decoder interface has been deprecated, and superceeded by newer ISPHDECx speech decoder interfaces.

Group ti_xdais_dm_ISPHENC
This XDM speech encoder interface has been deprecated, and superceeded by newer ISPHENCx speech encoder interfaces.

Group ti_xdais_dm_IVIDDEC
This XDM video decoder interface has been deprecated, and superceeded by newer IVIDDECx video decoder interfaces.

Group ti_xdais_dm_IVIDDEC1
This XDM video decoder interface has been deprecated, and superceeded by newer IVIDDECx video decoder interfaces.

Group ti_xdais_dm_IVIDENC
This XDM video encoder interface has been deprecated, and superceeded by newer IVIDENCx video encoder interfaces.

Global XDM_ERUNTIME
This is only supported on 0.9 XDM. To use it, you must define "XDM_INCLUDE_DOT9_SUPPORT". In XDM 1.00+, it is required that codecs return "EFAIL", as "ERUNTIME" is not supported.

Global XDM_MEMTYPE_ROW
The XDM_MEMTYPE_ROW value is deprecated. Please use XDM_MEMTYPE_RAW (which, by design, has the same underyling value) instead.


Codec Engine Application Programming Interface (API): Module Index

Modules

Here is a list of all modules:
  • IAUDDEC - XDM Audio Decoder Interface
  • IAUDDEC1 - XDM Audio Decoder Interface
  • IAUDENC - XDM Audio Encoder Interface
  • IAUDENC1 - Audio Encoder Interface
  • IAUDIO - XDM Audio Interface
  • IIMGDEC - XDM Image Decoder Interface
  • IIMGDEC1 - XDM Image Decoder Interface
  • IIMGENC - XDM Image Encoder Interface
  • IIMGENC1 - XDM Image Encoder Interface
  • ISPEECH - XDM Speech Interface
  • ISPEECH - XDM Speech Interface
  • ISPEECH_AMR - XDM Speech Interface (AMR)
  • ISPEECH1_EVRC - XDM Speech Interface (EVRC)
  • ISPEECH1_G722 - XDM Speech Interface (G.722)
  • ISPEECH1_G7221 - XDM Speech Interface (G.7221)
  • ISPEECH1_G723 - XDM Speech Interface (G.723)
  • ISPEECH1_G726 - XDM Speech Interface (G.726)
  • ISPEECH1_ILBC - XDM Speech Interface (iLBC)
  • ISPEECH1_PCM - XDM Speech Interface (PCM)
  • ISPEECH1_SMV - XDM Speech Interface (SMV)
  • ISPEECH1_WBAMR - XDM Speech Interface (WBAMR)
  • ISPHDEC - XDM Speech Decoder Interface
  • ISPHDEC1 - XDM Speech Decoder Interface
  • ISPHENC - XDM Speech Encoder Interface
  • ISPHENC1 - XDM Speech Encoder Interface
  • IUNIVERSAL - XDM Beta Universal Algorithm Interface
  • IVIDANALYTICS - XDM Beta Video Analytics Interface
  • IVIDDEC - XDM Video Decoder Interface
  • IVIDDEC1 - XDM Video Decoder Interface
  • IVIDDEC2 - XDM Video Decoder Interface
  • IVIDDEC3 - XDM Video Decoder Interface
  • IVIDENC - XDM Video Encoder Interface
  • IVIDENC1 - XDM Video Encoder Interface
  • IVIDENC2 - XDM Video Encoder Interface
  • IVIDTRANSCODE - XDM Video Transcoder Interface
  • IALG - XDAIS Algorithm Interface
  • AUDDEC - Audio Decoder Interface
  • AUDENC - Audio Encoder Interface
  • AUDDEC1 - Audio Decoder Interface
  • AUDENC1 - Audio Encoder Interface
  • IMGDEC - Image Decoder Interface
  • IMGENC - Image Encoder Interface
  • IMGDEC1 - Image Decoder Interface
  • IMGENC1 - Image Encoder Interface
  • Memory - OS Independent Memory Interface
  • SPHDEC - Speech Decoder Interface
  • SPHENC - Speech Encoder Interface
  • SPHDEC1 - Speech Decoder Interface
  • SPHENC1 - Speech Encoder Interface
  • UNIVERSAL - Universal Algorithm Interface
  • VIDANALYTICS - Video Analytics Interface
  • VIDDEC - Video Decoder Interface
  • VIDENC - Video Encoder Interface
  • VIDDEC1 - Video Decoder Interface
  • VIDENC1 - Video Encoder Interface
  • VIDDEC2FRONT/VIDDEC2BACK - Split video decoder interface
  • VIDDEC2 - Video Decoder Interface
  • VIDENC2 - Video Encoder Interface
  • VIDDEC3 - Video Decoder Interface
  • VIDTRANSCODE - Video Transcoder Interface
  • IVIDEO - XDM Video Interface
  • XDM IVIDDEC2-based Video Decoder Split Interface
  • XDM - Shared XDM Definitions
  • XDAIS Types and Constants
  • Codec Engine Runtime
  • Codec Engine Server Interface
  • VISA - Alg-independent user APIs
  • VISA - CE Stub SPIs
  • VISA - CE interface SPIs


Codec Engine Application Programming Interface (API): IAUDDEC - XDM Audio Decoder Interface

Data Structures | Defines | Typedefs

IAUDDEC - XDM Audio Decoder Interface

Data Structures

struct | IAUDDEC_Obj
This must be the first field of all IAUDDEC instance objects. More...
struct | IAUDDEC_Params
Defines the creation time parameters for all IAUDDEC instance objects. More...
struct | IAUDDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IAUDDEC_InArgs
Defines the input arguments for all IAUDDEC instance process function. More...
struct | IAUDDEC_Status
Defines instance status parameters (read-only). More...
struct | IAUDDEC_OutArgs
Defines the run time output arguments for all IAUDDEC instance objects. More...
struct | IAUDDEC_Fxns
Defines all of the operations on IAUDDEC objects. More...

Defines

#define | IAUDDEC_CID "ti.xdais.dm.IAUDDEC"
#define | IAUDDEC_ERUNTIME XDM_ERUNTIME
#define | IAUDDEC_EOK XDM_EOK
#define | IAUDDEC_EFAIL XDM_EFAIL

Typedefs

typedef struct IAUDDEC_Obj | IAUDDEC_Obj
This must be the first field of all IAUDDEC instance objects.
typedef struct IAUDDEC_Obj * | IAUDDEC_Handle
Opaque handle to an IAUDDEC objects.
typedef struct IAUDDEC_Params | IAUDDEC_Params
Defines the creation time parameters for all IAUDDEC instance objects.
typedef struct
IAUDDEC_DynamicParams 		IAUDDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IAUDDEC_InArgs | IAUDDEC_InArgs
Defines the input arguments for all IAUDDEC instance process function.
typedef struct IAUDDEC_Status | IAUDDEC_Status
Defines instance status parameters (read-only).
typedef struct IAUDDEC_OutArgs | IAUDDEC_OutArgs
Defines the run time output arguments for all IAUDDEC instance objects.
typedef IALG_Cmd | IAUDDEC_Cmd
Defines the control commands for the IAUDDEC module.
typedef struct IAUDDEC_Fxns | IAUDDEC_Fxns
Defines all of the operations on IAUDDEC objects.

Detailed Description

This is the XDM IAUDDEC Audio Decoder Interface.

Deprecated:
This XDM audio decoder interface has been deprecated, and superceeded by newer IAUDDECx audio decoder interfaces.

Define Documentation

#define IAUDDEC_CID "ti.xdais.dm.IAUDDEC"

IAUDDEC Class ID

#define IAUDDEC_ERUNTIME XDM_ERUNTIME

General runtime failure.

#define IAUDDEC_EOK XDM_EOK

Success.

#define IAUDDEC_EFAIL XDM_EFAIL

General failure.

Typedef Documentation

typedef struct IAUDDEC_Obj IAUDDEC_Obj

This must be the first field of all IAUDDEC instance objects.

typedef struct IAUDDEC_Obj* IAUDDEC_Handle

Opaque handle to an IAUDDEC objects.

typedef struct IAUDDEC_Params IAUDDEC_Params

Defines the creation time parameters for all IAUDDEC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IAUDDEC_DynamicParams IAUDDEC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::control()
typedef struct IAUDDEC_InArgs IAUDDEC_InArgs

Defines the input arguments for all IAUDDEC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::process()
typedef struct IAUDDEC_Status IAUDDEC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::control()
typedef struct IAUDDEC_OutArgs IAUDDEC_OutArgs

Defines the run time output arguments for all IAUDDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::process()
typedef IALG_Cmd IAUDDEC_Cmd

Defines the control commands for the IAUDDEC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IAUDDEC_Fxns::control()
typedef struct IAUDDEC_Fxns IAUDDEC_Fxns

Defines all of the operations on IAUDDEC objects.


Codec Engine Application Programming Interface (API): IAUDDEC1 - XDM Audio Decoder Interface

Data Structures | Defines | Typedefs

IAUDDEC1 - XDM Audio Decoder Interface

Data Structures

struct | IAUDDEC1_Obj
This must be the first field of all IAUDDEC1 instance objects. More...
struct | IAUDDEC1_Params
Defines the creation time parameters for all IAUDDEC1 instance objects. More...
struct | IAUDDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IAUDDEC1_InArgs
Defines the input arguments for all IAUDDEC1 instance process function. More...
struct | IAUDDEC1_Status
Defines instance status parameters (read-only). More...
struct | IAUDDEC1_OutArgs
Defines the run time output arguments for all IAUDDEC1 instance objects. More...
struct | IAUDDEC1_Fxns
Defines all of the operations on IAUDDEC1 objects. More...

Defines

#define | IAUDDEC1_EOK XDM_EOK
#define | IAUDDEC1_EFAIL XDM_EFAIL
#define | IAUDDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IAUDDEC1_Obj | IAUDDEC1_Obj
This must be the first field of all IAUDDEC1 instance objects.
typedef struct IAUDDEC1_Obj * | IAUDDEC1_Handle
Opaque handle to an IAUDDEC1 objects.
typedef struct IAUDDEC1_Params | IAUDDEC1_Params
Defines the creation time parameters for all IAUDDEC1 instance objects.
typedef struct
IAUDDEC1_DynamicParams 		IAUDDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IAUDDEC1_InArgs | IAUDDEC1_InArgs
Defines the input arguments for all IAUDDEC1 instance process function.
typedef struct IAUDDEC1_Status | IAUDDEC1_Status
Defines instance status parameters (read-only).
typedef struct IAUDDEC1_OutArgs | IAUDDEC1_OutArgs
Defines the run time output arguments for all IAUDDEC1 instance objects.
typedef IALG_Cmd | IAUDDEC1_Cmd
Defines the control commands for the IAUDDEC1 module.
typedef struct IAUDDEC1_Fxns | IAUDDEC1_Fxns
Defines all of the operations on IAUDDEC1 objects.

Detailed Description

This is the XDM IAUDDEC1 Audio Decoder Interface.

Define Documentation

#define IAUDDEC1_EOK XDM_EOK

Success.

#define IAUDDEC1_EFAIL XDM_EFAIL

General failure.

#define IAUDDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

Typedef Documentation

typedef struct IAUDDEC1_Obj IAUDDEC1_Obj

This must be the first field of all IAUDDEC1 instance objects.

typedef struct IAUDDEC1_Obj* IAUDDEC1_Handle

Opaque handle to an IAUDDEC1 objects.

typedef struct IAUDDEC1_Params IAUDDEC1_Params

Defines the creation time parameters for all IAUDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IAUDDEC1_DynamicParams IAUDDEC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::control()
typedef struct IAUDDEC1_InArgs IAUDDEC1_InArgs

Defines the input arguments for all IAUDDEC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::process()
typedef struct IAUDDEC1_Status IAUDDEC1_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::control()
typedef struct IAUDDEC1_OutArgs IAUDDEC1_OutArgs

Defines the run time output arguments for all IAUDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::process()
typedef IALG_Cmd IAUDDEC1_Cmd

Defines the control commands for the IAUDDEC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IAUDDEC1_Fxns::control()
typedef struct IAUDDEC1_Fxns IAUDDEC1_Fxns

Defines all of the operations on IAUDDEC1 objects.


Codec Engine Application Programming Interface (API): IAUDENC - XDM Audio Encoder Interface

Data Structures | Defines | Typedefs

IAUDENC - XDM Audio Encoder Interface

Data Structures

struct | IAUDENC_Obj
This must be the first field of all IAUDENC instance objects. More...
struct | IAUDENC_Params
Defines the creation time parameters for all IAUDENC instance objects. More...
struct | IAUDENC_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IAUDENC_InArgs
Defines the input arguments for all IAUDENC instance process function. More...
struct | IAUDENC_Status
Defines instance status parameters (read-only). More...
struct | IAUDENC_OutArgs
Defines the run time output arguments for all IAUDENC instance objects. More...
struct | IAUDENC_Fxns
Defines all of the operations on IAUDENC objects. More...

Defines

#define | IAUDENC_CID "ti.xdais.dm.IAUDENC"
#define | IAUDENC_ERUNTIME XDM_ERUNTIME
#define | IAUDENC_EOK XDM_EOK
#define | IAUDENC_EFAIL XDM_EFAIL

Typedefs

typedef struct IAUDENC_Obj | IAUDENC_Obj
This must be the first field of all IAUDENC instance objects.
typedef struct IAUDENC_Obj * | IAUDENC_Handle
Opaque handle to an IAUDENC objects.
typedef struct IAUDENC_Params | IAUDENC_Params
Defines the creation time parameters for all IAUDENC instance objects.
typedef struct
IAUDENC_DynamicParams 		IAUDENC_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IAUDENC_InArgs | IAUDENC_InArgs
Defines the input arguments for all IAUDENC instance process function.
typedef struct IAUDENC_Status | IAUDENC_Status
Defines instance status parameters (read-only).
typedef struct IAUDENC_OutArgs | IAUDENC_OutArgs
Defines the run time output arguments for all IAUDENC instance objects.
typedef IALG_Cmd | IAUDENC_Cmd
Defines the control commands for the IAUDENC module.
typedef struct IAUDENC_Fxns | IAUDENC_Fxns
Defines all of the operations on IAUDENC objects.

Detailed Description

This is the XDM IAUDENC Audio Encoder Interface.

Deprecated:
This XDM audio encoder interface has been deprecated, and superceeded by newer IAUDENCx audio encoder interfaces.

Define Documentation

#define IAUDENC_CID "ti.xdais.dm.IAUDENC"

IAUDENC Class ID

#define IAUDENC_ERUNTIME XDM_ERUNTIME

General runtime failure.

#define IAUDENC_EOK XDM_EOK

Success.

#define IAUDENC_EFAIL XDM_EFAIL

General failure.

Typedef Documentation

typedef struct IAUDENC_Obj IAUDENC_Obj

This must be the first field of all IAUDENC instance objects.

typedef struct IAUDENC_Obj* IAUDENC_Handle

Opaque handle to an IAUDENC objects.

typedef struct IAUDENC_Params IAUDENC_Params

Defines the creation time parameters for all IAUDENC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IAUDENC_DynamicParams IAUDENC_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::control()
typedef struct IAUDENC_InArgs IAUDENC_InArgs

Defines the input arguments for all IAUDENC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::process()
typedef struct IAUDENC_Status IAUDENC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::control()
typedef struct IAUDENC_OutArgs IAUDENC_OutArgs

Defines the run time output arguments for all IAUDENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::process()
typedef IALG_Cmd IAUDENC_Cmd

Defines the control commands for the IAUDENC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IAUDENC_Fxns::control()
typedef struct IAUDENC_Fxns IAUDENC_Fxns

Defines all of the operations on IAUDENC objects.


Codec Engine Application Programming Interface (API): IAUDENC1 - Audio Encoder Interface

Data Structures | Defines | Typedefs

IAUDENC1 - Audio Encoder Interface

Data Structures

struct | IAUDENC1_Obj
This must be the first field of all IAUDENC1 instance objects. More...
struct | IAUDENC1_Params
Defines the creation time parameters for all IAUDENC1 instance objects. More...
struct | IAUDENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IAUDENC1_InArgs
Defines the input arguments for all IAUDENC1 instance process function. More...
struct | IAUDENC1_Status
Defines instance status parameters (read-only). More...
struct | IAUDENC1_OutArgs
Defines the run time output arguments for all IAUDENC1 instance objects. More...
struct | IAUDENC1_Fxns
Defines all of the operations on IAUDENC1 objects. More...

Defines

#define | IAUDENC1_EOK XDM_EOK
#define | IAUDENC1_EFAIL XDM_EFAIL
#define | IAUDENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IAUDENC1_Obj | IAUDENC1_Obj
This must be the first field of all IAUDENC1 instance objects.
typedef struct IAUDENC1_Obj * | IAUDENC1_Handle
Opaque handle to an IAUDENC1 objects.
typedef struct IAUDENC1_Params | IAUDENC1_Params
Defines the creation time parameters for all IAUDENC1 instance objects.
typedef struct
IAUDENC1_DynamicParams 		IAUDENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IAUDENC1_InArgs | IAUDENC1_InArgs
Defines the input arguments for all IAUDENC1 instance process function.
typedef struct IAUDENC1_Status | IAUDENC1_Status
Defines instance status parameters (read-only).
typedef struct IAUDENC1_OutArgs | IAUDENC1_OutArgs
Defines the run time output arguments for all IAUDENC1 instance objects.
typedef IALG_Cmd | IAUDENC1_Cmd
Defines the control commands for the IAUDENC1 module.
typedef struct IAUDENC1_Fxns | IAUDENC1_Fxns
Defines all of the operations on IAUDENC1 objects.

Detailed Description

This is the XDM IAUDENC1 Audio Encoder Interface.

Define Documentation

#define IAUDENC1_EOK XDM_EOK

Success.

#define IAUDENC1_EFAIL XDM_EFAIL

General failure.

#define IAUDENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

Typedef Documentation

typedef struct IAUDENC1_Obj IAUDENC1_Obj

This must be the first field of all IAUDENC1 instance objects.

typedef struct IAUDENC1_Obj* IAUDENC1_Handle

Opaque handle to an IAUDENC1 objects.

typedef struct IAUDENC1_Params IAUDENC1_Params

Defines the creation time parameters for all IAUDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IAUDENC1_DynamicParams IAUDENC1_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::control()
typedef struct IAUDENC1_InArgs IAUDENC1_InArgs

Defines the input arguments for all IAUDENC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::process()
typedef struct IAUDENC1_Status IAUDENC1_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::control()
typedef struct IAUDENC1_OutArgs IAUDENC1_OutArgs

Defines the run time output arguments for all IAUDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::process()
typedef IALG_Cmd IAUDENC1_Cmd

Defines the control commands for the IAUDENC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IAUDENC1_Fxns::control()
typedef struct IAUDENC1_Fxns IAUDENC1_Fxns

Defines all of the operations on IAUDENC1 objects.


Codec Engine Application Programming Interface (API): IAUDIO - XDM Audio Interface

Enumerations

IAUDIO - XDM Audio Interface

Enumerations

enum IAUDIO_ChannelId {
IAUDIO_MONO = 0,
IAUDIO_STEREO = 1,
IAUDIO_THREE_ZERO = 2,
IAUDIO_FIVE_ZERO = 3,
IAUDIO_FIVE_ONE = 4,
IAUDIO_SEVEN_ONE = 5
}

XDM supported audio channel configurations.

More...
enum IAUDIO_ChannelMode {
IAUDIO_1_0 = 0,
IAUDIO_2_0 = 1,
IAUDIO_11_0 = 2,
IAUDIO_3_0 = 3,
IAUDIO_2_1 = 4,
IAUDIO_3_1 = 5,
IAUDIO_2_2 = 6,
IAUDIO_3_2 = 7,
IAUDIO_2_3 = 8,
IAUDIO_3_3 = 9,
IAUDIO_3_4 = 10
}

Channel modes for audio streams.

More...
enum IAUDIO_DualMonoMode {
IAUDIO_DUALMONO_LR = 0,
IAUDIO_DUALMONO_LEFT = 1,
IAUDIO_DUALMONO_RIGHT = 2,
IAUDIO_DUALMONO_LR_MIX = 3
}

Dual Mono Channel modes for audio streams.

More...
enum IAUDIO_PcmFormat {
IAUDIO_BLOCK = 0,
IAUDIO_INTERLEAVED = 1
}

XDM supported audio PCM formats.

More...
enum IAUDIO_EncMode {
IAUDIO_CBR = 0,
IAUDIO_VBR = 1
}

Audio encoding modes.

More...

Detailed Description

This is the XDM audio interface shared between the various codecs.

Enumeration Type Documentation

enum IAUDIO_ChannelId

XDM supported audio channel configurations.

Deprecated:
This enumeration is only supported on 0.9 XDM. To use it, you must define "XDM_INCLUDE_DOT9_SUPPORT" prior to including this file. In XDM 1.00, this has been superceded by IAUDIO_ChannelMode.
Enumerator:
IAUDIO_MONO

Single channel.

IAUDIO_STEREO

Two channel.

IAUDIO_THREE_ZERO

Three channel.

IAUDIO_FIVE_ZERO

Five channel.

IAUDIO_FIVE_ONE

5.1 channel.

IAUDIO_SEVEN_ONE

7.1 channel.

enum IAUDIO_ChannelMode

Channel modes for audio streams.

The channel modes not only indicate the number of channels, but also indicate the order in which the channels are placed in the input or output buffer. The placement of channels is indicated next to each channel mode.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IAUDIO_1_0

Mono.

IAUDIO_2_0

Stereo.

IAUDIO_11_0

Dual Mono.

See also:
IAUDIO_DualMonoMode
IAUDIO_3_0

Left, Right, Center.

IAUDIO_2_1

Left, Right, Sur.

IAUDIO_3_1

Left, Right, Center, Sur.

IAUDIO_2_2

Left, Right, SurL, SurR.

IAUDIO_3_2

Left, Right, Center, SurL, SurR.

IAUDIO_2_3

Left, Right, SurL, SurR, surC.

IAUDIO_3_3

Left, Right, Center, SurL, SurR, surC.

IAUDIO_3_4

Left, Right, Center, SurL, SurR, sideL, sideR.

enum IAUDIO_DualMonoMode

Dual Mono Channel modes for audio streams.

Remarks:
In case of Dual Mono the application can play both channels; Left Only, Right Only or Mix and Play both. The default case in most of the applications is the first case of IAUDIO_DUALMONO_LR. That is to play both Left and Right Channel.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IAUDIO_DUALMONO_LR

Play/encode both left and right channel

IAUDIO_DUALMONO_LEFT

Play/encode only left channel.

IAUDIO_DUALMONO_RIGHT

Play/encode only right channel.

IAUDIO_DUALMONO_LR_MIX

Mix and play.

enum IAUDIO_PcmFormat

XDM supported audio PCM formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IAUDIO_BLOCK

Left channel data followed by right channel data. Note, for single channel (mono), right channel data will be the same as the left channel data.

IAUDIO_INTERLEAVED

Left and right channel data interleaved. Note, for single channel (mono), right channel data will be the same as the left channel data.

enum IAUDIO_EncMode

Audio encoding modes.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IAUDIO_CBR

Constant bit rate.

IAUDIO_VBR

Variable bit rate.


Codec Engine Application Programming Interface (API): IIMGDEC - XDM Image Decoder Interface

Data Structures | Defines | Typedefs

IIMGDEC - XDM Image Decoder Interface

Data Structures

struct | IIMGDEC_Obj
This must be the first field of all IIMGDEC instance objects. More...
struct | IIMGDEC_Params
Defines the creation time parameters for all IIMGDEC instance objects. More...
struct | IIMGDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IIMGDEC_InArgs
Defines the input arguments for all IIMGDEC instance process() function. More...
struct | IIMGDEC_Status
Defines instance status parameters (read-only). More...
struct | IIMGDEC_OutArgs
Defines the run time output arguments for all IIMGDEC instance objects. More...
struct | IIMGDEC_Fxns
Defines all of the operations on IIMGDEC objects. More...

Defines

#define | IIMGDEC_CID "ti.xdais.dm.IIMGDEC"
#define | IIMGDEC_ERUNTIME XDM_ERUNTIME
#define | IIMGDEC_EOK XDM_EOK
#define | IIMGDEC_EFAIL XDM_EFAIL

Typedefs

typedef struct IIMGDEC_Obj | IIMGDEC_Obj
This must be the first field of all IIMGDEC instance objects.
typedef struct IIMGDEC_Obj * | IIMGDEC_Handle
Opaque handle to an IIMGDEC objects.
typedef struct IIMGDEC_Params | IIMGDEC_Params
Defines the creation time parameters for all IIMGDEC instance objects.
typedef struct
IIMGDEC_DynamicParams 		IIMGDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IIMGDEC_InArgs | IIMGDEC_InArgs
Defines the input arguments for all IIMGDEC instance process() function.
typedef struct IIMGDEC_Status | IIMGDEC_Status
Defines instance status parameters (read-only).
typedef struct IIMGDEC_OutArgs | IIMGDEC_OutArgs
Defines the run time output arguments for all IIMGDEC instance objects.
typedef IALG_Cmd | IIMGDEC_Cmd
Defines the control commands for the IIMGDEC module.
typedef struct IIMGDEC_Fxns | IIMGDEC_Fxns
Defines all of the operations on IIMGDEC objects.

Detailed Description

This is the XDM IIMGDEC Image Decoder Interface.

Deprecated:
This XDM image decoder interface has been deprecated, and superceeded by newer IIMGDECx image decoder interfaces.

Define Documentation

#define IIMGDEC_CID "ti.xdais.dm.IIMGDEC"

IIMGDEC Class ID

#define IIMGDEC_ERUNTIME XDM_ERUNTIME

General runtime failure.

#define IIMGDEC_EOK XDM_EOK

Success.

#define IIMGDEC_EFAIL XDM_EFAIL

General failure.

Typedef Documentation

typedef struct IIMGDEC_Obj IIMGDEC_Obj

This must be the first field of all IIMGDEC instance objects.

typedef struct IIMGDEC_Obj* IIMGDEC_Handle

Opaque handle to an IIMGDEC objects.

typedef struct IIMGDEC_Params IIMGDEC_Params

Defines the creation time parameters for all IIMGDEC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IIMGDEC_DynamicParams IIMGDEC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC_Fxns::control()
typedef struct IIMGDEC_InArgs IIMGDEC_InArgs

Defines the input arguments for all IIMGDEC instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC_Fxns::process()
typedef struct IIMGDEC_Status IIMGDEC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC_Fxns::control()
typedef struct IIMGDEC_OutArgs IIMGDEC_OutArgs

Defines the run time output arguments for all IIMGDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::process()
typedef IALG_Cmd IIMGDEC_Cmd

Defines the control commands for the IIMGDEC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IIMGDEC_Fxns::control()
typedef struct IIMGDEC_Fxns IIMGDEC_Fxns

Defines all of the operations on IIMGDEC objects.


Codec Engine Application Programming Interface (API): IIMGDEC1 - XDM Image Decoder Interface

Data Structures | Defines | Typedefs

IIMGDEC1 - XDM Image Decoder Interface

Data Structures

struct | IIMGDEC1_Obj
This must be the first field of all IIMGDEC1 instance objects. More...
struct | IIMGDEC1_Params
Defines the creation time parameters for all IIMGDEC1 instance objects. More...
struct | IIMGDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IIMGDEC1_InArgs
Defines the input arguments for all IIMGDEC1 instance process() function. More...
struct | IIMGDEC1_Status
Defines instance status parameters. More...
struct | IIMGDEC1_OutArgs
Defines the run time output arguments for all IIMGDEC1 instance objects. More...
struct | IIMGDEC1_Fxns
Defines all of the operations on IIMGDEC1 objects. More...

Defines

#define | IIMGDEC1_EOK XDM_EOK
#define | IIMGDEC1_EFAIL XDM_EFAIL
#define | IIMGDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IIMGDEC1_Obj | IIMGDEC1_Obj
This must be the first field of all IIMGDEC1 instance objects.
typedef struct IIMGDEC1_Obj * | IIMGDEC1_Handle
Opaque handle to an IIMGDEC1 objects.
typedef struct IIMGDEC1_Params | IIMGDEC1_Params
Defines the creation time parameters for all IIMGDEC1 instance objects.
typedef struct
IIMGDEC1_DynamicParams 		IIMGDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IIMGDEC1_InArgs | IIMGDEC1_InArgs
Defines the input arguments for all IIMGDEC1 instance process() function.
typedef struct IIMGDEC1_Status | IIMGDEC1_Status
Defines instance status parameters.
typedef struct IIMGDEC1_OutArgs | IIMGDEC1_OutArgs
Defines the run time output arguments for all IIMGDEC1 instance objects.
typedef IALG_Cmd | IIMGDEC1_Cmd
Defines the control commands for the IIMGDEC1 module.
typedef struct IIMGDEC1_Fxns | IIMGDEC1_Fxns
Defines all of the operations on IIMGDEC1 objects.

Detailed Description

This is the XDM IIMGDEC1 Image Decoder Interface.

Define Documentation

#define IIMGDEC1_EOK XDM_EOK

Success.

#define IIMGDEC1_EFAIL XDM_EFAIL

General failure.

#define IIMGDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

Typedef Documentation

typedef struct IIMGDEC1_Obj IIMGDEC1_Obj

This must be the first field of all IIMGDEC1 instance objects.

typedef struct IIMGDEC1_Obj* IIMGDEC1_Handle

Opaque handle to an IIMGDEC1 objects.

typedef struct IIMGDEC1_Params IIMGDEC1_Params

Defines the creation time parameters for all IIMGDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IIMGDEC1_DynamicParams IIMGDEC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::control()
typedef struct IIMGDEC1_InArgs IIMGDEC1_InArgs

Defines the input arguments for all IIMGDEC1 instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::process()
typedef struct IIMGDEC1_Status IIMGDEC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::control()
typedef struct IIMGDEC1_OutArgs IIMGDEC1_OutArgs

Defines the run time output arguments for all IIMGDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::process()
typedef IALG_Cmd IIMGDEC1_Cmd

Defines the control commands for the IIMGDEC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IIMGDEC1_Fxns::control()
typedef struct IIMGDEC1_Fxns IIMGDEC1_Fxns

Defines all of the operations on IIMGDEC1 objects.


Codec Engine Application Programming Interface (API): IIMGENC - XDM Image Encoder Interface

Data Structures | Defines | Typedefs

IIMGENC - XDM Image Encoder Interface

Data Structures

struct | IIMGENC_Obj
This must be the first field of all IIMGENC instance objects. More...
struct | IIMGENC_Params
Defines the creation time parameters for all IIMGENC instance objects. More...
struct | IIMGENC_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IIMGENC_InArgs
Defines the input arguments for all IIMGENC instance process() function. More...
struct | IIMGENC_Status
Defines instance status parameters (read-only). More...
struct | IIMGENC_OutArgs
Defines the run time output arguments for all IIMGENC instance objects. More...
struct | IIMGENC_Fxns
Defines all of the operations on IIMGENC objects. More...

Defines

#define | IIMGENC_CID "ti.xdais.dm.IIMGENC"
#define | IIMGENC_ERUNTIME XDM_ERUNTIME
#define | IIMGENC_EOK XDM_EOK
#define | IIMGENC_EFAIL XDM_EFAIL

Typedefs

typedef struct IIMGENC_Obj | IIMGENC_Obj
This must be the first field of all IIMGENC instance objects.
typedef struct IIMGENC_Obj * | IIMGENC_Handle
Opaque handle to an IIMGENC objects.
typedef struct IIMGENC_Params | IIMGENC_Params
Defines the creation time parameters for all IIMGENC instance objects.
typedef struct
IIMGENC_DynamicParams 		IIMGENC_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IIMGENC_InArgs | IIMGENC_InArgs
Defines the input arguments for all IIMGENC instance process() function.
typedef struct IIMGENC_Status | IIMGENC_Status
Defines instance status parameters (read-only).
typedef struct IIMGENC_OutArgs | IIMGENC_OutArgs
Defines the run time output arguments for all IIMGENC instance objects.
typedef IALG_Cmd | IIMGENC_Cmd
Defines the control commands for the IIMGENC module.
typedef struct IIMGENC_Fxns | IIMGENC_Fxns
Defines all of the operations on IIMGENC objects.

Detailed Description

This is the XDM IIMGENC Image Encoder Interface.

Deprecated:
This XDM image encoder interface has been deprecated, and superceeded by newer IIMGENCx image encoder interfaces.

Define Documentation

#define IIMGENC_CID "ti.xdais.dm.IIMGENC"

IIMGENC Class ID

#define IIMGENC_ERUNTIME XDM_ERUNTIME

General runtime failure.

#define IIMGENC_EOK XDM_EOK

Success.

#define IIMGENC_EFAIL XDM_EFAIL

General failure.

Typedef Documentation

typedef struct IIMGENC_Obj IIMGENC_Obj

This must be the first field of all IIMGENC instance objects.

typedef struct IIMGENC_Obj* IIMGENC_Handle

Opaque handle to an IIMGENC objects.

typedef struct IIMGENC_Params IIMGENC_Params

Defines the creation time parameters for all IIMGENC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IIMGENC_DynamicParams IIMGENC_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::control()
typedef struct IIMGENC_InArgs IIMGENC_InArgs

Defines the input arguments for all IIMGENC instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::process()
typedef struct IIMGENC_Status IIMGENC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::control()
typedef struct IIMGENC_OutArgs IIMGENC_OutArgs

Defines the run time output arguments for all IIMGENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::process()
typedef IALG_Cmd IIMGENC_Cmd

Defines the control commands for the IIMGENC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IIMGENC_Fxns::control()
typedef struct IIMGENC_Fxns IIMGENC_Fxns

Defines all of the operations on IIMGENC objects.


Codec Engine Application Programming Interface (API): IIMGENC1 - XDM Image Encoder Interface

Data Structures | Defines | Typedefs

IIMGENC1 - XDM Image Encoder Interface

Data Structures

struct | IIMGENC1_Obj
This must be the first field of all IIMGENC1 instance objects. More...
struct | IIMGENC1_Params
Defines the creation time parameters for all IIMGENC1 instance objects. More...
struct | IIMGENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IIMGENC1_InArgs
Defines the input arguments for all IIMGENC1 instance process() function. More...
struct | IIMGENC1_Status
Defines instance status parameters. More...
struct | IIMGENC1_OutArgs
Defines the run time output arguments for all IIMGENC1 instance objects. More...
struct | IIMGENC1_Fxns
Defines all of the operations on IIMGENC1 objects. More...

Defines

#define | IIMGENC1_EOK XDM_EOK
#define | IIMGENC1_EFAIL XDM_EFAIL
#define | IIMGENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IIMGENC1_Obj | IIMGENC1_Obj
This must be the first field of all IIMGENC1 instance objects.
typedef struct IIMGENC1_Obj * | IIMGENC1_Handle
Opaque handle to an IIMGENC1 objects.
typedef struct IIMGENC1_Params | IIMGENC1_Params
Defines the creation time parameters for all IIMGENC1 instance objects.
typedef struct
IIMGENC1_DynamicParams 		IIMGENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IIMGENC1_InArgs | IIMGENC1_InArgs
Defines the input arguments for all IIMGENC1 instance process() function.
typedef struct IIMGENC1_Status | IIMGENC1_Status
Defines instance status parameters.
typedef struct IIMGENC1_OutArgs | IIMGENC1_OutArgs
Defines the run time output arguments for all IIMGENC1 instance objects.
typedef IALG_Cmd | IIMGENC1_Cmd
Defines the control commands for the IIMGENC1 module.
typedef struct IIMGENC1_Fxns | IIMGENC1_Fxns
Defines all of the operations on IIMGENC1 objects.

Detailed Description

This is the XDM IIMGENC1 Image Encoder Interface.

Define Documentation

#define IIMGENC1_EOK XDM_EOK

Success.

#define IIMGENC1_EFAIL XDM_EFAIL

General failure.

#define IIMGENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

Typedef Documentation

typedef struct IIMGENC1_Obj IIMGENC1_Obj

This must be the first field of all IIMGENC1 instance objects.

typedef struct IIMGENC1_Obj* IIMGENC1_Handle

Opaque handle to an IIMGENC1 objects.

typedef struct IIMGENC1_Params IIMGENC1_Params

Defines the creation time parameters for all IIMGENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IIMGENC1_DynamicParams IIMGENC1_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::control()
typedef struct IIMGENC1_InArgs IIMGENC1_InArgs

Defines the input arguments for all IIMGENC1 instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::process()
typedef struct IIMGENC1_Status IIMGENC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::control()
typedef struct IIMGENC1_OutArgs IIMGENC1_OutArgs

Defines the run time output arguments for all IIMGENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::process()
typedef IALG_Cmd IIMGENC1_Cmd

Defines the control commands for the IIMGENC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IIMGENC1_Fxns::control()
typedef struct IIMGENC1_Fxns IIMGENC1_Fxns

Defines all of the operations on IIMGENC1 objects.


Codec Engine Application Programming Interface (API): ISPEECH - XDM Speech Interface

Enumerations

ISPEECH - XDM Speech Interface

Enumerations

enum ISPEECH_VoiceMode {
ISPEECH_VOICED = 0,
ISPEECH_UNVOICED
}

XDM supported voice modes for speech.

More...
enum ISPEECH_CompoundLaw {
ISPEECH_LINEAR = 0,
ISPEECH_ALAW,
ISPEECH_ULAW
}

Detailed Description

This is the XDM speech interface shared between the various codecs.

Enumeration Type Documentation

enum ISPEECH_VoiceMode

XDM supported voice modes for speech.

Enumerator:
ISPEECH_VOICED
ISPEECH_UNVOICED
enum ISPEECH_CompoundLaw
Enumerator:
ISPEECH_LINEAR
ISPEECH_ALAW
ISPEECH_ULAW


Codec Engine Application Programming Interface (API): ISPEECH - XDM Speech Interface

Enumerations

ISPEECH - XDM Speech Interface

Enumerations

enum ISPEECH1_NullTrafficMode {
ISPEECH1_NULLTRAFFICMODE_OFF = 0,
ISPEECH1_NULLTRAFFICMODE_ON = 1,
ISPEECH1_NULLTRAFFICMODE_DEFAULT = ISPEECH1_NULLTRAFFICMODE_OFF
}

Null traffic channel setting.

More...
enum ISPEECH1_PostFilter {
ISPEECH1_POSTFILTER_OFF = 0,
ISPEECH1_POSTFILTER_ON = 1,
ISPEECH1_POSTFILTER_DEFAULT = ISPEECH1_POSTFILTER_ON
}

Post filter setting.

More...
enum ISPEECH1_VADFlag {
ISPEECH1_VADFLAG_OFF = 0,
ISPEECH1_VADFLAG_ON = 1,
ISPEECH1_VADFLAG_DEFAULT = ISPEECH1_VADFLAG_ON
}

Voice Activity Detection (VAD) setting.

More...

Detailed Description

This is the XDM speech interface shared between the various codecs.

Enumeration Type Documentation

enum ISPEECH1_NullTrafficMode

Null traffic channel setting.

See also:
ISPHENC1_InArgs.nullTrafficChannel.
Enumerator:
ISPEECH1_NULLTRAFFICMODE_OFF

Null traffic channel frames disabled, normal speech encoding is enabled.

ISPEECH1_NULLTRAFFICMODE_ON

Null traffic channel frames enabled.

ISPEECH1_NULLTRAFFICMODE_DEFAULT

Null traffic channel frames disabled, normal speech encoding is enabled.

enum ISPEECH1_PostFilter

Post filter setting.

These values are used for enabling/disabling the post filter.

Enumerator:
ISPEECH1_POSTFILTER_OFF

Post Filter disabled.

ISPEECH1_POSTFILTER_ON

Post Filter enabled.

ISPEECH1_POSTFILTER_DEFAULT

Post Filter enabled.

enum ISPEECH1_VADFlag

Voice Activity Detection (VAD) setting.

Enumerator:
ISPEECH1_VADFLAG_OFF

Voice Activity Detection off.

ISPEECH1_VADFLAG_ON

Voice Activity Detection on.

ISPEECH1_VADFLAG_DEFAULT

Voice Activity Detection on.


Codec Engine Application Programming Interface (API): ISPEECH_AMR - XDM Speech Interface (AMR)

Enumerations

ISPEECH_AMR - XDM Speech Interface (AMR)

Enumerations

enum ISPEECH1_AMR_BitRate {
ISPEECH1_AMR_BITRATE_4P75 = 0,
ISPEECH1_AMR_BITRATE_5P15 = 1,
ISPEECH1_AMR_BITRATE_5P9 = 2,
ISPEECH1_AMR_BITRATE_6P7 = 3,
ISPEECH1_AMR_BITRATE_7P4 = 4,
ISPEECH1_AMR_BITRATE_7P95 = 5,
ISPEECH1_AMR_BITRATE_10P2 = 6,
ISPEECH1_AMR_BITRATE_12P2 = 7,
ISPEECH1_AMR_BITRATE_DEFAULT = ISPEECH1_AMR_BITRATE_12P2
}

Bitrate selection for AMR.

More...
enum ISPEECH1_AMR_CodecSelect {
ISPEECH1_AMR_CODECSELECT_PRIMARY = 0,
ISPEECH1_AMR_CODECSELECT_SECONDARY = 1,
ISPEECH1_AMR_CODECSELECT_DEFAULT = ISPEECH1_AMR_CODECSELECT_PRIMARY
}

Codec selection.

More...
enum ISPEECH1_AMR_PackingType {
ISPEECH1_AMR_PACKTYPE_IF1_NOCRC = 0,
ISPEECH1_AMR_PACKTYPE_IF1_WITHCRC = 1,
ISPEECH1_AMR_PACKTYPE_IF2 = 2,
ISPEECH1_AMR_PACKTYPE_MIME = 3,
ISPEECH1_AMR_PACKTYPEFORMAT_DEFAULT = ISPEECH1_AMR_PACKTYPE_IF1_NOCRC
}

Packing type options for AMR.

More...
enum ISPEECH1_AMR_VADSelect {
ISPEECH1_AMR_VADSELECT_VAD1 = 1,
ISPEECH1_AMR_VADSELECT_VAD2 = 2,
ISPEECH1_AMR_VADSELECT_DEFAULT = ISPEECH1_AMR_VADSELECT_VAD1
}

Voice activity detector (VAD) selection.

More...

Detailed Description

This is the XDM speech interface shared between the various AMR codecs.

Enumeration Type Documentation

enum ISPEECH1_AMR_BitRate

Bitrate selection for AMR.

Enumerator:
ISPEECH1_AMR_BITRATE_4P75

4.75 kbps

ISPEECH1_AMR_BITRATE_5P15

5.15 kbps

ISPEECH1_AMR_BITRATE_5P9

5.9 kbps

ISPEECH1_AMR_BITRATE_6P7

6.7 kbps

ISPEECH1_AMR_BITRATE_7P4

7.4 kbps

ISPEECH1_AMR_BITRATE_7P95

7.95 kbps

ISPEECH1_AMR_BITRATE_10P2

10.2 kbps

ISPEECH1_AMR_BITRATE_12P2

12.2 kbps

ISPEECH1_AMR_BITRATE_DEFAULT

Default setting.

enum ISPEECH1_AMR_CodecSelect

Codec selection.

Remarks:
This parameter is used to select the codec in cases where multiple codecs are supported from the same code base.
Enumerator:
ISPEECH1_AMR_CODECSELECT_PRIMARY

Primary mode - AMR.

ISPEECH1_AMR_CODECSELECT_SECONDARY

Secondary mode - EFR.

ISPEECH1_AMR_CODECSELECT_DEFAULT

Default setting.

enum ISPEECH1_AMR_PackingType

Packing type options for AMR.

Enumerator:
ISPEECH1_AMR_PACKTYPE_IF1_NOCRC

Interface format 1, without CRC check (as per 3GPP 26.101).

ISPEECH1_AMR_PACKTYPE_IF1_WITHCRC

Interface format 1, with CRC check (as per 3GPP 26.101).

ISPEECH1_AMR_PACKTYPE_IF2

Interface format 2 (as per 3GPP 26.101).

ISPEECH1_AMR_PACKTYPE_MIME

MIME/MMSIO/file storage format.

ISPEECH1_AMR_PACKTYPEFORMAT_DEFAULT

Default setting.

enum ISPEECH1_AMR_VADSelect

Voice activity detector (VAD) selection.

Enumerator:
ISPEECH1_AMR_VADSELECT_VAD1

VAD 1

ISPEECH1_AMR_VADSELECT_VAD2

VAD 2

ISPEECH1_AMR_VADSELECT_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): ISPEECH1_EVRC - XDM Speech Interface (EVRC)

Enumerations

ISPEECH1_EVRC - XDM Speech Interface (EVRC)

Enumerations

enum ISPEECH1_EVRC_NoisePreProc {
ISPEECH1_EVRC_NOISEPREPROC_OFF = 0,
ISPEECH1_EVRC_NOISEPREPROC_ON = 1,
ISPEECH1_EVRC_NOISEPREPROC_DEFAULT = ISPEECH1_EVRC_NOISEPREPROC_ON
}

Enable/disable noise suppression.

More...
enum ISPEECH1_EVRC_TTYMode {
ISPEECH1_EVRC_TTYMODE_OFF = 0,
ISPEECH1_EVRC_TTYMODE_45P45BPS = 1,
ISPEECH1_EVRC_TTYMODE_50BPS = 2,
ISPEECH1_EVRC_TTYMODE_DEFAULT = ISPEECH1_EVRC_TTYMODE_OFF
}

TTY/TDD mode selection.

More...
enum ISPEECH1_EVRC_Mode {
ISPEECH1_EVRC_MODE_PREMIUM = 0,
ISPEECH1_EVRC_MODE_STANDARD = 1,
ISPEECH1_EVRC_MODE_ECONOMY = 2,
ISPEECH1_EVRC_MODE_CAPACITYSAVE = 3,
ISPEECH1_EVRC_MODE_HALFRATE_MAX = 4,
ISPEECH1_EVRC_MODE_DEFAULT = ISPEECH1_EVRC_MODE_PREMIUM
}

Mode selection.

More...
enum ISPEECH1_EVRC_NullTrafficMode {
ISPEECH1_EVRC_NULLTRAFFICMODE_OFF = 0,
ISPEECH1_EVRC_NULLTRAFFICMODE_ON = 1,
ISPEECH1_EVRC_NULLTRAFFICMODE_DEFAULT = ISPEECH1_EVRC_NULLTRAFFICMODE_OFF
}

Null traffic channel setting.

More...

Detailed Description

This is the XDM speech interface shared between the various EVRC codecs.

Enumeration Type Documentation

enum ISPEECH1_EVRC_NoisePreProc

Enable/disable noise suppression.

Enumerator:
ISPEECH1_EVRC_NOISEPREPROC_OFF

The noise suppression is disabled.

ISPEECH1_EVRC_NOISEPREPROC_ON

The noise suppression is enabled.

ISPEECH1_EVRC_NOISEPREPROC_DEFAULT

Default setting.

enum ISPEECH1_EVRC_TTYMode

TTY/TDD mode selection.

Enumerator:
ISPEECH1_EVRC_TTYMODE_OFF

Off

ISPEECH1_EVRC_TTYMODE_45P45BPS

45.45 baud rate

ISPEECH1_EVRC_TTYMODE_50BPS

50 baud rate

ISPEECH1_EVRC_TTYMODE_DEFAULT

Default setting.

enum ISPEECH1_EVRC_Mode

Mode selection.

Remarks:
This is used for rate reduction mode in EVRC codecs. The average bit rate of speech encoding is controlled by these different modes.
Enumerator:
ISPEECH1_EVRC_MODE_PREMIUM

Premium mode.

ISPEECH1_EVRC_MODE_STANDARD

Standard mode.

ISPEECH1_EVRC_MODE_ECONOMY

Economy mode.

ISPEECH1_EVRC_MODE_CAPACITYSAVE

Capacity saving mode.

ISPEECH1_EVRC_MODE_HALFRATE_MAX

Half rate max mode.

ISPEECH1_EVRC_MODE_DEFAULT

Default setting.

enum ISPEECH1_EVRC_NullTrafficMode

Null traffic channel setting.

See also:
ISPHENC1_InArgs.nullTrafficChannel.
Enumerator:
ISPEECH1_EVRC_NULLTRAFFICMODE_OFF

Null traffic channel frames disabled, normal speech encoding is enabled.

ISPEECH1_EVRC_NULLTRAFFICMODE_ON

Null traffic channel frames enabled.

ISPEECH1_EVRC_NULLTRAFFICMODE_DEFAULT

Null traffic channel frames disabled, normal speech encoding is enabled.


Codec Engine Application Programming Interface (API): ISPEECH1_G722 - XDM Speech Interface (G.722)

Enumerations

ISPEECH1_G722 - XDM Speech Interface (G.722)

Enumerations

enum ISPEECH1_G722_BitRate {
ISPEECH1_G722_BITRATE_RATE0 = 0,
ISPEECH1_G722_BITRATE_RATE1 = 1,
ISPEECH1_G722_BITRATE_RATE2 = 2,
ISPEECH1_G722_BITRATE_RATE3 = 3,
ISPEECH1_G722_BITRATE_DEFAULT = ISPEECH1_G722_BITRATE_RATE0
}

Bit rate selection for G722.

More...
enum ISPEECH1_G722_CodecSelect {
ISPEECH1_G722_CODECSELECT_NONITUMODE = 0,
ISPEECH1_G722_CODECSELECT_ITUMODE = 1,
ISPEECH1_G722_CODECSELECT_DEFAULT = ISPEECH2_G722_CODECSELECT_NONITUMODE
}

Detailed Description

This is the XDM speech interface shared between the various G.722 codecs.

Enumeration Type Documentation

enum ISPEECH1_G722_BitRate

Bit rate selection for G722.

Enumerator:
ISPEECH1_G722_BITRATE_RATE0
Todo:
Need clearer description
ISPEECH1_G722_BITRATE_RATE1
Todo:
Need clearer description
ISPEECH1_G722_BITRATE_RATE2
Todo:
Need clearer description
ISPEECH1_G722_BITRATE_RATE3
Todo:
Need clearer description
ISPEECH1_G722_BITRATE_DEFAULT

Default setting.

enum ISPEECH1_G722_CodecSelect
Enumerator:
ISPEECH1_G722_CODECSELECT_NONITUMODE
ISPEECH1_G722_CODECSELECT_ITUMODE
ISPEECH1_G722_CODECSELECT_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): ISPEECH1_G7221 - XDM Speech Interface (G.7221)

Enumerations

ISPEECH1_G7221 - XDM Speech Interface (G.7221)

Enumerations

enum ISPEECH1_G7221_BitRate {
ISPEECH1_G7221_BITRATE_24 = 24,
ISPEECH1_G7221_BITRATE_32 = 32,
ISPEECH1_G7221_BITRATE_48 = 48,
ISPEECH1_G7221_BITRATE_DEFAULT = ISPEECH1_G7221_BITRATE_24
}

Bit rate selection for G7221.

More...
enum ISPEECH2_G7221_SamplingRate {
ISPEECH2_G7221_SAMPLINGRATE_WIDEBAND = 0,
ISPEECH2_G7221_SAMPLINGRATE_SUPEWIDEBAND = 1,
ISPEECH2_G7221_SAMPLINGRATE_DEFAULT = ISPEECH2_G7221_SAMPLINGRATE_WIDEBAND
}

Sampling Rate selection.

More...

Detailed Description

This is the XDM speech interface shared between the various G.7221 codecs.

Enumeration Type Documentation

enum ISPEECH1_G7221_BitRate

Bit rate selection for G7221.

Enumerator:
ISPEECH1_G7221_BITRATE_24

24 kbps

ISPEECH1_G7221_BITRATE_32

32 kbps

ISPEECH1_G7221_BITRATE_48

48 kbps

ISPEECH1_G7221_BITRATE_DEFAULT

Default setting.

enum ISPEECH2_G7221_SamplingRate

Sampling Rate selection.

Remarks:
This parameter is used to select the codec sampling rate
See also:
ISPHDEC2_Params.samplingRate
ISPHDEC2_Status.samplingRate
ISPHENC2_Params.samplingRate
ISPHENC2_Status.samplingRate
Enumerator:
ISPEECH2_G7221_SAMPLINGRATE_WIDEBAND

wideband mode(16KHz).

ISPEECH2_G7221_SAMPLINGRATE_SUPEWIDEBAND

super wide band mode(32KHz)

ISPEECH2_G7221_SAMPLINGRATE_DEFAULT


Codec Engine Application Programming Interface (API): ISPEECH1_G723 - XDM Speech Interface (G.723)

Enumerations

ISPEECH1_G723 - XDM Speech Interface (G.723)

Enumerations

enum ISPEECH1_G723_BitRate {
ISPEECH1_G723_BITRATE_5P3 = 0,
ISPEECH1_G723_BITRATE_6P3 = 1,
ISPEECH1_G723_BITRATE_DEFAULT = ISPEECH1_G723_BITRATE_6P3
}

Bit rate selection for G723.

More...
enum ISPEECH1_G723_NoisePreProc {
ISPEECH1_G723_NOISEPREPROC_OFF = 0,
ISPEECH1_G723_NOISEPREPROC_ON = 1,
ISPEECH1_G723_NOISEPREPROC_DEFAULT = ISPEECH1_G723_NOISEPREPROC_ON
}

Enable/disable high pass filter for G723.

More...

Detailed Description

This is the XDM speech interface shared between the various G.723 codecs.

Enumeration Type Documentation

enum ISPEECH1_G723_BitRate

Bit rate selection for G723.

Enumerator:
ISPEECH1_G723_BITRATE_5P3

5.3 kbps

ISPEECH1_G723_BITRATE_6P3

6.3 kbps

ISPEECH1_G723_BITRATE_DEFAULT

Default setting.

enum ISPEECH1_G723_NoisePreProc

Enable/disable high pass filter for G723.

Enumerator:
ISPEECH1_G723_NOISEPREPROC_OFF

The high pass filter is disabled.

ISPEECH1_G723_NOISEPREPROC_ON

The high pass filter is enabled.

ISPEECH1_G723_NOISEPREPROC_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): ISPEECH1_G726 - XDM Speech Interface (G.726)

Enumerations

ISPEECH1_G726 - XDM Speech Interface (G.726)

Enumerations

enum ISPEECH1_G726_BitRate {
ISPEECH1_G726_BITRATE_16 = 0,
ISPEECH1_G726_BITRATE_24 = 1,
ISPEECH1_G726_BITRATE_32 = 2,
ISPEECH1_G726_BITRATE_40 = 3,
ISPEECH1_G726_BITRATE_DEFAULT = ISPEECH1_G726_BITRATE_40
}

Bit rate selection for G726.

More...
enum ISPEECH1_G726_CompandingLaw {
ISPEECH1_G726_COMPAND_LINEAR = 0,
ISPEECH1_G726_COMPAND_ALAW = 1,
ISPEECH1_G726_COMPAND_ULAW = 2,
ISPEECH1_G726_COMPAND_DEFAULT = ISPEECH1_G726_COMPAND_LINEAR
}

Companding law of encoder input and decoder output samples.

More...
enum ISPEECH1_G726_PackingType {
ISPEECH1_G726_PACKTYPE_LINEAR = 0,
ISPEECH1_G726_PACKTYPE_RTPSPECIAL = 1,
ISPEECH1_G726_PACKTYPEFORMAT_DEFAULT = ISPEECH1_G726_PACKTYPE_LINEAR
}

Packing Type defintions for G.726.

More...

Detailed Description

This is the XDM speech interface shared between the various G.726 codecs.

Enumeration Type Documentation

enum ISPEECH1_G726_BitRate

Bit rate selection for G726.

Enumerator:
ISPEECH1_G726_BITRATE_16

16 kbps

ISPEECH1_G726_BITRATE_24

24 kbps

ISPEECH1_G726_BITRATE_32

32 kbps

ISPEECH1_G726_BITRATE_40

40 kbps

ISPEECH1_G726_BITRATE_DEFAULT

Default setting.

enum ISPEECH1_G726_CompandingLaw

Companding law of encoder input and decoder output samples.

Enumerator:
ISPEECH1_G726_COMPAND_LINEAR

Linear

ISPEECH1_G726_COMPAND_ALAW

A-law

ISPEECH1_G726_COMPAND_ULAW

Mu-law

ISPEECH1_G726_COMPAND_DEFAULT

Default setting.

enum ISPEECH1_G726_PackingType

Packing Type defintions for G.726.

Enumerator:
ISPEECH1_G726_PACKTYPE_LINEAR

Linear packing.

ISPEECH1_G726_PACKTYPE_RTPSPECIAL

RTP special format.

ISPEECH1_G726_PACKTYPEFORMAT_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): ISPEECH1_ILBC - XDM Speech Interface (iLBC)

Enumerations

ISPEECH1_ILBC - XDM Speech Interface (iLBC)

Enumerations

enum ISPEECH1_ILBC_CodecSelect {
ISPEECH1_ILBC_CODECSELECT_20MS = 0,
ISPEECH1_ILBC_CODECSELECT_30MS = 1,
ISPEECH1_ILBC_CODECSELECT_DEFAULT = ISPEECH1_ILBC_CODECSELECT_20MS
}

Codec selection.

More...

Detailed Description

This is the XDM speech interface shared between the various iLBC codecs.

Enumeration Type Documentation

enum ISPEECH1_ILBC_CodecSelect

Codec selection.

Remarks:
This parameter is used to select 20ms/30ms frame size for iLBC
Enumerator:
ISPEECH1_ILBC_CODECSELECT_20MS

20MS frame size

ISPEECH1_ILBC_CODECSELECT_30MS

30MS frame size

ISPEECH1_ILBC_CODECSELECT_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): ISPEECH1_PCM - XDM Speech Interface (PCM)

Enumerations

ISPEECH1_PCM - XDM Speech Interface (PCM)

Enumerations

enum ISPEECH1_PCM_CompandingLaw {
ISPEECH1_PCM_COMPAND_LINEAR = 0,
ISPEECH1_PCM_COMPAND_ALAW = 1,
ISPEECH1_PCM_COMPAND_ULAW = 2,
ISPEECH1_PCM_COMPAND_DEFAULT = ISPEECH1_PCM_COMPAND_LINEAR
}

Companding law of encoder input and decoder output samples.

More...

Detailed Description

This is the XDM speech interface shared between the various PCM codecs.

Enumeration Type Documentation

enum ISPEECH1_PCM_CompandingLaw

Companding law of encoder input and decoder output samples.

Enumerator:
ISPEECH1_PCM_COMPAND_LINEAR

Linear

ISPEECH1_PCM_COMPAND_ALAW

A-law

ISPEECH1_PCM_COMPAND_ULAW

Mu-law

ISPEECH1_PCM_COMPAND_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): ISPEECH1_SMV - XDM Speech Interface (SMV)

Enumerations

ISPEECH1_SMV - XDM Speech Interface (SMV)

Enumerations

enum ISPEECH1_SMV_NoisePreProc {
ISPEECH1_SMV_NOISEPREPROC_OFF = 0,
ISPEECH1_SMV_NOISEPREPROC_NSA = 1,
ISPEECH1_SMV_NOISEPREPROC_NSB = 2,
ISPEECH1_SMV_NOISEPREPROC_DEFAULT = ISPEECH1_SMV_NOISEPREPROC_NSA
}

Enabling/disabling noise suppression, and selection of noise suppression if the codec supports multiple noise supression modules.

More...
enum ISPEECH1_SMV_VADSelect {
ISPEECH1_SMV_VADSELECT_VADA = 1,
ISPEECH1_SMV_VADSELECT_VADB = 2,
ISPEECH1_SMV_VADSELECT_DEFAULT = ISPEECH1_SMV_VADSELECT_VADA
}

Voice activity detection (VAD) selection.

More...
enum ISPEECH1_SMV_TTYMode {
ISPEECH1_SMV_TTYMODE_OFF = 0,
ISPEECH1_SMV_TTYMODE_45P45BPS = 1,
ISPEECH1_SMV_TTYMODE_50BPS = 2,
ISPEECH1_SMV_TTYMODE_DEFAULT = ISPEECH1_SMV_TTYMODE_OFF
}

TTY/TDD mode selection.

More...
enum ISPEECH1_SMV_DTMFMode {
ISPEECH1_SMV_DTMFMODE_OFF = 0,
ISPEECH1_SMV_DTMFMODE_ON = 1,
ISPEECH1_SMV_DTMFMODE_DEFAULT = ISPEECH1_SMV_DTMFMODE_OFF
}

DTMF mode selection.

More...
enum ISPEECH1_SMV_DataMode {
ISPEECH1_SMV_DATAMODE_OFF = 0,
ISPEECH1_SMV_DATAMODE_HALFRATE = 1,
ISPEECH1_SMV_DATAMODE_FULLRATE = 1,
ISPEECH1_SMV_DATAMODE_DEFAULT = ISPEECH1_SMV_DATAMODE_OFF
}

Enable/disable in band data transmission and data rate selection.

More...
enum ISPEECH1_SMV_Mode {
ISPEECH1_SMV_MODE_PREMIUM = 0,
ISPEECH1_SMV_MODE_STANDARD = 1,
ISPEECH1_SMV_MODE_ECONOMY = 2,
ISPEECH1_SMV_MODE_CAPACITYSAVE = 3,
ISPEECH1_SMV_MODE_PREMIUM_HALFRATE_MAX = 4,
ISPEECH1_SMV_MODE_STANDARD_HALFRATE_MAX = 5,
ISPEECH1_SMV_MODE_DEFAULT = ISPEECH1_SMV_MODE_PREMIUM
}

Rate reduction mode selection.

More...

Detailed Description

This is the XDM speech interface shared between the various SMV codecs.

Enumeration Type Documentation

enum ISPEECH1_SMV_NoisePreProc

Enabling/disabling noise suppression, and selection of noise suppression if the codec supports multiple noise supression modules.

Enumerator:
ISPEECH1_SMV_NOISEPREPROC_OFF

Noise suppression is disabled.

ISPEECH1_SMV_NOISEPREPROC_NSA

Noise suppression is enabled, using option A.

ISPEECH1_SMV_NOISEPREPROC_NSB

Noise suppression is enabled, using option B.

ISPEECH1_SMV_NOISEPREPROC_DEFAULT

Default setting.

enum ISPEECH1_SMV_VADSelect

Voice activity detection (VAD) selection.

Enumerator:
ISPEECH1_SMV_VADSELECT_VADA

VAD A

ISPEECH1_SMV_VADSELECT_VADB

VAD B

ISPEECH1_SMV_VADSELECT_DEFAULT

Default setting.

enum ISPEECH1_SMV_TTYMode

TTY/TDD mode selection.

Enumerator:
ISPEECH1_SMV_TTYMODE_OFF

TTY detection is disabled.

ISPEECH1_SMV_TTYMODE_45P45BPS

TTY detection is enabled, with 45.45 bauds/sec rate.

ISPEECH1_SMV_TTYMODE_50BPS

TTY detection is enabled, with 50 bauds/sec rate.

ISPEECH1_SMV_TTYMODE_DEFAULT

Default setting.

enum ISPEECH1_SMV_DTMFMode

DTMF mode selection.

Enumerator:
ISPEECH1_SMV_DTMFMODE_OFF

DTMF detection is disabled.

ISPEECH1_SMV_DTMFMODE_ON

DTMF detection is enabled.

ISPEECH1_SMV_DTMFMODE_DEFAULT

Default setting.

enum ISPEECH1_SMV_DataMode

Enable/disable in band data transmission and data rate selection.

Enumerator:
ISPEECH1_SMV_DATAMODE_OFF

Data transmission is disabled

ISPEECH1_SMV_DATAMODE_HALFRATE

Data transmission is enabled at half rate.

ISPEECH1_SMV_DATAMODE_FULLRATE

Data transmission is enabled at full rate.

ISPEECH1_SMV_DATAMODE_DEFAULT

Default setting.

enum ISPEECH1_SMV_Mode

Rate reduction mode selection.

Enumerator:
ISPEECH1_SMV_MODE_PREMIUM

Premium mode.

ISPEECH1_SMV_MODE_STANDARD

Standard mode.

ISPEECH1_SMV_MODE_ECONOMY

Economy mode.

ISPEECH1_SMV_MODE_CAPACITYSAVE

Capacity saving mode.

ISPEECH1_SMV_MODE_PREMIUM_HALFRATE_MAX

Premium mode, with half rate maximum.

ISPEECH1_SMV_MODE_STANDARD_HALFRATE_MAX

Standard mode, with half rate maximum.

ISPEECH1_SMV_MODE_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): ISPEECH1_WBAMR - XDM Speech Interface (WBAMR)

Enumerations

ISPEECH1_WBAMR - XDM Speech Interface (WBAMR)

Enumerations

enum ISPEECH1_WBAMR_PackingType {
ISPEECH1_WBAMR_PACKTYPE_IF1_NOCRC = 0,
ISPEECH1_WBAMR_PACKTYPE_IF1_WITHCRC = 1,
ISPEECH1_WBAMR_PACKTYPE_IF2 = 2,
ISPEECH1_WBAMR_PACKTYPE_MIME = 3,
ISPEECH1_WBAMR_PACKTYPEFORMAT_DEFAULT = ISPEECH1_WBAMR_PACKTYPE_IF1_NOCRC
}

Packing Type defintions for AMR.

More...
enum ISPEECH1_WBAMR_BitRate {
ISPEECH1_WBAMR_BITRATE_6P60 = 0,
ISPEECH1_WBAMR_BITRATE_8P85 = 1,
ISPEECH1_WBAMR_BITRATE_12P65 = 2,
ISPEECH1_WBAMR_BITRATE_14P25 = 3,
ISPEECH1_WBAMR_BITRATE_15P85 = 4,
ISPEECH1_WBAMR_BITRATE_18P25 = 5,
ISPEECH1_WBAMR_BITRATE_19P85 = 6,
ISPEECH1_WBAMR_BITRATE_23P05 = 7,
ISPEECH1_WBAMR_BITRATE_23P85 = 8,
ISPEECH1_WBAMR_BITRATE_DEFAULT = ISPEECH1_WBAMR_BITRATE_23P85
}

Bitrate selection for AMR.

More...

Detailed Description

This is the XDM speech interface shared between the various WB-AMR codecs.

Enumeration Type Documentation

enum ISPEECH1_WBAMR_PackingType

Packing Type defintions for AMR.

Enumerator:
ISPEECH1_WBAMR_PACKTYPE_IF1_NOCRC

Interface format 1, without CRC check (as per 3GPP 26.201).

ISPEECH1_WBAMR_PACKTYPE_IF1_WITHCRC

Interface format 1, with CRC check (as per 3GPP 26.201).

ISPEECH1_WBAMR_PACKTYPE_IF2

Interface format 2 (as per 3GPP 26.201).

ISPEECH1_WBAMR_PACKTYPE_MIME

MIME/MMSIO/file storage format.

ISPEECH1_WBAMR_PACKTYPEFORMAT_DEFAULT

Default setting.

enum ISPEECH1_WBAMR_BitRate

Bitrate selection for AMR.

Enumerator:
ISPEECH1_WBAMR_BITRATE_6P60

6.60 kbps

ISPEECH1_WBAMR_BITRATE_8P85

8.85 kbps

ISPEECH1_WBAMR_BITRATE_12P65

12.65 kbps

ISPEECH1_WBAMR_BITRATE_14P25

14.25 kbps

ISPEECH1_WBAMR_BITRATE_15P85

15.85 kbps

ISPEECH1_WBAMR_BITRATE_18P25

18.25 kbps

ISPEECH1_WBAMR_BITRATE_19P85

19.85 kbps

ISPEECH1_WBAMR_BITRATE_23P05

23.05 kbps

ISPEECH1_WBAMR_BITRATE_23P85

23.85 kbps

ISPEECH1_WBAMR_BITRATE_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): ISPHDEC - XDM Speech Decoder Interface

Data Structures | Defines | Typedefs

ISPHDEC - XDM Speech Decoder Interface

Data Structures

struct | ISPHDEC_Obj
This must be the first field of all ISPHDEC instance objects. More...
struct | ISPHDEC_Params
Defines the creation time parameters for all ISPHDEC instance objects. More...
struct | ISPHDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | ISPHDEC_InArgs
Defines the input arguments for all ISPHDEC instance process function. More...
struct | ISPHDEC_Status
Defines instance status parameters (read-only). More...
struct | ISPHDEC_OutArgs
Defines the run time output arguments for all ISPHDEC instance objects. More...
struct | ISPHDEC_Fxns
Defines all of the operations on ISPHDEC objects. More...

Defines

#define | ISPHDEC_CID "ti.xdais.dm.ISPHDEC"
#define | ISPHDEC_ERUNTIME XDM_ERUNTIME
#define | ISPHDEC_EOK XDM_EOK
#define | ISPHDEC_EFAIL XDM_EFAIL

Typedefs

typedef struct ISPHDEC_Obj | ISPHDEC_Obj
This must be the first field of all ISPHDEC instance objects.
typedef struct ISPHDEC_Obj * | ISPHDEC_Handle
Opaque handle to an ISPHDEC objects.
typedef struct ISPHDEC_Params | ISPHDEC_Params
Defines the creation time parameters for all ISPHDEC instance objects.
typedef struct
ISPHDEC_DynamicParams 		ISPHDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct ISPHDEC_InArgs | ISPHDEC_InArgs
Defines the input arguments for all ISPHDEC instance process function.
typedef struct ISPHDEC_Status | ISPHDEC_Status
Defines instance status parameters (read-only).
typedef struct ISPHDEC_OutArgs | ISPHDEC_OutArgs
Defines the run time output arguments for all ISPHDEC instance objects.
typedef IALG_Cmd | ISPHDEC_Cmd
Defines the control commands for the ISPHDEC module.
typedef struct ISPHDEC_Fxns | ISPHDEC_Fxns
Defines all of the operations on ISPHDEC objects.

Detailed Description

This is the XDM ISPHDEC Speech Decoder Interface.

Deprecated:
This XDM speech decoder interface has been deprecated, and superceeded by newer ISPHDECx speech decoder interfaces.

Define Documentation

#define ISPHDEC_CID "ti.xdais.dm.ISPHDEC"

ISPHDEC Class ID

#define ISPHDEC_ERUNTIME XDM_ERUNTIME

General runtime failure.

#define ISPHDEC_EOK XDM_EOK

Success.

#define ISPHDEC_EFAIL XDM_EFAIL

General failure.

Typedef Documentation

typedef struct ISPHDEC_Obj ISPHDEC_Obj

This must be the first field of all ISPHDEC instance objects.

typedef struct ISPHDEC_Obj* ISPHDEC_Handle

Opaque handle to an ISPHDEC objects.

typedef struct ISPHDEC_Params ISPHDEC_Params

Defines the creation time parameters for all ISPHDEC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct ISPHDEC_DynamicParams ISPHDEC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::control()
typedef struct ISPHDEC_InArgs ISPHDEC_InArgs

Defines the input arguments for all ISPHDEC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::process()
typedef struct ISPHDEC_Status ISPHDEC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::control()
typedef struct ISPHDEC_OutArgs ISPHDEC_OutArgs

Defines the run time output arguments for all ISPHDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::process()
typedef IALG_Cmd ISPHDEC_Cmd

Defines the control commands for the ISPHDEC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
ISPHDEC_Fxns::control()
typedef struct ISPHDEC_Fxns ISPHDEC_Fxns

Defines all of the operations on ISPHDEC objects.


Codec Engine Application Programming Interface (API): ISPHDEC1 - XDM Speech Decoder Interface

Data Structures | Defines | Typedefs | Enumerations

ISPHDEC1 - XDM Speech Decoder Interface

Data Structures

struct | ISPHDEC1_Obj
This must be the first field of all ISPHDEC1 instance objects. More...
struct | ISPHDEC1_Params
Defines the creation time parameters for all ISPHDEC1 instance objects. More...
struct | ISPHDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via ISPHDEC1_Fxns.control(). More...
struct | ISPHDEC1_InArgs
Defines the input arguments for all ISPHDEC1 instance process function. More...
struct | ISPHDEC1_Status
Defines instance status parameters. More...
struct | ISPHDEC1_OutArgs
Defines the run time output arguments for all ISPHDEC1 instance objects. More...
struct | ISPHDEC1_Fxns
Defines all of the operations on ISPHDEC1 objects. More...

Defines

#define | ISPHDEC1_EOK XDM_EOK
#define | ISPHDEC1_EFAIL XDM_EFAIL
#define | ISPHDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct ISPHDEC1_Obj | ISPHDEC1_Obj
This must be the first field of all ISPHDEC1 instance objects.
typedef struct ISPHDEC1_Obj * | ISPHDEC1_Handle
Opaque handle to an ISPHDEC1 objects.
typedef struct ISPHDEC1_Params | ISPHDEC1_Params
Defines the creation time parameters for all ISPHDEC1 instance objects.
typedef struct
ISPHDEC1_DynamicParams 		ISPHDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via ISPHDEC1_Fxns.control().
typedef struct ISPHDEC1_InArgs | ISPHDEC1_InArgs
Defines the input arguments for all ISPHDEC1 instance process function.
typedef struct ISPHDEC1_Status | ISPHDEC1_Status
Defines instance status parameters.
typedef struct ISPHDEC1_OutArgs | ISPHDEC1_OutArgs
Defines the run time output arguments for all ISPHDEC1 instance objects.
typedef IALG_Cmd | ISPHDEC1_Cmd
Defines the control commands for the ISPHDEC1 module.
typedef struct ISPHDEC1_Fxns | ISPHDEC1_Fxns
Defines all of the operations on ISPHDEC1 objects.

Enumerations

enum ISPHDEC1_FrameType {
ISPHDEC1_FTYPE_SPEECHGOOD = 0,
ISPHDEC1_FTYPE_SIDUPDATE = 1,
ISPHDEC1_FTYPE_NODATA = 2,
ISPHDEC1_FTYPE_SPEECHLOST = 3,
ISPHDEC1_FTYPE_DEGRADED = 4,
ISPHDEC1_FTYPE_BAD = 5,
ISPHDEC1_FTYPE_SIDFIRST = 6,
ISPHDEC1_FTYPE_SIDBAD = 7,
ISPHDEC1_FTYPE_ONSET = 8
}

Decoder frame types.

More...

Detailed Description

This is the XDM ISPHDEC1 Speech Decoder Interface.

Define Documentation

#define ISPHDEC1_EOK XDM_EOK

Success.

#define ISPHDEC1_EFAIL XDM_EFAIL

General failure.

#define ISPHDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

Typedef Documentation

typedef struct ISPHDEC1_Obj ISPHDEC1_Obj

This must be the first field of all ISPHDEC1 instance objects.

typedef struct ISPHDEC1_Obj* ISPHDEC1_Handle

Opaque handle to an ISPHDEC1 objects.

typedef struct ISPHDEC1_Params ISPHDEC1_Params

Defines the creation time parameters for all ISPHDEC1 instance objects.

Remarks:
Some of the fields in this structure are optional and depend on the class of speech decoder you're creating.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct ISPHDEC1_DynamicParams ISPHDEC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via ISPHDEC1_Fxns.control().

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC1_Fxns::control()
typedef struct ISPHDEC1_InArgs ISPHDEC1_InArgs

Defines the input arguments for all ISPHDEC1 instance process function.

typedef struct ISPHDEC1_Status ISPHDEC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC1_Fxns::control()
typedef struct ISPHDEC1_OutArgs ISPHDEC1_OutArgs

Defines the run time output arguments for all ISPHDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC1_Fxns::process()
typedef IALG_Cmd ISPHDEC1_Cmd

Defines the control commands for the ISPHDEC1 module.

Remarks:
This ID can be extended in IMOD interface for additional control commands.
See also:
XDM_CmdId
ISPHDEC1_Fxns::control()
typedef struct ISPHDEC1_Fxns ISPHDEC1_Fxns

Defines all of the operations on ISPHDEC1 objects.

Enumeration Type Documentation

enum ISPHDEC1_FrameType

Decoder frame types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
ISPHDEC1_InArgs.frameType
Enumerator:
ISPHDEC1_FTYPE_SPEECHGOOD

Regular speech frame received without errors/loss.

ISPHDEC1_FTYPE_SIDUPDATE

SID update frames.

ISPHDEC1_FTYPE_NODATA

Untransmitted frame for codecs which support internal DTX.

ISPHDEC1_FTYPE_SPEECHLOST

Complete loss of speech frame.

ISPHDEC1_FTYPE_DEGRADED

Speech frame with a correct CRC, some invalid data.

ISPHDEC1_FTYPE_BAD

Speech frame (likely), but invalid.

ISPHDEC1_FTYPE_SIDFIRST

The first frame of comfort noise.

ISPHDEC1_FTYPE_SIDBAD

Corrupt SID update frame.

ISPHDEC1_FTYPE_ONSET

Frames which precede the first speech frame of a speech burst.


Codec Engine Application Programming Interface (API): ISPHENC - XDM Speech Encoder Interface

Data Structures | Defines | Typedefs

ISPHENC - XDM Speech Encoder Interface

Data Structures

struct | ISPHENC_Obj
This must be the first field of all ISPHENC instance objects. More...
struct | ISPHENC_Params
Defines the creation time parameters for all ISPHENC instance objects. More...
struct | ISPHENC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | ISPHENC_InArgs
Defines the input arguments for all ISPHENC instance process function. More...
struct | ISPHENC_Status
Defines instance status parameters (read-only). More...
struct | ISPHENC_OutArgs
Defines the run time output arguments for all ISPHENC instance objects. More...
struct | ISPHENC_Fxns
Defines all of the operations on ISPHENC objects. More...

Defines

#define | ISPHENC_CID "ti.xdais.dm.ISPHENC"
#define | ISPHENC_ERUNTIME XDM_ERUNTIME
#define | ISPHENC_EOK XDM_EOK
#define | ISPHENC_EFAIL XDM_EFAIL

Typedefs

typedef struct ISPHENC_Obj | ISPHENC_Obj
This must be the first field of all ISPHENC instance objects.
typedef struct ISPHENC_Obj * | ISPHENC_Handle
Opaque handle to an ISPHENC objects.
typedef struct ISPHENC_Params | ISPHENC_Params
Defines the creation time parameters for all ISPHENC instance objects.
typedef struct
ISPHENC_DynamicParams 		ISPHENC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct ISPHENC_InArgs | ISPHENC_InArgs
Defines the input arguments for all ISPHENC instance process function.
typedef struct ISPHENC_Status | ISPHENC_Status
Defines instance status parameters (read-only).
typedef struct ISPHENC_OutArgs | ISPHENC_OutArgs
Defines the run time output arguments for all ISPHENC instance objects.
typedef IALG_Cmd | ISPHENC_Cmd
Defines the control commands for the ISPHENC module.
typedef struct ISPHENC_Fxns | ISPHENC_Fxns
Defines all of the operations on ISPHENC objects.

Detailed Description

This is the XDM ISPHENC Speech/Voice Encoder Interface.

Deprecated:
This XDM speech encoder interface has been deprecated, and superceeded by newer ISPHENCx speech encoder interfaces.

Define Documentation

#define ISPHENC_CID "ti.xdais.dm.ISPHENC"

ISPHENC Class ID

#define ISPHENC_ERUNTIME XDM_ERUNTIME

General runtime failure.

#define ISPHENC_EOK XDM_EOK

Success.

#define ISPHENC_EFAIL XDM_EFAIL

General failure.

Typedef Documentation

typedef struct ISPHENC_Obj ISPHENC_Obj

This must be the first field of all ISPHENC instance objects.

typedef struct ISPHENC_Obj* ISPHENC_Handle

Opaque handle to an ISPHENC objects.

typedef struct ISPHENC_Params ISPHENC_Params

Defines the creation time parameters for all ISPHENC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct ISPHENC_DynamicParams ISPHENC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::control()
typedef struct ISPHENC_InArgs ISPHENC_InArgs

Defines the input arguments for all ISPHENC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::process()
typedef struct ISPHENC_Status ISPHENC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::control()
typedef struct ISPHENC_OutArgs ISPHENC_OutArgs

Defines the run time output arguments for all ISPHENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::process()
typedef IALG_Cmd ISPHENC_Cmd

Defines the control commands for the ISPHENC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
ISPHENC_Fxns::control()
typedef struct ISPHENC_Fxns ISPHENC_Fxns

Defines all of the operations on ISPHENC objects.


Codec Engine Application Programming Interface (API): ISPHENC1 - XDM Speech Encoder Interface

Data Structures | Defines | Typedefs | Enumerations

ISPHENC1 - XDM Speech Encoder Interface

Data Structures

struct | ISPHENC1_Obj
This must be the first field of all ISPHENC1 instance objects. More...
struct | ISPHENC1_Params
Defines the creation time parameters for all ISPHENC1 instance objects. More...
struct | ISPHENC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via ISPHENC1_Fxns.control(). More...
struct | ISPHENC1_InArgs
Defines the input arguments for all ISPHENC1 instance process function. More...
struct | ISPHENC1_Status
Defines instance status parameters. More...
struct | ISPHENC1_OutArgs
Defines the run time output arguments for all ISPHENC1 instance objects. More...
struct | ISPHENC1_Fxns
Defines all of the operations on ISPHENC1 objects. More...

Defines

#define | ISPHENC1_EOK XDM_EOK
#define | ISPHENC1_EFAIL XDM_EFAIL
#define | ISPHENC1_EUNSUPPORTED XDM_EUNSUPPORTED
#define | ISPHENC1_ENOOUTPUT 1
This value signifies no output being available at encoder, for example in the case of intermediate calls in 10msec frame size execution.

Typedefs

typedef struct ISPHENC1_Obj | ISPHENC1_Obj
This must be the first field of all ISPHENC1 instance objects.
typedef struct ISPHENC1_Obj * | ISPHENC1_Handle
Opaque handle to an ISPHENC1 objects.
typedef struct ISPHENC1_Params | ISPHENC1_Params
Defines the creation time parameters for all ISPHENC1 instance objects.
typedef struct
ISPHENC1_DynamicParams 		ISPHENC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via ISPHENC1_Fxns.control().
typedef struct ISPHENC1_InArgs | ISPHENC1_InArgs
Defines the input arguments for all ISPHENC1 instance process function.
typedef struct ISPHENC1_Status | ISPHENC1_Status
Defines instance status parameters.
typedef struct ISPHENC1_OutArgs | ISPHENC1_OutArgs
Defines the run time output arguments for all ISPHENC1 instance objects.
typedef IALG_Cmd | ISPHENC1_Cmd
Defines the control commands for the ISPHENC1 module.
typedef struct ISPHENC1_Fxns | ISPHENC1_Fxns
Defines all of the operations on ISPHENC1 objects.

Enumerations

enum ISPHENC1_FrameType {
ISPHENC1_FTYPE_SPEECH = 0,
ISPHENC1_FTYPE_SIDFRAME = 1,
ISPHENC1_FTYPE_NODATA = 2
}

Encoder frame types.

More...

Detailed Description

This is the XDM ISPHENC1 Speech Encoder Interface.

Define Documentation

#define ISPHENC1_EOK XDM_EOK

Success.

#define ISPHENC1_EFAIL XDM_EFAIL

General failure.

#define ISPHENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

#define ISPHENC1_ENOOUTPUT 1

This value signifies no output being available at encoder, for example in the case of intermediate calls in 10msec frame size execution.

Typedef Documentation

typedef struct ISPHENC1_Obj ISPHENC1_Obj

This must be the first field of all ISPHENC1 instance objects.

typedef struct ISPHENC1_Obj* ISPHENC1_Handle

Opaque handle to an ISPHENC1 objects.

typedef struct ISPHENC1_Params ISPHENC1_Params

Defines the creation time parameters for all ISPHENC1 instance objects.

Remarks:
Some of the fields in this structure are optional and depend on the class of speech encoder you're creating.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct ISPHENC1_DynamicParams ISPHENC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via ISPHENC1_Fxns.control().

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct ISPHENC1_InArgs ISPHENC1_InArgs

Defines the input arguments for all ISPHENC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct ISPHENC1_Status ISPHENC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct ISPHENC1_OutArgs ISPHENC1_OutArgs

Defines the run time output arguments for all ISPHENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC1_Fxns::process()
typedef IALG_Cmd ISPHENC1_Cmd

Defines the control commands for the ISPHENC1 module.

Remarks:
This ID can be extended in IMOD interface for additional control commands.
See also:
XDM_CmdId
ISPHENC1_Fxns::control()
typedef struct ISPHENC1_Fxns ISPHENC1_Fxns

Defines all of the operations on ISPHENC1 objects.

Enumeration Type Documentation

enum ISPHENC1_FrameType

Encoder frame types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
Enumerator:
ISPHENC1_FTYPE_SPEECH

Speech frame

ISPHENC1_FTYPE_SIDFRAME

SID frames for codecs which support DTX.

ISPHENC1_FTYPE_NODATA

Untransmitted frame for codecs which support DTX.


Codec Engine Application Programming Interface (API): IUNIVERSAL - XDM Beta Universal Algorithm Interface

Data Structures | Defines | Typedefs

IUNIVERSAL - XDM Beta Universal Algorithm Interface

Data Structures

struct | IUNIVERSAL_Obj
This must be the first field of all IUNIVERSAL instance objects. More...
struct | IUNIVERSAL_Params
Defines the creation time parameters for all IUNIVERSAL instance objects. More...
struct | IUNIVERSAL_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IUNIVERSAL_InArgs
Defines the input arguments for all IUNIVERSAL instance process function. More...
struct | IUNIVERSAL_Status
Defines instance status parameters (read-only). More...
struct | IUNIVERSAL_OutArgs
Defines the run time output arguments for all IUNIVERSAL instance objects. More...
struct | IUNIVERSAL_Fxns
Defines all of the operations on IUNIVERSAL objects. More...

Defines

#define | IUNIVERSAL_EOK XDM_EOK
#define | IUNIVERSAL_EFAIL XDM_EFAIL
#define | IUNIVERSAL_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IUNIVERSAL_Obj | IUNIVERSAL_Obj
This must be the first field of all IUNIVERSAL instance objects.
typedef struct IUNIVERSAL_Obj * | IUNIVERSAL_Handle
Opaque handle to an IUNIVERSAL objects.
typedef struct IUNIVERSAL_Params | IUNIVERSAL_Params
Defines the creation time parameters for all IUNIVERSAL instance objects.
typedef struct
IUNIVERSAL_DynamicParams 		IUNIVERSAL_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IUNIVERSAL_InArgs | IUNIVERSAL_InArgs
Defines the input arguments for all IUNIVERSAL instance process function.
typedef struct IUNIVERSAL_Status | IUNIVERSAL_Status
Defines instance status parameters (read-only).
typedef struct IUNIVERSAL_OutArgs | IUNIVERSAL_OutArgs
Defines the run time output arguments for all IUNIVERSAL instance objects.
typedef IALG_Cmd | IUNIVERSAL_Cmd
Defines the control commands for the IUNIVERSAL module.
typedef struct IUNIVERSAL_Fxns | IUNIVERSAL_Fxns
Defines all of the operations on IUNIVERSAL objects.

Detailed Description

This is the XDM Beta Universal Algorithm Interface.

Define Documentation

#define IUNIVERSAL_EOK XDM_EOK

Success.

#define IUNIVERSAL_EFAIL XDM_EFAIL

General failure.

#define IUNIVERSAL_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

Typedef Documentation

typedef struct IUNIVERSAL_Obj IUNIVERSAL_Obj

This must be the first field of all IUNIVERSAL instance objects.

typedef struct IUNIVERSAL_Obj* IUNIVERSAL_Handle

Opaque handle to an IUNIVERSAL objects.

typedef struct IUNIVERSAL_Params IUNIVERSAL_Params

Defines the creation time parameters for all IUNIVERSAL instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IUNIVERSAL_DynamicParams IUNIVERSAL_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::control()
typedef struct IUNIVERSAL_InArgs IUNIVERSAL_InArgs

Defines the input arguments for all IUNIVERSAL instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::process()
typedef struct IUNIVERSAL_Status IUNIVERSAL_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::control()
typedef struct IUNIVERSAL_OutArgs IUNIVERSAL_OutArgs

Defines the run time output arguments for all IUNIVERSAL instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::process()
typedef IALG_Cmd IUNIVERSAL_Cmd

Defines the control commands for the IUNIVERSAL module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IUNIVERSAL_Fxns::control()
typedef struct IUNIVERSAL_Fxns IUNIVERSAL_Fxns

Defines all of the operations on IUNIVERSAL objects.


Codec Engine Application Programming Interface (API): IVIDANALYTICS - XDM Beta Video Analytics Interface

Data Structures | Defines | Typedefs | Enumerations

IVIDANALYTICS - XDM Beta Video Analytics Interface

Data Structures

struct | IVIDANALYTICS_Grid
Access modes used to declare how the algorithm accessed buffers. More...
struct | IVIDANALYTICS_Rule
Analytics rule. More...
struct | IVIDANALYTICS_Obj
This must be the first field of all IVIDANALYTICS instance objects. More...
struct | IVIDANALYTICS_Params
Defines the creation time parameters for all IVIDANALYTICS instance objects. More...
struct | IVIDANALYTICS_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IVIDANALYTICS_InArgs
Defines the input arguments for all IVIDANALYTICS instance process function. More...
struct | IVIDANALYTICS_Status
Defines instance status parameters. More...
struct | IVIDANALYTICS_OutArgs
Defines the run time output arguments for all IVIDANALYTICS instance objects. More...
struct | IVIDANALYTICS_Fxns
Defines all of the operations on IVIDANALYTICS objects. More...

Defines

#define | IVIDANALYTICS_EOK XDM_EOK
#define | IVIDANALYTICS_EFAIL XDM_EFAIL
#define | IVIDANALYTICS_EUNSUPPORTED XDM_EUNSUPPORTED
#define | IVIDANALYTICS_SETRULE XDM_CLASSCMDBASE
Set a new rule.
#define | IVIDANALYTICS_CLEARRULE XDM_CLASSCMDBASE + 1
Clear a rule.
#define | IVIDANALYTICS_MAXTARGETS 128
Maximum targets that can be detected per process() call.
#define | IVIDANALYTICS_MAXEVENTS 128
Maximum number of events that can be detected per process() call.

Typedefs

typedef struct IVIDANALYTICS_Grid | IVIDANALYTICS_Grid
Access modes used to declare how the algorithm accessed buffers.
typedef struct IVIDANALYTICS_Rule | IVIDANALYTICS_Rule
Analytics rule.
typedef struct IVIDANALYTICS_Obj | IVIDANALYTICS_Obj
This must be the first field of all IVIDANALYTICS instance objects.
typedef struct IVIDANALYTICS_Obj * | IVIDANALYTICS_Handle
Opaque handle to an IVIDANALYTICS objects.
typedef struct IVIDANALYTICS_Params | IVIDANALYTICS_Params
Defines the creation time parameters for all IVIDANALYTICS instance objects.
typedef struct
IVIDANALYTICS_DynamicParams 		IVIDANALYTICS_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IVIDANALYTICS_InArgs | IVIDANALYTICS_InArgs
Defines the input arguments for all IVIDANALYTICS instance process function.
typedef struct IVIDANALYTICS_Status | IVIDANALYTICS_Status
Defines instance status parameters.
typedef struct
IVIDANALYTICS_OutArgs 		IVIDANALYTICS_OutArgs
Defines the run time output arguments for all IVIDANALYTICS instance objects.
typedef IALG_Cmd | IVIDANALYTICS_Cmd
Defines the control commands for the IVIDANALYTICS module.
typedef struct IVIDANALYTICS_Fxns | IVIDANALYTICS_Fxns
Defines all of the operations on IVIDANALYTICS objects.

Enumerations

enum IVIDANALYTICS_AnalysisMask {
IVIDANALYTICS_MOTIONDETECT = 0,
IVIDANALYTICS_OBJECTTRACKING = 1,
IVIDANALYTICS_USERBASE = 16
}

Access modes used to declare how the algorithm accessed buffers.

More...
enum IVIDANALYTICS_ObjectType {
IVIDANALYTICS_OBJECTTYPE_VEHICLE = 0,
IVIDANALYTICS_OBJECTTYPE_HUMAN = 1,
IVIDANALYTICS_OBJECTTYPE_USERBASE = 256
}

Types of objects.

More...
enum IVIDANALYTICS_ActionType {
IVIDANALYTICS_ACTIONTYPE_LOITER = 0,
IVIDANALYTICS_ACTIONTYPE_ENTER = 1,
IVIDANALYTICS_ACTIONTYPE_EXIT = 2,
IVIDANALYTICS_ACTIONTYPE_APPEAR = 3,
IVIDANALYTICS_ACTIONTYPE_DISAPPEAR = 4,
IVIDANALYTICS_ACTIONTYPE_CROSSL2R = 5,
IVIDANALYTICS_ACTIONTYPE_CROSSR2L = 6,
IVIDANALYTICS_ACTIONTYPE_CROSSU2D = 7,
IVIDANALYTICS_ACTIONTYPE_CROSSD2U = 8,
IVIDANALYTICS_ACTIONTYPE_USERBASE = 256
}

Types of objects.

More...
enum IVIDANALYTICS_ViewState {
IVIDANALYTICS_VIEWSTATE_BAD = 0,
IVIDANALYTICS_VIEWSTATE_GOOD = 1
}

View state of the analytics engine.

More...

Detailed Description

This is the XDM Beta Video Analytics Interface.

Define Documentation

#define IVIDANALYTICS_EOK XDM_EOK

Success.

#define IVIDANALYTICS_EFAIL XDM_EFAIL

General failure.

#define IVIDANALYTICS_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

#define IVIDANALYTICS_SETRULE XDM_CLASSCMDBASE

Set a new rule.

#define IVIDANALYTICS_CLEARRULE XDM_CLASSCMDBASE + 1

Clear a rule.

#define IVIDANALYTICS_MAXTARGETS 128

Maximum targets that can be detected per process() call.

Todo:
This could be 64 if needed. Need to understand the size of structs that use this and whether they're "too big".
#define IVIDANALYTICS_MAXEVENTS 128

Maximum number of events that can be detected per process() call.

Todo:
Need to understand the size of structs that use this and whether they're "too big".

Typedef Documentation

typedef struct IVIDANALYTICS_Grid IVIDANALYTICS_Grid

Access modes used to declare how the algorithm accessed buffers.

Remarks:
The IVIDANALYTICS interface reserves bits 0-15. Bits 16-31 are available to the user.
See also:
IVIDANALYTICS_DynamicParams::grid
typedef struct IVIDANALYTICS_Rule IVIDANALYTICS_Rule

Analytics rule.

typedef struct IVIDANALYTICS_Obj IVIDANALYTICS_Obj

This must be the first field of all IVIDANALYTICS instance objects.

typedef struct IVIDANALYTICS_Obj* IVIDANALYTICS_Handle

Opaque handle to an IVIDANALYTICS objects.

typedef struct IVIDANALYTICS_Params IVIDANALYTICS_Params

Defines the creation time parameters for all IVIDANALYTICS instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IVIDANALYTICS_DynamicParams IVIDANALYTICS_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDANALYTICS_Fxns::control()
typedef struct IVIDANALYTICS_InArgs IVIDANALYTICS_InArgs

Defines the input arguments for all IVIDANALYTICS instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDANALYTICS_Fxns::process()
typedef struct IVIDANALYTICS_Status IVIDANALYTICS_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDANALYTICS_Fxns::control()
typedef struct IVIDANALYTICS_OutArgs IVIDANALYTICS_OutArgs

Defines the run time output arguments for all IVIDANALYTICS instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::process()
typedef IALG_Cmd IVIDANALYTICS_Cmd

Defines the control commands for the IVIDANALYTICS module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDANALYTICS_Fxns::control()
typedef struct IVIDANALYTICS_Fxns IVIDANALYTICS_Fxns

Defines all of the operations on IVIDANALYTICS objects.

Enumeration Type Documentation

enum IVIDANALYTICS_AnalysisMask

Access modes used to declare how the algorithm accessed buffers.

Remarks:
The IVIDANALYTICS interface reserves bits 0-15. Bits 16-31 are available to the user.
See also:
IVIDANALYTICS_Mask::enableMask
Enumerator:
IVIDANALYTICS_MOTIONDETECT

Motion detection, bit 0

IVIDANALYTICS_OBJECTTRACKING

Object tracking, bit 1

IVIDANALYTICS_USERBASE

User supplied analysis begins at bit 16.

enum IVIDANALYTICS_ObjectType

Types of objects.

Remarks:
The IVIDANALYTICS interface reserves types 0-255. User-defined objects can be defined from 256 and larger.
Enumerator:
IVIDANALYTICS_OBJECTTYPE_VEHICLE

Object is a vehicle

IVIDANALYTICS_OBJECTTYPE_HUMAN

Object is a human

IVIDANALYTICS_OBJECTTYPE_USERBASE

User supplied objects begins at 256.

enum IVIDANALYTICS_ActionType

Types of objects.

Remarks:
The IVIDANALYTICS interface reserves types 0-255. User-defined actions can be defined from 256 and larger.
Enumerator:
IVIDANALYTICS_ACTIONTYPE_LOITER

Object is loitering

IVIDANALYTICS_ACTIONTYPE_ENTER

Object enters

IVIDANALYTICS_ACTIONTYPE_EXIT

Object exits

IVIDANALYTICS_ACTIONTYPE_APPEAR

Object appears

IVIDANALYTICS_ACTIONTYPE_DISAPPEAR

Object appears

IVIDANALYTICS_ACTIONTYPE_CROSSL2R

Object crosses left to right

IVIDANALYTICS_ACTIONTYPE_CROSSR2L

Object crosses right to left

IVIDANALYTICS_ACTIONTYPE_CROSSU2D

Object crosses up to down

IVIDANALYTICS_ACTIONTYPE_CROSSD2U

Object crosses down to up

IVIDANALYTICS_ACTIONTYPE_USERBASE

User supplied objects begins at 256.

enum IVIDANALYTICS_ViewState

View state of the analytics engine.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
Todo:
Need to further review and define. Probably need hooks for user-defined states, in addition to some pre-defined ones.
See also:
IVIDANALYTICS_OutArgs::viewState
IVIDANALYTICS_Status::viewState
Enumerator:
IVIDANALYTICS_VIEWSTATE_BAD
IVIDANALYTICS_VIEWSTATE_GOOD


Codec Engine Application Programming Interface (API): IVIDDEC - XDM Video Decoder Interface

Data Structures | Defines | Typedefs

IVIDDEC - XDM Video Decoder Interface

Data Structures

struct | IVIDDEC_Obj
This must be the first field of all IVIDDEC instance objects. More...
struct | IVIDDEC_Params
Defines the creation time parameters for all IVIDDEC instance objects. More...
struct | IVIDDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDDEC_InArgs
Defines the input arguments for all IVIDDEC instance process function. More...
struct | IVIDDEC_Status
Defines instance status parameters. More...
struct | IVIDDEC_OutArgs
Defines the run time output arguments for all IVIDDEC instance objects. More...
struct | IVIDDEC_Fxns
Defines all of the operations on IVIDDEC objects. More...

Defines

#define | IVIDDEC_CID "ti.xdais.dm.IVIDDEC"
#define | IVIDDEC_ERUNTIME XDM_ERUNTIME
#define | IVIDDEC_EOK XDM_EOK
#define | IVIDDEC_EFAIL XDM_EFAIL

Typedefs

typedef struct IVIDDEC_Obj | IVIDDEC_Obj
This must be the first field of all IVIDDEC instance objects.
typedef struct IVIDDEC_Obj * | IVIDDEC_Handle
Opaque handle to an IVIDDEC objects.
typedef struct IVIDDEC_Params | IVIDDEC_Params
Defines the creation time parameters for all IVIDDEC instance objects.
typedef struct
IVIDDEC_DynamicParams 		IVIDDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDDEC_InArgs | IVIDDEC_InArgs
Defines the input arguments for all IVIDDEC instance process function.
typedef struct IVIDDEC_Status | IVIDDEC_Status
Defines instance status parameters.
typedef struct IVIDDEC_OutArgs | IVIDDEC_OutArgs
Defines the run time output arguments for all IVIDDEC instance objects.
typedef IALG_Cmd | IVIDDEC_Cmd
Defines the control commands for the IVIDDEC module.
typedef struct IVIDDEC_Fxns | IVIDDEC_Fxns
Defines all of the operations on IVIDDEC objects.

Detailed Description

This is the XDM IVIDDEC Video Decoder Interface.

Deprecated:
This XDM video decoder interface has been deprecated, and superceeded by newer IVIDDECx video decoder interfaces.

Define Documentation

#define IVIDDEC_CID "ti.xdais.dm.IVIDDEC"

IVIDDEC Class ID

#define IVIDDEC_ERUNTIME XDM_ERUNTIME

General runtime failure.

#define IVIDDEC_EOK XDM_EOK

Success.

#define IVIDDEC_EFAIL XDM_EFAIL

General failure.

Typedef Documentation

typedef struct IVIDDEC_Obj IVIDDEC_Obj

This must be the first field of all IVIDDEC instance objects.

typedef struct IVIDDEC_Obj* IVIDDEC_Handle

Opaque handle to an IVIDDEC objects.

typedef struct IVIDDEC_Params IVIDDEC_Params

Defines the creation time parameters for all IVIDDEC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementation allowing customization with vendor specific parameters.
The size field must be correctly set by the caller.
typedef struct IVIDDEC_DynamicParams IVIDDEC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::control()
typedef struct IVIDDEC_InArgs IVIDDEC_InArgs

Defines the input arguments for all IVIDDEC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::process()
typedef struct IVIDDEC_Status IVIDDEC_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::control()
typedef struct IVIDDEC_OutArgs IVIDDEC_OutArgs

Defines the run time output arguments for all IVIDDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::process()
typedef IALG_Cmd IVIDDEC_Cmd

Defines the control commands for the IVIDDEC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDDEC_Fxns::control()
typedef struct IVIDDEC_Fxns IVIDDEC_Fxns

Defines all of the operations on IVIDDEC objects.


Codec Engine Application Programming Interface (API): IVIDDEC1 - XDM Video Decoder Interface

Data Structures | Defines | Typedefs | Enumerations

IVIDDEC1 - XDM Video Decoder Interface

Data Structures

struct | IVIDDEC1_Obj
This must be the first field of all IVIDDEC1 instance objects. More...
struct | IVIDDEC1_Params
Defines the creation time parameters for all IVIDDEC1 instance objects. More...
struct | IVIDDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDDEC1_InArgs
Defines the input arguments for all IVIDDEC1 instance process function. More...
struct | IVIDDEC1_Status
Defines instance status parameters. More...
struct | IVIDDEC1_OutArgs
Defines the run time output arguments for all IVIDDEC1 instance objects. More...
struct | IVIDDEC1_Fxns
Defines all of the operations on IVIDDEC1 objects. More...

Defines

#define | IVIDDEC1_EOK XDM_EOK
#define | IVIDDEC1_EFAIL XDM_EFAIL
#define | IVIDDEC1_EUNSUPPORTED XDM_EUNSUPPORTED
#define | IVIDDEC1_FREE_BUFF_SIZE 16

Typedefs

typedef struct IVIDDEC1_Obj | IVIDDEC1_Obj
This must be the first field of all IVIDDEC1 instance objects.
typedef struct IVIDDEC1_Obj * | IVIDDEC1_Handle
Opaque handle to an IVIDDEC1 objects.
typedef struct IVIDDEC1_Params | IVIDDEC1_Params
Defines the creation time parameters for all IVIDDEC1 instance objects.
typedef struct
IVIDDEC1_DynamicParams 		IVIDDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDDEC1_InArgs | IVIDDEC1_InArgs
Defines the input arguments for all IVIDDEC1 instance process function.
typedef struct IVIDDEC1_Status | IVIDDEC1_Status
Defines instance status parameters.
typedef struct IVIDDEC1_OutArgs | IVIDDEC1_OutArgs
Defines the run time output arguments for all IVIDDEC1 instance objects.
typedef IALG_Cmd | IVIDDEC1_Cmd
Defines the control commands for the IVIDDEC1 module.
typedef struct IVIDDEC1_Fxns | IVIDDEC1_Fxns
Defines all of the operations on IVIDDEC1 objects.

Enumerations

enum IVIDDEC1_FrameOrder {
IVIDDEC_DISPLAY_ORDER = 0,
IVIDDEC_DECODE_ORDER = 1,
IVIDDEC_FRAMEORDER_DEFAULT = IVIDDEC_DISPLAY_ORDER
}

Video decoder output frame order.

More...

Detailed Description

This is the XDM IVIDDEC1 Video Decoder Interface.

Deprecated:
This XDM video decoder interface has been deprecated, and superceeded by newer IVIDDECx video decoder interfaces.

Define Documentation

#define IVIDDEC1_EOK XDM_EOK

Success.

#define IVIDDEC1_EFAIL XDM_EFAIL

General failure.

#define IVIDDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

#define IVIDDEC1_FREE_BUFF_SIZE 16

Maximum buffer that can be freed up in a single process call

Typedef Documentation

typedef struct IVIDDEC1_Obj IVIDDEC1_Obj

This must be the first field of all IVIDDEC1 instance objects.

typedef struct IVIDDEC1_Obj* IVIDDEC1_Handle

Opaque handle to an IVIDDEC1 objects.

typedef struct IVIDDEC1_Params IVIDDEC1_Params

Defines the creation time parameters for all IVIDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IVIDDEC1_DynamicParams IVIDDEC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::control()
typedef struct IVIDDEC1_InArgs IVIDDEC1_InArgs

Defines the input arguments for all IVIDDEC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::process()
typedef struct IVIDDEC1_Status IVIDDEC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
All fields correspond to latest IVIDDEC1_Fxns::process() call on the particular instance of the decoder.
See also:
IVIDDEC1_Fxns::control()
typedef struct IVIDDEC1_OutArgs IVIDDEC1_OutArgs

Defines the run time output arguments for all IVIDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::process()
typedef IALG_Cmd IVIDDEC1_Cmd

Defines the control commands for the IVIDDEC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDDEC1_Fxns::control()
typedef struct IVIDDEC1_Fxns IVIDDEC1_Fxns

Defines all of the operations on IVIDDEC1 objects.

Enumeration Type Documentation

enum IVIDDEC1_FrameOrder

Video decoder output frame order.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
IVIDDEC1_DynamicParams::frameOrder
Enumerator:
IVIDDEC_DISPLAY_ORDER

The decoder provides decoded output in in the actual order of displaying the output buffer. The codec assumes the responsibility of reordering the frames.

Remarks:
The output buffer will be delayed by one frame, regardless of whether the frame contains I/P or I/P/B frames.
This is the default mode.
This mode is required to be supported by all video decoder codecs.
IVIDDEC_DECODE_ORDER

The decoder provides decoded output in the the order of decoding. There will be no delay in the output buffers.

Remarks:
It is the application's responsibility to handle the frame re-ordering.
This mode is optional. If it is not supported by the decoder, IVIDDEC_EUNSUPPORTED will be returned.
IVIDDEC_FRAMEORDER_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): IVIDDEC2 - XDM Video Decoder Interface

Data Structures | Defines | Typedefs | Enumerations

IVIDDEC2 - XDM Video Decoder Interface

Data Structures

struct | IVIDDEC2_Obj
This must be the first field of all IVIDDEC2 instance objects. More...
struct | IVIDDEC2_Params
Defines the creation time parameters for all IVIDDEC2 instance objects. More...
struct | IVIDDEC2_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDDEC2_InArgs
Defines the input arguments for all IVIDDEC2 instance process function. More...
struct | IVIDDEC2_Status
Defines instance status parameters. More...
struct | IVIDDEC2_OutArgs
Defines the run time output arguments for all IVIDDEC2 instance objects. More...
struct | IVIDDEC2_Fxns
Defines all of the operations on IVIDDEC2 objects. More...

Defines

#define | IVIDDEC2_MAX_IO_BUFFERS IVIDEO2_MAX_IO_BUFFERS
Maximum I/O Buffers.
#define | IVIDDEC2_EOK XDM_EOK
#define | IVIDDEC2_EFAIL XDM_EFAIL
#define | IVIDDEC2_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IVIDDEC2_Obj | IVIDDEC2_Obj
This must be the first field of all IVIDDEC2 instance objects.
typedef struct IVIDDEC2_Obj * | IVIDDEC2_Handle
Opaque handle to an IVIDDEC2 objects.
typedef struct IVIDDEC2_Params | IVIDDEC2_Params
Defines the creation time parameters for all IVIDDEC2 instance objects.
typedef struct
IVIDDEC2_DynamicParams 		IVIDDEC2_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDDEC2_InArgs | IVIDDEC2_InArgs
Defines the input arguments for all IVIDDEC2 instance process function.
typedef struct IVIDDEC2_Status | IVIDDEC2_Status
Defines instance status parameters.
typedef struct IVIDDEC2_OutArgs | IVIDDEC2_OutArgs
Defines the run time output arguments for all IVIDDEC2 instance objects.
typedef IALG_Cmd | IVIDDEC2_Cmd
Defines the control commands for the IVIDDEC2 module.
typedef struct IVIDDEC2_Fxns | IVIDDEC2_Fxns
Defines all of the operations on IVIDDEC2 objects.

Enumerations

enum IVIDDEC2_FrameOrder {
IVIDDEC2_DISPLAY_ORDER = 0,
IVIDDEC2_DECODE_ORDER = 1,
IVIDDEC2_FRAMEORDER_DEFAULT = IVIDDEC2_DISPLAY_ORDER
}

Video decoder output frame order.

More...

Detailed Description

This is the XDM IVIDDEC2 Video Decoder Interface.

Define Documentation

#define IVIDDEC2_MAX_IO_BUFFERS IVIDEO2_MAX_IO_BUFFERS

Maximum I/O Buffers.

Remarks:
This IVIDDEC2-specific definition has been replaced with IVIDEO2_MAX_IO_BUFFERS. It has been kept for backward compatibility, but users are encouraged to use IVIDEO2_MAX_IO_BUFFERS instead.
See also:
IVIDEO2_MAX_IO_BUFFERS
#define IVIDDEC2_EOK XDM_EOK

Success.

#define IVIDDEC2_EFAIL XDM_EFAIL

General failure.

#define IVIDDEC2_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

Typedef Documentation

typedef struct IVIDDEC2_Obj IVIDDEC2_Obj

This must be the first field of all IVIDDEC2 instance objects.

typedef struct IVIDDEC2_Obj* IVIDDEC2_Handle

Opaque handle to an IVIDDEC2 objects.

typedef struct IVIDDEC2_Params IVIDDEC2_Params

Defines the creation time parameters for all IVIDDEC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IVIDDEC2_DynamicParams IVIDDEC2_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2_Fxns::control()
typedef struct IVIDDEC2_InArgs IVIDDEC2_InArgs

Defines the input arguments for all IVIDDEC2 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2_Fxns::process()
typedef struct IVIDDEC2_Status IVIDDEC2_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
All fields correspond to latest IVIDDEC2_Fxns::process() call on the particular instance of the decoder.
See also:
IVIDDEC2_Fxns::control()
typedef struct IVIDDEC2_OutArgs IVIDDEC2_OutArgs

Defines the run time output arguments for all IVIDDEC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2_Fxns::process()
typedef IALG_Cmd IVIDDEC2_Cmd

Defines the control commands for the IVIDDEC2 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDDEC2_Fxns::control()
typedef struct IVIDDEC2_Fxns IVIDDEC2_Fxns

Defines all of the operations on IVIDDEC2 objects.

Enumeration Type Documentation

enum IVIDDEC2_FrameOrder

Video decoder output frame order.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
IVIDDEC2_DynamicParams::frameOrder
Enumerator:
IVIDDEC2_DISPLAY_ORDER

The decoder provides decoded output in in the actual order of displaying the output buffer. The codec assumes the responsibility of reordering the frames.

Remarks:
The output buffer will be delayed by one frame, regardless of whether the frame contains I/P or I/P/B frames.
This is the default mode.
This mode is required to be supported by all video decoder codecs.
IVIDDEC2_DECODE_ORDER

The decoder provides decoded output in the the order of decoding. There will be no delay in the output buffers.

Remarks:
It is the application's responsibility to handle the frame re-ordering.
This mode is optional. If it is not supported by the decoder, IVIDDEC_EUNSUPPORTED will be returned.
IVIDDEC2_FRAMEORDER_DEFAULT

Default setting.


Codec Engine Application Programming Interface (API): IVIDDEC3 - XDM Video Decoder Interface

Data Structures | Defines | Typedefs | Enumerations

IVIDDEC3 - XDM Video Decoder Interface

Data Structures

struct | IVIDDEC3_Obj
This must be the first field of all IVIDDEC3 instance objects. More...
struct | IVIDDEC3_Params
Defines the creation time parameters for all IVIDDEC3 instance objects. More...
struct | IVIDDEC3_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls. More...
struct | IVIDDEC3_InArgs
Defines the input arguments for all IVIDDEC3 instance process function. More...
struct | IVIDDEC3_Status
Defines instance status parameters. More...
struct | IVIDDEC3_OutArgs
Defines the run time output arguments for all IVIDDEC3 instance objects. More...
struct | IVIDDEC3_Fxns
Defines all of the operations on IVIDDEC3 objects. More...

Defines

#define | IVIDDEC3_EOK XDM_EOK
#define | IVIDDEC3_EFAIL XDM_EFAIL
#define | IVIDDEC3_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IVIDDEC3_Obj | IVIDDEC3_Obj
This must be the first field of all IVIDDEC3 instance objects.
typedef struct IVIDDEC3_Obj * | IVIDDEC3_Handle
Opaque handle to an IVIDDEC3 objects.
typedef struct IVIDDEC3_Params | IVIDDEC3_Params
Defines the creation time parameters for all IVIDDEC3 instance objects.
typedef struct
IVIDDEC3_DynamicParams 		IVIDDEC3_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls.
typedef struct IVIDDEC3_InArgs | IVIDDEC3_InArgs
Defines the input arguments for all IVIDDEC3 instance process function.
typedef struct IVIDDEC3_Status | IVIDDEC3_Status
Defines instance status parameters.
typedef struct IVIDDEC3_OutArgs | IVIDDEC3_OutArgs
Defines the run time output arguments for all IVIDDEC3 instance objects.
typedef IALG_Cmd | IVIDDEC3_Cmd
Defines the control commands for the IVIDDEC3 module.
typedef struct IVIDDEC3_Fxns | IVIDDEC3_Fxns
Defines all of the operations on IVIDDEC3 objects.

Enumerations

enum IVIDDEC3_displayDelay {
IVIDDEC3_DISPLAY_DELAY_AUTO = -1,
IVIDDEC3_DECODE_ORDER = 0,
IVIDDEC3_DISPLAY_DELAY_1 = 1,
IVIDDEC3_DISPLAY_DELAY_2 = 2,
IVIDDEC3_DISPLAY_DELAY_3 = 3,
IVIDDEC3_DISPLAY_DELAY_4 = 4,
IVIDDEC3_DISPLAY_DELAY_5 = 5,
IVIDDEC3_DISPLAY_DELAY_6 = 6,
IVIDDEC3_DISPLAY_DELAY_7 = 7,
IVIDDEC3_DISPLAY_DELAY_8 = 8,
IVIDDEC3_DISPLAY_DELAY_9 = 9,
IVIDDEC3_DISPLAY_DELAY_10 = 10,
IVIDDEC3_DISPLAY_DELAY_11 = 11,
IVIDDEC3_DISPLAY_DELAY_12 = 12,
IVIDDEC3_DISPLAY_DELAY_13 = 13,
IVIDDEC3_DISPLAY_DELAY_14 = 14,
IVIDDEC3_DISPLAY_DELAY_15 = 15,
IVIDDEC3_DISPLAY_DELAY_16 = 16,
IVIDDEC3_DISPLAYDELAY_DEFAULT = IVIDDEC3_DISPLAY_DELAY_AUTO
}

Video decoder output frame order.

More...
enum IVIDDEC3_DisplayBufsMode {
IVIDDEC3_DISPLAYBUFS_EMBEDDED = 1,
IVIDDEC3_DISPLAYBUFS_PTRS = 2
}

Mode in which display buffers will be returned in IVIDDEC3_OutArgs.

More...

Detailed Description

This is the XDM IVIDDEC3 Video Decoder Interface.

Define Documentation

#define IVIDDEC3_EOK XDM_EOK

Success.

#define IVIDDEC3_EFAIL XDM_EFAIL

General failure.

#define IVIDDEC3_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

Typedef Documentation

typedef struct IVIDDEC3_Obj IVIDDEC3_Obj

This must be the first field of all IVIDDEC3 instance objects.

typedef struct IVIDDEC3_Obj* IVIDDEC3_Handle

Opaque handle to an IVIDDEC3 objects.

typedef struct IVIDDEC3_Params IVIDDEC3_Params

Defines the creation time parameters for all IVIDDEC3 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IVIDDEC3_DynamicParams IVIDDEC3_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC3_Fxns::control()
typedef struct IVIDDEC3_InArgs IVIDDEC3_InArgs

Defines the input arguments for all IVIDDEC3 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC3_Fxns::process()
typedef struct IVIDDEC3_Status IVIDDEC3_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC3_Fxns::control()
typedef struct IVIDDEC3_OutArgs IVIDDEC3_OutArgs

Defines the run time output arguments for all IVIDDEC3 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
The size of this struct may vary when IVIDDEC3_OutArgs.displayBufsMode is set to IVIDDEC3_DISPLAYBUFS_EMBEDDED (see details in IVIDDEC3_OutArgs.displayBufs.bufDesc).
When IVIDDEC3_OutArgs.displayBufsMode is set to IVIDDEC3_DISPLAYBUFS_EMBEDDED, the number of elements in the IVIDDEC3_OutArgs.displayBufs.bufDesc array is a constant (and can be acquired by calling IVIDDEC3_Fxns.control() and looking in the IVIDDEC3_Status.maxOutArgsDisplayBufs field. Note that any extended fields follow the IVIDDEC3_OutArgs.displayBufs.bufDesc array.
See also:
IVIDDEC3_Fxns.process()
typedef IALG_Cmd IVIDDEC3_Cmd

Defines the control commands for the IVIDDEC3 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDDEC3_Fxns::control()
typedef struct IVIDDEC3_Fxns IVIDDEC3_Fxns

Defines all of the operations on IVIDDEC3 objects.

Enumeration Type Documentation

enum IVIDDEC3_displayDelay

Video decoder output frame order.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
IVIDDEC3_Params.displayDelay
Enumerator:
IVIDDEC3_DISPLAY_DELAY_AUTO

Decoder decides the display delay

IVIDDEC3_DECODE_ORDER

Display frames are in decoded order without delay

IVIDDEC3_DISPLAY_DELAY_1

Display the frames with 1 frame delay

IVIDDEC3_DISPLAY_DELAY_2

Display the frames with 2 frames delay

IVIDDEC3_DISPLAY_DELAY_3

Display the frames with 3 frames delay

IVIDDEC3_DISPLAY_DELAY_4

Display the frames with 4 frames delay

IVIDDEC3_DISPLAY_DELAY_5

Display the frames with 5 frames delay

IVIDDEC3_DISPLAY_DELAY_6

Display the frames with 6 frames delay

IVIDDEC3_DISPLAY_DELAY_7

Display the frames with 7 frames delay

IVIDDEC3_DISPLAY_DELAY_8

Display the frames with 8 frames delay

IVIDDEC3_DISPLAY_DELAY_9

Display the frames with 9 frames delay

IVIDDEC3_DISPLAY_DELAY_10

Display the frames with 10 frames delay

IVIDDEC3_DISPLAY_DELAY_11

Display the frames with 11 frames delay

IVIDDEC3_DISPLAY_DELAY_12

Display the frames with 12 frames delay

IVIDDEC3_DISPLAY_DELAY_13

Display the frames with 13 frames delay

IVIDDEC3_DISPLAY_DELAY_14

Display the frames with 14 frames delay

IVIDDEC3_DISPLAY_DELAY_15

Display the frames with 15 frames delay

IVIDDEC3_DISPLAY_DELAY_16

Display the frames with 16 frames delay

IVIDDEC3_DISPLAYDELAY_DEFAULT
enum IVIDDEC3_DisplayBufsMode

Mode in which display buffers will be returned in IVIDDEC3_OutArgs.

Remarks:
Note that we start this enum at '1' to help catch inadvertently uninitialized fields.
This enumeration data type should not be used for storage, but rather only for its constant values.
Enumerator:
IVIDDEC3_DISPLAYBUFS_EMBEDDED

displayBufs details are embedded into the struct.

Remarks:
This mode causes the size of the IVIDDEC3_OutArgs struct to be larger, but typically easier to manage by both the app and the codec.
IVIDDEC3_DISPLAYBUFS_PTRS

displayBufs details are returned via the provided pointers.

Remarks:
This mode causes the size of the IVIDDEC3_OutArgs struct to be smaller and predictable, but makes the usage of the struct more difficult as the app/framework has to manage (sometimes many) small buffers. On multiprocessor systems, these extra buffers can introduce extra overhead related to address translation and cache maintenance.


Codec Engine Application Programming Interface (API): IVIDENC - XDM Video Encoder Interface

Data Structures | Defines | Typedefs

IVIDENC - XDM Video Encoder Interface

Data Structures

struct | IVIDENC_Obj
This must be the first field of all IVIDENC instance objects. More...
struct | IVIDENC_Params
Defines the creation time parameters for all IVIDENC instance objects. More...
struct | IVIDENC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDENC_InArgs
Defines the input arguments for all IVIDENC instance process function. More...
struct | IVIDENC_Status
Defines instance status parameters (read-only). More...
struct | IVIDENC_OutArgs
Defines the run time output arguments for all IVIDENC instance objects. More...
struct | IVIDENC_Fxns
Defines all of the operations on IVIDENC objects. More...

Defines

#define | IVIDENC_CID "ti.xdais.dm.IVIDENC"
#define | IVIDENC_ERUNTIME XDM_ERUNTIME
#define | IVIDENC_EOK XDM_EOK
#define | IVIDENC_EFAIL XDM_EFAIL

Typedefs

typedef struct IVIDENC_Obj | IVIDENC_Obj
This must be the first field of all IVIDENC instance objects.
typedef struct IVIDENC_Obj * | IVIDENC_Handle
Opaque handle to an IVIDENC objects.
typedef struct IVIDENC_Params | IVIDENC_Params
Defines the creation time parameters for all IVIDENC instance objects.
typedef struct
IVIDENC_DynamicParams 		IVIDENC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDENC_InArgs | IVIDENC_InArgs
Defines the input arguments for all IVIDENC instance process function.
typedef struct IVIDENC_Status | IVIDENC_Status
Defines instance status parameters (read-only).
typedef struct IVIDENC_OutArgs | IVIDENC_OutArgs
Defines the run time output arguments for all IVIDENC instance objects.
typedef IALG_Cmd | IVIDENC_Cmd
Defines the control commands for the IVIDENC module.
typedef struct IVIDENC_Fxns | IVIDENC_Fxns
Defines all of the operations on IVIDENC objects.

Detailed Description

This is the XDM IVIDENC Video Encoder Interface.

Deprecated:
This XDM video encoder interface has been deprecated, and superceeded by newer IVIDENCx video encoder interfaces.

Define Documentation

#define IVIDENC_CID "ti.xdais.dm.IVIDENC"

IVIDENC Class ID

#define IVIDENC_ERUNTIME XDM_ERUNTIME

General runtime failure.

#define IVIDENC_EOK XDM_EOK

Success.

#define IVIDENC_EFAIL XDM_EFAIL

General failure.

Typedef Documentation

typedef struct IVIDENC_Obj IVIDENC_Obj

This must be the first field of all IVIDENC instance objects.

typedef struct IVIDENC_Obj* IVIDENC_Handle

Opaque handle to an IVIDENC objects.

typedef struct IVIDENC_Params IVIDENC_Params

Defines the creation time parameters for all IVIDENC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IVIDENC_DynamicParams IVIDENC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::control()
typedef struct IVIDENC_InArgs IVIDENC_InArgs

Defines the input arguments for all IVIDENC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::process()
typedef struct IVIDENC_Status IVIDENC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::control()
typedef struct IVIDENC_OutArgs IVIDENC_OutArgs

Defines the run time output arguments for all IVIDENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::process()
typedef IALG_Cmd IVIDENC_Cmd

Defines the control commands for the IVIDENC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDENC_Fxns::control()
typedef struct IVIDENC_Fxns IVIDENC_Fxns

Defines all of the operations on IVIDENC objects.


Codec Engine Application Programming Interface (API): IVIDENC1 - XDM Video Encoder Interface

Data Structures | Defines | Typedefs

IVIDENC1 - XDM Video Encoder Interface

Data Structures

struct | IVIDENC1_Obj
This must be the first field of all IVIDENC1 instance objects. More...
struct | IVIDENC1_Params
Defines the creation time parameters for all IVIDENC1 instance objects. More...
struct | IVIDENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IVIDENC1_InArgs
Defines the input arguments for all IVIDENC1 instance process function. More...
struct | IVIDENC1_Status
Defines instance status parameters. More...
struct | IVIDENC1_OutArgs
Defines the run time output arguments for all IVIDENC1 instance objects. More...
struct | IVIDENC1_MbData
Defines the structure that contains macroblock related encoding parameter estimates. More...
struct | IVIDENC1_Fxns
Defines all of the operations on IVIDENC1 objects. More...

Defines

#define | IVIDENC1_EOK XDM_EOK
#define | IVIDENC1_EFAIL XDM_EFAIL
#define | IVIDENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IVIDENC1_Obj | IVIDENC1_Obj
This must be the first field of all IVIDENC1 instance objects.
typedef struct IVIDENC1_Obj * | IVIDENC1_Handle
Opaque handle to an IVIDENC1 objects.
typedef struct IVIDENC1_Params | IVIDENC1_Params
Defines the creation time parameters for all IVIDENC1 instance objects.
typedef struct
IVIDENC1_DynamicParams 		IVIDENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IVIDENC1_InArgs | IVIDENC1_InArgs
Defines the input arguments for all IVIDENC1 instance process function.
typedef struct IVIDENC1_Status | IVIDENC1_Status
Defines instance status parameters.
typedef struct IVIDENC1_OutArgs | IVIDENC1_OutArgs
Defines the run time output arguments for all IVIDENC1 instance objects.
typedef IALG_Cmd | IVIDENC1_Cmd
Defines the control commands for the IVIDENC1 module.
typedef struct IVIDENC1_MbData | IVIDENC1_MbData
Defines the structure that contains macroblock related encoding parameter estimates.
typedef struct IVIDENC1_Fxns | IVIDENC1_Fxns
Defines all of the operations on IVIDENC1 objects.

Detailed Description

This is the XDM IVIDENC1 Video Encoder Interface.

Define Documentation

#define IVIDENC1_EOK XDM_EOK

Success.

#define IVIDENC1_EFAIL XDM_EFAIL

General failure.

#define IVIDENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

Typedef Documentation

typedef struct IVIDENC1_Obj IVIDENC1_Obj

This must be the first field of all IVIDENC1 instance objects.

typedef struct IVIDENC1_Obj* IVIDENC1_Handle

Opaque handle to an IVIDENC1 objects.

typedef struct IVIDENC1_Params IVIDENC1_Params

Defines the creation time parameters for all IVIDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IVIDENC1_DynamicParams IVIDENC1_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::control()
typedef struct IVIDENC1_InArgs IVIDENC1_InArgs

Defines the input arguments for all IVIDENC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::process()
typedef struct IVIDENC1_Status IVIDENC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::control()
typedef struct IVIDENC1_OutArgs IVIDENC1_OutArgs

Defines the run time output arguments for all IVIDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::process()
typedef IALG_Cmd IVIDENC1_Cmd

Defines the control commands for the IVIDENC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDENC1_Fxns::control()
typedef struct IVIDENC1_MbData IVIDENC1_MbData

Defines the structure that contains macroblock related encoding parameter estimates.

Remarks:
An array of IVIDENC1_MbData is provided within the inBufs parameter to IVIDENC1_Fxns::process() when IVIDENC1_DynamicParams::mbDataFlag is set.
See also:
IVIDENC1_DynamicParams::mbDataFlag
IVIDENC1_Fxns::process()
IVIDENC1_Fxns::control()
typedef struct IVIDENC1_Fxns IVIDENC1_Fxns

Defines all of the operations on IVIDENC1 objects.


Codec Engine Application Programming Interface (API): IVIDENC2 - XDM Video Encoder Interface

Data Structures | Defines | Typedefs | Enumerations

IVIDENC2 - XDM Video Encoder Interface

Data Structures

struct | IVIDENC2_Obj
This must be the first field of all IVIDENC2 instance objects. More...
struct | IVIDENC2_Params
Defines the creation time parameters for all IVIDENC2 instance objects. More...
struct | IVIDENC2_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IVIDENC2_InArgs
Defines the input arguments for all IVIDENC2 instance process function. More...
struct | IVIDENC2_Status
Defines instance status parameters. More...
struct | IVIDENC2_OutArgs
Defines the run time output arguments for all IVIDENC2 instance objects. More...
struct | IVIDENC2_Fxns
Defines all of the operations on IVIDENC2 objects. More...

Defines

#define | IVIDENC2_EOK XDM_EOK
#define | IVIDENC2_EFAIL XDM_EFAIL
#define | IVIDENC2_EUNSUPPORTED XDM_EUNSUPPORTED
#define | IVIDENC2_DEFAULTPROFILE (-1)
Default codec profile.
#define | IVIDENC2_DEFAULTLEVEL (-1)
Default codec level.

Typedefs

typedef struct IVIDENC2_Obj | IVIDENC2_Obj
This must be the first field of all IVIDENC2 instance objects.
typedef struct IVIDENC2_Obj * | IVIDENC2_Handle
Opaque handle to an IVIDENC2 objects.
typedef struct IVIDENC2_Params | IVIDENC2_Params
Defines the creation time parameters for all IVIDENC2 instance objects.
typedef struct
IVIDENC2_DynamicParams 		IVIDENC2_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IVIDENC2_InArgs | IVIDENC2_InArgs
Defines the input arguments for all IVIDENC2 instance process function.
typedef struct IVIDENC2_Status | IVIDENC2_Status
Defines instance status parameters.
typedef struct IVIDENC2_OutArgs | IVIDENC2_OutArgs
Defines the run time output arguments for all IVIDENC2 instance objects.
typedef IALG_Cmd | IVIDENC2_Cmd
Defines the control commands for the IVIDENC2 module.
typedef struct IVIDENC2_Fxns | IVIDENC2_Fxns
Defines all of the operations on IVIDENC2 objects.

Enumerations

enum IVIDENC2_MotionVectorAccuracy {
IVIDENC2_MOTIONVECTOR_PIXEL = 0,
IVIDENC2_MOTIONVECTOR_HALFPEL = 1,
IVIDENC2_MOTIONVECTOR_QUARTERPEL = 2,
IVIDENC2_MOTIONVECTOR_EIGHTHPEL = 3,
IVIDENC2_MOTIONVECTOR_MAX = 4
}

Enumeration of possible motion vector (MV) accuracy.

More...
enum IVIDENC2_Control {
IVIDENC2_CTRL_NONE = 0,
IVIDENC2_CTRL_FORCESKIP = 1,
IVIDENC2_CTRL_DEFAULT = IVIDENC2_CTRL_NONE
}

Video frame control.

More...

Detailed Description

This is the XDM IVIDENC2 Video Encoder Interface.

Define Documentation

#define IVIDENC2_EOK XDM_EOK

Success.

#define IVIDENC2_EFAIL XDM_EFAIL

General failure.

#define IVIDENC2_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

#define IVIDENC2_DEFAULTPROFILE (-1)

Default codec profile.

Remarks:
This definition is often used when the a particular codec doesn't have a profile, or the application doesn't know which profile the codec should use.
See also:
IVIDENC2_Params.profile
#define IVIDENC2_DEFAULTLEVEL (-1)

Default codec level.

Remarks:
This definition is often used when the a particular codec doesn't have a level, or the application doesn't know which profile the codec should use.
See also:
IVIDENC2_Params.level

Typedef Documentation

typedef struct IVIDENC2_Obj IVIDENC2_Obj

This must be the first field of all IVIDENC2 instance objects.

typedef struct IVIDENC2_Obj* IVIDENC2_Handle

Opaque handle to an IVIDENC2 objects.

typedef struct IVIDENC2_Params IVIDENC2_Params

Defines the creation time parameters for all IVIDENC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IVIDENC2_DynamicParams IVIDENC2_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::control()
typedef struct IVIDENC2_InArgs IVIDENC2_InArgs

Defines the input arguments for all IVIDENC2 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::process()
typedef struct IVIDENC2_Status IVIDENC2_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::control()
typedef struct IVIDENC2_OutArgs IVIDENC2_OutArgs

Defines the run time output arguments for all IVIDENC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::process()
typedef IALG_Cmd IVIDENC2_Cmd

Defines the control commands for the IVIDENC2 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDENC2_Fxns::control()
typedef struct IVIDENC2_Fxns IVIDENC2_Fxns

Defines all of the operations on IVIDENC2 objects.

Enumeration Type Documentation

enum IVIDENC2_MotionVectorAccuracy

Enumeration of possible motion vector (MV) accuracy.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
Enumerator:
IVIDENC2_MOTIONVECTOR_PIXEL

Motion vectors accuracy is only integer pel.

IVIDENC2_MOTIONVECTOR_HALFPEL

Motion vectors accuracy is half pel.

IVIDENC2_MOTIONVECTOR_QUARTERPEL

Motion vectors accuracy is quarter pel.

IVIDENC2_MOTIONVECTOR_EIGHTHPEL

Motion vectors accuracy is one-eighth pel.

IVIDENC2_MOTIONVECTOR_MAX

Motion vectors accuracy is not defined

enum IVIDENC2_Control

Video frame control.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Remarks:
This enumeration provides the application with some frame level control of the video encoder.
See also:
IVIDENC2_InArgs.control
Enumerator:
IVIDENC2_CTRL_NONE

No control operations.

IVIDENC2_CTRL_FORCESKIP

Skip frame if it is not IDR/I frame.

IVIDENC2_CTRL_DEFAULT

Default settings.


Codec Engine Application Programming Interface (API): IVIDTRANSCODE - XDM Video Transcoder Interface

Data Structures | Defines | Typedefs

IVIDTRANSCODE - XDM Video Transcoder Interface

Data Structures

struct | IVIDTRANSCODE_Obj
This must be the first field of all IVIDTRANSCODE instance objects. More...
struct | IVIDTRANSCODE_Params
Defines the creation time parameters for all IVIDTRANSCODE instance objects. More...
struct | IVIDTRANSCODE_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDTRANSCODE_InArgs
Defines the input arguments for all IVIDTRANSCODE instance process function. More...
struct | IVIDTRANSCODE_Status
Defines instance status parameters. More...
struct | IVIDTRANSCODE_OutArgs
Defines the run time output arguments for all IVIDTRANSCODE instance objects. More...
struct | IVIDTRANSCODE_Fxns
Defines all of the operations on IVIDTRANSCODE objects. More...

Defines

#define | IVIDTRANSCODE_EOK XDM_EOK
#define | IVIDTRANSCODE_EFAIL XDM_EFAIL
#define | IVIDTRANSCODE_EUNSUPPORTED XDM_EUNSUPPORTED
#define | IVIDTRANSCODE_MAXOUTSTREAMS 2

Typedefs

typedef struct IVIDTRANSCODE_Obj | IVIDTRANSCODE_Obj
This must be the first field of all IVIDTRANSCODE instance objects.
typedef struct IVIDTRANSCODE_Obj * | IVIDTRANSCODE_Handle
Opaque handle to an IVIDTRANSCODE objects.
typedef struct IVIDTRANSCODE_Params | IVIDTRANSCODE_Params
Defines the creation time parameters for all IVIDTRANSCODE instance objects.
typedef struct
IVIDTRANSCODE_DynamicParams 		IVIDTRANSCODE_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDTRANSCODE_InArgs | IVIDTRANSCODE_InArgs
Defines the input arguments for all IVIDTRANSCODE instance process function.
typedef struct IVIDTRANSCODE_Status | IVIDTRANSCODE_Status
Defines instance status parameters.
typedef struct
IVIDTRANSCODE_OutArgs 		IVIDTRANSCODE_OutArgs
Defines the run time output arguments for all IVIDTRANSCODE instance objects.
typedef IALG_Cmd | IVIDTRANSCODE_Cmd
Defines the control commands for the IVIDTRANSCODE module.
typedef struct IVIDTRANSCODE_Fxns | IVIDTRANSCODE_Fxns
Defines all of the operations on IVIDTRANSCODE objects.

Detailed Description

This is the XDM IVIDENC2 Video Transcoder Interface.

Define Documentation

#define IVIDTRANSCODE_EOK XDM_EOK

Success.

#define IVIDTRANSCODE_EFAIL XDM_EFAIL

General failure.

#define IVIDTRANSCODE_EUNSUPPORTED XDM_EUNSUPPORTED

Request is unsupported.

#define IVIDTRANSCODE_MAXOUTSTREAMS 2
Todo:
Document this.

Typedef Documentation

typedef struct IVIDTRANSCODE_Obj IVIDTRANSCODE_Obj

This must be the first field of all IVIDTRANSCODE instance objects.

typedef struct IVIDTRANSCODE_Obj* IVIDTRANSCODE_Handle

Opaque handle to an IVIDTRANSCODE objects.

typedef struct IVIDTRANSCODE_Params IVIDTRANSCODE_Params

Defines the creation time parameters for all IVIDTRANSCODE instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef struct IVIDTRANSCODE_DynamicParams IVIDTRANSCODE_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::control()
typedef struct IVIDTRANSCODE_InArgs IVIDTRANSCODE_InArgs

Defines the input arguments for all IVIDTRANSCODE instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::process()
typedef struct IVIDTRANSCODE_Status IVIDTRANSCODE_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::control()
typedef struct IVIDTRANSCODE_OutArgs IVIDTRANSCODE_OutArgs

Defines the run time output arguments for all IVIDTRANSCODE instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::process()
typedef IALG_Cmd IVIDTRANSCODE_Cmd

Defines the control commands for the IVIDTRANSCODE module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDTRANSCODE_Fxns::control()
typedef struct IVIDTRANSCODE_Fxns IVIDTRANSCODE_Fxns

Defines all of the operations on IVIDTRANSCODE objects.


Codec Engine Application Programming Interface (API): IALG - XDAIS Algorithm Interface

Data Structures | Defines | Typedefs | Enumerations

IALG - XDAIS Algorithm Interface

Data Structures

struct | IALG_MemRec
Memory records. More...
struct | IALG_Obj
Algorithm instance object definition. More...
struct | IALG_Params
Algorithm instance creation parameters. More...
struct | IALG_Status
Pointer to algorithm specific status structure. More...
struct | IALG_Fxns
Defines the fields and methods that must be supplied by all XDAIS algorithms. More...

Defines

#define | IALG_DEFMEMRECS 4
#define | IALG_OBJMEMREC 0
#define | IALG_SYSCMD 256
#define | IALG_EOK 0
#define | IALG_EFAIL -1
#define | IALG_CUSTOMFAILBASE -2048
#define | IALG_CUSTOMFAILEND -256
#define | IALG_MPROG 0x0008
#define | IALG_MXTRN 0x0010
#define | IALG_isProg(s)
#define | IALG_isOffChip(s)

Typedefs

typedef enum IALG_MemAttrs | IALG_MemAttrs
Memory attributes.
typedef enum IALG_MemSpace | IALG_MemSpace
Defined memory spaces.
typedef struct IALG_MemRec | IALG_MemRec
Memory records.
typedef struct IALG_Obj | IALG_Obj
Algorithm instance object definition.
typedef struct IALG_Obj * | IALG_Handle
Handle to an algorithm instance object.
typedef struct IALG_Params | IALG_Params
Algorithm instance creation parameters.
typedef struct IALG_Status | IALG_Status
Pointer to algorithm specific status structure.
typedef unsigned int | IALG_Cmd
Algorithm specific command.
typedef struct IALG_Fxns | IALG_Fxns
Defines the fields and methods that must be supplied by all XDAIS algorithms.

Enumerations

enum IALG_MemAttrs {
IALG_SCRATCH,
IALG_PERSIST,
IALG_WRITEONCE
}

Memory attributes.

More...
enum IALG_MemSpace {
IALG_EPROG,
IALG_IPROG,
IALG_ESDATA,
IALG_EXTERNAL,
IALG_DARAM0 = 0,
IALG_DARAM1 = 1,
IALG_SARAM = 2,
IALG_SARAM0 = 2,
IALG_SARAM1 = 3,
IALG_DARAM2 = 4,
IALG_SARAM2 = 5
}

Defined memory spaces.

More...

Detailed Description

This is the XDAIS IALG interface.

Define Documentation

#define IALG_DEFMEMRECS 4

Default number of memory records.

#define IALG_OBJMEMREC 0

Memory record index of instance object.

#define IALG_SYSCMD 256

Minimum "system" IALG_Cmd value.

#define IALG_EOK 0

Successful return status code.

#define IALG_EFAIL -1

Unspecified error return status code.

#define IALG_CUSTOMFAILBASE -2048

Algorithm-specific failure code end.

Remarks:
This is 0xfffff800.
#define IALG_CUSTOMFAILEND -256

Algorithm-specific failure code base.

Remarks:
This is 0xffffff00.
#define IALG_MPROG 0x0008

Program memory space bit.

#define IALG_MXTRN 0x0010

External memory space bit.

#define IALG_isProg ( s )
Value:
(        \
    (((int)(s)) & IALG_MPROG)   \
)
#define IALG_isOffChip ( s )
Value:
(     \
    (((int)(s)) & IALG_MXTRN)   \
)

Typedef Documentation

typedef enum IALG_MemAttrs IALG_MemAttrs

Memory attributes.

typedef enum IALG_MemSpace IALG_MemSpace

Defined memory spaces.

typedef struct IALG_MemRec IALG_MemRec

Memory records.

typedef struct IALG_Obj IALG_Obj

Algorithm instance object definition.

Remarks:
All XDAIS algorithm instance objects must have this structure as their first element. However, they do not need to initialize it; initialization of this sub-structure is done by the "framework".
typedef struct IALG_Obj* IALG_Handle

Handle to an algorithm instance object.

typedef struct IALG_Params IALG_Params

Algorithm instance creation parameters.

Remarks:
All XDAS algorithm parameter structures must have this as their first element.
typedef struct IALG_Status IALG_Status

Pointer to algorithm specific status structure.

Remarks:
All XDAIS algorithm parameter structures must have this as their first element.
typedef unsigned int IALG_Cmd

Algorithm specific command.

Remarks:
This command is used in conjunction with IALG_Status to get and set algorithm specific attributes via the algControl() method.
typedef struct IALG_Fxns IALG_Fxns

Defines the fields and methods that must be supplied by all XDAIS algorithms.

Enumeration Type Documentation

enum IALG_MemAttrs

Memory attributes.

Enumerator:
IALG_SCRATCH

Scratch memory.

IALG_PERSIST

Persistent memory.

IALG_WRITEONCE

Write-once persistent memory.

enum IALG_MemSpace

Defined memory spaces.

Enumerator:
IALG_EPROG

External program memory Program memory space bit. External memory space bit.

IALG_IPROG

Internal program memory Program memory space bit.

IALG_ESDATA

Off-chip data memory (accessed sequentially) External memory space bit.

IALG_EXTERNAL

Off-chip data memory (accessed randomly) External memory space bit.

IALG_DARAM0

Dual access on-chip data memory

IALG_DARAM1

Block 1, if independant blocks required

IALG_SARAM

Single access on-chip data memory

IALG_SARAM0

Block 0, equivalent to IALG_SARAM

IALG_SARAM1

Block 1, if independant blocks required

IALG_DARAM2

Block 2, if a 3rd independent block required

IALG_SARAM2

Block 2, if a 3rd independent block required


Codec Engine Application Programming Interface (API): AUDDEC - Audio Decoder Interface

Defines | Typedefs | Functions

AUDDEC - Audio Decoder Interface

Defines

#define | AUDDEC_EOK IAUDDEC_EOK
#define | AUDDEC_EFAIL IAUDDEC_EFAIL
#define | AUDDEC_ERUNTIME IAUDDEC_ERUNTIME
#define | AUDDEC_ETIMEOUT VISA_ETIMEOUT
#define | AUDDEC_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | AUDDEC_Handle
Opaque handle to a AUDDEC codec.
typedef IAUDDEC_Params | AUDDEC_Params
typedef IAUDDEC_InArgs | AUDDEC_InArgs
typedef IAUDDEC_OutArgs | AUDDEC_OutArgs
typedef IAUDDEC_Cmd | AUDDEC_Cmd
typedef IAUDDEC_Status | AUDDEC_Status
typedef IAUDDEC_DynamicParams | AUDDEC_DynamicParams

Functions

Int32 | AUDDEC_control (AUDDEC_Handle handle, AUDDEC_Cmd id, AUDDEC_DynamicParams *params, AUDDEC_Status *status)
Execute the control() method in this instance of an audio decoder algorithm.
AUDDEC_Handle | AUDDEC_create (Engine_Handle e, String name, AUDDEC_Params *params)
Create an instance of a audio decoder algorithm.
Void | AUDDEC_delete (AUDDEC_Handle handle)
Delete the instance of an audio decoder algorithm.
Int32 | AUDDEC_process (AUDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, AUDDEC_InArgs *inArgs, AUDDEC_OutArgs *outArgs)
Execute the process() method in this instance of an audio decoder algorithm.
Int32 | AUDDEC_processAsync (AUDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, AUDDEC_InArgs *inArgs, AUDDEC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a audio decoder algorithm.
Int32 | AUDDEC_processWait (AUDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, AUDDEC_InArgs *inArgs, AUDDEC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of AUDDEC_processAsync() in this instance of an audio decoder algorithm.

Detailed Description

This is the audio decoder codec interface. Several of the data types in this API are specified by the XDM IAUDDEC interface; please see the XDM documentation for those details.

Define Documentation

#define AUDDEC_EOK IAUDDEC_EOK

Success.

#define AUDDEC_EFAIL IAUDDEC_EFAIL

General failure.

#define AUDDEC_ERUNTIME IAUDDEC_ERUNTIME

General runtime failure.

#define AUDDEC_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define AUDDEC_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle AUDDEC_Handle

Opaque handle to a AUDDEC codec.

typedef IAUDDEC_Params AUDDEC_Params

Defines the creation time parameters for all IAUDDEC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IAUDDEC_InArgs AUDDEC_InArgs

Defines the input arguments for all IAUDDEC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::process()
typedef IAUDDEC_OutArgs AUDDEC_OutArgs

Defines the run time output arguments for all IAUDDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::process()
typedef IAUDDEC_Cmd AUDDEC_Cmd

Defines the control commands for the IAUDDEC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IAUDDEC_Fxns::control()
typedef IAUDDEC_Status AUDDEC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::control()
typedef IAUDDEC_DynamicParams AUDDEC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::control()

Function Documentation

Int32 AUDDEC_control | ( | AUDDEC_Handle | handle,
 |  | AUDDEC_Cmd | id,
 |  | AUDDEC_DynamicParams * | params,
 |  | AUDDEC_Status * | status
 | ) |  |

Execute the control() method in this instance of an audio decoder algorithm.

Parameters:
[in] | handle | Handle to a created audio decoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) audio decoder handle and the audio decoder is in the created state.
Return values:
AUDDEC_EOK | Success.
AUDDEC_EFAIL | Failure.
AUDDEC_ERUNTIME | Internal Runtime Error.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
AUDDEC_create()
AUDDEC_delete()
IAUDDEC_Fxns::control()
AUDDEC_Handle AUDDEC_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | AUDDEC_Params * | params
 | ) |  |

Create an instance of a audio decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via AUDDEC_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of audio decoder. to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created audio decoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the audio decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
AUDDEC_delete()
Void AUDDEC_delete ( AUDDEC_Handle handle )

Delete the instance of an audio decoder algorithm.

Parameters:
[in] handle Handle to a created audio decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the audio decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the AUDDEC_create() operation (memory, DMA channels, etc.) are freed.
See also:
AUDDEC_create()
Int32 AUDDEC_process | ( | AUDDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | AUDDEC_InArgs * | inArgs,
 |  | AUDDEC_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of an audio decoder algorithm.

Parameters:
[in] | handle | Handle to a created audio decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) audio decoder handle and the audio decoder is in the created state.
Return values:
AUDDEC_EOK | Success.
AUDDEC_EFAIL | Failure.
AUDDEC_ERUNTIME | Internal Runtime Error.
Remarks:
Since the AUDDEC decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to AUDDEC_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See AUDDEC_OutArgs::extendedError for details.
See also:
AUDDEC_create()
AUDDEC_delete()
AUDDEC_control()
AUDDEC_processAsync()
AUDDEC_processWait()
IAUDDEC_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
Int32 AUDDEC_processAsync | ( | AUDDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | AUDDEC_InArgs * | inArgs,
 |  | AUDDEC_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a audio decoder algorithm.

Parameters:
[in] | handle | Handle to a created audio decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) audio decoder handle and the audio decoder is in the created state.
Return values:
AUDDEC_EOK | Success.
AUDDEC_EFAIL | Failure.
AUDDEC_ERUNTIME | Internal Runtime Error.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the AUDDEC_processWait() API.
The buffers supplied to AUDDEC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
AUDDEC_create()
AUDDEC_delete()
AUDDEC_control()
AUDDEC_process()
AUDDEC_processWait()
IAUDDEC_Fxns::process()
IAUDDEC_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
Int32 AUDDEC_processWait | ( | AUDDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | AUDDEC_InArgs * | inArgs,
 |  | AUDDEC_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of AUDDEC_processAsync() in this instance of an audio decoder algorithm.

Parameters:
[in] | handle | Handle to a created audio decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> AUDDEC_FOREVER)
Precondition:
handle is a valid (non-NULL) audio decoder handle and the audio decoder is in the created state.
Return values:
AUDDEC_EOK | Success.
AUDDEC_EFAIL | Failure.
AUDENC_ERUNTIME | Internal Runtime Error.
AUDDEC_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of AUDDEC_FOREVER.
There must have previously been an invocation of the AUDDEC_processAsync() API.
The buffers supplied to AUDDEC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
AUDDEC_create()
AUDDEC_delete()
AUDDEC_control()
AUDDEC_process()
AUDDEC_processAsync()


Codec Engine Application Programming Interface (API): AUDENC - Audio Encoder Interface

Defines | Typedefs | Functions

AUDENC - Audio Encoder Interface

Defines

#define | AUDENC_EOK IAUDENC_EOK
#define | AUDENC_EFAIL IAUDENC_EFAIL
#define | AUDENC_ERUNTIME IAUDENC_ERUNTIME
#define | AUDENC_ETIMEOUT VISA_ETIMEOUT
#define | AUDENC_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | AUDENC_Handle
Opaque handle to a AUDENC codec.
typedef IAUDENC_Params | AUDENC_Params
typedef IAUDENC_InArgs | AUDENC_InArgs
typedef IAUDENC_OutArgs | AUDENC_OutArgs
typedef IAUDENC_Cmd | AUDENC_Cmd
typedef IAUDENC_Status | AUDENC_Status
typedef IAUDENC_DynamicParams | AUDENC_DynamicParams

Functions

Int32 | AUDENC_control (AUDENC_Handle handle, AUDENC_Cmd id, AUDENC_DynamicParams *params, AUDENC_Status *status)
Execute the control() method in this instance of an audio encoder algorithm.
AUDENC_Handle | AUDENC_create (Engine_Handle e, String name, AUDENC_Params *params)
Create an instance of an audio encoder algorithm.
Void | AUDENC_delete (AUDENC_Handle handle)
Delete the instance of an audio encoder algorithm.
Int32 | AUDENC_process (AUDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, AUDENC_InArgs *inArgs, AUDENC_OutArgs *outArgs)
Execute the process() method in this instance of an audio encoder algorithm.
XDAS_Int32 | AUDENC_processAsync (AUDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IAUDENC_InArgs *inArgs, IAUDENC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a audio encoder algorithm.
XDAS_Int32 | AUDENC_processWait (AUDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IAUDENC_InArgs *inArgs, IAUDENC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of AUDENC_processAsync() in this instance of an audio encoder algorithm.

Detailed Description

This is the audio encoder codec interface. Several of the data types in this API are specified by the XDM IAUDENC interface; please see the XDM documentation for those details.

Define Documentation

#define AUDENC_EOK IAUDENC_EOK

Success.

#define AUDENC_EFAIL IAUDENC_EFAIL

General failure.

#define AUDENC_ERUNTIME IAUDENC_ERUNTIME

General runtime failure.

#define AUDENC_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define AUDENC_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle AUDENC_Handle

Opaque handle to a AUDENC codec.

typedef IAUDENC_Params AUDENC_Params

Defines the creation time parameters for all IAUDENC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IAUDENC_InArgs AUDENC_InArgs

Defines the input arguments for all IAUDENC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::process()
typedef IAUDENC_OutArgs AUDENC_OutArgs

Defines the run time output arguments for all IAUDENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::process()
typedef IAUDENC_Cmd AUDENC_Cmd

Defines the control commands for the IAUDENC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IAUDENC_Fxns::control()
typedef IAUDENC_Status AUDENC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::control()
typedef IAUDENC_DynamicParams AUDENC_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::control()

Function Documentation

Int32 AUDENC_control | ( | AUDENC_Handle | handle,
 |  | AUDENC_Cmd | id,
 |  | AUDENC_DynamicParams * | params,
 |  | AUDENC_Status * | status
 | ) |  |

Execute the control() method in this instance of an audio encoder algorithm.

Parameters:
[in] | handle | Handle to a created audio encoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for encoding.
[out] | status | Status info upon completion of encode operation.
Precondition:
handle is a valid (non-NULL) audio encoder handle and the audio encoder is in the created state.
Return values:
AUDENC_EOK | Success.
AUDENC_EFAIL | Failure.
AUDENC_ERUNTIME | Internal Runtime Error.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See AUDDEC_Status::extendedError for details.
See also:
AUDENC_create()
AUDENC_delete()
IAUDENC_Fxns::control() - the reflected algorithm interface, which may contain further usage details.
AUDENC_Handle AUDENC_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | AUDENC_Params * | params
 | ) |  |

Create an instance of an audio encoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via AUDENC_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of audio encoder. to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created audio encoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the audio encoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
AUDENC_delete()
Void AUDENC_delete ( AUDENC_Handle handle )

Delete the instance of an audio encoder algorithm.

Parameters:
[in] handle Handle to a created audio encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the audio encoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the AUDENC_create() operation (memory, DMA channels, etc.) are freed.
See also:
AUDENC_create()
Int32 AUDENC_process | ( | AUDENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | AUDENC_InArgs * | inArgs,
 |  | AUDENC_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of an audio encoder algorithm.

Parameters:
[in] | handle | Handle to a created audio encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) audio encoder handle and the audio encoder is in the created state.
Return values:
AUDENC_EOK | Success.
AUDENC_EFAIL | Failure.
AUDENC_ERUNTIME | Internal Runtime Error.
Remarks:
Since the AUDENC encoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to AUDENC_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See AUDENC_OutArgs::extendedError for details.
See also:
AUDENC_create()
AUDENC_delete()
AUDENC_control()
AUDENC_processAsync()
AUDENC_processWait()
IAUDENC_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
XDAS_Int32 AUDENC_processAsync | ( | AUDENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IAUDENC_InArgs * | inArgs,
 |  | IAUDENC_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a audio encoder algorithm.

Parameters:
[in] | handle | Handle to a created audio encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) audio encoder handle and the audio encoder is in the created state.
Return values:
AUDENC_EOK | Success.
AUDENC_EFAIL | Failure.
AUDENC_ERUNTIME | Internal Runtime Error.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the AUDENC_processWait() API.
The buffers supplied to AUDENC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
AUDENC_create()
AUDENC_delete()
AUDENC_control()
AUDENC_process()
AUDENC_processWait()
IAUDENC_Fxns::process()
IAUDENC_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
XDAS_Int32 AUDENC_processWait | ( | AUDENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IAUDENC_InArgs * | inArgs,
 |  | IAUDENC_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of AUDENC_processAsync() in this instance of an audio encoder algorithm.

Parameters:
[in] | handle | Handle to a created audio encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> AUDENC_FOREVER)
Precondition:
handle is a valid (non-NULL) audio encoder handle and the audio encoder is in the created state.
Return values:
AUDENC_EOK | Success.
AUDENC_EFAIL | Failure.
AUDENC_ERUNTIME | Internal Runtime Error.
AUDENC_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of AUDENC_FOREVER.
There must have previously been an invocation of the AUDENC_processAsync() API.
The buffers supplied to AUDENC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
AUDENC_create()
AUDENC_delete()
AUDENC_control()
AUDENC_process()
AUDENC_processAsync()


Codec Engine Application Programming Interface (API): AUDDEC1 - Audio Decoder Interface

Defines | Typedefs | Functions

AUDDEC1 - Audio Decoder Interface

This is the AUDDEC1 audio decoder interface. Many of the data types in this API are specified by the XDM IAUDDEC1 interface. More...

Defines

#define | AUDDEC1_EOK IAUDDEC1_EOK
#define | AUDDEC1_EFAIL IAUDDEC1_EFAIL
#define | AUDDEC1_EUNSUPPORTED IAUDDEC1_EUNSUPPORTED
#define | AUDDEC1_ETIMEOUT VISA_ETIMEOUT
#define | AUDDEC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | AUDDEC1_Handle
Opaque handle to a AUDDEC1 codec.
typedef IAUDDEC1_Params | AUDDEC1_Params
typedef IAUDDEC1_InArgs | AUDDEC1_InArgs
typedef IAUDDEC1_OutArgs | AUDDEC1_OutArgs
typedef IAUDDEC1_Cmd | AUDDEC1_Cmd
typedef IAUDDEC1_DynamicParams | AUDDEC1_DynamicParams
typedef IAUDDEC1_Status | AUDDEC1_Status

Functions

Int32 | AUDDEC1_control (AUDDEC1_Handle handle, AUDDEC1_Cmd id, AUDDEC1_DynamicParams *params, AUDDEC1_Status *status)
Execute the control() method in this instance of an audio decoder algorithm.
AUDDEC1_Handle | AUDDEC1_create (Engine_Handle e, String name, AUDDEC1_Params *params)
Create an instance of an audio decoder algorithm.
Void | AUDDEC1_delete (AUDDEC1_Handle handle)
Delete the instance of an audio decoder algorithm.
Int32 | AUDDEC1_process (AUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDDEC1_InArgs *inArgs, AUDDEC1_OutArgs *outArgs)
Execute the process() method in this instance of an audio decoder algorithm.
Int32 | AUDDEC1_processAsync (AUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDDEC1_InArgs *inArgs, AUDDEC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a audio decoder algorithm.
Int32 | AUDDEC1_processWait (AUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDDEC1_InArgs *inArgs, AUDDEC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of AUDDEC1_processAsync() in this instance of an audio decoder algorithm.

Detailed Description

This is the AUDDEC1 audio decoder interface. Many of the data types in this API are specified by the XDM IAUDDEC1 interface.

Remarks:
General documentation about the ti.sdo.ce.audio1 package which this AUDDEC1 interface is distributed in can be found here - ti.sdo.ce.audio1 .
See also:
ti.sdo.ce.audio1

Define Documentation

#define AUDDEC1_EOK IAUDDEC1_EOK

Success.

#define AUDDEC1_EFAIL IAUDDEC1_EFAIL

General failure.

#define AUDDEC1_EUNSUPPORTED IAUDDEC1_EUNSUPPORTED

Request is unsupported.

#define AUDDEC1_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define AUDDEC1_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle AUDDEC1_Handle

Opaque handle to a AUDDEC1 codec.

typedef IAUDDEC1_Params AUDDEC1_Params

Defines the creation time parameters for all IAUDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IAUDDEC1_InArgs AUDDEC1_InArgs

Defines the input arguments for all IAUDDEC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::process()
typedef IAUDDEC1_OutArgs AUDDEC1_OutArgs

Defines the run time output arguments for all IAUDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::process()
typedef IAUDDEC1_Cmd AUDDEC1_Cmd

Defines the control commands for the IAUDDEC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IAUDDEC1_Fxns::control()
typedef IAUDDEC1_DynamicParams AUDDEC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::control()
typedef IAUDDEC1_Status AUDDEC1_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::control()

Function Documentation

Int32 AUDDEC1_control | ( | AUDDEC1_Handle | handle,
 |  | AUDDEC1_Cmd | id,
 |  | AUDDEC1_DynamicParams * | params,
 |  | AUDDEC1_Status * | status
 | ) |  |

Execute the control() method in this instance of an audio decoder algorithm.

Parameters:
[in] | handle | Handle to a created audio decoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) audio decoder handle and the audio decoder is in the created state.
Return values:
AUDDEC1_EOK | Success.
AUDDEC1_EFAIL | Failure.
AUDDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
AUDDEC1_create()
AUDDEC1_delete()
IAUDDEC1_Fxns.control()
AUDDEC1_Handle AUDDEC1_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | AUDDEC1_Params * | params
 | ) |  |

Create an instance of an audio decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via AUDDEC1_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of audio decoder. to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created audio decoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the audio decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
AUDDEC1_process()
AUDDEC1_control()
AUDDEC1_delete()
VISA_getAlgNumRecs()
VISA_getAlgMemRecs()
Void AUDDEC1_delete ( AUDDEC1_Handle handle )

Delete the instance of an audio decoder algorithm.

Parameters:
[in] handle Handle to a created audio decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the audio decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the AUDDEC1_create() operation (memory, DMA channels, etc.) are freed.
See also:
AUDDEC1_create()
Int32 AUDDEC1_process | ( | AUDDEC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | AUDDEC1_InArgs * | inArgs,
 |  | AUDDEC1_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of an audio decoder algorithm.

Parameters:
[in] | handle | Handle to a created audio decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) audio decoder handle and the audio decoder is in the created state.
Return values:
AUDDEC1_EOK | Success.
AUDDEC1_EFAIL | Failure.
AUDDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
Since the AUDDEC1 decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to AUDDEC1_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See XDM_ErrorBit for details.
See also:
AUDDEC1_create()
AUDDEC1_delete()
AUDDEC1_control()
AUDDEC1_processAsync()
AUDDEC1_processWait()
IAUDDEC1_Fxns.process()
Int32 AUDDEC1_processAsync | ( | AUDDEC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | AUDDEC1_InArgs * | inArgs,
 |  | AUDDEC1_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a audio decoder algorithm.

Parameters:
[in] | handle | Handle to a created audio decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) audio decoder handle and the audio decoder is in the created state.
Return values:
AUDDEC1_EOK | Success.
AUDDEC1_EFAIL | Failure.
AUDDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the synchronous AUDDEC1_process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the AUDDEC1_processWait() API.
The buffers supplied to AUDDEC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
AUDDEC1_create()
AUDDEC1_delete()
AUDDEC1_control()
AUDDEC1_process()
AUDDEC1_processWait()
IAUDDEC1_Fxns.process()
Int32 AUDDEC1_processWait | ( | AUDDEC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | AUDDEC1_InArgs * | inArgs,
 |  | AUDDEC1_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of AUDDEC1_processAsync() in this instance of an audio decoder algorithm.

Parameters:
[in] | handle | Handle to a created audio decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> AUDDEC1_FOREVER)
Precondition:
handle is a valid (non-NULL) audio decoder handle and the audio decoder is in the created state.
Return values:
AUDDEC1_EOK | Success.
AUDDEC1_EFAIL | Failure.
AUDDEC1_EUNSUPPORTED | Unsupported request.
AUDDEC1_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of AUDDEC1_FOREVER.
There must have previously been an invocation of the AUDDEC1_processAsync() API.
The buffers supplied to AUDDEC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
AUDDEC1_create()
AUDDEC1_delete()
AUDDEC1_control()
AUDDEC1_process()
AUDDEC1_processAsync()


Codec Engine Application Programming Interface (API): AUDENC1 - Audio Encoder Interface

Defines | Typedefs | Functions

AUDENC1 - Audio Encoder Interface

Defines

#define | AUDENC1_EOK IAUDENC1_EOK
#define | AUDENC1_EFAIL IAUDENC1_EFAIL
#define | AUDENC1_EUNSUPPORTED IAUDENC1_EUNSUPPORTED
#define | AUDENC1_ETIMEOUT VISA_ETIMEOUT
#define | AUDENC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | AUDENC1_Handle
Opaque handle to a AUDENC1 codec.
typedef IAUDENC1_Params | AUDENC1_Params
typedef IAUDENC1_InArgs | AUDENC1_InArgs
typedef IAUDENC1_OutArgs | AUDENC1_OutArgs
typedef IAUDENC1_Cmd | AUDENC1_Cmd
typedef IAUDENC1_DynamicParams | AUDENC1_DynamicParams
typedef IAUDENC1_Status | AUDENC1_Status

Functions

Int32 | AUDENC1_control (AUDENC1_Handle handle, AUDENC1_Cmd id, AUDENC1_DynamicParams *params, AUDENC1_Status *status)
Execute the control() method in this instance of an audio encoder algorithm.
AUDENC1_Handle | AUDENC1_create (Engine_Handle e, String name, AUDENC1_Params *params)
Create an instance of an audio encoder algorithm.
Void | AUDENC1_delete (AUDENC1_Handle handle)
Delete the instance of an audio encoder algorithm.
Int32 | AUDENC1_process (AUDENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDENC1_InArgs *inArgs, AUDENC1_OutArgs *outArgs)
Execute the process() method in this instance of an audio encoder algorithm.
Int32 | AUDENC1_processAsync (AUDENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDENC1_InArgs *inArgs, AUDENC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of an audio encoder algorithm.
Int32 | AUDENC1_processWait (AUDENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDENC1_InArgs *inArgs, AUDENC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of AUDENC1_processAsync() in this instance of an audio encoder algorithm.

Detailed Description

This is the audio encoder interface. Several of the data types in this API are specified by the XDM IAUDENC1 interface; please see the XDM documentation for those details.

Define Documentation

#define AUDENC1_EOK IAUDENC1_EOK

Success.

#define AUDENC1_EFAIL IAUDENC1_EFAIL

General failure.

#define AUDENC1_EUNSUPPORTED IAUDENC1_EUNSUPPORTED

Request is unsupported.

#define AUDENC1_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define AUDENC1_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle AUDENC1_Handle

Opaque handle to a AUDENC1 codec.

typedef IAUDENC1_Params AUDENC1_Params

Defines the creation time parameters for all IAUDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IAUDENC1_InArgs AUDENC1_InArgs

Defines the input arguments for all IAUDENC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::process()
typedef IAUDENC1_OutArgs AUDENC1_OutArgs

Defines the run time output arguments for all IAUDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::process()
typedef IAUDENC1_Cmd AUDENC1_Cmd

Defines the control commands for the IAUDENC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IAUDENC1_Fxns::control()
typedef IAUDENC1_DynamicParams AUDENC1_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::control()
typedef IAUDENC1_Status AUDENC1_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::control()

Function Documentation

Int32 AUDENC1_control | ( | AUDENC1_Handle | handle,
 |  | AUDENC1_Cmd | id,
 |  | AUDENC1_DynamicParams * | params,
 |  | AUDENC1_Status * | status
 | ) |  |

Execute the control() method in this instance of an audio encoder algorithm.

Parameters:
[in] | handle | Handle to a created audio encoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for encoding.
[out] | status | Status info upon completion of encode operation.
Precondition:
handle is a valid (non-NULL) audio encoder handle and the audio encoder is in the created state.
Return values:
AUDENC1_EOK | Success.
AUDENC1_EFAIL | Failure.
AUDENC1_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
AUDENC1_create()
AUDENC1_delete()
IAUDENC1_Fxns::control()
AUDENC1_Handle AUDENC1_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | AUDENC1_Params * | params
 | ) |  |

Create an instance of an audio encoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via AUDENC1_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of audio encoder. to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created audio encoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the audio encoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
AUDENC1_delete()
Void AUDENC1_delete ( AUDENC1_Handle handle )

Delete the instance of an audio encoder algorithm.

Parameters:
[in] handle Handle to a created audio encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the audio encoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the AUDENC1_create() operation (memory, DMA channels, etc.) are freed.
See also:
AUDENC1_create()
Int32 AUDENC1_process | ( | AUDENC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | AUDENC1_InArgs * | inArgs,
 |  | AUDENC1_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of an audio encoder algorithm.

Parameters:
[in] | handle | Handle to a created audio encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) audio encoder handle and the audio encoder is in the created state.
Return values:
AUDENC1_EOK | Success.
AUDENC1_EFAIL | Failure.
AUDENC1_EUNSUPPORTED | Unsupported request.
Remarks:
Since the AUDENC1 encoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to AUDENC1_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See XDM_ErrorBit for details.
See also:
AUDENC1_create()
AUDENC1_delete()
AUDENC1_control()
AUDENC1_processAsync()
AUDENC1_processWait()
IAUDENC1_Fxns::process()
Int32 AUDENC1_processAsync | ( | AUDENC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | AUDENC1_InArgs * | inArgs,
 |  | AUDENC1_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of an audio encoder algorithm.

Parameters:
[in] | handle | Handle to a created audio encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) audio encoder handle and the audio encoder is in the created state.
Return values:
AUDENC1_EOK | Success.
AUDENC1_EFAIL | Failure.
AUDENC1_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the AUDENC1_processWait() API.
The buffers supplied to AUDENC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
AUDENC1_create()
AUDENC1_delete()
AUDENC1_control()
AUDENC1_process()
AUDENC1_processWait()
IAUDENC1_Fxns::process()
Int32 AUDENC1_processWait | ( | AUDENC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | AUDENC1_InArgs * | inArgs,
 |  | AUDENC1_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of AUDENC1_processAsync() in this instance of an audio encoder algorithm.

Parameters:
[in] | handle | Handle to a created audio encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> AUDENC1_FOREVER)
Precondition:
handle is a valid (non-NULL) audio encoder handle and the audio encoder is in the created state.
Return values:
AUDENC1_EOK | Success.
AUDENC1_EFAIL | Failure.
AUDENC1_EUNSUPPORTED | Unsupported request.
AUDENC1_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of AUDENC1_FOREVER.
There must have previously been an invocation of the AUDENC1_processAsync() API.
The buffers supplied to AUDENC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
AUDENC1_create()
AUDENC1_delete()
AUDENC1_control()
AUDENC1_process()
AUDENC1_processAsync()


Codec Engine Application Programming Interface (API): IMGDEC - Image Decoder Interface

Data Structures | Defines | Typedefs | Functions

IMGDEC - Image Decoder Interface

Data Structures

struct | IIMGDEC_CodecClassConfig
Definition of IIMGDEC codec class configurable parameters. More...

Defines

#define | IMGDEC_EOK IIMGDEC_EOK
#define | IMGDEC_EFAIL IIMGDEC_EFAIL
#define | IMGDEC_ERUNTIME IIMGDEC_ERUNTIME
#define | IMGDEC_ETIMEOUT VISA_ETIMEOUT
#define | IMGDEC_FOREVER VISA_FOREVER

Typedefs

typedef IIMGDEC_Status | IMGDEC_Status
typedef VISA_Handle | IMGDEC_Handle
Opaque handle to a IMGDEC codec.
typedef struct IIMGDEC_Params | IMGDEC_Params
This structure defines the parameters necessary to create an instance of a image decoder object.
typedef IIMGDEC_InArgs | IMGDEC_InArgs
typedef IIMGDEC_OutArgs | IMGDEC_OutArgs
typedef IIMGDEC_Cmd | IMGDEC_Cmd
typedef IIMGDEC_DynamicParams | IMGDEC_DynamicParams
typedef struct
IIMGDEC_CodecClassConfig 		IIMGDEC_CodecClassConfig
Definition of IIMGDEC codec class configurable parameters.

Functions

IMGDEC_Handle | IMGDEC_create (Engine_Handle e, String name, IMGDEC_Params *params)
Create an instance of an image decoder algorithm.
Int32 | IMGDEC_process (IMGDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IMGDEC_InArgs *inArgs, IMGDEC_OutArgs *outArgs)
Execute the process() method in this instance of a image decoder algorithm.
Int32 | IMGDEC_control (IMGDEC_Handle handle, IMGDEC_Cmd id, IMGDEC_DynamicParams *params, IMGDEC_Status *status)
Execute the control() method in this instance of an image decoder algorithm.
Void | IMGDEC_delete (IMGDEC_Handle handle)
Delete the instance of a image decoder algorithm.
XDAS_Int32 | IMGDEC_processAsync (IMGDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IMGDEC_InArgs *inArgs, IMGDEC_OutArgs *outArgs)
Perform asynchronous submission to this instance of an image decoder algorithm.
XDAS_Int32 | IMGDEC_processWait (IMGDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IMGDEC_InArgs *inArgs, IMGDEC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of IMGDEC_processAsync() in this instance of an image decoder algorithm.

Detailed Description

This is the IMGDEC image decoder interface. Several of the data types in this API are specified by the XDM interface; please see the XDM documentation for those details.

Define Documentation

#define IMGDEC_EOK IIMGDEC_EOK

Success.

#define IMGDEC_EFAIL IIMGDEC_EFAIL

General failure.

#define IMGDEC_ERUNTIME IIMGDEC_ERUNTIME

General runtime failure.

#define IMGDEC_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define IMGDEC_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef IIMGDEC_Status IMGDEC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC_Fxns::control()
typedef VISA_Handle IMGDEC_Handle

Opaque handle to a IMGDEC codec.

typedef struct IIMGDEC_Params IMGDEC_Params

This structure defines the parameters necessary to create an instance of a image decoder object.

typedef IIMGDEC_InArgs IMGDEC_InArgs

Defines the input arguments for all IIMGDEC instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC_Fxns::process()
typedef IIMGDEC_OutArgs IMGDEC_OutArgs

Defines the run time output arguments for all IIMGDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::process()
typedef IIMGDEC_Cmd IMGDEC_Cmd

Defines the control commands for the IIMGDEC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IIMGDEC_Fxns::control()
typedef IIMGDEC_DynamicParams IMGDEC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC_Fxns::control()
typedef struct IIMGDEC_CodecClassConfig IIMGDEC_CodecClassConfig

Definition of IIMGDEC codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Function Documentation

IMGDEC_Handle IMGDEC_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | IMGDEC_Params * | params
 | ) |  |

Create an instance of an image decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via IMGDEC_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of image decoder. to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created image decoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the image decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
IMGDEC_delete()
Int32 IMGDEC_process | ( | IMGDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IMGDEC_InArgs * | inArgs,
 |  | IMGDEC_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a image decoder algorithm.

Parameters:
[in] | handle | Handle to a created image decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) image decoder handle and the image decoder is in the created state.
Return values:
IMGDEC_EOK | Success.
IMGDEC_EFAIL | Failure.
IMGDEC_ERUNTIME | Internal Runtime Error.
Remarks:
Since the IMGDEC decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to IMGDEC_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See IMGDEC_OutArgs::extendedError for details.
See also:
IMGDEC_create()
IMGDEC_delete()
IMGDEC_control()
IMGDEC_processAsync()
IMGDEC_processWait()
IIMGDEC_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
Int32 IMGDEC_control | ( | IMGDEC_Handle | handle,
 |  | IMGDEC_Cmd | id,
 |  | IMGDEC_DynamicParams * | params,
 |  | IMGDEC_Status * | status
 | ) |  |

Execute the control() method in this instance of an image decoder algorithm.

Parameters:
[in] | handle | Handle to a created image decoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) image decoder handle and the image decoder is in the created state.
Return values:
IMGDEC_EOK | Success.
IMGDEC_EFAIL | Failure.
IMGDEC_ERUNTIME | Internal Runtime Error.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See IMGDEC_Status::extendedError for details.
See also:
IMGDEC_create()
IMGDEC_delete()
IIMGDEC_Fxns::control()
Void IMGDEC_delete ( IMGDEC_Handle handle )

Delete the instance of a image decoder algorithm.

Parameters:
[in] handle Handle to a created image decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the image decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the IMGDEC_create() operation (memory, DMA channels, etc.) are freed.
See also:
IMGDEC_create()
XDAS_Int32 IMGDEC_processAsync | ( | IMGDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IMGDEC_InArgs * | inArgs,
 |  | IMGDEC_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of an image decoder algorithm.

Parameters:
[in] | handle | Handle to a created image decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) image decoder handle and the image decoder is in the created state.
Return values:
IMGDEC_EOK | Success.
IMGDEC_EFAIL | Failure.
IMGDEC_ERUNTIME | Internal Runtime Error.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the IMGDEC_processWait() API.
The buffers supplied to IMGDEC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGDEC_create()
IMGDEC_delete()
IMGDEC_control()
IMGDEC_process()
IMGDEC_processWait()
IIMGDEC_Fxns::process()
XDAS_Int32 IMGDEC_processWait | ( | IMGDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IMGDEC_InArgs * | inArgs,
 |  | IMGDEC_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of IMGDEC_processAsync() in this instance of an image decoder algorithm.

Parameters:
[in] | handle | Handle to a created image decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> IMGDEC_FOREVER)
Precondition:
handle is a valid (non-NULL) image decoder handle and the image decoder is in the created state.
Return values:
IMGDEC_EOK | Success.
IMGDEC_EFAIL | Failure.
IMGDEC_ERUNTIME | Internal Runtime Error.
IMGDEC_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of IMGDEC_EFOREVER.
There must have previously been an invocation of the IMGDEC_processAsync() API.
The buffers supplied to IMGDEC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGDEC_create()
IMGDEC_delete()
IMGDEC_control()
IMGDEC_process()
IMGDEC_processAsync()


Codec Engine Application Programming Interface (API): IMGENC - Image Encoder Interface

Data Structures | Defines | Typedefs | Functions

IMGENC - Image Encoder Interface

Data Structures

struct | IIMGENC_CodecClassConfig
Definition of IIMGENC codec class configurable parameters. More...

Defines

#define | IMGENC_EOK IIMGENC_EOK
#define | IMGENC_EFAIL IIMGENC_EFAIL
#define | IMGENC_ERUNTIME IIMGENC_ERUNTIME
#define | IMGENC_ETIMEOUT VISA_ETIMEOUT
#define | IMGENC_FOREVER VISA_FOREVER

Typedefs

typedef IIMGENC_Status | IMGENC_Status
typedef VISA_Handle | IMGENC_Handle
Opaque handle to a IMGENC codec.
typedef struct IIMGENC_Params | IMGENC_Params
This structure defines the parameters necessary to create an instance of a image encoder object.
typedef IIMGENC_InArgs | IMGENC_InArgs
typedef IIMGENC_OutArgs | IMGENC_OutArgs
typedef IIMGENC_Cmd | IMGENC_Cmd
typedef IIMGENC_DynamicParams | IMGENC_DynamicParams
typedef struct
IIMGENC_CodecClassConfig 		IIMGENC_CodecClassConfig
Definition of IIMGENC codec class configurable parameters.

Functions

IMGENC_Handle | IMGENC_create (Engine_Handle e, String name, IMGENC_Params *params)
Create an instance of an image encoder algorithm.
Int32 | IMGENC_process (IMGENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IMGENC_InArgs *inArgs, IMGENC_OutArgs *outArgs)
Execute the process() method in this instance of an image encoder algorithm.
Int32 | IMGENC_control (IMGENC_Handle handle, IMGENC_Cmd id, IMGENC_DynamicParams *params, IMGENC_Status *status)
Execute the control() method in this instance of an image encoder algorithm.
Void | IMGENC_delete (IMGENC_Handle handle)
Delete the instance of an image encoder algorithm.
XDAS_Int32 | IMGENC_processAsync (IMGENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IIMGENC_InArgs *inArgs, IIMGENC_OutArgs *outArgs)
Perform asynchronous submission to this instance of an image encoder algorithm.
XDAS_Int32 | IMGENC_processWait (IMGENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IIMGENC_InArgs *inArgs, IIMGENC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of IMGENC_processAsync() in this instance of an image encoder algorithm.

Detailed Description

This is the IMGENC image encoder interface. Several of the data types in this API are specified by the XDM interface; please see the XDM documentation for those details.

Define Documentation

#define IMGENC_EOK IIMGENC_EOK

Success.

#define IMGENC_EFAIL IIMGENC_EFAIL

General failure.

#define IMGENC_ERUNTIME IIMGENC_ERUNTIME

General runtime failure.

#define IMGENC_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define IMGENC_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef IIMGENC_Status IMGENC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::control()
typedef VISA_Handle IMGENC_Handle

Opaque handle to a IMGENC codec.

typedef struct IIMGENC_Params IMGENC_Params

This structure defines the parameters necessary to create an instance of a image encoder object.

typedef IIMGENC_InArgs IMGENC_InArgs

Defines the input arguments for all IIMGENC instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::process()
typedef IIMGENC_OutArgs IMGENC_OutArgs

Defines the run time output arguments for all IIMGENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::process()
typedef IIMGENC_Cmd IMGENC_Cmd

Defines the control commands for the IIMGENC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IIMGENC_Fxns::control()
typedef IIMGENC_DynamicParams IMGENC_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::control()
typedef struct IIMGENC_CodecClassConfig IIMGENC_CodecClassConfig

Definition of IIMGENC codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Function Documentation

IMGENC_Handle IMGENC_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | IMGENC_Params * | params
 | ) |  |

Create an instance of an image encoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via IMGENC_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of image encoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created image encoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the image encoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
IMGENC_delete()
Int32 IMGENC_process | ( | IMGENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IMGENC_InArgs * | inArgs,
 |  | IMGENC_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of an image encoder algorithm.

Parameters:
[in] | handle | Handle to a created image encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
Return values:
IMGENC_EOK | Success.
IMGENC_EFAIL | Failure.
IMGENC_ERUNTIME | Internal Runtime Error.
Remarks:
Since the IMGENC encoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to IMGENC_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See IMGENC_OutArgs::extendedError for details.
See also:
IMGENC_create()
IMGENC_delete()
IMGENC_control()
IMGENC_processAsync()
IMGENC_processWait()
IIMGENC_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
Int32 IMGENC_control | ( | IMGENC_Handle | handle,
 |  | IMGENC_Cmd | id,
 |  | IMGENC_DynamicParams * | params,
 |  | IMGENC_Status * | status
 | ) |  |

Execute the control() method in this instance of an image encoder algorithm.

Parameters:
[in] | handle | Handle to a created image encoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for encoding.
[out] | status | Status info upon completion of encode operation.
Precondition:
handle is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
Return values:
IMGENC_EOK | Success.
IMGENC_EFAIL | Failure.
IMGENC_ERUNTIME | Internal Runtime Error.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See IMGENC_Status::extendedError for details.
See also:
IMGENC_create()
IMGENC_delete()
IIMGENC_Fxns::control() - the reflected algorithm interface, which may contain further usage details.
Void IMGENC_delete ( IMGENC_Handle handle )

Delete the instance of an image encoder algorithm.

Parameters:
[in] handle Handle to a created image encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the image encoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the IMGENC_create() operation (memory, DMA channels, etc.) are freed.
See also:
IMGENC_create()
XDAS_Int32 IMGENC_processAsync | ( | IMGENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IIMGENC_InArgs * | inArgs,
 |  | IIMGENC_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of an image encoder algorithm.

Parameters:
[in] | handle | Handle to a created image encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
Return values:
IMGENC_EOK | Success.
IMGENC_EFAIL | Failure.
IMGENC_ERUNTIME | Internal Runtime Error.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the IMGENC_processWait() API.
The buffers supplied to IMGENC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGENC_create()
IMGENC_delete()
IMGENC_control()
IMGENC_process()
IMGENC_processWait()
IIMGENC_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
XDAS_Int32 IMGENC_processWait | ( | IMGENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IIMGENC_InArgs * | inArgs,
 |  | IIMGENC_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of IMGENC_processAsync() in this instance of an image encoder algorithm.

Parameters:
[in] | handle | Handle to a created image encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> IMGENC_FOREVER)
Precondition:
handle is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
Return values:
IMGENC_EOK | Success.
IMGENC_EFAIL | Failure.
IMGENC_ERUNTIME | Internal Runtime Error.
IMGENC_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of IMGENC_EFOREVER.
There must have previously been an invocation of the IMGENC_processAsync() API.
The buffers supplied to IMGENC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGENC_create()
IMGENC_delete()
IMGENC_control()
IMGENC_process()
IMGENC_processAsync()


Codec Engine Application Programming Interface (API): IMGDEC1 - Image Decoder Interface

Data Structures | Defines | Typedefs | Functions

IMGDEC1 - Image Decoder Interface

Data Structures

struct | IIMGDEC1_CodecClassConfig
Definition of IIMGDEC1 codec class configurable parameters. More...

Defines

#define | IMGDEC1_EOK IIMGDEC1_EOK
#define | IMGDEC1_EFAIL IIMGDEC1_EFAIL
#define | IMGDEC1_EUNSUPPORTED IIMGDEC1_EUNSUPPORTED
#define | IMGDEC1_ETIMEOUT VISA_ETIMEOUT
#define | IMGDEC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | IMGDEC1_Handle
Opaque handle to a IMGDEC1 codec.
typedef struct IIMGDEC1_Params | IMGDEC1_Params
typedef IIMGDEC1_InArgs | IMGDEC1_InArgs
typedef IIMGDEC1_OutArgs | IMGDEC1_OutArgs
typedef IIMGDEC1_Cmd | IMGDEC1_Cmd
typedef IIMGDEC1_DynamicParams | IMGDEC1_DynamicParams
typedef IIMGDEC1_Status | IMGDEC1_Status
typedef struct
IIMGDEC1_CodecClassConfig 		IIMGDEC1_CodecClassConfig
Definition of IIMGDEC1 codec class configurable parameters.

Functions

Int32 | IMGDEC1_control (IMGDEC1_Handle handle, IMGDEC1_Cmd id, IMGDEC1_DynamicParams *params, IMGDEC1_Status *status)
Execute the control() method in this instance of an image decoder algorithm.
IMGDEC1_Handle | IMGDEC1_create (Engine_Handle e, String name, IMGDEC1_Params *params)
Create an instance of an image decoder algorithm.
Void | IMGDEC1_delete (IMGDEC1_Handle handle)
Delete the instance of an image decoder algorithm.
Int32 | IMGDEC1_process (IMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IMGDEC1_InArgs *inArgs, IMGDEC1_OutArgs *outArgs)
Execute the process() method in this instance of an image decoder algorithm.
XDAS_Int32 | IMGDEC1_processAsync (IMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IMGDEC1_InArgs *inArgs, IMGDEC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of an image decoder algorithm.
XDAS_Int32 | IMGDEC1_processWait (IMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IMGDEC1_InArgs *inArgs, IMGDEC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of IMGDEC1_processAsync() in this instance of an image decoder algorithm.

Detailed Description

This is the IMGDEC1 image decoder interface. Several of the data types in this API are specified by the XDM IIMGDEC1 interface; please see the XDM documentation for those details.

Define Documentation

#define IMGDEC1_EOK IIMGDEC1_EOK

Success.

#define IMGDEC1_EFAIL IIMGDEC1_EFAIL

General failure.

#define IMGDEC1_EUNSUPPORTED IIMGDEC1_EUNSUPPORTED

Request is unsupported.

#define IMGDEC1_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define IMGDEC1_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle IMGDEC1_Handle

Opaque handle to a IMGDEC1 codec.

typedef struct IIMGDEC1_Params IMGDEC1_Params

Defines the creation time parameters for all IIMGDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IIMGDEC1_InArgs IMGDEC1_InArgs

Defines the input arguments for all IIMGDEC1 instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::process()
typedef IIMGDEC1_OutArgs IMGDEC1_OutArgs

Defines the run time output arguments for all IIMGDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::process()
typedef IIMGDEC1_Cmd IMGDEC1_Cmd

Defines the control commands for the IIMGDEC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IIMGDEC1_Fxns::control()
typedef IIMGDEC1_DynamicParams IMGDEC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::control()
typedef IIMGDEC1_Status IMGDEC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::control()
typedef struct IIMGDEC1_CodecClassConfig IIMGDEC1_CodecClassConfig

Definition of IIMGDEC1 codec class configurable parameters.

Function Documentation

Int32 IMGDEC1_control | ( | IMGDEC1_Handle | handle,
 |  | IMGDEC1_Cmd | id,
 |  | IMGDEC1_DynamicParams * | params,
 |  | IMGDEC1_Status * | status
 | ) |  |

Execute the control() method in this instance of an image decoder algorithm.

Parameters:
[in] | handle | Handle to a created image decoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) image decoder handle and the image decoder is in the created state.
Return values:
IMGDEC1_EOK | Success.
IMGDEC1_EFAIL | Failure.
IMGDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
IMGDEC1_create()
IMGDEC1_delete()
IIMGDEC1_Fxns.control()
IMGDEC1_Handle IMGDEC1_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | IMGDEC1_Params * | params
 | ) |  |

Create an instance of an image decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via IMGDEC1_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of image decoder. to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created image decoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the image decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
IMGDEC1_delete()
Void IMGDEC1_delete ( IMGDEC1_Handle handle )

Delete the instance of an image decoder algorithm.

Parameters:
[in] handle Handle to a created image decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the image decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the IMGDEC1_create() operation (memory, DMA channels, etc.) are freed.
See also:
IMGDEC1_create()
Int32 IMGDEC1_process | ( | IMGDEC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | IMGDEC1_InArgs * | inArgs,
 |  | IMGDEC1_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of an image decoder algorithm.

Parameters:
[in] | handle | Handle to a created image decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) image decoder handle and the image decoder is in the created state.
Return values:
IMGDEC1_EOK | Success.
IMGDEC1_EFAIL | Failure.
IMGDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
Since the IMGDEC1 decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to IMGDEC1_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGDEC1_create()
IMGDEC1_delete()
IMGDEC1_control()
IMGDEC1_processAsync()
IMGDEC1_processWait()
IIMGDEC1_Fxns.process()
XDAS_Int32 IMGDEC1_processAsync | ( | IMGDEC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | IMGDEC1_InArgs * | inArgs,
 |  | IMGDEC1_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of an image decoder algorithm.

Parameters:
[in] | handle | Handle to a created image decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) image decoder handle and the image decoder is in the created state.
Return values:
IMGDEC1_EOK | Success.
IMGDEC1_EFAIL | Failure.
IMGDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the IMGDEC1_processWait() API.
The buffers supplied to IMGDEC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGDEC1_create()
IMGDEC1_delete()
IMGDEC1_control()
IMGDEC1_process()
IMGDEC1_processWait()
IIMGDEC1_Fxns.process()
XDAS_Int32 IMGDEC1_processWait | ( | IMGDEC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | IMGDEC1_InArgs * | inArgs,
 |  | IMGDEC1_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of IMGDEC1_processAsync() in this instance of an image decoder algorithm.

Parameters:
[in] | handle | Handle to a created image decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> IMGDEC1_FOREVER)
Precondition:
handle is a valid (non-NULL) image decoder handle and the image decoder is in the created state.
Return values:
IMGDEC1_EOK | Success.
IMGDEC1_EFAIL | Failure.
IMGDEC1_EUNSUPPORTED | Unsupported request.
IMGDEC1_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of IMGDEC1_FOREVER.
There must have previously been an invocation of the IMGDEC1_processAsync() API.
The buffers supplied to IMGDEC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGDEC1_create()
IMGDEC1_delete()
IMGDEC1_control()
IMGDEC1_process()
IMGDEC1_processAsync()


Codec Engine Application Programming Interface (API): IMGENC1 - Image Encoder Interface

Data Structures | Defines | Typedefs | Functions

IMGENC1 - Image Encoder Interface

Data Structures

struct | IIMGENC1_CodecClassConfig
Definition of IIMGENC1 codec class configurable parameters. More...

Defines

#define | IMGENC1_EOK IIMGENC1_EOK
#define | IMGENC1_EFAIL IIMGENC1_EFAIL
#define | IMGENC1_EUNSUPPORTED IIMGENC1_EUNSUPPORTED
#define | IMGENC1_ETIMEOUT VISA_ETIMEOUT
#define | IMGENC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | IMGENC1_Handle
Opaque handle to a IMGENC1 codec.
typedef struct IIMGENC1_Params | IMGENC1_Params
typedef IIMGENC1_InArgs | IMGENC1_InArgs
typedef IIMGENC1_OutArgs | IMGENC1_OutArgs
typedef IIMGENC1_Cmd | IMGENC1_Cmd
typedef IIMGENC1_DynamicParams | IMGENC1_DynamicParams
typedef IIMGENC1_Status | IMGENC1_Status
typedef struct
IIMGENC1_CodecClassConfig 		IIMGENC1_CodecClassConfig
Definition of IIMGENC1 codec class configurable parameters.

Functions

Int32 | IMGENC1_control (IMGENC1_Handle handle, IMGENC1_Cmd id, IMGENC1_DynamicParams *params, IMGENC1_Status *status)
Execute the control() method in this instance of an image encoder algorithm.
IMGENC1_Handle | IMGENC1_create (Engine_Handle e, String name, IMGENC1_Params *params)
Create an instance of an image encoder algorithm.
Void | IMGENC1_delete (IMGENC1_Handle handle)
Delete the instance of an image encoder algorithm.
Int32 | IMGENC1_process (IMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IMGENC1_InArgs *inArgs, IMGENC1_OutArgs *outArgs)
Execute the process() method in this instance of an image encoder algorithm.
XDAS_Int32 | IMGENC1_processAsync (IMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of an image encoder algorithm.
XDAS_Int32 | IMGENC1_processWait (IMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of IMGENC1_processAsync() in this instance of an image encoder algorithm.

Detailed Description

This is the IMGENC1 image encoder interface. Several of the data types in this API are specified by the XDM IIMGENC1 interface; please see the XDM documentation for those details.

Define Documentation

#define IMGENC1_EOK IIMGENC1_EOK

Success.

#define IMGENC1_EFAIL IIMGENC1_EFAIL

General failure.

#define IMGENC1_EUNSUPPORTED IIMGENC1_EUNSUPPORTED

Request is unsupported.

#define IMGENC1_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define IMGENC1_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle IMGENC1_Handle

Opaque handle to a IMGENC1 codec.

typedef struct IIMGENC1_Params IMGENC1_Params

Defines the creation time parameters for all IIMGENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IIMGENC1_InArgs IMGENC1_InArgs

Defines the input arguments for all IIMGENC1 instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::process()
typedef IIMGENC1_OutArgs IMGENC1_OutArgs

Defines the run time output arguments for all IIMGENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::process()
typedef IIMGENC1_Cmd IMGENC1_Cmd

Defines the control commands for the IIMGENC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IIMGENC1_Fxns::control()
typedef IIMGENC1_DynamicParams IMGENC1_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::control()
typedef IIMGENC1_Status IMGENC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::control()
typedef struct IIMGENC1_CodecClassConfig IIMGENC1_CodecClassConfig

Definition of IIMGENC1 codec class configurable parameters.

Function Documentation

Int32 IMGENC1_control | ( | IMGENC1_Handle | handle,
 |  | IMGENC1_Cmd | id,
 |  | IMGENC1_DynamicParams * | params,
 |  | IMGENC1_Status * | status
 | ) |  |

Execute the control() method in this instance of an image encoder algorithm.

Parameters:
[in] | handle | Handle to a created image encoder instance.
[in] | id | Command id for xDM control operation.
[in] | params | Runtime control parameters used for encoding.
[out] | status | Status info upon completion of encode operation.
Precondition:
handle is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
Return values:
IMGENC1_EOK | Success.
IMGENC1_EFAIL | Failure.
IMGENC1_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
IMGENC1_create()
IMGENC1_delete()
IIMGENC1_Fxns::control()
IMGENC1_Handle IMGENC1_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | IMGENC1_Params * | params
 | ) |  |

Create an instance of an image encoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via IMGENC1_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of image encoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created image encoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the image encoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
IMGENC1_delete()
Void IMGENC1_delete ( IMGENC1_Handle handle )

Delete the instance of an image encoder algorithm.

Parameters:
[in] handle Handle to a created image encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the image encoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the IMGENC1_create() operation (memory, DMA channels, etc.) are freed.
See also:
IMGENC1_create()
Int32 IMGENC1_process | ( | IMGENC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | IMGENC1_InArgs * | inArgs,
 |  | IMGENC1_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of an image encoder algorithm.

Parameters:
[in] | handle | Handle to a created image encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
Return values:
IMGENC1_EOK | Success.
IMGENC1_EFAIL | Failure.
IMGENC1_EUNSUPPORTED | Unsupported request.
Remarks:
Since the IMGENC1 encoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to IMGENC1_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGENC1_create()
IMGENC1_delete()
IMGENC1_control()
IMGENC1_processAsync()
IMGENC1_processWait()
IIMGENC1_Fxns::process()
XDAS_Int32 IMGENC1_processAsync | ( | IMGENC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | IIMGENC1_InArgs * | inArgs,
 |  | IIMGENC1_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of an image encoder algorithm.

Parameters:
[in] | handle | Handle to a created image encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
Return values:
IMGENC1_EOK | Success.
IMGENC1_EFAIL | Failure.
IMGENC1_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the IMGENC1_processWait() API.
The buffers supplied to IMGENC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGENC1_create()
IMGENC1_delete()
IMGENC1_control()
IMGENC1_process()
IMGENC1_processWait()
IIMGENC1_Fxns::process()
XDAS_Int32 IMGENC1_processWait | ( | IMGENC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | IIMGENC1_InArgs * | inArgs,
 |  | IIMGENC1_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of IMGENC1_processAsync() in this instance of an image encoder algorithm.

Parameters:
[in] | handle | Handle to a created image encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> IMGENC1_FOREVER)
Precondition:
handle is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
Return values:
IMGENC1_EOK | Success.
IMGENC1_EFAIL | Failure.
IMGENC1_EUNSUPPORTED | Unsupported request.
IMGENC1_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of IMGENC1_FOREVER.
There must have previously been an invocation of the IMGENC1_processAsync() API.
The buffers supplied to IMGENC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
IMGENC1_create()
IMGENC1_delete()
IMGENC1_control()
IMGENC1_process()
IMGENC1_processAsync()


Codec Engine Application Programming Interface (API): Memory - OS Independent Memory Interface

Data Structures | Defines | Typedefs | Enumerations | Functions | Variables

Memory - OS Independent Memory Interface

Data Structures

struct | ti_sdo_ce_osal_Memory_AllocParams
Parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free() More...

Defines

#define | ti_sdo_ce_osal_Memory_DEFAULTALIGNMENT ((UInt)(-1))
Default Alignment.
#define | Memory_MODNAME "ti.sdo.ce.osal.Memory"
Name to pass to Diags_setMask() to enable logging for Memory functions. For example, Diags_setMask(Memory_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.
#define | ti_sdo_ce_osal_Memory_GTNAME "OM"
GT name containing the trace mask for this module.
#define | ti_sdo_ce_osal_Memory_CACHED 0x00000000
Cached allocation.
#define | ti_sdo_ce_osal_Memory_NONCACHED 0x00000001
Non-cached allocation.
#define | ti_sdo_ce_osal_Memory_CACHEDMASK 0x00000001
Mask to isolate cache flag.

Typedefs

typedef struct
ti_sdo_ce_osal_Memory_AllocParams 		ti_sdo_ce_osal_Memory_AllocParams
Parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free()

Enumerations

enum ti_sdo_ce_osal_Memory_type {
ti_sdo_ce_osal_Memory_MALLOC = 0,
ti_sdo_ce_osal_Memory_SEG = 1,
ti_sdo_ce_osal_Memory_CONTIGPOOL = 2,
ti_sdo_ce_osal_Memory_CONTIGHEAP = 3
}

Enum values for ti_sdo_ce_osal_Memory_AllocParams.type.

More...

Functions

Ptr | ti_sdo_ce_osal_Memory_alloc (UInt size, ti_sdo_ce_osal_Memory_AllocParams *params)
General memory allocation.
Void | ti_sdo_ce_osal_Memory_cacheInv (Ptr addr, Int sizeInBytes)
Invalidate a range of cache.
Void | ti_sdo_ce_osal_Memory_cacheWb (Ptr addr, Int sizeInBytes)
Write back cache.
Void | ti_sdo_ce_osal_Memory_cacheWbInv (Ptr addr, Int sizeInBytes)
Write back and invalidate cache.
Void | ti_sdo_ce_osal_Memory_cacheWbInvAll ()
Write back and invalidate the entire cache. Not supported yet on all OS's.
Ptr | ti_sdo_ce_osal_Memory_contigAlloc (UInt size, UInt align)
Allocate physically contiguous blocks of memory.
Bool | ti_sdo_ce_osal_Memory_contigFree (Ptr addr, UInt size)
Free memory allocated by ti_sdo_ce_osal_Memory_contigAlloc()
Bool | ti_sdo_ce_osal_Memory_free (Ptr addr, UInt size, ti_sdo_ce_osal_Memory_AllocParams *params)
Free memory allocated with ti_sdo_ce_osal_Memory_alloc().
UInt32 | ti_sdo_ce_osal_Memory_getBufferPhysicalAddress (Ptr virtualAddress, Int sizeInBytes, Bool *isContiguous)
Converts application virtual address to a physical address.
Ptr | ti_sdo_ce_osal_Memory_getBufferVirtualAddress (UInt32 physicalAddress, Int sizeInBytes)
Obtains the virtual address of a physically contiguous buffer.

Variables

ti_sdo_ce_osal_Memory_AllocParams ti_sdo_ce_osal_Memory_DEFAULTPARAMS
Default parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free()

Detailed Description

This Memory module provides services to manage memory in OS independent environments.

Package Prefix

In order to avoid global namespace collisions, this module prefixes all its exports with the globally unique package name it's contained in (ti_sdo_ce_osal). As a usability feature (and to remain backward compatible with previous releases), these exports are also made available via the more traditional 'short' name - without the package name prefix.

For example, although the actual export may be named 'ti_sdo_ce_osal_Memory_alloc', it's generally usable via the shorter name 'Memory_alloc'. In the rare case where a namespace collision occurs, users can disable the definitions of the 'short' name by defining the symbol 'ti_sdo_ce_osal_Memory__nolocalnames' before including this module's header. For example:

 #define ti_sdo_ce_osal_Memory__nolocalnames
 #include <ti/sdo/ce/osal/Memory.h>

This follows the same approach the XDCtools takes, and further explaination is available here: http://rtsc.eclipse.org/docs-tip/Integrating_RTSC_Modules#Eliminating_Identifier_Conflicts.

Define Documentation

#define ti_sdo_ce_osal_Memory_DEFAULTALIGNMENT ((UInt)(-1))

Default Alignment.

Remarks:
This definition also has a short name alias of Memory_DEFAULTALIGNMENT.
See also:
ti_sdo_ce_osal_Memory_AllocParams.align
#define Memory_MODNAME "ti.sdo.ce.osal.Memory"

Name to pass to Diags_setMask() to enable logging for Memory functions. For example, Diags_setMask(Memory_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.

#define ti_sdo_ce_osal_Memory_GTNAME "OM"

GT name containing the trace mask for this module.

Remarks:
This definition also has a short name alias of Memory_GTNAME.
#define ti_sdo_ce_osal_Memory_CACHED 0x00000000

Cached allocation.

Remarks:
This definition also has a short name alias of Memory_CACHED.
See also:
ti_sdo_ce_osal_Memory_AllocParams.flags
#define ti_sdo_ce_osal_Memory_NONCACHED 0x00000001

Non-cached allocation.

Remarks:
This definition also has a short name alias of Memory_NONCACHED.
See also:
ti_sdo_ce_osal_Memory_AllocParams.flags
#define ti_sdo_ce_osal_Memory_CACHEDMASK 0x00000001

Mask to isolate cache flag.

Remarks:
This definition also has a short name alias of Memory_NONCACHEDMASK.
See also:
ti_sdo_ce_osal_Memory_AllocParams.flags

Typedef Documentation

typedef struct ti_sdo_ce_osal_Memory_AllocParams ti_sdo_ce_osal_Memory_AllocParams

Parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free()

Remarks:
This definition also has a short name alias of Memory_AllocParams.
See also:
ti_sdo_ce_osal_Memory_DEFAULTPARAMS

Enumeration Type Documentation

enum ti_sdo_ce_osal_Memory_type

Enum values for ti_sdo_ce_osal_Memory_AllocParams.type.

Remarks:
This definition also has a short name alias of Memory_type.
See also:
ti_sdo_ce_osal_Memory_AllocParams
Enumerator:
ti_sdo_ce_osal_Memory_MALLOC

malloc()-based allocation

Remarks:
This definition also has a short name alias of Memory_MALLOC.
ti_sdo_ce_osal_Memory_SEG

DSP/BIOS segment-based allocation

Remarks:
This definition also has a short name alias of Memory_SEG.
ti_sdo_ce_osal_Memory_CONTIGPOOL

Contiguous, pool-based allocation

Remarks:
This definition also has a short name alias of Memory_CONTIGPOOL.
ti_sdo_ce_osal_Memory_CONTIGHEAP

Contiguous, heap-based allocation

Remarks:
This definition also has a short name alias of Memory_CONTIGHEAP.

Function Documentation

Ptr ti_sdo_ce_osal_Memory_alloc | ( | UInt | size,
 |  | ti_sdo_ce_osal_Memory_AllocParams * | params
 | ) |  |

General memory allocation.

Parameters:
[in] | size | Number of bytes to allocate.
[in] | params | Parameters controlling the allocation.
Remarks:
This definition also has a short name alias of Memory_alloc.
Return values:
NULL | The memory request failed.
non-NULL | The pointer to a buffer containing the requested memory.
See also:
ti_sdo_ce_osal_Memory_free()
ti_sdo_ce_osal_Memory_contigAlloc()
Void ti_sdo_ce_osal_Memory_cacheInv | ( | Ptr | addr,
 |  | Int | sizeInBytes
 | ) |  |

Invalidate a range of cache.

Parameters:
[in] | addr | Address of the beginning of the buffer to invalidate.
[in] | sizeInBytes | Size of the buffer to invalidate.
Remarks:
In addition to application usage, this is often called by a skeleton implementor after it has received a shared memory buffer from another processor, and before it invokes an algorithm's interface which will operate on that shared memory buffer.
This definition also has a short name alias of Memory_cacheInv.
See also:
ti_sdo_ce_osal_Memory_cacheWb()
ti_sdo_ce_osal_Memory_cacheWbInv()
Void ti_sdo_ce_osal_Memory_cacheWb | ( | Ptr | addr,
 |  | Int | sizeInBytes
 | ) |  |

Write back cache.

Parameters:
[in] | addr | Address of the beginning of the buffer to writeback.
[in] | sizeInBytes | Size of the buffer to writeback.
Remarks:
This definition also has a short name alias of Memory_cacheWb.
See also:
ti_sdo_ce_osal_Memory_cacheInv()
ti_sdo_ce_osal_Memory_cacheWbInv()
Void ti_sdo_ce_osal_Memory_cacheWbInv | ( | Ptr | addr,
 |  | Int | sizeInBytes
 | ) |  |

Write back and invalidate cache.

Parameters:
[in] | addr | Address of the beginning of the buffer to writeback and invalidate.
[in] | sizeInBytes | Size of the buffer to writeback invalidate.
Remarks:
This definition also has a short name alias of Memory_cacheWbInv.
See also:
ti_sdo_ce_osal_Memory_cacheInv()
ti_sdo_ce_osal_Memory_cacheWb()
Void ti_sdo_ce_osal_Memory_cacheWbInvAll ( )

Write back and invalidate the entire cache. Not supported yet on all OS's.

Remarks:
This definition also has a short name alias of Memory_cacheWbInvAll.
See also:
ti_sdo_ce_osal_Memory_cacheInv()
ti_sdo_ce_osal_Memory_cacheWb()
ti_sdo_ce_osal_Memory_cacheWbInv()
Ptr ti_sdo_ce_osal_Memory_contigAlloc | ( | UInt | size,
 |  | UInt | align
 | ) |  |

Allocate physically contiguous blocks of memory.

Deprecated:
This function has been superceded by ti_sdo_ce_osal_Memory_alloc() and will be removed in a future release. Users are recommended to modify their applications to use the new, more flexible ti_sdo_ce_osal_Memory_alloc() instead.
Parameters:
[in] | size | Size of the buffer to allocate.
[in] | align | Alignment of the buffer; must be divisible by a power of two.
Precondition:
align must be divisible by a power of two.
Remarks:
This definition also has a short name alias of Memory_contigAlloc.
Return values:
non-NULL | Address of a physically contiguous buffer.
NULL | Unable to obtain the requested buffer.
Remarks:
This is commonly called by an application wishing to obtain a physically contiguous buffer which it must share with another processor.
For portability reasons, applications commonly use this API even in environments which do not have virtual memory or an MMU (e.g. a single processor, DSP/BIOS based system). Doing so makes them portable to environments which do have to provide physically contiguous memory to remote processors.
See also:
ti_sdo_ce_osal_Memory_alloc()
ti_sdo_ce_osal_Memory_contigFree()
Bool ti_sdo_ce_osal_Memory_contigFree | ( | Ptr | addr,
 |  | UInt | size
 | ) |  |

Free memory allocated by ti_sdo_ce_osal_Memory_contigAlloc()

Parameters:
[in] | addr | Address of a buffer allocated by ti_sdo_ce_osal_Memory_contigAlloc()
[in] | size | Size of the buffer to free.
Remarks:
This definition also has a short name alias of Memory_contigFree.
Return values:
TRUE | The buffer was freed and the memory pointed to by addr is no longer valid.
FALSE | The buffer couldn't be freed.
Precondition:
addr must be a valid address returned by ti_sdo_ce_osal_Memory_contigAlloc()
size must be equivalent to the size passed in during the ti_sdo_ce_osal_Memory_contigAlloc() allocation.
See also:
ti_sdo_ce_osal_Memory_contigAlloc()
Bool ti_sdo_ce_osal_Memory_free | ( | Ptr | addr,
 |  | UInt | size,
 |  | ti_sdo_ce_osal_Memory_AllocParams * | params
 | ) |  |

Free memory allocated with ti_sdo_ce_osal_Memory_alloc().

Parameters:
[in] | addr | Address of a buffer allocated by ti_sdo_ce_osal_Memory_alloc().
[in] | size | Size of the buffer to free.
[in] | params | Parameters controlling the free operation.
Remarks:
This definition also has a short name alias of Memory_free.
Return values:
TRUE | The buffer was freed and the memory pointed to by addr is no longer valid.
FALSE | The buffer couldn't be freed.
Precondition:
addr must be a valid address returned by ti_sdo_ce_osal_Memory_alloc().
size must be equivalent to the size passed in during the ti_sdo_ce_osal_Memory_alloc() allocation.
params must be equivalent to the params passed in during the ti_sdo_ce_osal_Memory_alloc() allocation.
See also:
ti_sdo_ce_osal_Memory_alloc()
UInt32 ti_sdo_ce_osal_Memory_getBufferPhysicalAddress | ( | Ptr | virtualAddress,
 |  | Int | sizeInBytes,
 |  | Bool * | isContiguous
 | ) |  |

Converts application virtual address to a physical address.

This API also checks verifies that the buffer is really contiguous.

Parameters:
[in] | virtualAddress | Address of a buffer.
[in] | sizeInBytes | Size of the buffer.
[out] | isContiguous | Optional flag indicating whether the buffer was physically contiguous or not.
Return values:
0 | Failure, the physical address could not be obtained.
non-zero | The physical address of the buffer.
Remarks:
sizeInBytes must be non-zero.
isContiguous is an optional parameter, and can be NULL if the caller doesn't want the results of this check. If isContiguous is NULL but the buffer is not contiguous, error trace will be generated.
If a physically discontiguous buffer is provided in virtualAddress, zero will be returned. And if isContiguous is non-null, it will be set to FALSE.
This is typically called by a stub implementation to translate an application-side virtual address into a physical address usable by a remote skeleton and algorithm.
To enable portable code, this is safe to call on systems without virtual memory. In those cases, the returned physical buffer will be the same as the provided "virtual" buffer.
This definition also has a short name alias of Memory_getBufferPhysicalAddress.
See also:
ti_sdo_ce_osal_Memory_getBufferVirtualAddress()
Ptr ti_sdo_ce_osal_Memory_getBufferVirtualAddress | ( | UInt32 | physicalAddress,
 |  | Int | sizeInBytes
 | ) |  |

Obtains the virtual address of a physically contiguous buffer.

Parameters:
[in] | physicalAddress | Physical address of a buffer.
[in] | sizeInBytes | Size of the buffer.
Return values:
NULL | Failure, the virtual address could not be obtained.
non-zero | The virtual address of the buffer.
Remarks:
sizeInBytes must be non-zero.
If virtualAddress, was not acquired by ti_sdo_ce_osal_Memory_getBufferPhysicalAddress(), no attempt is made to map the physically contiguous buffer into the application's virtual memory space.
This is typically called by a stub implementation to translate a buffer provided by a remote skeleton and/or algorithm into an application-usable, virtual address.
On some homogenous multicore devices (e.g. C6472), this service translates a local address to a global address that's visible by a different processor.
To enable portable code, this is safe to call on systems without virtual memory. In those cases, the returned "virtual" buffer will be the same as the provided physical buffer.
This definition also has a short name alias of Memory_getBufferVirtualAddress.
See also:
ti_sdo_ce_osal_Memory_getBufferPhysicalAddress()

Variable Documentation

ti_sdo_ce_osal_Memory_AllocParams ti_sdo_ce_osal_Memory_DEFAULTPARAMS

Default parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free()

Remarks:
This definition also has a short name alias of Memory_DEFAULTPARAMS.
ti_sdo_ce_osal_Memory_DEFAULTPARAMS will be used when NULL is passed in the ti_sdo_ce_osal_Memory_AllocParams parameter for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free(). When passing a non-NULL ti_sdo_ce_osal_Memory_AllocParams parameter, you should first copy ti_sdo_ce_osal_Memory_DEFAULTPARAMS to your structure and then modify individual elements as needed:
      Memory_AllocParams  myParams;

      myParams = Memory_DEFAULTPARAMS;
      myParams.type = Memory_CONTIGHEAP;
See also:
ti_sdo_ce_osal_Memory_alloc()
ti_sdo_ce_osal_Memory_free()


Codec Engine Application Programming Interface (API): SPHDEC - Speech Decoder Interface

Defines | Typedefs | Functions

SPHDEC - Speech Decoder Interface

Defines

#define | SPHDEC_EOK ISPHDEC_EOK
#define | SPHDEC_EFAIL ISPHDEC_EFAIL
#define | SPHDEC_ERUNTIME ISPHDEC_ERUNTIME
#define | SPHDEC_ETIMEOUT VISA_ETIMEOUT
#define | SPHDEC_FOREVER VISA_FOREVER

Typedefs

typedef ISPHDEC_Status | SPHDEC_Status
typedef VISA_Handle | SPHDEC_Handle
Opaque handle to a SPHDEC codec.
typedef struct ISPHDEC_Params | SPHDEC_Params
This structure defines the parameters necessary to create an instance of a speech decoder object.
typedef ISPHDEC_InArgs | SPHDEC_InArgs
typedef ISPHDEC_OutArgs | SPHDEC_OutArgs
typedef ISPHDEC_Cmd | SPHDEC_Cmd
typedef ISPHDEC_DynamicParams | SPHDEC_DynamicParams

Functions

SPHDEC_Handle | SPHDEC_create (Engine_Handle e, String name, SPHDEC_Params *params)
Create an instance of a speech decoder algorithm.
Int32 | SPHDEC_process (SPHDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, SPHDEC_InArgs *inArgs, SPHDEC_OutArgs *outArgs)
Execute the process() method in this instance of a speech decoder algorithm.
Int32 | SPHDEC_control (SPHDEC_Handle handle, SPHDEC_Cmd id, SPHDEC_DynamicParams *params, SPHDEC_Status *status)
Execute the control method in this instance of a speech decoder algorithm.
Void | SPHDEC_delete (SPHDEC_Handle handle)
Delete the instance of a speech/voice decoder algorithm.
XDAS_Int32 | SPHDEC_processAsync (SPHDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, SPHDEC_InArgs *inArgs, SPHDEC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a speech decoder algorithm.
XDAS_Int32 | SPHDEC_processWait (SPHDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, SPHDEC_InArgs *inArgs, SPHDEC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of SPHDEC_processAsync() in this instance of an speech decoder algorithm.

Detailed Description

This is the SPHDEC speech decoder interface. Several of the data types in this API are specified by the XDM interface; please see the XDM documentation for those details.

Define Documentation

#define SPHDEC_EOK ISPHDEC_EOK

Success.

#define SPHDEC_EFAIL ISPHDEC_EFAIL

General failure.

#define SPHDEC_ERUNTIME ISPHDEC_ERUNTIME

General runtime failure.

#define SPHDEC_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define SPHDEC_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef ISPHDEC_Status SPHDEC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::control()
typedef VISA_Handle SPHDEC_Handle

Opaque handle to a SPHDEC codec.

typedef struct ISPHDEC_Params SPHDEC_Params

This structure defines the parameters necessary to create an instance of a speech decoder object.

typedef ISPHDEC_InArgs SPHDEC_InArgs

Defines the input arguments for all ISPHDEC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::process()
typedef ISPHDEC_OutArgs SPHDEC_OutArgs

Defines the run time output arguments for all ISPHDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::process()
typedef ISPHDEC_Cmd SPHDEC_Cmd

Defines the control commands for the ISPHDEC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
ISPHDEC_Fxns::control()
typedef ISPHDEC_DynamicParams SPHDEC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::control()

Function Documentation

SPHDEC_Handle SPHDEC_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | SPHDEC_Params * | params
 | ) |  |

Create an instance of a speech decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via SPHDEC_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of speech decoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created speech decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may create a local or remote instance of the speech decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
SPHDEC_delete()
Int32 SPHDEC_process | ( | SPHDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | SPHDEC_InArgs * | inArgs,
 |  | SPHDEC_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHDEC_EOK | Success.
SPHDEC_EFAIL | Failure.
SPHDEC_ERUNTIME | Internal Runtime Error.
Remarks:
Since the SPHDEC decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to SPHDEC_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHDEC_create()
SPHDEC_delete()
SPHDEC_control()
SPHDEC_processAsync()
SPHDEC_processWait()
ISPHDEC_Fxns::process()
Int32 SPHDEC_control | ( | SPHDEC_Handle | handle,
 |  | SPHDEC_Cmd | id,
 |  | SPHDEC_DynamicParams * | params,
 |  | SPHDEC_Status * | status
 | ) |  |

Execute the control method in this instance of a speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHDEC_EOK | Success.
SPHDEC_EFAIL | Failure.
SPHDEC_ERUNTIME | Internal Runtime Error.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
SPHDEC_create()
SPHDEC_delete()
ISPHDEC_Fxns::control()
Void SPHDEC_delete ( SPHDEC_Handle handle )

Delete the instance of a speech/voice decoder algorithm.

Parameters:
[in] handle Handle to a created speech decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the speech decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the SPHDEC_create() operation (memory, DMA channels, etc.) are freed.
See also:
SPHDEC_create()
XDAS_Int32 SPHDEC_processAsync | ( | SPHDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | SPHDEC_InArgs * | inArgs,
 |  | SPHDEC_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHDEC_EOK | Success.
SPHDEC_EFAIL | Failure.
SPHDEC_ERUNTIME | Internal Runtime Error.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the SPHDEC_processWait() API.
The buffers supplied to SPHDEC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHDEC_create()
SPHDEC_delete()
SPHDEC_control()
SPHDEC_process()
SPHDEC_processWait()
ISPHDEC_Fxns::process()
XDAS_Int32 SPHDEC_processWait | ( | SPHDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | SPHDEC_InArgs * | inArgs,
 |  | SPHDEC_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of SPHDEC_processAsync() in this instance of an speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> SPHDEC_FOREVER)
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHDEC_EOK | Success.
SPHDEC_EFAIL | Failure.
SPHDEC_ERUNTIME | Internal Runtime Error.
SPHDEC_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of SPHDEC_EFOREVER.
There must have previously been an invocation of the SPHDEC_processAsync() API.
The buffers supplied to SPHDEC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHDEC_create()
SPHDEC_delete()
SPHDEC_control()
SPHDEC_process()
SPHDEC_processAsync()


Codec Engine Application Programming Interface (API): SPHENC - Speech Encoder Interface

Defines | Typedefs | Functions

SPHENC - Speech Encoder Interface

Defines

#define | SPHENC_EOK ISPHENC_EOK
#define | SPHENC_EFAIL ISPHENC_EFAIL
#define | SPHENC_ERUNTIME ISPHENC_ERUNTIME
#define | SPHENC_ETIMEOUT VISA_ETIMEOUT
#define | SPHENC_FOREVER VISA_FOREVER

Typedefs

typedef ISPHENC_Status | SPHENC_Status
typedef VISA_Handle | SPHENC_Handle
Opaque handle to a SPHENC codec.
typedef struct ISPHENC_Params | SPHENC_Params
This structure defines the parameters necessary to create an instance of a Speech/Voice Encoder object.
typedef ISPHENC_InArgs | SPHENC_InArgs
typedef ISPHENC_OutArgs | SPHENC_OutArgs
typedef ISPHENC_Cmd | SPHENC_Cmd
typedef ISPHENC_DynamicParams | SPHENC_DynamicParams

Functions

SPHENC_Handle | SPHENC_create (Engine_Handle e, String name, SPHENC_Params *params)
Create an instance of a speech encoder algorithm.
Int32 | SPHENC_process (SPHENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, SPHENC_InArgs *inArgs, SPHENC_OutArgs *outArgs)
Execute the process() method in this instance of a speech encoder algorithm.
Int32 | SPHENC_control (SPHENC_Handle handle, SPHENC_Cmd id, SPHENC_DynamicParams *params, SPHENC_Status *status)
Execute the control method in this instance of a speech encoder algorithm.
Void | SPHENC_delete (SPHENC_Handle handle)
Delete the instance of a speech/voice encoder algorithm.
XDAS_Int32 | SPHENC_processAsync (SPHENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, ISPHENC_InArgs *inArgs, ISPHENC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a speech decoder algorithm.
XDAS_Int32 | SPHENC_processWait (SPHENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, ISPHENC_InArgs *inArgs, ISPHENC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of SPHENC_processAsync() in this instance of an speech decoder algorithm.

Detailed Description

This is the SPHENC speech encoder codec interface. Several of the data types in this API are specified by the XDM interface; please see the XDM documentation for those details.

Define Documentation

#define SPHENC_EOK ISPHENC_EOK

Success.

#define SPHENC_EFAIL ISPHENC_EFAIL

General failure.

#define SPHENC_ERUNTIME ISPHENC_ERUNTIME

General runtime failure.

#define SPHENC_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define SPHENC_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef ISPHENC_Status SPHENC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::control()
typedef VISA_Handle SPHENC_Handle

Opaque handle to a SPHENC codec.

typedef struct ISPHENC_Params SPHENC_Params

This structure defines the parameters necessary to create an instance of a Speech/Voice Encoder object.

typedef ISPHENC_InArgs SPHENC_InArgs

Defines the input arguments for all ISPHENC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::process()
typedef ISPHENC_OutArgs SPHENC_OutArgs

Defines the run time output arguments for all ISPHENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::process()
typedef ISPHENC_Cmd SPHENC_Cmd

Defines the control commands for the ISPHENC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
ISPHENC_Fxns::control()
typedef ISPHENC_DynamicParams SPHENC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::control()

Function Documentation

SPHENC_Handle SPHENC_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | SPHENC_Params * | params
 | ) |  |

Create an instance of a speech encoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via SPHENC_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of speech encoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created speech encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may create a local or remote instance of the speech encoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
SPHENC_delete()
Int32 SPHENC_process | ( | SPHENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | SPHENC_InArgs * | inArgs,
 |  | SPHENC_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a speech encoder algorithm.

Parameters:
[in] | handle | Handle to a created speech encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) speech encoder handle and the speech encoder is in the created state.
Return values:
SPHENC_EOK | Success.
SPHENC_EFAIL | Failure.
SPHENC_ERUNTIME | Internal Runtime Error.
Remarks:
Since the SPHENC decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to SPHENC_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHENC_create()
SPHENC_delete()
SPHENC_control()
SPHENC_processAsync()
SPHENC_processWait()
ISPHENC_Fxns::process()
Int32 SPHENC_control | ( | SPHENC_Handle | handle,
 |  | SPHENC_Cmd | id,
 |  | SPHENC_DynamicParams * | params,
 |  | SPHENC_Status * | status
 | ) |  |

Execute the control method in this instance of a speech encoder algorithm.

Parameters:
[in] | handle | Handle to a created speech encoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for encoding.
[out] | status | Status info upon completion of encode operation.
Precondition:
handle is a valid (non-NULL) speech encoder handle and the speech encoder is in the created state.
Return values:
SPHENC_EOK | Success.
SPHENC_EFAIL | Failure.
SPHENC_ERUNTIME | Internal Runtime Error.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
SPHENC_create()
SPHENC_delete()
ISPHENC_Fxns::control()
Void SPHENC_delete ( SPHENC_Handle handle )

Delete the instance of a speech/voice encoder algorithm.

Parameters:
[in] handle Handle to a created speech encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the speech encoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the SPHENC_create() operation (memory, DMA channels, etc.) are freed.
See also:
SPHENC_create()
XDAS_Int32 SPHENC_processAsync | ( | SPHENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | ISPHENC_InArgs * | inArgs,
 |  | ISPHENC_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHENC_EOK | Success.
SPHENC_EFAIL | Failure.
SPHENC_ERUNTIME | Internal Runtime Error.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the SPHENC_processWait() API.
The buffers supplied to SPHENC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHENC_create()
SPHENC_delete()
SPHENC_control()
SPHENC_process()
SPHENC_processWait()
ISPHENC_Fxns::process()
XDAS_Int32 SPHENC_processWait | ( | SPHENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | ISPHENC_InArgs * | inArgs,
 |  | ISPHENC_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of SPHENC_processAsync() in this instance of an speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> SPHENC_FOREVER)
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHENC_EOK | Success.
SPHENC_EFAIL | Failure.
SPHENC_ERUNTIME | Internal Runtime Error.
SPHENC_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of SPHENC_EFOREVER.
There must have previously been an invocation of the SPHENC_processAsync() API.
The buffers supplied to SPHENC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHENC_create()
SPHENC_delete()
SPHENC_control()
SPHENC_process()
SPHENC_processAsync()


Codec Engine Application Programming Interface (API): SPHDEC1 - Speech Decoder Interface

Defines | Typedefs | Functions

SPHDEC1 - Speech Decoder Interface

Defines

#define | SPHDEC1_EOK ISPHDEC1_EOK
#define | SPHDEC1_EFAIL ISPHDEC1_EFAIL
#define | SPHDEC1_EUNSUPPORTED ISPHDEC1_EUNSUPPORTED
#define | SPHDEC1_ETIMEOUT VISA_ETIMEOUT
#define | SPHDEC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | SPHDEC1_Handle
Opaque handle to a SPHDEC1 codec.
typedef ISPHDEC1_Params | SPHDEC1_Params
typedef ISPHDEC1_InArgs | SPHDEC1_InArgs
typedef ISPHDEC1_OutArgs | SPHDEC1_OutArgs
typedef ISPHDEC1_Cmd | SPHDEC1_Cmd
typedef ISPHDEC1_DynamicParams | SPHDEC1_DynamicParams
typedef ISPHDEC1_Status | SPHDEC1_Status

Functions

Int32 | SPHDEC1_control (SPHDEC1_Handle handle, SPHDEC1_Cmd id, SPHDEC1_DynamicParams *params, SPHDEC1_Status *status)
Execute the control() method in this instance of a speech decoder algorithm.
SPHDEC1_Handle | SPHDEC1_create (Engine_Handle e, String name, SPHDEC1_Params *params)
Create an instance of a speech decoder algorithm.
Void | SPHDEC1_delete (SPHDEC1_Handle handle)
Delete the instance of a speech decoder algorithm.
Int32 | SPHDEC1_process (SPHDEC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHDEC1_InArgs *inArgs, SPHDEC1_OutArgs *outArgs)
Execute the process() method in this instance of a speech decoder algorithm.
XDAS_Int32 | SPHDEC1_processAsync (SPHDEC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHDEC1_InArgs *inArgs, SPHDEC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a speech decoder algorithm.
XDAS_Int32 | SPHDEC1_processWait (SPHDEC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHDEC1_InArgs *inArgs, SPHDEC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of SPHDEC1_processAsync() in this instance of an speech decoder algorithm.

Detailed Description

This is the SPHDEC1 speech decoder interface. Several of the data types in this API are specified by the XDM ISPHDEC1 interface; please see the XDM documentation for those details.

Define Documentation

#define SPHDEC1_EOK ISPHDEC1_EOK

Success.

#define SPHDEC1_EFAIL ISPHDEC1_EFAIL

General failure.

#define SPHDEC1_EUNSUPPORTED ISPHDEC1_EUNSUPPORTED

Request is unsupported.

#define SPHDEC1_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define SPHDEC1_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle SPHDEC1_Handle

Opaque handle to a SPHDEC1 codec.

typedef ISPHDEC1_Params SPHDEC1_Params

Defines the creation time parameters for all ISPHDEC1 instance objects.

Remarks:
Some of the fields in this structure are optional and depend on the class of speech decoder you're creating.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef ISPHDEC1_InArgs SPHDEC1_InArgs

Defines the input arguments for all ISPHDEC1 instance process function.

typedef ISPHDEC1_OutArgs SPHDEC1_OutArgs

Defines the run time output arguments for all ISPHDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC1_Fxns::process()
typedef ISPHDEC1_Cmd SPHDEC1_Cmd

Defines the control commands for the ISPHDEC1 module.

Remarks:
This ID can be extended in IMOD interface for additional control commands.
See also:
XDM_CmdId
ISPHDEC1_Fxns::control()
typedef ISPHDEC1_DynamicParams SPHDEC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via ISPHDEC1_Fxns.control().

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC1_Fxns::control()
typedef ISPHDEC1_Status SPHDEC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC1_Fxns::control()

Function Documentation

Int32 SPHDEC1_control | ( | SPHDEC1_Handle | handle,
 |  | SPHDEC1_Cmd | id,
 |  | SPHDEC1_DynamicParams * | params,
 |  | SPHDEC1_Status * | status
 | ) |  |

Execute the control() method in this instance of a speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHDEC1_EOK | Success.
SPHDEC1_EFAIL | Failure.
SPHDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
SPHDEC1_create()
SPHDEC1_delete()
ISPHDEC1_Fxns.control()
SPHDEC1_Handle SPHDEC1_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | SPHDEC1_Params * | params
 | ) |  |

Create an instance of a speech decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via SPHDEC1_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of speech decoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created speech decoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the speech1 decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
SPHDEC1_delete()
Void SPHDEC1_delete ( SPHDEC1_Handle handle )

Delete the instance of a speech decoder algorithm.

Parameters:
[in] handle Handle to a created speech decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the speech decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the SPHDEC1_create() operation (memory, DMA channels, etc.) are freed.
See also:
SPHDEC1_create()
Int32 SPHDEC1_process | ( | SPHDEC1_Handle | handle,
 |  | XDM1_SingleBufDesc * | inBuf,
 |  | XDM1_SingleBufDesc * | outBuf,
 |  | SPHDEC1_InArgs * | inArgs,
 |  | SPHDEC1_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | inBuf | A buffer descriptor containing an input buffer.
[out] | outBuf | A buffer descriptor containing an output buffer.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHDEC1_EOK | Success.
SPHDEC1_EFAIL | Failure.
SPHDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
Since the SPHDEC1 decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to SPHDEC1_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHDEC1_create()
SPHDEC1_delete()
SPHDEC1_control()
SPHDEC1_processAsync()
SPHDEC1_processWait()
ISPHDEC1_Fxns.process()
XDAS_Int32 SPHDEC1_processAsync | ( | SPHDEC1_Handle | handle,
 |  | XDM1_SingleBufDesc * | inBuf,
 |  | XDM1_SingleBufDesc * | outBuf,
 |  | SPHDEC1_InArgs * | inArgs,
 |  | SPHDEC1_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | inBuf | A buffer descriptor containing the input buffer.
[out] | outBuf | A buffer descriptor containing the output buffer.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHDEC1_EOK | Success.
SPHDEC1_EFAIL | Failure.
SPHDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the SPHDEC1_processWait() API.
The buffers supplied to SPHDEC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHDEC1_create()
SPHDEC1_delete()
SPHDEC1_control()
SPHDEC1_process()
SPHDEC1_processWait()
ISPHDEC1_Fxns.process()
XDAS_Int32 SPHDEC1_processWait | ( | SPHDEC1_Handle | handle,
 |  | XDM1_SingleBufDesc * | inBuf,
 |  | XDM1_SingleBufDesc * | outBuf,
 |  | SPHDEC1_InArgs * | inArgs,
 |  | SPHDEC1_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of SPHDEC1_processAsync() in this instance of an speech decoder algorithm.

Parameters:
[in] | handle | Handle to a created speech decoder instance.
[in] | inBuf | A buffer descriptor containing the input buffer.
[out] | outBuf | A buffer descriptor containing the output buffer.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> SPHDEC1_FOREVER)
Precondition:
handle is a valid (non-NULL) speech decoder handle and the speech decoder is in the created state.
Return values:
SPHDEC1_EOK | Success.
SPHDEC1_EFAIL | Failure.
SPHDEC1_EUNSUPPORTED | Unsupported request.
SPHDEC1_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of SPHDEC1_FOREVER.
There must have previously been an invocation of the SPHDEC1_processAsync() API.
The buffers supplied to SPHDEC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHDEC1_create()
SPHDEC1_delete()
SPHDEC1_control()
SPHDEC1_process()
SPHDEC1_processAsync()


Codec Engine Application Programming Interface (API): SPHENC1 - Speech Encoder Interface

Defines | Typedefs | Functions

SPHENC1 - Speech Encoder Interface

Defines

#define | SPHENC1_EOK ISPHENC1_EOK
#define | SPHENC1_EFAIL ISPHENC1_EFAIL
#define | SPHENC1_EUNSUPPORTED ISPHENC1_EUNSUPPORTED
#define | SPHENC1_ETIMEOUT VISA_ETIMEOUT
#define | SPHENC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | SPHENC1_Handle
Opaque handle to a SPHENC1 codec.
typedef ISPHENC1_Params | SPHENC1_Params
typedef ISPHENC1_InArgs | SPHENC1_InArgs
typedef ISPHENC1_OutArgs | SPHENC1_OutArgs
typedef ISPHENC1_Cmd | SPHENC1_Cmd
typedef ISPHENC1_DynamicParams | SPHENC1_DynamicParams
typedef ISPHENC1_Status | SPHENC1_Status

Functions

Int32 | SPHENC1_control (SPHENC1_Handle handle, SPHENC1_Cmd id, SPHENC1_DynamicParams *params, SPHENC1_Status *status)
Execute the control() method in this instance of a speech encoder algorithm.
SPHENC1_Handle | SPHENC1_create (Engine_Handle e, String name, SPHENC1_Params *params)
Create an instance of a speech encoder algorithm.
Void | SPHENC1_delete (SPHENC1_Handle handle)
Delete the instance of a speech encoder algorithm.
Int32 | SPHENC1_process (SPHENC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHENC1_InArgs *inArgs, SPHENC1_OutArgs *outArgs)
Execute the process() method in this instance of a speech encoder algorithm.
XDAS_Int32 | SPHENC1_processAsync (SPHENC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHENC1_InArgs *inArgs, SPHENC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a speech encoder algorithm.
XDAS_Int32 | SPHENC1_processWait (SPHENC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHENC1_InArgs *inArgs, SPHENC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of SPHENC1_processAsync() in this instance of an speech encoder algorithm.

Detailed Description

This is the SPHENC1 speech encoder interface. Several of the data types in this API are specified by the XDM ISPHENC1 interface; please see the XDM documentation for those details.

Define Documentation

#define SPHENC1_EOK ISPHENC1_EOK

Success.

#define SPHENC1_EFAIL ISPHENC1_EFAIL

General failure.

#define SPHENC1_EUNSUPPORTED ISPHENC1_EUNSUPPORTED

Request is unsupported.

#define SPHENC1_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define SPHENC1_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle SPHENC1_Handle

Opaque handle to a SPHENC1 codec.

typedef ISPHENC1_Params SPHENC1_Params

Defines the creation time parameters for all ISPHENC1 instance objects.

Remarks:
Some of the fields in this structure are optional and depend on the class of speech encoder you're creating.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef ISPHENC1_InArgs SPHENC1_InArgs

Defines the input arguments for all ISPHENC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef ISPHENC1_OutArgs SPHENC1_OutArgs

Defines the run time output arguments for all ISPHENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC1_Fxns::process()
typedef ISPHENC1_Cmd SPHENC1_Cmd

Defines the control commands for the ISPHENC1 module.

Remarks:
This ID can be extended in IMOD interface for additional control commands.
See also:
XDM_CmdId
ISPHENC1_Fxns::control()
typedef ISPHENC1_DynamicParams SPHENC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via ISPHENC1_Fxns.control().

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef ISPHENC1_Status SPHENC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Function Documentation

Int32 SPHENC1_control | ( | SPHENC1_Handle | handle,
 |  | SPHENC1_Cmd | id,
 |  | SPHENC1_DynamicParams * | params,
 |  | SPHENC1_Status * | status
 | ) |  |

Execute the control() method in this instance of a speech encoder algorithm.

Parameters:
[in] | handle | Handle to a created speech encoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for encoding.
[out] | status | Status info upon completion of encode operation.
Precondition:
handle is a valid (non-NULL) speech encoder handle and the speech encoder is in the created state.
Return values:
SPHENC1_EOK | Success.
SPHENC1_EFAIL | Failure.
SPHENC1_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See SPHENC1_Status::extendedError for details.
See also:
SPHENC1_create()
SPHENC1_delete()
ISPHENC1_Fxns::control()
SPHENC1_Handle SPHENC1_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | SPHENC1_Params * | params
 | ) |  |

Create an instance of a speech encoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via SPHENC1_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of speech encoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created speech encoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the speech1 encoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
SPHENC_delete()
Void SPHENC1_delete ( SPHENC1_Handle handle )

Delete the instance of a speech encoder algorithm.

Parameters:
[in] handle Handle to a created speech encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the speech encoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the SPHENC1_create() operation (memory, DMA channels, etc.) are freed.
See also:
SPHENC1_create()
Int32 SPHENC1_process | ( | SPHENC1_Handle | handle,
 |  | XDM1_SingleBufDesc * | inBuf,
 |  | XDM1_SingleBufDesc * | outBuf,
 |  | SPHENC1_InArgs * | inArgs,
 |  | SPHENC1_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a speech encoder algorithm.

Parameters:
[in] | handle | Handle to a created speech encoder instance.
[in,out] | inBuf | A buffer descriptor containing an input buffer.
[out] | outBuf | A buffer descriptor containing an output buffer.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) speech encoder handle and the speech encoder is in the created state.
Return values:
SPHENC1_EOK | Success.
SPHENC1_EFAIL | Failure.
SPHENC1_EUNSUPPORTED | Unsupported request.
Remarks:
Since the SPHENC1 encoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to SPHENC1_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See SPHENC1_OutArgs::extendedError for details.
See also:
SPHENC1_create()
SPHENC1_delete()
SPHENC1_control()
SPHENC1_processAsync()
SPHENC1_processWait()
ISPHENC1_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
XDAS_Int32 SPHENC1_processAsync | ( | SPHENC1_Handle | handle,
 |  | XDM1_SingleBufDesc * | inBuf,
 |  | XDM1_SingleBufDesc * | outBuf,
 |  | SPHENC1_InArgs * | inArgs,
 |  | SPHENC1_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a speech encoder algorithm.

Parameters:
[in] | handle | Handle to a created speech encoder instance.
[in] | inBuf | A buffer descriptor containing the input buffer.
[out] | outBuf | A buffer descriptor containing the output buffer.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) speech encoder handle and the speech encoder is in the created state.
Return values:
SPHENC1_EOK | Success.
SPHENC1_EFAIL | Failure.
SPHENC1_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the SPHENC1_processWait() API.
The buffers supplied to SPHENC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHENC1_create()
SPHENC1_delete()
SPHENC1_control()
SPHENC1_process()
SPHENC1_processWait()
ISPHENC1_Fxns::process()
XDAS_Int32 SPHENC1_processWait | ( | SPHENC1_Handle | handle,
 |  | XDM1_SingleBufDesc * | inBuf,
 |  | XDM1_SingleBufDesc * | outBuf,
 |  | SPHENC1_InArgs * | inArgs,
 |  | SPHENC1_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of SPHENC1_processAsync() in this instance of an speech encoder algorithm.

Parameters:
[in] | handle | Handle to a created speech encoder instance.
[in] | inBuf | A buffer descriptor containing the input buffer.
[out] | outBuf | A buffer descriptor containing the output buffer.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> SPHENC1_FOREVER)
Precondition:
handle is a valid (non-NULL) speech encoder handle and the speech encoder is in the created state.
Return values:
SPHENC1_EOK | Success.
SPHENC1_EFAIL | Failure.
SPHENC1_EUNSUPPORTED | Unsupported request.
SPHENC1_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of SPHENC1_FOREVER.
There must have previously been an invocation of the SPHENC1_processAsync() API.
The buffers supplied to SPHENC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
SPHENC1_create()
SPHENC1_delete()
SPHENC1_control()
SPHENC1_process()
SPHENC1_processAsync()


Codec Engine Application Programming Interface (API): UNIVERSAL - Universal Algorithm Interface

Defines | Typedefs | Functions

UNIVERSAL - Universal Algorithm Interface

Defines

#define | UNIVERSAL_EOK IUNIVERSAL_EOK
#define | UNIVERSAL_EFAIL IUNIVERSAL_EFAIL
#define | UNIVERSAL_EUNSUPPORTED IUNIVERSAL_EUNSUPPORTED
#define | UNIVERSAL_ETIMEOUT VISA_ETIMEOUT
#define | UNIVERSAL_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | UNIVERSAL_Handle
Opaque handle to a UNIVERSAL codec.
typedef struct IUNIVERSAL_Params | UNIVERSAL_Params
This structure defines the parameters necessary to create an instance of a "universal" algorithm.
typedef IUNIVERSAL_InArgs | UNIVERSAL_InArgs
typedef IUNIVERSAL_OutArgs | UNIVERSAL_OutArgs
typedef IUNIVERSAL_Cmd | UNIVERSAL_Cmd
typedef IUNIVERSAL_Status | UNIVERSAL_Status
typedef IUNIVERSAL_DynamicParams | UNIVERSAL_DynamicParams

Functions

Int32 | UNIVERSAL_control (UNIVERSAL_Handle handle, UNIVERSAL_Cmd id, UNIVERSAL_DynamicParams *params, UNIVERSAL_Status *status)
Execute the control() method in this instance of a "universal" algorithm.
UNIVERSAL_Handle | UNIVERSAL_create (Engine_Handle e, String name, UNIVERSAL_Params *params)
Create an instance of a universal algorithm.
Void | UNIVERSAL_delete (UNIVERSAL_Handle handle)
Delete the instance of a universal algorithm.
Int32 | UNIVERSAL_process (UNIVERSAL_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs, UNIVERSAL_InArgs *inArgs, UNIVERSAL_OutArgs *outArgs)
Execute the process() method in this instance of a universal algorithm.
XDAS_Int32 | UNIVERSAL_processAsync (UNIVERSAL_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs, IUNIVERSAL_InArgs *inArgs, IUNIVERSAL_OutArgs *outArgs)
Perform asynchronous submission to this instance of a universal algorithm.
XDAS_Int32 | UNIVERSAL_processWait (UNIVERSAL_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs, IUNIVERSAL_InArgs *inArgs, IUNIVERSAL_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of UNIVERSAL_processAsync() in this instance of a universal algorithm.

Detailed Description

This is the "universal" algorithm interface. Several of the data types in this API are specified by the XDM IUNIVERSAL interface; please see the XDM documentation for those details.

Define Documentation

#define UNIVERSAL_EOK IUNIVERSAL_EOK

Success.

#define UNIVERSAL_EFAIL IUNIVERSAL_EFAIL

General failure.

#define UNIVERSAL_EUNSUPPORTED IUNIVERSAL_EUNSUPPORTED

Request is unsupported.

Timeout occurred.

#define UNIVERSAL_ETIMEOUT VISA_ETIMEOUT

Special value for timeout parameter indicating never timeout.

#define UNIVERSAL_FOREVER VISA_FOREVER

Typedef Documentation

typedef VISA_Handle UNIVERSAL_Handle

Opaque handle to a UNIVERSAL codec.

typedef struct IUNIVERSAL_Params UNIVERSAL_Params

This structure defines the parameters necessary to create an instance of a "universal" algorithm.

typedef IUNIVERSAL_InArgs UNIVERSAL_InArgs

Defines the input arguments for all IUNIVERSAL instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::process()
typedef IUNIVERSAL_OutArgs UNIVERSAL_OutArgs

Defines the run time output arguments for all IUNIVERSAL instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::process()
typedef IUNIVERSAL_Cmd UNIVERSAL_Cmd

Defines the control commands for the IUNIVERSAL module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IUNIVERSAL_Fxns::control()
typedef IUNIVERSAL_Status UNIVERSAL_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::control()
typedef IUNIVERSAL_DynamicParams UNIVERSAL_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::control()

Function Documentation

Int32 UNIVERSAL_control | ( | UNIVERSAL_Handle | handle,
 |  | UNIVERSAL_Cmd | id,
 |  | UNIVERSAL_DynamicParams * | params,
 |  | UNIVERSAL_Status * | status
 | ) |  |

Execute the control() method in this instance of a "universal" algorithm.

Parameters:
[in] | handle | Handle to a created universal algorithm instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for the universal algorithm instance.
[out] | status | Status info returned by the algorithm instance.
Precondition:
handle is a valid (non-NULL) universal algorithm handle and the universal algorithm instance is in the created state.
Return values:
UNIVERSAL_EOK | Success.
UNIVERSAL_EFAIL | Failure.
UNIVERSAL_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
UNIVERSAL_create()
UNIVERSAL_delete()
IUNIVERSAL_Fxns::control()
UNIVERSAL_Handle UNIVERSAL_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | UNIVERSAL_Params * | params
 | ) |  |

Create an instance of a universal algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via UNIVERSAL_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of universal algorithm to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created universal algorithm instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the universal algorithm.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
UNIVERSAL_delete()
Void UNIVERSAL_delete ( UNIVERSAL_Handle handle )

Delete the instance of a universal algorithm.

Parameters:
[in] handle Handle to a created universal algorithm instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the universal algorithm.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the UNIVERSAL_create() operation (memory, DMA channels, etc.) are freed.
See also:
UNIVERSAL_create()
Int32 UNIVERSAL_process | ( | UNIVERSAL_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | XDM1_BufDesc * | inOutBufs,
 |  | UNIVERSAL_InArgs * | inArgs,
 |  | UNIVERSAL_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a universal algorithm.

Parameters:
[in] | handle | Handle to a created universal algorithm instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in,out] | inOutBufs | A buffer descriptor containing in/out buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) universal algorithm handle and the universal algorithm instance is in the created state.
Return values:
UNIVERSAL_EOK | Success.
UNIVERSAL_EFAIL | Failure.
UNIVERSAL_EUNSUPPORTED | Unsupported request.
Remarks:
Since the UNIVERSAL algorithm contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to UNIVERSAL_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
UNIVERSAL_create()
UNIVERSAL_delete()
UNIVERSAL_control()
UNIVERSAL_processAsync()
UNIVERSAL_processWait()
IUNIVERSAL_Fxns::process()
XDAS_Int32 UNIVERSAL_processAsync | ( | UNIVERSAL_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | XDM1_BufDesc * | inOutBufs,
 |  | IUNIVERSAL_InArgs * | inArgs,
 |  | IUNIVERSAL_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a universal algorithm.

Parameters:
[in] | handle | Handle to a created universal algorithm instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in,out] | inOutBufs | A buffer descriptor containing in/out buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) universal algorithm handle and the universal algorithm instance is in the created state.
Return values:
UNIVERSAL_EOK | Success.
UNIVERSAL_EFAIL | Failure.
UNIVERSAL_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the UNIVERSAL_processWait() API.
The buffers supplied to UNIVERSAL_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
UNIVERSAL_create()
UNIVERSAL_delete()
UNIVERSAL_control()
UNIVERSAL_process()
UNIVERSAL_processWait()
IUNIVERSAL_Fxns::process()
XDAS_Int32 UNIVERSAL_processWait | ( | UNIVERSAL_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | XDM1_BufDesc * | inOutBufs,
 |  | IUNIVERSAL_InArgs * | inArgs,
 |  | IUNIVERSAL_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of UNIVERSAL_processAsync() in this instance of a universal algorithm.

Parameters:
[in] | handle | Handle to a created universal algorithm instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in,out] | inOutBufs | A buffer descriptor containing in/out buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> UNIVERSAL_FOREVER)
Precondition:
handle is a valid (non-NULL) universal algorithm handle and the universal algorithm instance is in the created state.
Return values:
UNIVERSAL_EOK | Success.
UNIVERSAL_EFAIL | Failure.
UNIVERSAL_EUNSUPPORTED | Unsupported request.
UNIVERSAL_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of UNIVERSAL_EFOREVER.
There must have previously been an invocation of the UNIVERSAL_processAsync() API.
The buffers supplied to UNIVERSAL_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
UNIVERSAL_create()
UNIVERSAL_delete()
UNIVERSAL_control()
UNIVERSAL_process()
UNIVERSAL_processAsync()


Codec Engine Application Programming Interface (API): VIDANALYTICS - Video Analytics Interface

Defines | Typedefs | Functions

VIDANALYTICS - Video Analytics Interface

Defines

#define | VIDANALYTICS_EOK IVIDANALYTICS_EOK
#define | VIDANALYTICS_EFAIL IVIDANALYTICS_EFAIL
#define | VIDANALYTICS_EUNSUPPORTED IVIDANALYTICS_EUNSUPPORTED
#define | VIDANALYTICS_ETIMEOUT VISA_ETIMEOUT
#define | VIDANALYTICS_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDANALYTICS_Handle
Opaque handle to a VIDANALYTICS codec.
typedef IVIDANALYTICS_Params | VIDANALYTICS_Params
typedef IVIDANALYTICS_InArgs | VIDANALYTICS_InArgs
typedef IVIDANALYTICS_OutArgs | VIDANALYTICS_OutArgs
typedef IVIDANALYTICS_Cmd | VIDANALYTICS_Cmd
typedef IVIDANALYTICS_DynamicParams | VIDANALYTICS_DynamicParams
typedef IVIDANALYTICS_Status | VIDANALYTICS_Status

Functions

Int32 | VIDANALYTICS_control (VIDANALYTICS_Handle handle, VIDANALYTICS_Cmd id, VIDANALYTICS_DynamicParams *params, VIDANALYTICS_Status *status)
Execute the control() method in this instance of a video analytics algorithm.
VIDANALYTICS_Handle | VIDANALYTICS_create (Engine_Handle e, String name, VIDANALYTICS_Params *params)
Create an instance of a video analytics algorithm.
Void | VIDANALYTICS_delete (VIDANALYTICS_Handle handle)
Delete the instance of a video analytics algorithm.
Int32 | VIDANALYTICS_process (VIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, VIDANALYTICS_InArgs *inArgs, VIDANALYTICS_OutArgs *outArgs)
Execute the process() method in this instance of a video analytics algorithm.
XDAS_Int32 | VIDANALYTICS_processAsync (VIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs, IVIDANALYTICS_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video analytics algorithm.
XDAS_Int32 | VIDANALYTICS_processWait (VIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs, IVIDANALYTICS_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDANALYTICS_processAsync() in this instance of an video analytics algorithm.

Detailed Description

This is the VIDANALYTICS video analytics interface. Several of the data types in this API are specified by the XDM IVIDANALYTICS interface; please see the XDM documentation for those details.

Define Documentation

#define VIDANALYTICS_EOK IVIDANALYTICS_EOK

Success.

#define VIDANALYTICS_EFAIL IVIDANALYTICS_EFAIL

General failure.

#define VIDANALYTICS_EUNSUPPORTED IVIDANALYTICS_EUNSUPPORTED

Request is unsupported.

#define VIDANALYTICS_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define VIDANALYTICS_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle VIDANALYTICS_Handle

Opaque handle to a VIDANALYTICS codec.

typedef IVIDANALYTICS_Params VIDANALYTICS_Params

Defines the creation time parameters for all IVIDANALYTICS instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IVIDANALYTICS_InArgs VIDANALYTICS_InArgs

Defines the input arguments for all IVIDANALYTICS instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDANALYTICS_Fxns::process()
typedef IVIDANALYTICS_OutArgs VIDANALYTICS_OutArgs

Defines the run time output arguments for all IVIDANALYTICS instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::process()
typedef IVIDANALYTICS_Cmd VIDANALYTICS_Cmd

Defines the control commands for the IVIDANALYTICS module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDANALYTICS_Fxns::control()
typedef IVIDANALYTICS_DynamicParams VIDANALYTICS_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDANALYTICS_Fxns::control()
typedef IVIDANALYTICS_Status VIDANALYTICS_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDANALYTICS_Fxns::control()

Function Documentation

Int32 VIDANALYTICS_control | ( | VIDANALYTICS_Handle | handle,
 |  | VIDANALYTICS_Cmd | id,
 |  | VIDANALYTICS_DynamicParams * | params,
 |  | VIDANALYTICS_Status * | status
 | ) |  |

Execute the control() method in this instance of a video analytics algorithm.

Parameters:
[in] | handle | Handle to a created video analytics instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for the video analytics instance.
[out] | status | Status info returned by the video analytics instance.
Precondition:
handle is a valid (non-NULL) video analytics handle and the video analytics instance is in the created state.
Return values:
VIDANALYTICS_EOK | Success.
VIDANALYTICS_EFAIL | Failure.
VIDANALYTICS_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
VIDANALYTICS_create()
VIDANALYTICS_delete()
IVIDANALYTICS_Fxns::control()
VIDANALYTICS_Handle VIDANALYTICS_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDANALYTICS_Params * | params
 | ) |  |

Create an instance of a video analytics algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDANALYTICS_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video analytics algorithm to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video analytics instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video analytics algorithm.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
VIDANALYTICS_delete()
Void VIDANALYTICS_delete ( VIDANALYTICS_Handle handle )

Delete the instance of a video analytics algorithm.

Parameters:
[in] handle Handle to a created video analytics instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video analytics algorithm.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDANALYTICS_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDANALYTICS_create()
Int32 VIDANALYTICS_process | ( | VIDANALYTICS_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | VIDANALYTICS_InArgs * | inArgs,
 |  | VIDANALYTICS_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a video analytics algorithm.

Parameters:
[in] | handle | Handle to a created video analytics instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video analytics handle and the video analytics algorithm instance is in the created state.
Return values:
VIDANALYTICS_EOK | Success.
VIDANALYTICS_EFAIL | Failure.
VIDANALYTICS_EUNSUPPORTED | Unsupported request.
Remarks:
Since the VIDANALYTICS algorithm contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to VIDANALYTICS_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDANALYTICS_create()
VIDANALYTICS_delete()
VIDANALYTICS_control()
VIDANALYTICS_processAsync()
VIDANALYTICS_processWait()
IVIDANALYTICS_Fxns::process()
XDAS_Int32 VIDANALYTICS_processAsync | ( | VIDANALYTICS_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | IVIDANALYTICS_InArgs * | inArgs,
 |  | IVIDANALYTICS_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a video analytics algorithm.

Parameters:
[in] | handle | Handle to a created video analytics instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video analytics handle and the video analytics algorithm instance is in the created state.
Return values:
VIDANALYTICS_EOK | Success.
VIDANALYTICS_EFAIL | Failure.
VIDANALYTICS_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the VIDANALYTICS_processWait() API.
The buffers supplied to VIDANALYTICS_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDANALYTICS_create()
VIDANALYTICS_delete()
VIDANALYTICS_control()
VIDANALYTICS_process()
VIDANALYTICS_processWait()
IVIDANALYTICS_Fxns::process()
XDAS_Int32 VIDANALYTICS_processWait | ( | VIDANALYTICS_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM1_BufDesc * | outBufs,
 |  | IVIDANALYTICS_InArgs * | inArgs,
 |  | IVIDANALYTICS_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of VIDANALYTICS_processAsync() in this instance of an video analytics algorithm.

Parameters:
[in] | handle | Handle to a created video analytics instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> VIDANALYTICS_FOREVER)
Precondition:
handle is a valid (non-NULL) video analytics handle and the video analytics algorithm instance is in the created state.
Return values:
VIDANALYTICS_EOK | Success.
VIDANALYTICS_EFAIL | Failure.
VIDANALYTICS_EUNSUPPORTED | Unsupported request.
VIDANALYTICS_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of VIDANALYTICS_FOREVER.
There must have previously been an invocation of the VIDANALYTICS_processAsync() API.
The buffers supplied to VIDANALYTICS_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDANALYTICS_create()
VIDANALYTICS_delete()
VIDANALYTICS_control()
VIDANALYTICS_process()
VIDANALYTICS_processAsync()


Codec Engine Application Programming Interface (API): VIDDEC - Video Decoder Interface

Data Structures | Defines | Typedefs | Functions

VIDDEC - Video Decoder Interface

Data Structures

struct | IVIDDEC_CodecClassConfig
Definition of VIDDEC codec class configurable parameters. More...

Defines

#define | VIDDEC_EOK IVIDDEC_EOK
#define | VIDDEC_EFAIL IVIDDEC_EFAIL
#define | VIDDEC_ERUNTIME IVIDDEC_ERUNTIME
#define | VIDDEC_ETIMEOUT VISA_ETIMEOUT
#define | VIDDEC_FOREVER VISA_FOREVER

Typedefs

typedef IVIDDEC_Status | VIDDEC_Status
typedef VISA_Handle | VIDDEC_Handle
Opaque handle to a VIDDEC codec.
typedef struct IVIDDEC_Params | VIDDEC_Params
This structure defines the parameters necessary to create an instance of a video decoder object.
typedef IVIDDEC_InArgs | VIDDEC_InArgs
typedef IVIDDEC_OutArgs | VIDDEC_OutArgs
typedef IVIDDEC_Cmd | VIDDEC_Cmd
typedef IVIDDEC_DynamicParams | VIDDEC_DynamicParams
typedef struct
IVIDDEC_CodecClassConfig 		IVIDDEC_CodecClassConfig
Definition of VIDDEC codec class configurable parameters.

Functions

VIDDEC_Handle | VIDDEC_create (Engine_Handle e, String name, VIDDEC_Params *params)
Create an instance of a video decoder algorithm.
Int32 | VIDDEC_process (VIDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC_InArgs *inArgs, VIDDEC_OutArgs *outArgs)
Execute the process() method in this instance of a video decoder algorithm.
Int32 | VIDDEC_control (VIDDEC_Handle handle, VIDDEC_Cmd id, VIDDEC_DynamicParams *params, VIDDEC_Status *status)
Execute the "control" method in this instance of a video decoder algorithm.
Void | VIDDEC_delete (VIDDEC_Handle handle)
Delete the instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC_processAsync (VIDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC_InArgs *inArgs, VIDDEC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC_processWait (VIDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC_InArgs *inArgs, VIDDEC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDDEC_processAsync() in this instance of an video decoder algorithm.

Detailed Description

This is the VIDDEC video decoder interface. Several of the data types in this API are specified by the XDM interface; please see the XDM documentation for those details.

Define Documentation

#define VIDDEC_EOK IVIDDEC_EOK

Success.

#define VIDDEC_EFAIL IVIDDEC_EFAIL

General failure.

#define VIDDEC_ERUNTIME IVIDDEC_ERUNTIME

General runtime failure.

#define VIDDEC_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define VIDDEC_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef IVIDDEC_Status VIDDEC_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::control()
typedef VISA_Handle VIDDEC_Handle

Opaque handle to a VIDDEC codec.

typedef struct IVIDDEC_Params VIDDEC_Params

This structure defines the parameters necessary to create an instance of a video decoder object.

typedef IVIDDEC_InArgs VIDDEC_InArgs

Defines the input arguments for all IVIDDEC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::process()
typedef IVIDDEC_OutArgs VIDDEC_OutArgs

Defines the run time output arguments for all IVIDDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::process()
typedef IVIDDEC_Cmd VIDDEC_Cmd

Defines the control commands for the IVIDDEC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDDEC_Fxns::control()
typedef IVIDDEC_DynamicParams VIDDEC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::control()
typedef struct IVIDDEC_CodecClassConfig IVIDDEC_CodecClassConfig

Definition of VIDDEC codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Function Documentation

VIDDEC_Handle VIDDEC_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDDEC_Params * | params
 | ) |  |

Create an instance of a video decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDDEC_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video decoder. to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video decoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
VIDDEC_delete()
Int32 VIDDEC_process | ( | VIDDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDDEC_InArgs * | inArgs,
 |  | VIDDEC_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC_EOK | Success.
VIDDEC_EFAIL | Failure.
VIDDEC_ERUNTIME | Internal Runtime Error.
Remarks:
Since the VIDDEC decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to VIDDEC_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC_create()
VIDDEC_delete()
VIDDEC_control()
VIDDEC_processAsync()
VIDDEC_processWait()
IVIDDEC_Fxns::process()
Int32 VIDDEC_control | ( | VIDDEC_Handle | handle,
 |  | VIDDEC_Cmd | id,
 |  | VIDDEC_DynamicParams * | params,
 |  | VIDDEC_Status * | status
 | ) |  |

Execute the "control" method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC_EOK | Success.
VIDDEC_EFAIL | Failure.
VIDDEC_ERUNTIME | Internal Runtime Error.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
VIDDEC_create()
VIDDEC_delete()
IVIDDEC_Fxns::control()
Void VIDDEC_delete ( VIDDEC_Handle handle )

Delete the instance of a video decoder algorithm.

Parameters:
[in] handle Handle to a created video decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDDEC_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDDEC_create()
XDAS_Int32 VIDDEC_processAsync | ( | VIDDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDDEC_InArgs * | inArgs,
 |  | VIDDEC_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC_EOK | Success.
VIDDEC_EFAIL | Failure.
VIDDEC_ERUNTIME | Internal Runtime Error.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the VIDDEC_processWait() API.
The buffers supplied to VIDDEC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC_create()
VIDDEC_delete()
VIDDEC_control()
VIDDEC_process()
VIDDEC_processWait()
IVIDDEC_Fxns::process()
XDAS_Int32 VIDDEC_processWait | ( | VIDDEC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDDEC_InArgs * | inArgs,
 |  | VIDDEC_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of VIDDEC_processAsync() in this instance of an video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> VIDDEC_FOREVER)
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC_EOK | Success.
VIDDEC_EFAIL | Failure.
VIDDEC_ERUNTIME | Internal Runtime Error.
VIDDEC_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of VIDDEC_EFOREVER.
There must have previously been an invocation of the VIDDEC_processAsync() API.
The buffers supplied to VIDDEC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC_create()
VIDDEC_delete()
VIDDEC_control()
VIDDEC_process()
VIDDEC_processAsync()


Codec Engine Application Programming Interface (API): VIDENC - Video Encoder Interface

Data Structures | Defines | Typedefs | Functions

VIDENC - Video Encoder Interface

Data Structures

struct | IVIDENC_CodecClassConfig
Definition of IVIDENC codec class configurable parameters. More...

Defines

#define | VIDENC_EOK IVIDENC_EOK
#define | VIDENC_EFAIL IVIDENC_EFAIL
#define | VIDENC_ERUNTIME IVIDENC_ERUNTIME
#define | VIDENC_ETIMEOUT VISA_ETIMEOUT
#define | VIDENC_FOREVER VISA_FOREVER

Typedefs

typedef IVIDENC_Status | VIDENC_Status
typedef VISA_Handle | VIDENC_Handle
Opaque handle to a VIDENC codec.
typedef struct IVIDENC_Params | VIDENC_Params
This structure defines the parameters necessary to create an instance of a video encoder object.
typedef IVIDENC_InArgs | VIDENC_InArgs
typedef IVIDENC_OutArgs | VIDENC_OutArgs
typedef IVIDENC_Cmd | VIDENC_Cmd
typedef IVIDENC_DynamicParams | VIDENC_DynamicParams
typedef struct
IVIDENC_CodecClassConfig 		IVIDENC_CodecClassConfig
Definition of IVIDENC codec class configurable parameters.

Functions

VIDENC_Handle | VIDENC_create (Engine_Handle e, String name, VIDENC_Params *params)
Create an instance of a video encoder algorithm.
Int32 | VIDENC_process (VIDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDENC_InArgs *inArgs, VIDENC_OutArgs *outArgs)
Execute the process() method in this instance of a video encoder algorithm.
Int32 | VIDENC_control (VIDENC_Handle handle, VIDENC_Cmd id, VIDENC_DynamicParams *params, VIDENC_Status *status)
Execute the control() method in this instance of a video encoder algorithm.
Void | VIDENC_delete (VIDENC_Handle handle)
Delete the instance of a video encoder algorithm.
XDAS_Int32 | VIDENC_processAsync (VIDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDENC_InArgs *inArgs, IVIDENC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDENC_processWait (VIDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDENC_InArgs *inArgs, IVIDENC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDENC_processAsync() in this instance of an video decoder algorithm.

Detailed Description

This is the VIDENC video encoder codec interface. Several of the data types in this API are specified by the XDM interface; please see the XDM documentation for those details.

Define Documentation

#define VIDENC_EOK IVIDENC_EOK

Success.

#define VIDENC_EFAIL IVIDENC_EFAIL

General failure.

#define VIDENC_ERUNTIME IVIDENC_ERUNTIME

General runtime failure.

#define VIDENC_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define VIDENC_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef IVIDENC_Status VIDENC_Status

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::control()
typedef VISA_Handle VIDENC_Handle

Opaque handle to a VIDENC codec.

typedef struct IVIDENC_Params VIDENC_Params

This structure defines the parameters necessary to create an instance of a video encoder object.

typedef IVIDENC_InArgs VIDENC_InArgs

Defines the input arguments for all IVIDENC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::process()
typedef IVIDENC_OutArgs VIDENC_OutArgs

Defines the run time output arguments for all IVIDENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::process()
typedef IVIDENC_Cmd VIDENC_Cmd

Defines the control commands for the IVIDENC module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDENC_Fxns::control()
typedef IVIDENC_DynamicParams VIDENC_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::control()
typedef struct IVIDENC_CodecClassConfig IVIDENC_CodecClassConfig

Definition of IVIDENC codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Function Documentation

VIDENC_Handle VIDENC_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDENC_Params * | params
 | ) |  |

Create an instance of a video encoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDENC_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video encoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video encoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video encoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
VIDENC_delete()
Int32 VIDENC_process | ( | VIDENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDENC_InArgs * | inArgs,
 |  | VIDENC_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a video encoder algorithm.

Parameters:
[in] | handle | Handle to a created video encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video encoder handle and the video encoder is in the created state.
Return values:
VIDENC_EOK | Success.
VIDENC_EFAIL | Failure.
VIDENC_ERUNTIME | Internal Runtime Error.
Remarks:
Since the VIDENC decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to VIDENC_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See VIDENC_OutArgs::extendedError for details.
See also:
VIDENC_create()
VIDENC_delete()
VIDENC_control()
VIDENC_processAsync()
VIDENC_processWait()
IVIDENC_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
Int32 VIDENC_control | ( | VIDENC_Handle | handle,
 |  | VIDENC_Cmd | id,
 |  | VIDENC_DynamicParams * | params,
 |  | VIDENC_Status * | status
 | ) |  |

Execute the control() method in this instance of a video encoder algorithm.

Parameters:
[in] | handle | Handle to a created video encoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for encoding.
[out] | status | Status info upon completion of encode operation.
Precondition:
handle is a valid (non-NULL) video encoder handle and the video encoder is in the created state.
Return values:
VIDENC_EOK | Success.
VIDENC_EFAIL | Failure.
VIDENC_ERUNTIME | Internal Runtime Error.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See VIDENC_Status::extendedError for details.
See also:
VIDENC_create()
VIDENC_delete()
IVIDENC_Fxns::control() - the reflected algorithm interface, which may contain further usage details.
Void VIDENC_delete ( VIDENC_Handle handle )

Delete the instance of a video encoder algorithm.

Parameters:
[in] handle Handle to a created video encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video encoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDENC_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDENC_create()
XDAS_Int32 VIDENC_processAsync | ( | VIDENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IVIDENC_InArgs * | inArgs,
 |  | IVIDENC_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDENC_EOK | Success.
VIDENC_EFAIL | Failure.
VIDENC_ERUNTIME | Internal Runtime Error.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the VIDENC_processWait() API.
The buffers supplied to VIDENC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDENC_create()
VIDENC_delete()
VIDENC_control()
VIDENC_process()
VIDENC_processWait()
IVIDENC_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
XDAS_Int32 VIDENC_processWait | ( | VIDENC_Handle | handle,
 |  | XDM_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IVIDENC_InArgs * | inArgs,
 |  | IVIDENC_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of VIDENC_processAsync() in this instance of an video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> VIDENC_FOREVER)
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDENC_EOK | Success.
VIDENC_EFAIL | Failure.
VIDENC_ERUNTIME | Internal Runtime Error.
VIDENC_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of VIDENC_EFOREVER.
There must have previously been an invocation of the VIDENC_processAsync() API.
The buffers supplied to VIDENC_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDENC_create()
VIDENC_delete()
VIDENC_control()
VIDENC_process()
VIDENC_processAsync()


Codec Engine Application Programming Interface (API): VIDDEC1 - Video Decoder Interface

Data Structures | Defines | Typedefs | Functions

VIDDEC1 - Video Decoder Interface

Data Structures

struct | IVIDDEC1_CodecClassConfig
Definition of IVIDDEC1 codec class configurable parameters. More...

Defines

#define | VIDDEC1_EOK IVIDDEC1_EOK
#define | VIDDEC1_EFAIL IVIDDEC1_EFAIL
#define | VIDDEC1_EUNSUPPORTED IVIDDEC1_EUNSUPPORTED
#define | VIDDEC1_ETIMEOUT VISA_ETIMEOUT
#define | VIDDEC1_FOREVER VISA_FOREVER

Typedefs

typedef IVIDDEC1_Status | VIDDEC1_Status
typedef VISA_Handle | VIDDEC1_Handle
Opaque handle to a VIDDEC1 codec.
typedef struct IVIDDEC1_Params | VIDDEC1_Params
This structure defines the parameters necessary to create an instance of a Video Decoder object.
typedef IVIDDEC1_InArgs | VIDDEC1_InArgs
typedef IVIDDEC1_OutArgs | VIDDEC1_OutArgs
typedef IVIDDEC1_Cmd | VIDDEC1_Cmd
typedef IVIDDEC1_DynamicParams | VIDDEC1_DynamicParams
typedef struct
IVIDDEC1_CodecClassConfig 		IVIDDEC1_CodecClassConfig
Definition of IVIDDEC1 codec class configurable parameters.

Functions

VIDDEC1_Handle | VIDDEC1_create (Engine_Handle e, String name, VIDDEC1_Params *params)
Create an instance of a video decoder algorithm.
Int32 | VIDDEC1_process (VIDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC1_InArgs *inArgs, VIDDEC1_OutArgs *outArgs)
Execute the process() method in this instance of a video decoder algorithm.
Int32 | VIDDEC1_control (VIDDEC1_Handle handle, VIDDEC1_Cmd id, VIDDEC1_DynamicParams *params, VIDDEC1_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
Void | VIDDEC1_delete (VIDDEC1_Handle handle)
Delete the instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC1_processAsync (VIDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC1_InArgs *inArgs, VIDDEC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC1_processWait (VIDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC1_InArgs *inArgs, VIDDEC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDDEC1_processAsync() in this instance of an video decoder algorithm.

Detailed Description

This is the VIDDEC1 video decoder interface. Several of the data types in this API are specified by the XDM interface; please see the XDM documentation for those details.

Define Documentation

#define VIDDEC1_EOK IVIDDEC1_EOK

Success.

#define VIDDEC1_EFAIL IVIDDEC1_EFAIL

General failure.

Request is unsupported.

#define VIDDEC1_EUNSUPPORTED IVIDDEC1_EUNSUPPORTED
#define VIDDEC1_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define VIDDEC1_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef IVIDDEC1_Status VIDDEC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
All fields correspond to latest IVIDDEC1_Fxns::process() call on the particular instance of the decoder.
See also:
IVIDDEC1_Fxns::control()
typedef VISA_Handle VIDDEC1_Handle

Opaque handle to a VIDDEC1 codec.

typedef struct IVIDDEC1_Params VIDDEC1_Params

This structure defines the parameters necessary to create an instance of a Video Decoder object.

typedef IVIDDEC1_InArgs VIDDEC1_InArgs

Defines the input arguments for all IVIDDEC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::process()
typedef IVIDDEC1_OutArgs VIDDEC1_OutArgs

Defines the run time output arguments for all IVIDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::process()
typedef IVIDDEC1_Cmd VIDDEC1_Cmd

Defines the control commands for the IVIDDEC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDDEC1_Fxns::control()
typedef IVIDDEC1_DynamicParams VIDDEC1_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::control()
typedef struct IVIDDEC1_CodecClassConfig IVIDDEC1_CodecClassConfig

Definition of IVIDDEC1 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Function Documentation

VIDDEC1_Handle VIDDEC1_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDDEC1_Params * | params
 | ) |  |

Create an instance of a video decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDDEC1_create) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video decoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video decoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
VIDDEC1_delete()
Int32 VIDDEC1_process | ( | VIDDEC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDDEC1_InArgs * | inArgs,
 |  | VIDDEC1_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC1_EOK | Success.
VIDDEC1_EFAIL | Failure.
VIDDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
Since the VIDDEC1 decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to VIDDEC1_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC1_create()
VIDDEC1_delete()
VIDDEC1_control()
VIDDEC1_processAsync()
VIDDEC1_processWait()
IVIDDEC1_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
Int32 VIDDEC1_control | ( | VIDDEC1_Handle | handle,
 |  | VIDDEC1_Cmd | id,
 |  | VIDDEC1_DynamicParams * | params,
 |  | VIDDEC1_Status * | status
 | ) |  |

Execute the control() method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC1_EOK | Success.
VIDDEC1_EFAIL | Failure.
VIDDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See VIDDEC1_Status::extendedError for details.
See also:
VIDDEC1_create()
VIDDEC1_delete()
IVIDDEC1_Fxns::process()
Void VIDDEC1_delete ( VIDDEC1_Handle handle )

Delete the instance of a video decoder algorithm.

Parameters:
[in] handle Handle to a created video decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDDEC1_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDDEC1_create()
XDAS_Int32 VIDDEC1_processAsync | ( | VIDDEC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDDEC1_InArgs * | inArgs,
 |  | VIDDEC1_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC1_EOK | Success.
VIDDEC1_EFAIL | Failure.
VIDDEC1_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the VIDDEC1_processWait() API.
The buffers supplied to VIDDEC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC1_create()
VIDDEC1_delete()
VIDDEC1_control()
VIDDEC1_process()
VIDDEC1_processWait()
IVIDDEC1_Fxns::process()
XDAS_Int32 VIDDEC1_processWait | ( | VIDDEC1_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDDEC1_InArgs * | inArgs,
 |  | VIDDEC1_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of VIDDEC1_processAsync() in this instance of an video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> VIDDEC1_FOREVER)
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC1_EOK | Success.
VIDDEC1_EFAIL | Failure.
VIDDEC1_EUNSUPPORTED | Unsupported request.
VIDDEC1_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of VIDDEC1_FOREVER.
There must have previously been an invocation of the VIDDEC1_processAsync() API.
The buffers supplied to VIDDEC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC1_create()
VIDDEC1_delete()
VIDDEC1_control()
VIDDEC1_process()
VIDDEC1_processAsync()


Codec Engine Application Programming Interface (API): VIDENC1 - Video Encoder Interface

Data Structures | Defines | Typedefs | Functions

VIDENC1 - Video Encoder Interface

Data Structures

struct | IVIDENC1_CodecClassConfig
Definition of IVIDENC1 codec class configurable parameters. More...

Defines

#define | VIDENC1_EOK IVIDENC1_EOK
#define | VIDENC1_EFAIL IVIDENC1_EFAIL
#define | VIDENC1_EUNSUPPORTED IVIDENC1_EUNSUPPORTED
#define | VIDENC1_ETIMEOUT VISA_ETIMEOUT
#define | VIDENC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDENC1_Handle
Opaque handle to a VIDENC1 codec.
typedef struct IVIDENC1_Params | VIDENC1_Params
typedef IVIDENC1_InArgs | VIDENC1_InArgs
typedef IVIDENC1_OutArgs | VIDENC1_OutArgs
typedef IVIDENC1_Cmd | VIDENC1_Cmd
typedef IVIDENC1_DynamicParams | VIDENC1_DynamicParams
typedef IVIDENC1_Status | VIDENC1_Status
typedef struct
IVIDENC1_CodecClassConfig 		IVIDENC1_CodecClassConfig
Definition of IVIDENC1 codec class configurable parameters.

Functions

Int32 | VIDENC1_control (VIDENC1_Handle handle, VIDENC1_Cmd id, VIDENC1_DynamicParams *params, VIDENC1_Status *status)
Execute the control() method in this instance of a video encoder algorithm.
VIDENC1_Handle | VIDENC1_create (Engine_Handle e, String name, VIDENC1_Params *params)
Create an instance of a video encoder algorithm.
Void | VIDENC1_delete (VIDENC1_Handle handle)
Delete the instance of a video encoder algorithm.
Int32 | VIDENC1_process (VIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs, VIDENC1_InArgs *inArgs, VIDENC1_OutArgs *outArgs)
Execute the process() method in this instance of a video encoder algorithm.
XDAS_Int32 | VIDENC1_processAsync (VIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs, IVIDENC1_InArgs *inArgs, IVIDENC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDENC1_processWait (VIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs, IVIDENC1_InArgs *inArgs, IVIDENC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDENC1_processAsync() in this instance of an video decoder algorithm.

Detailed Description

This is the VIDENC1 video encoder interface. Several of the data types in this API are specified by the XDM IVIDENC1 interface; please see the XDM documentation for those details.

Define Documentation

#define VIDENC1_EOK IVIDENC1_EOK

Success.

#define VIDENC1_EFAIL IVIDENC1_EFAIL

General failure.

Request is unsupported.

#define VIDENC1_EUNSUPPORTED IVIDENC1_EUNSUPPORTED
#define VIDENC1_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define VIDENC1_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle VIDENC1_Handle

Opaque handle to a VIDENC1 codec.

typedef struct IVIDENC1_Params VIDENC1_Params

Defines the creation time parameters for all IVIDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IVIDENC1_InArgs VIDENC1_InArgs

Defines the input arguments for all IVIDENC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::process()
typedef IVIDENC1_OutArgs VIDENC1_OutArgs

Defines the run time output arguments for all IVIDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::process()
typedef IVIDENC1_Cmd VIDENC1_Cmd

Defines the control commands for the IVIDENC1 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDENC1_Fxns::control()
typedef IVIDENC1_DynamicParams VIDENC1_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::control()
typedef IVIDENC1_Status VIDENC1_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::control()
typedef struct IVIDENC1_CodecClassConfig IVIDENC1_CodecClassConfig

Definition of IVIDENC1 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Function Documentation

Int32 VIDENC1_control | ( | VIDENC1_Handle | handle,
 |  | VIDENC1_Cmd | id,
 |  | VIDENC1_DynamicParams * | params,
 |  | VIDENC1_Status * | status
 | ) |  |

Execute the control() method in this instance of a video encoder algorithm.

Parameters:
[in] | handle | Handle to a created video encoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for encoding.
[out] | status | Status info upon completion of encode operation.
Precondition:
handle is a valid (non-NULL) video encoder handle and the video encoder is in the created state.
Return values:
VIDENC1_EOK | Success.
VIDENC1_EFAIL | Failure.
VIDENC1_EUNSUPPORTED | The requested operation is not supported.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See VIDENC1_Status::extendedError for details.
See also:
VIDENC1_create()
VIDENC1_delete()
IVIDENC1_Fxns::process()
VIDENC1_Handle VIDENC1_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDENC1_Params * | params
 | ) |  |

Create an instance of a video encoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDENC1_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video encoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video encoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video encoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
VIDENC1_delete()
Void VIDENC1_delete ( VIDENC1_Handle handle )

Delete the instance of a video encoder algorithm.

Parameters:
[in] handle Handle to a created video encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video encoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDENC1_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDENC1_create()
Int32 VIDENC1_process | ( | VIDENC1_Handle | handle,
 |  | IVIDEO1_BufDescIn * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDENC1_InArgs * | inArgs,
 |  | VIDENC1_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a video encoder algorithm.

Parameters:
[in] | handle | Handle to a created video encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video encoder handle and the video encoder is in the created state.
Return values:
VIDENC1_EOK | Success.
VIDENC1_EFAIL | Failure.
VIDENC1_EUNSUPPORTED | The requested operation is not supported.
Remarks:
Since the VIDENC1 decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to VIDENC1_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See VIDENC1_OutArgs::extendedError for details.
See also:
VIDENC1_create()
VIDENC1_delete()
VIDENC1_control()
VIDENC1_processAsync()
VIDENC1_processWait()
IVIDENC1_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
XDAS_Int32 VIDENC1_processAsync | ( | VIDENC1_Handle | handle,
 |  | IVIDEO1_BufDescIn * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IVIDENC1_InArgs * | inArgs,
 |  | IVIDENC1_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDENC1_EOK | Success.
VIDENC1_EFAIL | Failure.
VIDENC1_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the VIDENC1_processWait() API.
The buffers supplied to VIDENC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDENC1_create()
VIDENC1_delete()
VIDENC1_control()
VIDENC1_process()
VIDENC1_processWait()
IVIDENC1_Fxns::process()
XDAS_Int32 VIDENC1_processWait | ( | VIDENC1_Handle | handle,
 |  | IVIDEO1_BufDescIn * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IVIDENC1_InArgs * | inArgs,
 |  | IVIDENC1_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of VIDENC1_processAsync() in this instance of an video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> VIDENC1_FOREVER)
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDENC1_EOK | Success.
VIDENC1_EFAIL | Failure.
VIDENC1_EUNSUPPORTED | Unsupported request.
VIDENC1_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of VIDENC1_FOREVER.
There must have previously been an invocation of the VIDENC1_processAsync() API.
The buffers supplied to VIDENC1_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDENC1_create()
VIDENC1_delete()
VIDENC1_control()
VIDENC1_process()
VIDENC1_processAsync()


Codec Engine Application Programming Interface (API): VIDDEC2FRONT/VIDDEC2BACK - Split video decoder interface

Data Structures | Typedefs | Functions

VIDDEC2FRONT/VIDDEC2BACK - Split video decoder interface

Data Structures

struct | IVIDDEC2BACK_CodecClassConfig
Definition of IVIDDEC2BACK codec class configurable parameters. More...

Typedefs

typedef IVIDDEC2FRONT_Status | VIDDEC2FRONT_Status
typedef VISA_Handle | VIDDEC2FRONT_Handle
Opaque handle to a VIDDEC2FRONT codec.
typedef VISA_Handle | VIDDEC2BACK_Handle
Opaque handle to a VIDDEC2BACK codec.
typedef IVIDDEC2FRONT_OutArgs | VIDDEC2FRONT_OutArgs
typedef struct
IVIDDEC2BACK_CodecClassConfig 		IVIDDEC2BACK_CodecClassConfig
Definition of IVIDDEC2BACK codec class configurable parameters.

Functions

VIDDEC2BACK_Handle | VIDDEC2BACK_create (Engine_Handle e, String name, VIDDEC2_Params *params)
Create an instance of the BACK end of a split video decoder algorithm.
Int32 | VIDDEC2BACK_process (VIDDEC2BACK_Handle handle, XDM_Context *context, VIDDEC2_OutArgs *outArgs)
Execute the process() method in this instance of a BACK side split video decoder algorithm.
Int32 | VIDDEC2BACK_control (VIDDEC2BACK_Handle handle, XDM_Context *context, VIDDEC2_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
Void | VIDDEC2BACK_delete (VIDDEC2BACK_Handle handle)
Delete the instance of a video decoder algorithm.
VIDDEC2FRONT_Handle | VIDDEC2FRONT_create (Engine_Handle e, String name, VIDDEC2_Params *params)
Create an instance of the FRONT end of a split video decoder algorithm.
Int32 | VIDDEC2FRONT_process (VIDDEC2FRONT_Handle handle, VIDDEC2_InArgs *inArgs, XDM_Context *context, VIDDEC2FRONT_OutArgs *outArgs)
Execute the process() method in this instance of a FRONT side split video decoder algorithm.
Int32 | VIDDEC2FRONT_control (VIDDEC2FRONT_Handle handle, VIDDEC2_Cmd id, VIDDEC2_DynamicParams *params, XDM_Context *context, VIDDEC2FRONT_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
Void | VIDDEC2FRONT_delete (VIDDEC2FRONT_Handle handle)
Delete the instance of a video decoder algorithm.

Detailed Description

This is the split VIDDEC2 video decoder interface. Several of the data types in this API are specified by the XDM interface; please see the XDM documentation for those details.

Typedef Documentation

typedef IVIDDEC2FRONT_Status VIDDEC2FRONT_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
All fields correspond to latest IVIDDEC2_Fxns::process() call on the particular instance of the decoder.
See also:
IVIDDEC2_Fxns::control()
typedef VISA_Handle VIDDEC2FRONT_Handle

Opaque handle to a VIDDEC2FRONT codec.

typedef VISA_Handle VIDDEC2BACK_Handle

Opaque handle to a VIDDEC2BACK codec.

typedef IVIDDEC2FRONT_OutArgs VIDDEC2FRONT_OutArgs

Defines the run time output arguments for all IVIDDEC2FRONT instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2FRONT_Fxns::process()
typedef struct IVIDDEC2BACK_CodecClassConfig IVIDDEC2BACK_CodecClassConfig

Definition of IVIDDEC2BACK codec class configurable parameters.

Function Documentation

VIDDEC2BACK_Handle VIDDEC2BACK_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDDEC2_Params * | params
 | ) |  |

Create an instance of the BACK end of a split video decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDDEC2BACK_create) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video decoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
Int32 VIDDEC2BACK_process | ( | VIDDEC2BACK_Handle | handle,
 |  | XDM_Context * | context,
 |  | VIDDEC2_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a BACK side split video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in,out] | context | Context provided to, and managed by, the split codec.
[out] | outArgs | Output results. This is a required parameter
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC2_EOK | Success.
VIDDEC2_EFAIL | Failure.
Remarks:
Since the VIDDEC2BACK decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to VIDDEC2BACK_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC2BACK_create()
VIDDEC2BACK_delete()
VIDDEC2BACK_control()
VIDDEC2BACK_processAsync()
VIDDEC2BACK_processWait()
IVIDDEC2BACK_Fxns::process()
VIDDEC2FRONT_create()
VIDDEC2FRONT_delete()
VIDDEC2FRONT_control()
IVIDDEC2FRONT_Fxns::process()
Int32 VIDDEC2BACK_control | ( | VIDDEC2BACK_Handle | handle,
 |  | XDM_Context * | context,
 |  | VIDDEC2_Status * | status
 | ) |  |

Execute the control() method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in,out] | context | Context provided to, and managed by, the split codec.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC2_EOK | Success.
VIDDEC2_EFAIL | Failure.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
VIDDEC2FRONT_create()
VIDDEC2FRONT_delete()
IVIDDEC2FRONT_Fxns::process()
VIDDEC2BACK_create()
VIDDEC2BACK_delete()
IVIDDEC2BACK_Fxns::process()
Void VIDDEC2BACK_delete ( VIDDEC2BACK_Handle handle )

Delete the instance of a video decoder algorithm.

Parameters:
[in] handle Handle to a created video decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDDEC2BACK_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDDEC2BACK_create()
VIDDEC2FRONT_Handle VIDDEC2FRONT_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDDEC2_Params * | params
 | ) |  |

Create an instance of the FRONT end of a split video decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDDEC2FRONT_create) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video decoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
Int32 VIDDEC2FRONT_process | ( | VIDDEC2FRONT_Handle | handle,
 |  | VIDDEC2_InArgs * | inArgs,
 |  | XDM_Context * | context,
 |  | VIDDEC2FRONT_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a FRONT side split video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inArgs | Input Arguments.
[in,out] | context | Context provided to, and managed by, the split codec.
[out] | outArgs | Output results. This is a required parameter
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC2_EOK | Success.
VIDDEC2_EFAIL | Failure.
Remarks:
Since the VIDDEC2FRONT decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to VIDDEC2FRONT_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC2FRONT_create()
VIDDEC2FRONT_delete()
VIDDEC2FRONT_control()
IVIDDEC2FRONT_Fxns::process()
VIDDEC2BACK_create()
VIDDEC2BACK_delete()
VIDDEC2BACK_control()
VIDDEC2BACK_processAsync()
VIDDEC2BACK_processWait()
IVIDDEC2BACK_Fxns::process()
Int32 VIDDEC2FRONT_control | ( | VIDDEC2FRONT_Handle | handle,
 |  | VIDDEC2_Cmd | id,
 |  | VIDDEC2_DynamicParams * | params,
 |  | XDM_Context * | context,
 |  | VIDDEC2FRONT_Status * | status
 | ) |  |

Execute the control() method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | id | Command id for xDM control operation.
[in] | params | Runtime control parameters used for decoding.
[in,out] | context | Context provided to, and managed by, the split codec.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC2_EOK | Success.
VIDDEC2_EFAIL | Failure.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
VIDDEC2FRONT_create()
VIDDEC2FRONT_delete()
IVIDDEC2FRONT_Fxns::process()
VIDDEC2BACK_create()
VIDDEC2BACK_delete()
IVIDDEC2BACK_Fxns::process()
Void VIDDEC2FRONT_delete ( VIDDEC2FRONT_Handle handle )

Delete the instance of a video decoder algorithm.

Parameters:
[in] handle Handle to a created video decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDDEC2FRONT_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDDEC2FRONT_create()


Codec Engine Application Programming Interface (API): VIDDEC2 - Video Decoder Interface

Data Structures | Defines | Typedefs | Functions

VIDDEC2 - Video Decoder Interface

Data Structures

struct | IVIDDEC2_CodecClassConfig
Definition of IVIDDEC2 codec class configurable parameters. More...

Defines

#define | VIDDEC2_EOK IVIDDEC2_EOK
#define | VIDDEC2_EFAIL IVIDDEC2_EFAIL
#define | VIDDEC2_EUNSUPPORTED IVIDDEC2_EUNSUPPORTED
#define | VIDDEC2_ETIMEOUT VISA_ETIMEOUT
#define | VIDDEC2_FOREVER VISA_FOREVER

Typedefs

typedef IVIDDEC2_Status | VIDDEC2_Status
typedef VISA_Handle | VIDDEC2_Handle
Opaque handle to a VIDDEC2 codec.
typedef struct IVIDDEC2_Params | VIDDEC2_Params
This structure defines the parameters necessary to create an instance of a video decoder object.
typedef IVIDDEC2_InArgs | VIDDEC2_InArgs
typedef IVIDDEC2_OutArgs | VIDDEC2_OutArgs
typedef IVIDDEC2_Cmd | VIDDEC2_Cmd
typedef IVIDDEC2_DynamicParams | VIDDEC2_DynamicParams
typedef struct
IVIDDEC2_CodecClassConfig 		IVIDDEC2_CodecClassConfig
Definition of IVIDDEC2 codec class configurable parameters.

Functions

VIDDEC2_Handle | VIDDEC2_create (Engine_Handle e, String name, VIDDEC2_Params *params)
Create an instance of a video decoder algorithm.
Int32 | VIDDEC2_process (VIDDEC2_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC2_InArgs *inArgs, VIDDEC2_OutArgs *outArgs)
Execute the process() method in this instance of a video decoder algorithm.
Int32 | VIDDEC2_control (VIDDEC2_Handle handle, VIDDEC2_Cmd id, VIDDEC2_DynamicParams *params, VIDDEC2_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
Void | VIDDEC2_delete (VIDDEC2_Handle handle)
Delete the instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC2_processAsync (VIDDEC2_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC2_InArgs *inArgs, VIDDEC2_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC2_processWait (VIDDEC2_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC2_InArgs *inArgs, VIDDEC2_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDDEC2_processAsync() in this instance of an video decoder algorithm.

Detailed Description

This is the VIDDEC2 video decoder interface. Several of the data types in this API are specified by the XDM interface; please see the XDM documentation for those details.

Define Documentation

#define VIDDEC2_EOK IVIDDEC2_EOK

Success.

#define VIDDEC2_EFAIL IVIDDEC2_EFAIL

General failure.

Request is unsupported.

#define VIDDEC2_EUNSUPPORTED IVIDDEC2_EUNSUPPORTED
#define VIDDEC2_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define VIDDEC2_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef IVIDDEC2_Status VIDDEC2_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
All fields correspond to latest IVIDDEC2_Fxns::process() call on the particular instance of the decoder.
See also:
IVIDDEC2_Fxns::control()
typedef VISA_Handle VIDDEC2_Handle

Opaque handle to a VIDDEC2 codec.

typedef struct IVIDDEC2_Params VIDDEC2_Params

This structure defines the parameters necessary to create an instance of a video decoder object.

typedef IVIDDEC2_InArgs VIDDEC2_InArgs

Defines the input arguments for all IVIDDEC2 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2_Fxns::process()
typedef IVIDDEC2_OutArgs VIDDEC2_OutArgs

Defines the run time output arguments for all IVIDDEC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2_Fxns::process()
typedef IVIDDEC2_Cmd VIDDEC2_Cmd

Defines the control commands for the IVIDDEC2 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDDEC2_Fxns::control()
typedef IVIDDEC2_DynamicParams VIDDEC2_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2_Fxns::control()
typedef struct IVIDDEC2_CodecClassConfig IVIDDEC2_CodecClassConfig

Definition of IVIDDEC2 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Function Documentation

VIDDEC2_Handle VIDDEC2_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDDEC2_Params * | params
 | ) |  |

Create an instance of a video decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDDEC2_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video decoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video decoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
VIDDEC2_delete()
Int32 VIDDEC2_process | ( | VIDDEC2_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDDEC2_InArgs * | inArgs,
 |  | VIDDEC2_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC2_EOK | Success.
VIDDEC2_EFAIL | Failure.
VIDDEC2_EUNSUPPORTED | Unsupported request.
Remarks:
Since the VIDDEC2 decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to VIDDEC2_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC2_create()
VIDDEC2_delete()
VIDDEC2_control()
VIDDEC2_processAsync()
VIDDEC2_processWait()
IVIDDEC2_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
Int32 VIDDEC2_control | ( | VIDDEC2_Handle | handle,
 |  | VIDDEC2_Cmd | id,
 |  | VIDDEC2_DynamicParams * | params,
 |  | VIDDEC2_Status * | status
 | ) |  |

Execute the control() method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | id | Command id for xDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC2_EOK | Success.
VIDDEC2_EFAIL | Failure.
VIDDEC2_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See VIDDEC2_Status::extendedError for details.
See also:
VIDDEC2_create()
VIDDEC2_delete()
IVIDDEC2_Fxns::process()
Void VIDDEC2_delete ( VIDDEC2_Handle handle )

Delete the instance of a video decoder algorithm.

Parameters:
[in] handle Handle to a created video decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDDEC2_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDDEC2_create()
XDAS_Int32 VIDDEC2_processAsync | ( | VIDDEC2_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDDEC2_InArgs * | inArgs,
 |  | VIDDEC2_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC2_EOK | Success.
VIDDEC2_EFAIL | Failure.
VIDDEC2_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the VIDDEC2_processWait() API.
The buffers supplied to VIDDEC2_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC2_create()
VIDDEC2_delete()
VIDDEC2_control()
VIDDEC2_process()
VIDDEC2_processWait()
IVIDDEC2_Fxns::process()
XDAS_Int32 VIDDEC2_processWait | ( | VIDDEC2_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDDEC2_InArgs * | inArgs,
 |  | VIDDEC2_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of VIDDEC2_processAsync() in this instance of an video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> VIDDEC2_FOREVER)
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC2_EOK | Success.
VIDDEC2_EFAIL | Failure.
VIDDEC2_EUNSUPPORTED | Unsupported request.
VIDDEC2_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of VIDDEC2_EFOREVER.
There must have previously been an invocation of the VIDDEC2_processAsync() API.
The buffers supplied to VIDDEC2_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDDEC2_create()
VIDDEC2_delete()
VIDDEC2_control()
VIDDEC2_process()
VIDDEC2_processAsync()


Codec Engine Application Programming Interface (API): VIDENC2 - Video Encoder Interface

Data Structures | Defines | Typedefs | Functions

VIDENC2 - Video Encoder Interface

Data Structures

struct | IVIDENC2_CodecClassConfig
Definition of IVIDENC2 codec class configurable parameters. More...

Defines

#define | VIDENC2_EOK IVIDENC2_EOK
#define | VIDENC2_EFAIL IVIDENC2_EFAIL
#define | VIDENC2_EUNSUPPORTED IVIDENC2_EUNSUPPORTED
#define | VIDENC2_ETIMEOUT VISA_ETIMEOUT
#define | VIDENC2_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDENC2_Handle
Opaque handle to a VIDENC2 codec.
typedef struct IVIDENC2_Params | VIDENC2_Params
typedef IVIDENC2_InArgs | VIDENC2_InArgs
typedef IVIDENC2_OutArgs | VIDENC2_OutArgs
typedef IVIDENC2_Cmd | VIDENC2_Cmd
typedef IVIDENC2_DynamicParams | VIDENC2_DynamicParams
typedef IVIDENC2_Status | VIDENC2_Status
typedef struct
IVIDENC2_CodecClassConfig 		IVIDENC2_CodecClassConfig
Definition of IVIDENC2 codec class configurable parameters.

Functions

Int32 | VIDENC2_control (VIDENC2_Handle handle, VIDENC2_Cmd id, VIDENC2_DynamicParams *params, VIDENC2_Status *status)
Execute the control() method in this instance of a video encoder algorithm.
VIDENC2_Handle | VIDENC2_create (Engine_Handle e, String name, VIDENC2_Params *params)
Create an instance of a video encoder algorithm.
Void | VIDENC2_delete (VIDENC2_Handle handle)
Delete the instance of a video encoder algorithm.
Int32 | VIDENC2_process (VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, VIDENC2_InArgs *inArgs, VIDENC2_OutArgs *outArgs)
Execute the process() method in this instance of a video encoder algorithm.
XDAS_Int32 | VIDENC2_processAsync (VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDENC2_processWait (VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDENC2_processAsync() in this instance of an video decoder algorithm.

Detailed Description

This is the VIDENC2 video encoder interface. Several of the data types in this API are specified by the XDM IVIDENC2 interface; please see the XDM documentation for those details.

Define Documentation

#define VIDENC2_EOK IVIDENC2_EOK

Success.

#define VIDENC2_EFAIL IVIDENC2_EFAIL

General failure.

#define VIDENC2_EUNSUPPORTED IVIDENC2_EUNSUPPORTED

Request is unsupported.

#define VIDENC2_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define VIDENC2_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle VIDENC2_Handle

Opaque handle to a VIDENC2 codec.

typedef struct IVIDENC2_Params VIDENC2_Params

Defines the creation time parameters for all IVIDENC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IVIDENC2_InArgs VIDENC2_InArgs

Defines the input arguments for all IVIDENC2 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::process()
typedef IVIDENC2_OutArgs VIDENC2_OutArgs

Defines the run time output arguments for all IVIDENC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::process()
typedef IVIDENC2_Cmd VIDENC2_Cmd

Defines the control commands for the IVIDENC2 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDENC2_Fxns::control()
typedef IVIDENC2_DynamicParams VIDENC2_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::control()
typedef IVIDENC2_Status VIDENC2_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::control()
typedef struct IVIDENC2_CodecClassConfig IVIDENC2_CodecClassConfig

Definition of IVIDENC2 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Function Documentation

Int32 VIDENC2_control | ( | VIDENC2_Handle | handle,
 |  | VIDENC2_Cmd | id,
 |  | VIDENC2_DynamicParams * | params,
 |  | VIDENC2_Status * | status
 | ) |  |

Execute the control() method in this instance of a video encoder algorithm.

Parameters:
[in] | handle | Handle to a created video encoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for encoding.
[out] | status | Status info upon completion of encode operation.
Precondition:
handle is a valid (non-NULL) video encoder handle and the video encoder is in the created state.
Return values:
VIDENC2_EOK | Success.
VIDENC2_EFAIL | Failure.
VIDENC2_EUNSUPPORTED | The requested operation is not supported.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See VIDENC2_Status::extendedError for details.
See also:
VIDENC2_create()
VIDENC2_delete()
IVIDENC2_Fxns::process()
VIDENC2_Handle VIDENC2_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDENC2_Params * | params
 | ) |  |

Create an instance of a video encoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDENC2_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video encoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video encoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video encoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
VIDENC2_delete()
Void VIDENC2_delete ( VIDENC2_Handle handle )

Delete the instance of a video encoder algorithm.

Parameters:
[in] handle Handle to a created video encoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video encoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDENC2_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDENC2_create()
Int32 VIDENC2_process | ( | VIDENC2_Handle | handle,
 |  | IVIDEO2_BufDesc * | inBufs,
 |  | XDM2_BufDesc * | outBufs,
 |  | VIDENC2_InArgs * | inArgs,
 |  | VIDENC2_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a video encoder algorithm.

Parameters:
[in] | handle | Handle to a created video encoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video encoder handle and the video encoder is in the created state.
Return values:
VIDENC2_EOK | Success.
VIDENC2_EFAIL | Failure.
VIDENC2_EUNSUPPORTED | The requested operation is not supported.
Remarks:
Since the VIDENC2 decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to VIDENC2_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See VIDENC2_OutArgs::extendedError for details.
See also:
VIDENC2_create()
VIDENC2_delete()
VIDENC2_control()
VIDENC2_processAsync()
VIDENC2_processWait()
IVIDENC2_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
XDAS_Int32 VIDENC2_processAsync | ( | VIDENC2_Handle | handle,
 |  | IVIDEO2_BufDesc * | inBufs,
 |  | XDM2_BufDesc * | outBufs,
 |  | IVIDENC2_InArgs * | inArgs,
 |  | IVIDENC2_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDENC2_EOK | Success.
VIDENC2_EFAIL | Failure.
VIDENC2_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the VIDENC2_processWait() API.
The buffers supplied to VIDENC2_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDENC2_create()
VIDENC2_delete()
VIDENC2_control()
VIDENC2_process()
VIDENC2_processWait()
IVIDENC2_Fxns::process()
XDAS_Int32 VIDENC2_processWait | ( | VIDENC2_Handle | handle,
 |  | IVIDEO2_BufDesc * | inBufs,
 |  | XDM2_BufDesc * | outBufs,
 |  | IVIDENC2_InArgs * | inArgs,
 |  | IVIDENC2_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of VIDENC2_processAsync() in this instance of an video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> VIDENC2_FOREVER)
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDENC2_EOK | Success.
VIDENC2_EFAIL | Failure.
VIDENC2_EUNSUPPORTED | Unsupported request.
VIDENC2_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of VIDENC2_FOREVER.
There must have previously been an invocation of the VIDENC2_processAsync() API.
The buffers supplied to VIDENC2_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDENC2_create()
VIDENC2_delete()
VIDENC2_control()
VIDENC2_process()
VIDENC2_processAsync()


Codec Engine Application Programming Interface (API): VIDDEC3 - Video Decoder Interface

Data Structures | Defines | Typedefs | Functions

VIDDEC3 - Video Decoder Interface

Data Structures

struct | IVIDDEC3_CodecClassConfig
Definition of IVIDDEC3 codec class configurable parameters. More...

Defines

#define | VIDDEC3_EOK IVIDDEC3_EOK
#define | VIDDEC3_EFAIL IVIDDEC3_EFAIL
#define | VIDDEC3_EUNSUPPORTED IVIDDEC3_EUNSUPPORTED
#define | VIDDEC3_ETIMEOUT VISA_ETIMEOUT
#define | VIDDEC3_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDDEC3_Handle
Opaque handle to a VIDDEC3 codec.
typedef struct IVIDDEC3_Params | VIDDEC3_Params
typedef IVIDDEC3_InArgs | VIDDEC3_InArgs
typedef IVIDDEC3_OutArgs | VIDDEC3_OutArgs
typedef IVIDDEC3_Cmd | VIDDEC3_Cmd
typedef IVIDDEC3_DynamicParams | VIDDEC3_DynamicParams
typedef IVIDDEC3_Status | VIDDEC3_Status
typedef struct
IVIDDEC3_CodecClassConfig 		IVIDDEC3_CodecClassConfig
Definition of IVIDDEC3 codec class configurable parameters.

Functions

Int32 | VIDDEC3_control (VIDDEC3_Handle handle, VIDDEC3_Cmd id, VIDDEC3_DynamicParams *params, VIDDEC3_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
VIDDEC3_Handle | VIDDEC3_create (Engine_Handle e, String name, VIDDEC3_Params *params)
Create an instance of a video decoder algorithm.
Void | VIDDEC3_delete (VIDDEC3_Handle handle)
Delete the instance of a video decoder algorithm.
Int32 | VIDDEC3_process (VIDDEC3_Handle handle, XDM2_BufDesc *inBufs, XDM2_BufDesc *outBufs, VIDDEC3_InArgs *inArgs, VIDDEC3_OutArgs *outArgs)
Execute the process() method in this instance of a video decoder algorithm.

Detailed Description

This is the VIDDEC3 video decoder interface. Several of the data types in this API are specified by the XDM IVIDDEC3 interface; please see the XDM documentation for those details.

Define Documentation

#define VIDDEC3_EOK IVIDDEC3_EOK

Success.

#define VIDDEC3_EFAIL IVIDDEC3_EFAIL

General failure.

Request is unsupported.

#define VIDDEC3_EUNSUPPORTED IVIDDEC3_EUNSUPPORTED
#define VIDDEC3_ETIMEOUT VISA_ETIMEOUT

Timeout occurred.

#define VIDDEC3_FOREVER VISA_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef VISA_Handle VIDDEC3_Handle

Opaque handle to a VIDDEC3 codec.

typedef struct IVIDDEC3_Params VIDDEC3_Params

Defines the creation time parameters for all IVIDDEC3 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IVIDDEC3_InArgs VIDDEC3_InArgs

Defines the input arguments for all IVIDDEC3 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC3_Fxns::process()
typedef IVIDDEC3_OutArgs VIDDEC3_OutArgs

Defines the run time output arguments for all IVIDDEC3 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
The size of this struct may vary when IVIDDEC3_OutArgs.displayBufsMode is set to IVIDDEC3_DISPLAYBUFS_EMBEDDED (see details in IVIDDEC3_OutArgs.displayBufs.bufDesc).
When IVIDDEC3_OutArgs.displayBufsMode is set to IVIDDEC3_DISPLAYBUFS_EMBEDDED, the number of elements in the IVIDDEC3_OutArgs.displayBufs.bufDesc array is a constant (and can be acquired by calling IVIDDEC3_Fxns.control() and looking in the IVIDDEC3_Status.maxOutArgsDisplayBufs field. Note that any extended fields follow the IVIDDEC3_OutArgs.displayBufs.bufDesc array.
See also:
IVIDDEC3_Fxns.process()
typedef IVIDDEC3_Cmd VIDDEC3_Cmd

Defines the control commands for the IVIDDEC3 module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDDEC3_Fxns::control()
typedef IVIDDEC3_DynamicParams VIDDEC3_DynamicParams

This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC3_Fxns::control()
typedef IVIDDEC3_Status VIDDEC3_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC3_Fxns::control()
typedef struct IVIDDEC3_CodecClassConfig IVIDDEC3_CodecClassConfig

Definition of IVIDDEC3 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Function Documentation

Int32 VIDDEC3_control | ( | VIDDEC3_Handle | handle,
 |  | VIDDEC3_Cmd | id,
 |  | VIDDEC3_DynamicParams * | params,
 |  | VIDDEC3_Status * | status
 | ) |  |

Execute the control() method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | id | Command id for XDM control operation.
[in] | params | Runtime control parameters used for decoding.
[out] | status | Status info upon completion of decode operation.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC3_EOK | Success.
VIDDEC3_EFAIL | Failure.
VIDDEC3_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
If an error is returned, status->extendedError may indicate further details about the error. See XDM_ErrorBit for details.
See also:
VIDDEC3_create()
VIDDEC3_delete()
IVIDDEC3_Fxns::process()
VIDDEC3_Handle VIDDEC3_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDDEC3_Params * | params
 | ) |  |

Create an instance of a video decoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDDEC3_create) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video decoder to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video decoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video decoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
VIDENC3_delete()
Void VIDDEC3_delete ( VIDDEC3_Handle handle )

Delete the instance of a video decoder algorithm.

Parameters:
[in] handle Handle to a created video decoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video decoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDDEC3_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDDEC3_create()
Int32 VIDDEC3_process | ( | VIDDEC3_Handle | handle,
 |  | XDM2_BufDesc * | inBufs,
 |  | XDM2_BufDesc * | outBufs,
 |  | VIDDEC3_InArgs * | inArgs,
 |  | VIDDEC3_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a video decoder algorithm.

Parameters:
[in] | handle | Handle to a created video decoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
Return values:
VIDDEC3_EOK | Success.
VIDDEC3_EFAIL | Failure.
VIDDEC3_EUNSUPPORTED | Unsupported request.
Remarks:
Since the VIDDEC3 decoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been decoded.
The buffers supplied to VIDDEC3_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
If an error is returned, outArgs->extendedError may indicate further details about the error. See XDM_ErrorBit for details.
See also:
VIDDEC3_create()
VIDDEC3_delete()
VIDDEC3_control()
VIDDEC3_processAsync()
VIDDEC3_processWait()
IVIDDEC3_Fxns::process()


Codec Engine Application Programming Interface (API): VIDTRANSCODE - Video Transcoder Interface

Defines | Typedefs | Functions

VIDTRANSCODE - Video Transcoder Interface

Defines

#define | VIDTRANSCODE_EOK IVIDTRANSCODE_EOK
#define | VIDTRANSCODE_EFAIL IVIDTRANSCODE_EFAIL
#define | VIDTRANSCODE_EUNSUPPORTED IVIDTRANSCODE_EUNSUPPORTED
#define | VIDTRANSCODE_ETIMEOUT VISA_ETIMEOUT
#define | VIDTRANSCODE_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDTRANSCODE_Handle
Opaque handle to a VIDTRANSCODE codec.
typedef struct IVIDTRANSCODE_Params | VIDTRANSCODE_Params
typedef IVIDTRANSCODE_InArgs | VIDTRANSCODE_InArgs
typedef IVIDTRANSCODE_OutArgs | VIDTRANSCODE_OutArgs
typedef IVIDTRANSCODE_Cmd | VIDTRANSCODE_Cmd
typedef IVIDTRANSCODE_DynamicParams | VIDTRANSCODE_DynamicParams
typedef IVIDTRANSCODE_Status | VIDTRANSCODE_Status

Functions

Int32 | VIDTRANSCODE_control (VIDTRANSCODE_Handle handle, VIDTRANSCODE_Cmd id, VIDTRANSCODE_DynamicParams *params, VIDTRANSCODE_Status *status)
Execute the control() method in this instance of a video transcoder algorithm.
VIDTRANSCODE_Handle | VIDTRANSCODE_create (Engine_Handle e, String name, VIDTRANSCODE_Params *params)
Create an instance of a video transcoder algorithm.
Void | VIDTRANSCODE_delete (VIDTRANSCODE_Handle handle)
Delete the instance of a video transcoder algorithm.
Int32 | VIDTRANSCODE_process (VIDTRANSCODE_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDTRANSCODE_InArgs *inArgs, VIDTRANSCODE_OutArgs *outArgs)
Execute the process() method in this instance of a video transcoder algorithm.
XDAS_Int32 | VIDTRANSCODE_processAsync (VIDTRANSCODE_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDTRANSCODE_InArgs *inArgs, IVIDTRANSCODE_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video transcoder algorithm.
XDAS_Int32 | VIDTRANSCODE_processWait (VIDTRANSCODE_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDTRANSCODE_InArgs *inArgs, IVIDTRANSCODE_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDTRANSCODE_processAsync() in this instance of an video transcoder algorithm.

Detailed Description

This is the VIDANALYTICS video transcoder interface. Several of the data types in this API are specified by the XDM IVIDTRANSCODE interface; please see the XDM documentation for those details.

Define Documentation

#define VIDTRANSCODE_EOK IVIDTRANSCODE_EOK

Success.

#define VIDTRANSCODE_EFAIL IVIDTRANSCODE_EFAIL

General failure.

#define VIDTRANSCODE_EUNSUPPORTED IVIDTRANSCODE_EUNSUPPORTED

Request is unsupported.

Timeout occurred.

#define VIDTRANSCODE_ETIMEOUT VISA_ETIMEOUT

Special value for timeout parameter indicating never timeout.

#define VIDTRANSCODE_FOREVER VISA_FOREVER

Typedef Documentation

typedef VISA_Handle VIDTRANSCODE_Handle

Opaque handle to a VIDTRANSCODE codec.

typedef struct IVIDTRANSCODE_Params VIDTRANSCODE_Params

Defines the creation time parameters for all IVIDTRANSCODE instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
typedef IVIDTRANSCODE_InArgs VIDTRANSCODE_InArgs

Defines the input arguments for all IVIDTRANSCODE instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::process()
typedef IVIDTRANSCODE_OutArgs VIDTRANSCODE_OutArgs

Defines the run time output arguments for all IVIDTRANSCODE instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::process()
typedef IVIDTRANSCODE_Cmd VIDTRANSCODE_Cmd

Defines the control commands for the IVIDTRANSCODE module.

Remarks:
This ID can be extended in IMOD interface for additional controls.
See also:
XDM_CmdId
IVIDTRANSCODE_Fxns::control()
typedef IVIDTRANSCODE_DynamicParams VIDTRANSCODE_DynamicParams

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::control()
typedef IVIDTRANSCODE_Status VIDTRANSCODE_Status

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::control()

Function Documentation

Int32 VIDTRANSCODE_control | ( | VIDTRANSCODE_Handle | handle,
 |  | VIDTRANSCODE_Cmd | id,
 |  | VIDTRANSCODE_DynamicParams * | params,
 |  | VIDTRANSCODE_Status * | status
 | ) |  |

Execute the control() method in this instance of a video transcoder algorithm.

Parameters:
[in] | handle | Handle to a created video transcoder instance.
[in] | id | Command id for xDM control operation.
[in] | params | Runtime control parameters used for the video transcoder.
[out] | status | Status info returned by the video transcoder instance.
Precondition:
handle is a valid (non-NULL) video transcoder handle and the video transcoder is in the created state.
Return values:
VIDTRANSCODE_EOK | Success.
VIDTRANSCODE_EFAIL | Failure.
VIDTRANSCODE_EUNSUPPORTED | Unsupported request.
Remarks:
This is a blocking call, and will return after the control command has been executed.
See also:
VIDTRANSCODE_create()
VIDTRANSCODE_delete()
IVIDTRANSCODE_Fxns::control()
VIDTRANSCODE_Handle VIDTRANSCODE_create | ( | Engine_Handle | e,
 |  | String | name,
 |  | VIDTRANSCODE_Params * | params
 | ) |  |

Create an instance of a video transcoder algorithm.

Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDTRANSCODE_create()) or explicitly serialize access to a shared handle.

Parameters:
[in] | e | Handle to an opened engine.
[in] | name | String identifier of the type of video transcoder. to create.
[in] | params | Creation parameters.
Return values:
NULL | An error has occurred.
non-NULL | The handle to the newly created video transcoder instance.
Remarks:
params is optional. If it's not supplied, codec-specific default params will be used.
Depending on the configuration of the engine opened, this call may create a local or remote instance of the video transcoder.
In general, name is the name of the codec configured by the system integrator. However, an optional "argument string" may be appended to the codec name, to allow the codec's configured priority and/or the heaps where its memory will be allocated, to be overridden. This optional argument string is of the form ":priority", ":priority:flag", or "::flag".
priority is the new priority to create the codec with.
The flag must be either 0 or 1, and if 1, all memory allocated for the codec will be in the heap that corresponds to IALG_EXTERNAL. If flag is 0, the memory for the codec will be allocated from the heaps it has requested. For example, if a codec named "mp3" has been configured into the system, setting name to "mp3:4" would cause the codec to be created at priority 4, instead of whatever priority was configured. This feature is useful if more than one instance of the codec are to be created at different priorities.
The flag can be used to prevent the codec from using any internal memory, for example, if it is to be run at the same time as another codec that must use internal memory, and there is insufficient internal memory for both.
See also:
Engine_open()
VIDTRANSCODE_delete()
Void VIDTRANSCODE_delete ( VIDTRANSCODE_Handle handle )

Delete the instance of a video transcoder algorithm.

Parameters:
[in] handle Handle to a created video transcoder instance.
Remarks:
Depending on the configuration of the engine opened, this call may delete a local or remote instance of the video transcoder.
Precondition:
handle is a valid (non-NULL) handle which is in the created state.
Postcondition:
All resources allocated as part of the VIDTRANSCODE_create() operation (memory, DMA channels, etc.) are freed.
See also:
VIDTRANSCODE_create()
Int32 VIDTRANSCODE_process | ( | VIDTRANSCODE_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | VIDTRANSCODE_InArgs * | inArgs,
 |  | VIDTRANSCODE_OutArgs * | outArgs
 | ) |  |

Execute the process() method in this instance of a video transcoder algorithm.

Parameters:
[in] | handle | Handle to a created video transcoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video transcoder handle and the video transcoder is in the created state.
Return values:
VIDTRANSCODE_EOK | Success.
VIDTRANSCODE_EFAIL | Failure.
VIDTRANSCODE_EUNSUPPORTED | Unsupported request.
Remarks:
Since the VIDTRANSCODE transcoder contains support for asynchronous buffer submission and retrieval, this API becomes known as synchronous in nature.
This is a blocking call, and will return after the data has been encoded.
The buffers supplied to VIDTRANSCODE_process() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDTRANSCODE_create()
VIDTRANSCODE_delete()
VIDTRANSCODE_control()
VIDTRANSCODE_processAsync()
VIDTRANSCODE_processWait()
IVIDTRANSCODE_Fxns::process()
XDAS_Int32 VIDTRANSCODE_processAsync | ( | VIDTRANSCODE_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IVIDTRANSCODE_InArgs * | inArgs,
 |  | IVIDTRANSCODE_OutArgs * | outArgs
 | ) |  |

Perform asynchronous submission to this instance of a video transcoder algorithm.

Parameters:
[in] | handle | Handle to a created video transcoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
Precondition:
handle is a valid (non-NULL) video transcoder handle and the video transcoder is in the created state.
Return values:
VIDTRANSCODE_EOK | Success.
VIDTRANSCODE_EFAIL | Failure.
VIDTRANSCODE_EUNSUPPORTED | Unsupported request.
Remarks:
This API is the asynchronous counterpart to the process() method. It allows for buffer and argument submission without waiting for retrieval. A response is retrieved using the VIDTRANSCODE_processWait() API.
The buffers supplied to VIDTRANSCODE_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDTRANSCODE_create()
VIDTRANSCODE_delete()
VIDTRANSCODE_control()
VIDTRANSCODE_process()
VIDTRANSCODE_processWait()
IVIDTRANSCODE_Fxns::process()
XDAS_Int32 VIDTRANSCODE_processWait | ( | VIDTRANSCODE_Handle | handle,
 |  | XDM1_BufDesc * | inBufs,
 |  | XDM_BufDesc * | outBufs,
 |  | IVIDTRANSCODE_InArgs * | inArgs,
 |  | IVIDTRANSCODE_OutArgs * | outArgs,
 |  | UInt | timeout
 | ) |  |

Wait for a return message from a previous invocation of VIDTRANSCODE_processAsync() in this instance of an video transcoder algorithm.

Parameters:
[in] | handle | Handle to a created video transcoder instance.
[in] | inBufs | A buffer descriptor containing input buffers.
[out] | outBufs | A buffer descriptor containing output buffers.
[in] | inArgs | Input Arguments.
[out] | outArgs | Output Arguments.
[in] | timeout | Amount of "time" to wait (from 0 -> VIDTRANSCODE_FOREVER)
Precondition:
handle is a valid (non-NULL) video transcoder handle and the video transcoder is in the created state.
Return values:
VIDTRANSCODE_EOK | Success.
VIDTRANSCODE_EFAIL | Failure.
VIDTRANSCODE_EUNSUPPORTED | Unsupported request.
VIDTRANSCODE_ETIMEOUT | Operation timed out.
Remarks:
This is a blocking call, and will return after the data has been decoded.
"Polling" is supported by using a timeout of 0. Waiting forever is supported by using a timeout of VIDTRANSCODE_FOREVER.
There must have previously been an invocation of the VIDTRANSCODE_processAsync() API.
The buffers supplied to VIDTRANSCODE_processAsync() may have constraints put on them. For example, in dual-processor, shared memory architectures, where the codec is running on a remote processor, the buffers may need to be physically contiguous. Additionally, the remote processor may place restrictions on buffer alignment.
See also:
VIDTRANSCODE_create()
VIDTRANSCODE_delete()
VIDTRANSCODE_control()
VIDTRANSCODE_process()
VIDTRANSCODE_processAsync()


Codec Engine Application Programming Interface (API): IVIDEO - XDM Video Interface

Data Structures | Defines | Typedefs | Enumerations

IVIDEO - XDM Video Interface

Data Structures

struct | IVIDEO_BufDesc
Buffer descriptor for video buffers. More...
struct | IVIDEO1_BufDescIn
Buffer descriptor for input video buffers. More...
struct | IVIDEO1_BufDesc
Detailed buffer descriptor for video buffers. More...
struct | IVIDEO2_BufDesc
Detailed buffer descriptor for video buffers. More...

Defines

#define | IVIDEO2_MAX_IO_BUFFERS 20
Maximum I/O Buffers.
#define | IVIDEO_MAX_YUV_BUFFERS 3
Max YUV buffers - one each for 'Y', 'U', and 'V'.
#define | IVIDEO_MAX_NUM_PLANES 3
Max YUV buffers - one each for 'Y', 'U', and 'V'.
#define | IVIDEO_MAX_NUM_METADATA_PLANES 3

Typedefs

typedef struct IVIDEO_BufDesc | IVIDEO_BufDesc
Buffer descriptor for video buffers.
typedef struct IVIDEO1_BufDescIn | IVIDEO1_BufDescIn
Buffer descriptor for input video buffers.
typedef struct IVIDEO1_BufDesc | IVIDEO1_BufDesc
Detailed buffer descriptor for video buffers.
typedef struct IVIDEO2_BufDesc | IVIDEO2_BufDesc
Detailed buffer descriptor for video buffers.

Enumerations

enum IVIDEO_FrameSkip {
IVIDEO_NO_SKIP = 0,
IVIDEO_SKIP_P = 1,
IVIDEO_SKIP_B = 2,
IVIDEO_SKIP_I = 3,
IVIDEO_SKIP_IP = 4,
IVIDEO_SKIP_IB = 5,
IVIDEO_SKIP_PB = 6,
IVIDEO_SKIP_IPB = 7,
IVIDEO_SKIP_IDR = 8,
IVIDEO_SKIP_NONREFERENCE = 9,
IVIDEO_SKIP_DEFAULT = IVIDEO_NO_SKIP
}

Video frame skip features for video decoder.

More...
enum IVIDEO_FrameType {
IVIDEO_NA_FRAME = -1,
IVIDEO_I_FRAME = 0,
IVIDEO_P_FRAME = 1,
IVIDEO_B_FRAME = 2,
IVIDEO_IDR_FRAME = 3,
IVIDEO_II_FRAME = 4,
IVIDEO_IP_FRAME = 5,
IVIDEO_IB_FRAME = 6,
IVIDEO_PI_FRAME = 7,
IVIDEO_PP_FRAME = 8,
IVIDEO_PB_FRAME = 9,
IVIDEO_BI_FRAME = 10,
IVIDEO_BP_FRAME = 11,
IVIDEO_BB_FRAME = 12,
IVIDEO_MBAFF_I_FRAME = 13,
IVIDEO_MBAFF_P_FRAME = 14,
IVIDEO_MBAFF_B_FRAME = 15,
IVIDEO_MBAFF_IDR_FRAME = 16,
IVIDEO_FRAMETYPE_DEFAULT = IVIDEO_I_FRAME
}

Video frame types.

More...
enum IVIDEO_ContentType {
IVIDEO_CONTENTTYPE_NA = -1,
IVIDEO_PROGRESSIVE = 0,
IVIDEO_PROGRESSIVE_FRAME = IVIDEO_PROGRESSIVE,
IVIDEO_INTERLACED = 1,
IVIDEO_INTERLACED_FRAME = IVIDEO_INTERLACED,
IVIDEO_INTERLACED_TOPFIELD = 2,
IVIDEO_INTERLACED_BOTTOMFIELD = 3,
IVIDEO_CONTENTTYPE_DEFAULT = IVIDEO_PROGRESSIVE
}

Video content types.

More...
enum IVIDEO_RateControlPreset {
IVIDEO_LOW_DELAY = 1,
IVIDEO_STORAGE = 2,
IVIDEO_TWOPASS = 3,
IVIDEO_NONE = 4,
IVIDEO_USER_DEFINED = 5,
IVIDEO_RATECONTROLPRESET_DEFAULT = IVIDEO_LOW_DELAY
}

Video rate control presets.

More...
enum IVIDEO_SkipMode {
IVIDEO_FRAME_ENCODED = 0,
IVIDEO_FRAME_SKIPPED = 1,
IVIDEO_SKIPMODE_DEFAULT = IVIDEO_FRAME_ENCODED
}

Video frame skipping modes.

More...
enum IVIDEO_OutputFrameStatus {
IVIDEO_FRAME_NOERROR = 0,
IVIDEO_FRAME_NOTAVAILABLE = 1,
IVIDEO_FRAME_ERROR = 2,
IVIDEO_FRAME_OUTPUTSKIP = 3,
IVIDEO_OUTPUTFRAMESTATUS_DEFAULT = IVIDEO_FRAME_NOERROR
}

Video output buffer status.

More...
enum IVIDEO_PictureType {
IVIDEO_NA_PICTURE = -1,
IVIDEO_I_PICTURE = 0,
IVIDEO_P_PICTURE = 1,
IVIDEO_B_PICTURE = 2,
IVIDEO_PICTURE_TYPE_DEFAULT = IVIDEO_I_PICTURE
}

Video Picture types.

More...
enum IVIDEO_Format {
IVIDEO_MPEG1 = 1,
IVIDEO_MPEG2SP = 2,
IVIDEO_MPEG2MP = 3,
IVIDEO_MPEG2HP = 4,
IVIDEO_MPEG4SP = 5,
IVIDEO_MPEG4ASP = 6,
IVIDEO_H264BP = 7,
IVIDEO_H264MP = 8,
IVIDEO_H264HP = 9,
IVIDEO_VC1SP = 10,
IVIDEO_VC1MP = 11,
IVIDEO_VC1AP = 12,
IVIDEO_H264RCDO = 13,
IVIDEO_RV8 = 14,
IVIDEO_RV9 = 15,
IVIDEO_RV10 = IVIDEO_RV9,
IVIDEO_ON2VP6 = 16,
IVIDEO_ON2VP7 = 17,
IVIDEO_AVS10 = 18,
IVIDEO_SORENSONSPARK = 19,
IVIDEO_H263_PROFILE0 = 20,
IVIDEO_H263_PROFILE3 = 21,
IVIDEO_H264SVC = 22,
IVIDEO_MULTIVIEW = 23,
IVIDEO_MJPEG = 24
}

Video Format types.

More...
enum IVIDEO_VideoLayout {
IVIDEO_FIELD_INTERLEAVED = 0,
IVIDEO_FIELD_SEPARATED = 1,
IVIDEO_TOP_ONLY = 2,
IVIDEO_BOTTOM_ONLY = 3
}

Video buffer layout.

More...
enum IVIDEO_OperatingMode {
IVIDEO_DECODE_ONLY = 0,
IVIDEO_ENCODE_ONLY = 1,
IVIDEO_TRANSCODE_FRAMELEVEL = 2,
IVIDEO_TRANSCODE_MBLEVEL = 3,
IVIDEO_TRANSRATE_FRAMELEVEL = 4,
IVIDEO_TRANSRATE_MBLEVEL = 5
}

Video coding mode of operation.

More...
enum IVIDEO_BitRange {
IVIDEO_YUVRANGE_FULL = 0,
IVIDEO_YUVRANGE_ITU = 1
}

Video bit range.

More...
enum IVIDEO_DataMode {
IVIDEO_FIXEDLENGTH = 0,
IVIDEO_SLICEMODE = 1,
IVIDEO_NUMROWS = 2,
IVIDEO_ENTIREFRAME = 3
}

input/output data mode

More...
enum IVIDEO_ErrorInfoMode {
IVIDEO_ERRORINFO_OFF = 0,
IVIDEO_ERRORINFO_ON_INPUT = 1,
IVIDEO_ERRORINFO_ON_OUTPUT = 2,
IVIDEO_ERRORINFO_ON_BOTH = 3,
IVIDEO_ERRORINFO_MODE_DEFAULT = IVIDEO_ERRORINFO_OFF
}

Configuration for providing/receiving packet error information.

More...
enum IVIDEO_MetadataType {
IVIDEO_METADATAPLANE_NONE = -1,
IVIDEO_METADATAPLANE_MBINFO = 0,
IVIDEO_METADATAPLANE_EINFO = 1,
IVIDEO_METADATAPLANE_ALPHA = 2
}

Detailed Description

This is the XDM video interface shared between the various codecs.

Define Documentation

#define IVIDEO2_MAX_IO_BUFFERS 20

Maximum I/O Buffers.

See also:
IVIDDEC2_OutArgs
IVIDDEC3_OutArgs
IVIDENC2_OutArgs
#define IVIDEO_MAX_YUV_BUFFERS 3

Max YUV buffers - one each for 'Y', 'U', and 'V'.

#define IVIDEO_MAX_NUM_PLANES 3

Max YUV buffers - one each for 'Y', 'U', and 'V'.

Luma followed by chroma.

#define IVIDEO_MAX_NUM_METADATA_PLANES 3

MBINFO , packet error info and alpha planes.

See also:
IVIDEO_METADATAPLANE_MBINFO
IVIDEO_METADATAPLANE_EINFO
IVIDEO_METADATAPLANE_ALPHA

Typedef Documentation

typedef struct IVIDEO_BufDesc IVIDEO_BufDesc

Buffer descriptor for video buffers.

typedef struct IVIDEO1_BufDescIn IVIDEO1_BufDescIn

Buffer descriptor for input video buffers.

typedef struct IVIDEO1_BufDesc IVIDEO1_BufDesc

Detailed buffer descriptor for video buffers.

typedef struct IVIDEO2_BufDesc IVIDEO2_BufDesc

Detailed buffer descriptor for video buffers.

Enumeration Type Documentation

enum IVIDEO_FrameSkip

Video frame skip features for video decoder.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_NO_SKIP

Do not skip any frame types.

IVIDEO_SKIP_P

Decode the P frame/skip frames internally, but do not copy the decoded output to the output buffers. This should be indicated by setting the output buffers to NULL.

Remarks:
For example, if a B frame is dependant on the previously decoded P frame, the B frame shall be decoded and displayed successfully. For this, the P frame needs to be decoded, but not copied to the output buffer.
IVIDEO_SKIP_B

Skip B, BI frames. For B frames, the decoder will decode the frame bitstream, and return as soon as the frame type is decisively decoded. Internally, the algorithm will modify its state, so that subsequent decoding of other frames is possible.

IVIDEO_SKIP_I

Skip intra coded frame.

IVIDEO_SKIP_IP

Skip I and P frame/field(s).

IVIDEO_SKIP_IB

Skip I and B frame/field(s).

IVIDEO_SKIP_PB

Skip P and B frame/field(s).

IVIDEO_SKIP_IPB

Skip I/P/B/BI frames.

IVIDEO_SKIP_IDR

Skip IDR Frame.

IVIDEO_SKIP_NONREFERENCE
Todo:
add documentation
IVIDEO_SKIP_DEFAULT

Default settings.

enum IVIDEO_FrameType

Video frame types.

Remarks:
For the various IVIDEO_xy_FRAME values, this frame type is interlaced where both top and bottom fields are provided in a single frame. The first field is an "x" frame, the second field is "y" field.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_NA_FRAME

Frame type not available.

IVIDEO_I_FRAME

Intra coded frame.

IVIDEO_P_FRAME

Forward inter coded frame.

IVIDEO_B_FRAME

Bi-directional inter coded frame.

IVIDEO_IDR_FRAME

Intra coded frame that can be used for refreshing video content.

IVIDEO_II_FRAME

Interlaced Frame, both fields are I frames

IVIDEO_IP_FRAME

Interlaced Frame, first field is an I frame, second field is a P frame.

IVIDEO_IB_FRAME

Interlaced Frame, first field is an I frame, second field is a B frame.

IVIDEO_PI_FRAME

Interlaced Frame, first field is a P frame, second field is a I frame.

IVIDEO_PP_FRAME

Interlaced Frame, both fields are P frames.

IVIDEO_PB_FRAME

Interlaced Frame, first field is a P frame, second field is a B frame.

IVIDEO_BI_FRAME

Interlaced Frame, first field is a B frame, second field is an I frame.

IVIDEO_BP_FRAME

Interlaced Frame, first field is a B frame, second field is a P frame.

IVIDEO_BB_FRAME

Interlaced Frame, both fields are B frames.

IVIDEO_MBAFF_I_FRAME

Intra coded MBAFF frame.

IVIDEO_MBAFF_P_FRAME

Forward inter coded MBAFF frame.

IVIDEO_MBAFF_B_FRAME

Bi-directional inter coded MBAFF frame.

IVIDEO_MBAFF_IDR_FRAME

Intra coded MBAFF frame that can be used for refreshing video content.

IVIDEO_FRAMETYPE_DEFAULT

Default setting.

enum IVIDEO_ContentType

Video content types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_CONTENTTYPE_NA

Frame type is not available.

IVIDEO_PROGRESSIVE

Progressive frame.

IVIDEO_PROGRESSIVE_FRAME

Progressive Frame.

IVIDEO_INTERLACED

Interlaced frame.

IVIDEO_INTERLACED_FRAME

Interlaced frame.

IVIDEO_INTERLACED_TOPFIELD

Interlaced picture, top field.

IVIDEO_INTERLACED_BOTTOMFIELD

Interlaced picture, bottom field.

IVIDEO_CONTENTTYPE_DEFAULT

Default setting.

enum IVIDEO_RateControlPreset

Video rate control presets.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_LOW_DELAY

CBR rate control for video conferencing.

IVIDEO_STORAGE

VBR rate control for local storage (DVD) recording.

IVIDEO_TWOPASS

Two pass rate control for non real time applications.

IVIDEO_NONE

No configurable video rate control mechanism.

IVIDEO_USER_DEFINED

User defined configuration using extended parameters.

IVIDEO_RATECONTROLPRESET_DEFAULT

Default setting.

enum IVIDEO_SkipMode

Video frame skipping modes.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_FRAME_ENCODED

Input video frame successfully encoded.

IVIDEO_FRAME_SKIPPED

Input video frame dropped. There is no encoded bitstream corresponding to the input frame.

IVIDEO_SKIPMODE_DEFAULT

Default setting.

enum IVIDEO_OutputFrameStatus

Video output buffer status.

Remarks:
Ownership of the buffers, either by application or algorithm, is conveyed via these values.
This reflects the status of ALL output buffers. For example, if video decoded output is in 4:2:0 format, all the 3 output buffers' status is described by this value. Similarly, for 4:2:2 formatted buffers, this value describes the single buffer's status.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_FRAME_NOERROR

The output buffer is available.

IVIDEO_FRAME_NOTAVAILABLE

The codec doesn't have any output buffers.

IVIDEO_FRAME_ERROR

The output buffer is available and corrupted.

Remarks:
For example, if a bitstream is erroneous and partially decoded, a portion of the decoded image may be available for display. Another example is if the bitstream for a given frame decode may be decoded without error, but the previously decoded dependant frames weren't successfully decoded. This would result in an incorrectly decoded frame.
IVIDEO_FRAME_OUTPUTSKIP

The video frame was skipped (i.e. not decoded).

IVIDEO_OUTPUTFRAMESTATUS_DEFAULT

Default setting.

enum IVIDEO_PictureType

Video Picture types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_NA_PICTURE

Frame type not available.

IVIDEO_I_PICTURE

Intra coded picture.

IVIDEO_P_PICTURE

Forward inter coded picture.

IVIDEO_B_PICTURE

Bi-directional inter coded picture.

IVIDEO_PICTURE_TYPE_DEFAULT

Default setting.

enum IVIDEO_Format

Video Format types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_MPEG1

Video format is Mpeg1 stream

IVIDEO_MPEG2SP

Video format is Mpeg2/H.262 stream, Simple Profile

IVIDEO_MPEG2MP

Video format is Mpeg2/H.262 stream, Main Profile

IVIDEO_MPEG2HP

Video format is Mpeg2/H.262 stream, High Profile

IVIDEO_MPEG4SP

Video format is Mpeg4 stream, Simple Profile

IVIDEO_MPEG4ASP

Video format is Mpeg4 stream, Advanced Simple Profile

IVIDEO_H264BP

Video format is H.264 stream, Base Profile

IVIDEO_H264MP

Video format is H.264 stream, Main Profile

IVIDEO_H264HP

Video format is H.264 stream, High Profile

IVIDEO_VC1SP

Video format is VC1/WMV9 stream, Simple Profile

IVIDEO_VC1MP

Video format is VC1/WMV9 stream, Main Profile

IVIDEO_VC1AP

Video format is VC1 stream, Advanced Profile

IVIDEO_H264RCDO

Video format is H.264 stream, Fast profile/RCDO

IVIDEO_RV8

Video format is Real Video 8 stream

IVIDEO_RV9

Video format is Real Video 9 stream

IVIDEO_RV10

Video format is Real Video 10 stream, same as RV9

IVIDEO_ON2VP6

Video format is ON2, VP6.x

IVIDEO_ON2VP7

Video format is ON2, VP7.x

IVIDEO_AVS10

Video format is AVS 1.0

IVIDEO_SORENSONSPARK

Video format is SorensonSpark V0/V1

IVIDEO_H263_PROFILE0

Video format is H263 Base line profile

IVIDEO_H263_PROFILE3

Video format is H263 and Annex IJKT

IVIDEO_H264SVC

Video format is SVC

IVIDEO_MULTIVIEW

Video format is Multiview coding

IVIDEO_MJPEG

Video format is motion JPEG

enum IVIDEO_VideoLayout

Video buffer layout.

Todo:
Do we need a default value for this enum?
Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_FIELD_INTERLEAVED

Buffer layout is interleaved.

IVIDEO_FIELD_SEPARATED

Buffer layout is field separated.

IVIDEO_TOP_ONLY

Buffer contains only top field.

IVIDEO_BOTTOM_ONLY

Buffer contains only bottom field.

enum IVIDEO_OperatingMode

Video coding mode of operation.

Todo:
Do we need a default value for this enum?
Todo:
Should "decode" and "encode" modes change to "process full frame"? For example, setting DECODE_ONLY for an encoder is wrong - can we make it impossible for codecs/apps to make this error?
Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
IVIDEO_DECODE_ONLY

Decoding mode.

IVIDEO_ENCODE_ONLY

Encoding mode.

IVIDEO_TRANSCODE_FRAMELEVEL

Transcode mode of operation (encode/decode) which consumes/generates transcode information at the frame level.

IVIDEO_TRANSCODE_MBLEVEL

Transcode mode of operation (encode/decode) which consumes/generates transcode information at the MB level.

IVIDEO_TRANSRATE_FRAMELEVEL

Transrate mode of operation for encoder which consumes transrate information at the frame level.

IVIDEO_TRANSRATE_MBLEVEL

Transrate mode of operation for encoder which consumes transrate information at the MB level.

enum IVIDEO_BitRange

Video bit range.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Todo:
Do we need a default value for this enum?
Enumerator:
IVIDEO_YUVRANGE_FULL

Pixel range for YUV is 0-255.

IVIDEO_YUVRANGE_ITU

Pixel range for YUV is as per ITU-T.

enum IVIDEO_DataMode

input/output data mode

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Todo:
Do we need a default value for this enum?
Todo:
Request from DM365 team to split IVIDEO_SLICEMODE into IVIDEO_SLICEMODE_BYTE and IVIDEO_SLICEMODE_NAL.
Enumerator:
IVIDEO_FIXEDLENGTH

In terms of multiples of 2K

IVIDEO_SLICEMODE

Slice mode

IVIDEO_NUMROWS

Number of rows, each row is 16 lines of video

IVIDEO_ENTIREFRAME

Processing of entire frame data

enum IVIDEO_ErrorInfoMode

Configuration for providing/receiving packet error information.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
Enumerator:
IVIDEO_ERRORINFO_OFF

Packet error information is unsupported.

IVIDEO_ERRORINFO_ON_INPUT

Packet error information is supported for input data.

IVIDEO_ERRORINFO_ON_OUTPUT

Packet error information is supported for output data.

IVIDEO_ERRORINFO_ON_BOTH

Packet error information is supported for both input and output data.

IVIDEO_ERRORINFO_MODE_DEFAULT

Default setting.

enum IVIDEO_MetadataType
Enumerator:
IVIDEO_METADATAPLANE_NONE

Used to indicate no metadata is requested or available.

IVIDEO_METADATAPLANE_MBINFO

Offset into IVIDEO_MAX_NUM_METADATA_PLANES array for MB Info.

See also:
IVIDEO_MAX_NUM_METADATA_PLANES
IVIDEO_METADATAPLANE_EINFO

Offset into IVIDEO_MAX_NUM_METADATA_PLANES array for Error Info.

See also:
IVIDEO_MAX_NUM_METADATA_PLANES
IVIDEO_METADATAPLANE_ALPHA

Offset into IVIDEO_MAX_NUM_METADATA_PLANES array for Alpha Data.

See also:
IVIDEO_MAX_NUM_METADATA_PLANES


Codec Engine Application Programming Interface (API): XDM IVIDDEC2-based Video Decoder Split Interface

Data Structures | Typedefs

XDM IVIDDEC2-based Video Decoder Split Interface

Data Structures

struct | IVIDDEC2FRONT_Obj
This must be the first field of all IVIDDEC2FRONT instance objects. More...
struct | IVIDDEC2BACK_Obj
This must be the first field of all IVIDDEC2BACK instance objects. More...
struct | IVIDDEC2FRONT_Status
Defines instance status parameters. More...
struct | IVIDDEC2FRONT_OutArgs
Defines the run time output arguments for all IVIDDEC2FRONT instance objects. More...
struct | IVIDDEC2FRONT_Fxns
Defines all of the operations on IVIDDEC2FRONT objects. More...
struct | IVIDDEC2BACK_Fxns
Defines all of the operations on IVIDDEC2BACK objects. More...

Typedefs

typedef struct IVIDDEC2FRONT_Obj | IVIDDEC2FRONT_Obj
This must be the first field of all IVIDDEC2FRONT instance objects.
typedef struct IVIDDEC2FRONT_Obj * | IVIDDEC2FRONT_Handle
Opaque handle to an IVIDDEC2FRONT objects.
typedef struct IVIDDEC2BACK_Obj | IVIDDEC2BACK_Obj
This must be the first field of all IVIDDEC2BACK instance objects.
typedef struct IVIDDEC2BACK_Obj * | IVIDDEC2BACK_Handle
Opaque handle to an IVIDDEC2BACK objects.
typedef struct IVIDDEC2FRONT_Status | IVIDDEC2FRONT_Status
Defines instance status parameters.
typedef struct
IVIDDEC2FRONT_OutArgs 		IVIDDEC2FRONT_OutArgs
Defines the run time output arguments for all IVIDDEC2FRONT instance objects.
typedef struct IVIDDEC2FRONT_Fxns | IVIDDEC2FRONT_Fxns
Defines all of the operations on IVIDDEC2FRONT objects.
typedef struct IVIDDEC2BACK_Fxns | IVIDDEC2BACK_Fxns
Defines all of the operations on IVIDDEC2BACK objects.

Detailed Description

This is the XDM split video decoder interface.

Typedef Documentation

typedef struct IVIDDEC2FRONT_Obj IVIDDEC2FRONT_Obj

This must be the first field of all IVIDDEC2FRONT instance objects.

typedef struct IVIDDEC2FRONT_Obj* IVIDDEC2FRONT_Handle

Opaque handle to an IVIDDEC2FRONT objects.

typedef struct IVIDDEC2BACK_Obj IVIDDEC2BACK_Obj

This must be the first field of all IVIDDEC2BACK instance objects.

typedef struct IVIDDEC2BACK_Obj* IVIDDEC2BACK_Handle

Opaque handle to an IVIDDEC2BACK objects.

typedef struct IVIDDEC2FRONT_Status IVIDDEC2FRONT_Status

Defines instance status parameters.

Remarks:
All fields correspond to latest IVIDDEC2FRONT_Fxns::process() call on the particular instance of the decoder.
See also:
IVIDDEC2FRONT_Fxns::control()
typedef struct IVIDDEC2FRONT_OutArgs IVIDDEC2FRONT_OutArgs

Defines the run time output arguments for all IVIDDEC2FRONT instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2FRONT_Fxns::process()
typedef struct IVIDDEC2FRONT_Fxns IVIDDEC2FRONT_Fxns

Defines all of the operations on IVIDDEC2FRONT objects.

typedef struct IVIDDEC2BACK_Fxns IVIDDEC2BACK_Fxns

Defines all of the operations on IVIDDEC2BACK objects.


Codec Engine Application Programming Interface (API): XDM - Shared XDM Definitions

Data Structures | Defines | Typedefs | Enumerations

XDM - Shared XDM Definitions

Data Structures

struct | XDM_BufDesc
Buffer descriptor for multiple buffers. More...
struct | XDM_SingleBufDesc
Single buffer descriptor. More...
struct | XDM1_SingleBufDesc
Single buffer descriptor. More...
union | XDM2_BufSize
Union describing a buffer size. More...
struct | XDM2_SingleBufDesc
Single buffer descriptor. More...
struct | XDM1_BufDesc
Buffer descriptor. More...
struct | XDM2_BufDesc
Buffer descriptor. More...
struct | XDM1_AlgBufInfo
Buffer information descriptor for input and output buffers. More...
struct | XDM_AlgBufInfo
Buffer information descriptor for input and output buffers. More...
struct | XDM_Date
Date and time. More...
struct | XDM_Point
2-dimensional point More...
struct | XDM_Rect
Rectangle. More...
struct | XDM_ContextInfo
Buffer information descriptor for input and output buffers. More...
struct | XDM_Context
Context used by split codecs. More...
struct | XDM_DataSyncDesc
Descriptor for the chunk of data being transferred in one call to putData or getData. More...

Defines

#define | XDM_EOK IALG_EOK
#define | XDM_EFAIL IALG_EFAIL
#define | XDM_EUNSUPPORTED -3
#define | XDM_ERUNTIME -2
General runtime failure.
#define | XDM_MAX_IO_BUFFERS 16
#define | XDM_ISACCESSMODE_READ(x) (((x) >> XDM_ACCESSMODE_READ) & 0x1)
Check an access mask for CPU read access.
#define | XDM_ISACCESSMODE_WRITE(x) (((x) >> XDM_ACCESSMODE_WRITE) & 0x1)
Check an access mask for CPU write access.
#define | XDM_CLEARACCESSMODE_READ(x) ((x) &= (~(0x1 << XDM_ACCESSMODE_READ)))
Clear the "CPU read access" bit in an access mask.
#define | XDM_CLEARACCESSMODE_WRITE(x) ((x) &= (~(0x1 << XDM_ACCESSMODE_WRITE)))
Clear the "CPU write access" bit in an access mask.
#define | XDM_SETACCESSMODE_READ(x) ((x) |= (0x1 << XDM_ACCESSMODE_READ))
Set the bit to indicate CPU read access in an access mask.
#define | XDM_SETACCESSMODE_WRITE(x) ((x) |= (0x1 << XDM_ACCESSMODE_WRITE))
Set the bit to indicate CPU write access in an access mask.
#define | XDM_CUSTOMENUMBASE 0x100
Base of algorithm-specific enum values.
#define | XDM_CUSTOMCMDBASE 0x100
Base of algorithm-specific commands.
#define | XDM_ISFATALERROR(x) (((x) >> XDM_FATALERROR) & 0x1)
#define | XDM_ISUNSUPPORTEDPARAM(x) (((x) >> XDM_UNSUPPORTEDPARAM) & 0x1)
#define | XDM_ISUNSUPPORTEDINPUT(x) (((x) >> XDM_UNSUPPORTEDINPUT) & 0x1)
#define | XDM_ISCORRUPTEDHEADER(x) (((x) >> XDM_CORRUPTEDHEADER) & 0x1)
#define | XDM_ISCORRUPTEDDATA(x) (((x) >> XDM_CORRUPTEDDATA) & 0x1)
#define | XDM_ISINSUFFICIENTDATA(x) (((x) >> XDM_INSUFFICIENTDATA) & 0x1)
#define | XDM_ISAPPLIEDCONCEALMENT(x) (((x) >> XDM_APPLIEDCONCEALMENT) & 0x1)
#define | XDM_SETFATALERROR(x) ((x) |= (0x1 << XDM_FATALERROR))
#define | XDM_SETUNSUPPORTEDPARAM(x) ((x) |= (0x1 << XDM_UNSUPPORTEDPARAM))
#define | XDM_SETUNSUPPORTEDINPUT(x) ((x) |= (0x1 << XDM_UNSUPPORTEDINPUT))
#define | XDM_SETCORRUPTEDHEADER(x) ((x) |= (0x1 << XDM_CORRUPTEDHEADER))
#define | XDM_SETCORRUPTEDDATA(x) ((x) |= (0x1 << XDM_CORRUPTEDDATA))
#define | XDM_SETINSUFFICIENTDATA(x) ((x) |= (0x1 << XDM_INSUFFICIENTDATA))
#define | XDM_SETAPPLIEDCONCEALMENT(x) ((x) |= (0x1 << XDM_APPLIEDCONCEALMENT))
#define | XDM_MAX_CONTEXT_BUFFERS 32
Maximum number of context buffers.

Typedefs

typedef struct XDM_BufDesc | XDM_BufDesc
Buffer descriptor for multiple buffers.
typedef struct XDM_SingleBufDesc | XDM_SingleBufDesc
Single buffer descriptor.
typedef struct XDM1_SingleBufDesc | XDM1_SingleBufDesc
Single buffer descriptor.
typedef struct XDM2_SingleBufDesc | XDM2_SingleBufDesc
Single buffer descriptor.
typedef struct XDM1_BufDesc | XDM1_BufDesc
Buffer descriptor.
typedef struct XDM2_BufDesc | XDM2_BufDesc
Buffer descriptor.
typedef struct XDM1_AlgBufInfo | XDM1_AlgBufInfo
Buffer information descriptor for input and output buffers.
typedef struct XDM_AlgBufInfo | XDM_AlgBufInfo
Buffer information descriptor for input and output buffers.
typedef struct XDM_Date | XDM_Date
Date and time.
typedef struct XDM_Point | XDM_Point
2-dimensional point
typedef struct XDM_Rect | XDM_Rect
Rectangle.
typedef struct XDM_ContextInfo | XDM_ContextInfo
Buffer information descriptor for input and output buffers.
typedef struct XDM_Context | XDM_Context
Context used by split codecs.
typedef struct XDM_DataSyncDesc | XDM_DataSyncDesc
Descriptor for the chunk of data being transferred in one call to putData or getData.
typedef Void * | XDM_DataSyncHandle
Handle that identifies the DataSync FIFO.
typedef Void(* | XDM_DataSyncPutFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
Non-blocking API to signal "data ready" to one or more consumers.
typedef XDAS_Int32(* | XDM_DataSyncGetFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
API to obtain data information from a consumer.
typedef XDAS_Int32(* | XDM_DataSyncGetBufferFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
API to obtain empty bitstream buffers from an allocator to be filled by the algorithm.
typedef XDAS_Int32(* | XDM_DataSyncPutBufferFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
API to return consumed bitstream buffers to the original provider.

Enumerations

enum XDM_AccessMode {
XDM_ACCESSMODE_READ = 0,
XDM_ACCESSMODE_WRITE = 1
}

Access modes used to declare how the algorithm accessed buffers.

More...
enum XDM_CmdId {
XDM_GETSTATUS = 0,
XDM_SETPARAMS = 1,
XDM_RESET = 2,
XDM_SETDEFAULT = 3,
XDM_FLUSH = 4,
XDM_GETBUFINFO = 5,
XDM_GETVERSION = 6,
XDM_GETCONTEXTINFO = 7,
XDM_GETDYNPARAMSDEFAULT = 8,
XDM_SETLATEACQUIREARG = 9
}

Standard control commands that must be implemented by XDM compliant multimedia algorithms.

More...
enum XDM_ErrorBit {
XDM_PARAMSCHANGE = 8,
XDM_APPLIEDCONCEALMENT = 9,
XDM_INSUFFICIENTDATA = 10,
XDM_CORRUPTEDDATA = 11,
XDM_CORRUPTEDHEADER = 12,
XDM_UNSUPPORTEDINPUT = 13,
XDM_UNSUPPORTEDPARAM = 14,
XDM_FATALERROR = 15
}

Extended error information.

More...
enum XDM_DataFormat {
XDM_BYTE = 1,
XDM_LE_16 = 2,
XDM_LE_32 = 3,
XDM_LE_64 = 4,
XDM_BE_16 = 5,
XDM_BE_32 = 6,
XDM_BE_64 = 7
}

Endianness of data.

More...
enum XDM_EncodingPreset {
XDM_DEFAULT = 0,
XDM_HIGH_QUALITY = 1,
XDM_HIGH_SPEED = 2,
XDM_USER_DEFINED = 3,
XDM_HIGH_SPEED_MED_QUALITY = 4,
XDM_MED_SPEED_MED_QUALITY = 5,
XDM_MED_SPEED_HIGH_QUALITY = 6,
XDM_ENCODING_PRESET_MAX = 7,
XDM_PRESET_DEFAULT = XDM_MED_SPEED_MED_QUALITY
}

Encoding presets.

More...
enum XDM_DecMode {
XDM_DECODE_AU = 0,
XDM_PARSE_HEADER = 1
}

Decode entire access unit or only header.

More...
enum XDM_EncMode {
XDM_ENCODE_AU = 0,
XDM_GENERATE_HEADER = 1
}

Encode entire access unit or only header.

More...
enum XDM_ChromaFormat {
XDM_CHROMA_NA = -1,
XDM_YUV_420P = 1,
XDM_YUV_422P = 2,
XDM_YUV_422IBE = 3,
XDM_YUV_422ILE = 4,
XDM_YUV_444P = 5,
XDM_YUV_411P = 6,
XDM_GRAY = 7,
XDM_RGB = 8,
XDM_YUV_420SP = 9,
XDM_ARGB8888 = 10,
XDM_RGB555 = 11,
XDM_RGB565 = 12,
XDM_YUV_444ILE = 13,
XDM_CHROMAFORMAT_DEFAULT = XDM_YUV_422ILE
}

Chroma formats.

More...
enum XDM_MemoryType {
XDM_MEMTYPE_ROW = 0,
XDM_MEMTYPE_RAW = 0,
XDM_MEMTYPE_TILED8 = 1,
XDM_MEMTYPE_TILED16 = 2,
XDM_MEMTYPE_TILED32 = 3,
XDM_MEMTYPE_TILEDPAGE = 4
}

Memory space attributes.

More...
enum | XDM_MemoryUsageMode { XDM_MEMUSAGE_DATASYNC = 0 }

Memory space attributes.

More...

Detailed Description

This is the XDM interface.

Define Documentation

#define XDM_EOK IALG_EOK

Success.

#define XDM_EFAIL IALG_EFAIL

General failure.

#define XDM_EUNSUPPORTED -3

Request is unsupported.

#define XDM_ERUNTIME -2

General runtime failure.

Deprecated:
This is only supported on 0.9 XDM. To use it, you must define "XDM_INCLUDE_DOT9_SUPPORT". In XDM 1.00+, it is required that codecs return "EFAIL", as "ERUNTIME" is not supported.
#define XDM_MAX_IO_BUFFERS 16

Max I/O Buffers

#define XDM_ISACCESSMODE_READ ( x ) (((x) >> XDM_ACCESSMODE_READ) & 0x1)

Check an access mask for CPU read access.

Parameters:
x access mask.
Remarks:
This is typically used by an application.
See also:
XDM1_SingleBufDesc::accessMask
XDM_ISACCESSMODE_WRITE
#define XDM_ISACCESSMODE_WRITE ( x ) (((x) >> XDM_ACCESSMODE_WRITE) & 0x1)

Check an access mask for CPU write access.

Parameters:
x access mask.
Remarks:
This is typically used by an application.
See also:
XDM1_SingleBufDesc::accessMask
XDM_ISACCESSMODE_READ
#define XDM_CLEARACCESSMODE_READ ( x ) ((x) &= (~(0x1 << XDM_ACCESSMODE_READ)))

Clear the "CPU read access" bit in an access mask.

Parameters:
x access mask.
Remarks:
This is typically used by an algorithm.
See also:
XDM_SETACCESSMODE_READ
XDM1_SingleBufDesc::accessMask
#define XDM_CLEARACCESSMODE_WRITE ( x ) ((x) &= (~(0x1 << XDM_ACCESSMODE_WRITE)))

Clear the "CPU write access" bit in an access mask.

Parameters:
x access mask.
Remarks:
This is typically used by an algorithm.
See also:
XDM_SETACCESSMODE_WRITE
XDM1_SingleBufDesc::accessMask
#define XDM_SETACCESSMODE_READ ( x ) ((x) |= (0x1 << XDM_ACCESSMODE_READ))

Set the bit to indicate CPU read access in an access mask.

Parameters:
x access mask.
Remarks:
This is typically used by an algorithm.
See also:
XDM1_SingleBufDesc::accessMask
#define XDM_SETACCESSMODE_WRITE ( x ) ((x) |= (0x1 << XDM_ACCESSMODE_WRITE))

Set the bit to indicate CPU write access in an access mask.

Parameters:
x access mask.
Remarks:
This is typically used by an algorithm.
See also:
XDM1_SingleBufDesc::accessMask
#define XDM_CUSTOMENUMBASE 0x100

Base of algorithm-specific enum values.

Remarks:
This is provided to ensure that future updates to XDM-defined enumerations don't conflict with algorithm-proprietary enumerations.
Custom enumerations should be defined like the following (USERENUM0 and USERENUM1 are simply examples):
  #define MYMODULE_MYVENDOR_USERENUM0 (XDM_CUSTOMENUMBASE + 0)
  #define MYMODULE_MYVENDOR_USERENUM1 (XDM_CUSTOMENUMBASE + 1)
#define XDM_CUSTOMCMDBASE 0x100

Base of algorithm-specific commands.

Remarks:
This is provided to ensure that future updates to XDM_CmdId's enumeration don't conflict with algorithm-proprietary command ID's.
Custom command ID's should be defined like the following (USERCMD0 and USERCMD1 are simply examples):
  #define MYMODULE_MYVENDOR_USERCMD0 (XDM_CUSTOMCMDBASE + 0)
  #define MYMODULE_MYVENDOR_USERCMD1 (XDM_CUSTOMCMDBASE + 1)
See also:
XDM_CmdId
#define XDM_ISFATALERROR ( x ) (((x) >> XDM_FATALERROR) & 0x1)

Check for fatal error

#define XDM_ISUNSUPPORTEDPARAM ( x ) (((x) >> XDM_UNSUPPORTEDPARAM) & 0x1)

Check for unsupported parameter

#define XDM_ISUNSUPPORTEDINPUT ( x ) (((x) >> XDM_UNSUPPORTEDINPUT) & 0x1)

Check for unsupported input

#define XDM_ISCORRUPTEDHEADER ( x ) (((x) >> XDM_CORRUPTEDHEADER) & 0x1)

Check for corrupted header

#define XDM_ISCORRUPTEDDATA ( x ) (((x) >> XDM_CORRUPTEDDATA) & 0x1)

Check for corrupted data

#define XDM_ISINSUFFICIENTDATA ( x ) (((x) >> XDM_INSUFFICIENTDATA) & 0x1)

Check for insufficient data

#define XDM_ISAPPLIEDCONCEALMENT ( x ) (((x) >> XDM_APPLIEDCONCEALMENT) & 0x1)

Check for applied concealment

#define XDM_SETFATALERROR ( x ) ((x) |= (0x1 << XDM_FATALERROR))

Set fatal error bit

#define XDM_SETUNSUPPORTEDPARAM ( x ) ((x) |= (0x1 << XDM_UNSUPPORTEDPARAM))

Set unsupported parameter bit

#define XDM_SETUNSUPPORTEDINPUT ( x ) ((x) |= (0x1 << XDM_UNSUPPORTEDINPUT))

Set unsupported input bit

#define XDM_SETCORRUPTEDHEADER ( x ) ((x) |= (0x1 << XDM_CORRUPTEDHEADER))

Set corrupted header bit

#define XDM_SETCORRUPTEDDATA ( x ) ((x) |= (0x1 << XDM_CORRUPTEDDATA))

Set corrupted data bit

#define XDM_SETINSUFFICIENTDATA ( x ) ((x) |= (0x1 << XDM_INSUFFICIENTDATA))

Set insufficient data bit

#define XDM_SETAPPLIEDCONCEALMENT ( x ) ((x) |= (0x1 << XDM_APPLIEDCONCEALMENT))

Set applied concealment bit

#define XDM_MAX_CONTEXT_BUFFERS 32

Maximum number of context buffers.

Typedef Documentation

typedef struct XDM_BufDesc XDM_BufDesc

Buffer descriptor for multiple buffers.

Precondition:
numBufs can not be larger than XDM_MAX_IO_BUFFERS. Related, *bufs and *bufSizes will never be indexed beyond XDM_MAX_IO_BUFFERS elements.
Remarks:
This data type is commonly used to manage input and output buffers.
If *bufs is a sparse array, *bufSizes will be a similar sparse array. The NULL indexes in bufs will be ignored in bufSizes.
numBufs describes the number of buffers in this descriptor. if *bufs is a sparse array, numBufs describes the number of non-NULL buffers in this descriptor; this is not necessarily the maximum index of the last buffer pointed to by *bufs.
An example utilizing XDM_BufDesc as a sparse array would be the following:
              XDM_BufDesc outBufs;
              XDAS_Int32  bufSizeArray[XDM_MAX_IO_BUFFERS];
              XDAS_Int8  *pBuffers[XDM_MAX_IO_BUFFERS];
              XDAS_Int8   buffer1[4096];
              XDAS_Int8   buffer2[1024];

              // ensure all pBuffers and bufSizeArray are initially NULL
              memset(pBuffers, 0, sizeof(pBuffers[0]) * XDM_MAX_IO_BUFFERS);
              memset(bufSizeArray, 0,
                  sizeof(bufSizeArray[0]) * XDM_MAX_IO_BUFFERS);

              pBuffers[0] = buffer1;
              pBuffers[4] = buffer2;

              bufSizeArray[0] = 4096;
              bufSizeArray[4] = 1024;

              outBufs.bufs = pBuffers;
              outBufs.numBufs = 2;
              outBufs.bufSizes = bufSizeArray;
The following diagram describes graphically the example above.
typedef struct XDM_SingleBufDesc XDM_SingleBufDesc

Single buffer descriptor.

typedef struct XDM1_SingleBufDesc XDM1_SingleBufDesc

Single buffer descriptor.

typedef struct XDM2_SingleBufDesc XDM2_SingleBufDesc

Single buffer descriptor.

Remarks:
This buffer descriptor contains a memType field, and uses the XDM_BufSize union to indicate the size of the buffer. As a result, this data type can be used to describe complex memory types (e.g. tiled memory).
typedef struct XDM1_BufDesc XDM1_BufDesc

Buffer descriptor.

typedef struct XDM2_BufDesc XDM2_BufDesc

Buffer descriptor.

Remarks:
This advanced buffer uses the XDM2_SingleBufDesc, and is typically used for codecs which must reflect types of memory. For example, video codecs may need to indicate whether tiled memory is used.
typedef struct XDM1_AlgBufInfo XDM1_AlgBufInfo

Buffer information descriptor for input and output buffers.

typedef struct XDM_AlgBufInfo XDM_AlgBufInfo

Buffer information descriptor for input and output buffers.

typedef struct XDM_Date XDM_Date

Date and time.

typedef struct XDM_Point XDM_Point

2-dimensional point

typedef struct XDM_Rect XDM_Rect

Rectangle.

typedef struct XDM_ContextInfo XDM_ContextInfo

Buffer information descriptor for input and output buffers.

typedef struct XDM_Context XDM_Context

Context used by split codecs.

typedef struct XDM_DataSyncDesc XDM_DataSyncDesc

Descriptor for the chunk of data being transferred in one call to putData or getData.

typedef Void* XDM_DataSyncHandle

Handle that identifies the DataSync FIFO.

See also:
XDM_DataSyncPutFxn()
XDM_DataSyncGetFxn()
XDM_DataSyncGetBufferFxn()
XDM_DataSyncPutBufferFxn()
typedef Void(* XDM_DataSyncPutFxn)(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)

Non-blocking API to signal "data ready" to one or more consumers.

Parameters:
[in] | dataSyncHandle | Handle to a data sync instance.
[out] | dataSyncDesc | Full data sync descriptor. This includes one or more filled data buffers.
Todo:
Needs review
See also:
IVIDDEC3_DynamicParams::putDataFxn()
IVIDENC2_DynamicParams::putDataFxn()
IVIDENC2_DynamicParams::getBufferFxn()
XDM_DataSyncGetBufferFxn
typedef XDAS_Int32(* XDM_DataSyncGetFxn)(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)

API to obtain data information from a consumer.

Parameters:
[in] | dataSyncHandle | Handle to a data sync instance.
[out] | dataSyncDesc | Empty data sync descriptor to be filled by the producer. Only the size field must be initialized by the caller.
Postcondition:
Upon return, the dataSyncDesc will contain details about the provided data.
Remarks:
Given that this is an input buffer, the implementation of this fxn must make the provided external or shared memory coherent with respect to the algorithm processor's cache.
Todo:
Needs review
See also:
IVIDDEC3_DynamicParams::getDataFxn()
IVIDDEC3_DynamicParams::putBufferFxn()
IVIDENC2_DynamicParams::getDataFxn()
XDM_DataSyncPutBufferFxn
typedef XDAS_Int32(* XDM_DataSyncGetBufferFxn)(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)

API to obtain empty bitstream buffers from an allocator to be filled by the algorithm.

Parameters:
[in] | dataSyncHandle | Handle to a data sync instance.
[out] | dataSyncDesc | Empty data sync descriptor to be filled by the allocator. Only the size field must be initialized by the caller.
Postcondition:
Upon return, the dataSyncDesc will contain details about the allocated buffer(s).
Remarks:
Given that this is an output buffer, the implementation of this fxn (i.e., the allocator) must make the provided external or shared memory coherent with respect to the algorithm processor's cache. This typically implies it must be cache invalidated since the alg may fill this buffer via DMA.
The allocator may not zero-initialize this buffer. If the allocator does initialize the buffer, it must ensure the cache coherency via writeback-invalidate.
Return values:
XDM_EOK | Allocator is able to provide the buffer or is not able to provide the buffer but indicates that it can provide the buffers in future such calls.
XDM_EFAIL | Allocator is unable to provide the buffer and it will not be able to provide the buffer in the future.
See also:
IVIDENC2_DynamicParams::putDataFxn()
IVIDENC2_Fxns::process()
typedef XDAS_Int32(* XDM_DataSyncPutBufferFxn)(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)

API to return consumed bitstream buffers to the original provider.

Parameters:
[in] | dataSyncHandle | Handle to a data sync instance.
[out] | dataSyncDesc | Data sync descriptor.
Todo:
What cache coherency responsibilities are placed on this buffer?
Todo:
Needs review and further detail
See also:
IVIDDEC3_DynamicParams::getDataFxn()
IVIDDEC3_Fxns::process()

Enumeration Type Documentation

enum XDM_AccessMode

Access modes used to declare how the algorithm accessed buffers.

Remarks:
This indicates how the algorithm's CPU accessed the buffer, independent of DMA or other hardware accellerators. For example, if the buffer was written to with DMA (as opposed to writing to the buffer with the CPU write instructions), the algorithm should not set the XDM_ACCESSMODE_WRITE bit.
The value of the enum is the bit offset into a mask. The value of the enum is not the value to assign the mask.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM1_SingleBufDesc
XDM1_BufDesc
Enumerator:
XDM_ACCESSMODE_READ

The algorithm read from the buffer using the CPU.

See also:
XDM_SETACCESSMODE_READ
XDM_ISACCESSMODE_READ
XDM_ACCESSMODE_WRITE

The algorithm wrote to the buffer using the CPU.

See also:
XDM_SETACCESSMODE_WRITE
XDM_ISACCESSMODE_WRITE
enum XDM_CmdId

Standard control commands that must be implemented by XDM compliant multimedia algorithms.

Remarks:
If an algorithm receives a command it doesn't handle or understand, it must return EUNSUPPORTED.
XDM_GETCONTEXTINFO need only be implemented by split codecs. Standard algorithms should return EUNSUPPORTED if they receive the XDM_GETCONTEXTINFO command.
Any control ID extension in IMOD interface should start from XDM_CUSTOMCMDBASE onward. The ID range from 0 to XDM_CUSTOMCMDBASE is reserved.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_CUSTOMCMDBASE
Enumerator:
XDM_GETSTATUS

Query algorithm to fill status structure.

Remarks:
Some XDM interfaces provide an embedded "DynamicParams" struct in the base class "Status" struct in which the current state of an algorithm's dynamic params can be returned (e.g. IVIDENC2_Status.encDynamicParams); other codec classes do not (and algs could provide this via an extended Status struct).
XDM_SETPARAMS

Set run time dynamic parameters.

XDM_RESET

Reset the algorithm. All fields in the internal data structures are reset and all internal buffers are flushed.

XDM_SETDEFAULT

Restore the algorithm's internal state to its original, default values.

Remarks:
The application only needs to initialize the dynamicParams.size and status.size fields prior to calling control() with XDM_SETDEFAULT.
The algorithm must only write to the status.extendedError field, and potentially algorithm specific, extended fields.
XDM_SETDEFAULT differs from XDM_RESET. In addition to restoring the algorithm's internal state, XDM_RESET additionally resets any channel related state.
XDM_FLUSH

Handle end of stream conditions. This command forces the algorithm to output data without additional input. The recommended sequence is to call the control() function (with XDM_FLUSH) followed by repeated calls to the process() function until it returns an error.

Remarks:
The algorithm should return the appropriate, class-specific "EFAIL" error (e.g. ISPHDEC1_EFAIL, IVIDENC1_EFAIL, etc), when flushing is complete.
XDM_GETBUFINFO

Query algorithm instance regarding its properties of input and output buffers.

Remarks:
The application only needs to initialize the dynamicParams.size, the status.size, and set any buffer descriptor fields (e.g. status.data) to NULL prior to calling control() with XDM_GETBUFINFO.
XDM_GETVERSION

Query the algorithm's version. The result will be returned in the data field of the respective _Status structure.

Remarks:
There is no specific format defined for version returned by the algorithm.
XDM_GETCONTEXTINFO

Query a split codec part for its context needs.

Remarks:
Only split codecs are required to implement this command.
XDM_GETDYNPARAMSDEFAULT

Query the algorithm to fill the default values for the parameters which can be configured dynamically.

Remarks:
The algorithm provides the default dynamic params by writing into the dynamicParams structure. Note that this is an exception to the general rule that the algorithm should not write into dynamicParams.
The application only needs to initialize the dynamicParams.size and status.size fields prior to calling control() with XDM_GETDYNPARAMSDEFAULT.
Other than the .size field, values in the status struct are undefined upon returning from this call.
To get the current value of an algorithm instance's dynamic parameters, it's recommended that the alg provide them via the XDM_GETSTATUS call.
XDM_SETLATEACQUIREARG

Set an algorithm's 'late acquire' argument.

Remarks:
Handling this command is optional.
Only algorithms that utilize the late acquire IRES feature may implement this command.
enum XDM_ErrorBit

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
Enumerator:
XDM_PARAMSCHANGE

Bit 8 - Sequence Parameters Change.

Remarks:
This error is applicable for transcoders. It is set when some key parameter of the input sequence changes. The transcoder simply returns after setting this error field and the correct input sequence parameters are updated in outArgs.
XDM_APPLIEDCONCEALMENT

Bit 9 - Applied concealment.

Remarks:
This error is applicable for decoders. It is set when the decoder was not able to able to decode the bitstream, and the decoder has concealed the bitstream error and produced the concealed output.
XDM_INSUFFICIENTDATA

Bit 10 - Insufficient input data.

Remarks:
This error is typically applicable for decoders. This is set when the input data provided is not sufficient to produce of one frame of data. This can be also be set for encoders when the number of valid samples in the input frame is not sufficient to process a frame.
XDM_CORRUPTEDDATA

Bit 11 - Data problem/corruption.

Remarks:
This error is typically applicable for decoders. This is set when the bitstream has an error and not compliant to the standard syntax.
XDM_CORRUPTEDHEADER

Bit 12 - Header problem/corruption.

Remarks:
This error is typically applicable for decoders. This is set when the header information in the bitstream is incorrect. For example, it is set when Sequence/Picture/Slice etc. are incorrect in video decoders.
XDM_UNSUPPORTEDINPUT

Bit 13 - Unsupported feature/parameter in input.

Remarks:
This error is set when the algorithm is not able process a certain input data/bitstream format. It can also be set when a subset of features in a standard are not supported by the algorithm.
For example, if a video encoder only supports 4:2:2 format, it can set this error for any other type of input video format.
XDM_UNSUPPORTEDPARAM

Bit 14 - Unsupported input parameter or configuration.

Remarks:
This error is set when the algorithm doesn't support certain configurable parameters. For example, if the video decoder doesn't support the "display width" feature, it shall return XDM_UNSUPPORTEDPARAM when the control function is called for setting the displayWidth attribute.
XDM_FATALERROR

Bit 15 - Fatal error (stop the codec). If there is an error and this bit is not set, the error is a recoverable one.

Remarks:
This error is set when the algorithm cannot recover from the current state. It informs the system not to try the next frame and possibly delete the multimedia algorithm instance. It implies the codec shall not work when reset.
The user should delete the current instance of the codec.
enum XDM_DataFormat

Endianness of data.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
XDM_BYTE

Big endian stream.

XDM_LE_16

16 bit little endian stream.

XDM_LE_32

32 bit little endian stream.

XDM_LE_64

64 bit little endian stream.

XDM_BE_16

16 bit big endian stream.

XDM_BE_32

32 bit big endian stream.

XDM_BE_64

64 bit big endian stream.

enum XDM_EncodingPreset

Encoding presets.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
XDM_DEFAULT

Default setting of encoder. See codec specific documentation for its encoding behaviour.

XDM_HIGH_QUALITY

High quality encoding.

XDM_HIGH_SPEED

High speed encoding.

XDM_USER_DEFINED

User defined configuration, using advanced parameters.

XDM_HIGH_SPEED_MED_QUALITY

High speed, medium quality encoding.

XDM_MED_SPEED_MED_QUALITY

Medium speed, medium quality encoding.

XDM_MED_SPEED_HIGH_QUALITY

Medium speed, high quality encoding.

XDM_ENCODING_PRESET_MAX
Todo:
need to add documentation
XDM_PRESET_DEFAULT

Default setting of encoder. See codec specific documentation for its encoding behaviour.

enum XDM_DecMode

Decode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
XDM_DECODE_AU

Decode entire access unit, including all the headers.

XDM_PARSE_HEADER

Decode only header.

enum XDM_EncMode

Encode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
XDM_ENCODE_AU

Encode entire access unit, including the headers.

XDM_GENERATE_HEADER

Encode only header.

enum XDM_ChromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
XDM_CHROMA_NA

Chroma format not applicable.

XDM_YUV_420P

YUV 4:2:0 planer.

XDM_YUV_422P

YUV 4:2:2 planer.

XDM_YUV_422IBE

YUV 4:2:2 interleaved (big endian).

XDM_YUV_422ILE

YUV 4:2:2 interleaved (little endian).

XDM_YUV_444P

YUV 4:4:4 planer.

XDM_YUV_411P

YUV 4:1:1 planer.

XDM_GRAY

Gray format.

XDM_RGB

RGB color format.

XDM_YUV_420SP

YUV 420 semi_planar format.(Luma 1st plane, CbCr interleaved 2nd plane)

XDM_ARGB8888

Alpha plane.

XDM_RGB555

RGB 555 color format.

XDM_RGB565

RGB 565 color format.

XDM_YUV_444ILE

YUV 4:4:4 interleaved (little endian).

XDM_CHROMAFORMAT_DEFAULT

Default setting.

enum XDM_MemoryType

Memory space attributes.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Enumerator:
XDM_MEMTYPE_ROW

Linear (standard) memory.

Deprecated:
The XDM_MEMTYPE_ROW value is deprecated. Please use XDM_MEMTYPE_RAW (which, by design, has the same underyling value) instead.
Remarks:
XDM_MEMTYPE_ROW may be removed in a future release.
See also:
XDM_MemoryType::XDM_MEMTYPE_RAW
XDM_MEMTYPE_RAW

Linear (standard) memory.

Todo:
add documentation
XDM_MEMTYPE_TILED8
Todo:
add documentation
XDM_MEMTYPE_TILED16
Todo:
add documentation
XDM_MEMTYPE_TILED32
Todo:
add documentation
XDM_MEMTYPE_TILEDPAGE
Todo:
add documentation
enum XDM_MemoryUsageMode

Memory space attributes.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
Enumerator:
XDM_MEMUSAGE_DATASYNC

Bit 0 - Data Sync mode

Remarks:
If this bit is set, the memory will be used in data sync mode.
When in data sync mode, the algorithm is responsible for ensuring any XDAIS rules are met for the buffer (e.g. managing cache coherency).
If an algorithm is running in mode other than data sync, and receives a buffer with this bit set, it should return an error, likely XDM_UNSUPPORTEDINPUT.


Codec Engine Application Programming Interface (API): XDAIS Types and Constants

Defines | Typedefs

XDAIS Types and Constants

Defines

#define | XDAS_TRUE 1
#define | XDAS_FALSE 0

Typedefs

typedef Void | XDAS_Void
typedef Uint8 | XDAS_Bool
typedef Int8 | XDAS_Int8
typedef Uint8 | XDAS_UInt8
typedef Int16 | XDAS_Int16
typedef Uint16 | XDAS_UInt16
typedef Int32 | XDAS_Int32
typedef Uint32 | XDAS_UInt32

Define Documentation

#define XDAS_TRUE 1
#define XDAS_FALSE 0

Typedef Documentation

typedef Void XDAS_Void
typedef Uint8 XDAS_Bool
typedef Int8 XDAS_Int8

Actual size chip dependent.

typedef Uint8 XDAS_UInt8

Actual size chip dependent.

typedef Int16 XDAS_Int16

Actual size of type is 16 bits.

typedef Uint16 XDAS_UInt16

Actual size of type is 16 bits.

typedef Int32 XDAS_Int32

Actual size of type is 32 bits.

typedef Uint32 XDAS_UInt32

Actual size of type is 32 bits.


Codec Engine Application Programming Interface (API): Codec Engine Runtime

Data Structures | Defines | Typedefs | Functions | Variables

Codec Engine Runtime

Data Structures

struct | Engine_Attrs
Attributes of an Engine. More...
struct | Engine_AlgInfo
Properties of an Engine algorithm. More...
struct | Engine_DllAlgDesc
Discriptor for a dynamically loaded codec. A dynamic library for a codec must export a function that fills in a structure of this type. More...
struct | Engine_DllAlgParams
This structure is passed to Engine_addAlg(), and contains parameters to create a dynamic codec with. More...

Defines

#define | Engine_MODNAME "ti.sdo.ce.Engine"
Name to pass to Diags_setMask() to enable logging for Engine functions. For example, Diags_setMask(Engine_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.
#define | Engine_EOK 0
#define | Engine_EEXIST 1
#define | Engine_ENOMEM 2
#define | Engine_EDSPLOAD 3
#define | Engine_ENOCOMM 4
#define | Engine_ENOSERVER 5
#define | Engine_ECOMALLOC 6
#define | Engine_ERUNTIME 7
#define | Engine_ECODECCREATE 8
#define | Engine_ECODECSTART 9
#define | Engine_EINVAL 10
#define | Engine_EBADSERVER 11
#define | Engine_ENOTAVAIL 12
#define | Engine_EWRONGSTATE 13
#define | Engine_EINUSE 14
#define | Engine_ENOTFOUND 15
#define | Engine_ETIMEOUT 16
#define | Engine_GETALGDESCFXN "GetEngineAlgDesc"
Name of function that a dynamically loaded codec must supply.

Typedefs

typedef struct Engine_Obj * | Engine_Handle
Opaque handle to an engine.
typedef Int | Engine_Error
Engine error code.
typedef struct Engine_Attrs | Engine_Attrs
Attributes of an Engine.
typedef struct Engine_AlgInfo | Engine_AlgInfo
Properties of an Engine algorithm.
typedef struct Engine_DllAlgDesc | Engine_DllAlgDesc
Discriptor for a dynamically loaded codec. A dynamic library for a codec must export a function that fills in a structure of this type.
typedef Int(* | Engine_GetAlgDescFxn )(Engine_DllAlgDesc *dllAlgDesc)
Prototype of function that must be supplied by a dynamic codec library to fill in a Engine_DllAlgDesc structure.
typedef struct Engine_DllAlgParams | Engine_DllAlgParams
This structure is passed to Engine_addAlg(), and contains parameters to create a dynamic codec with.

Functions

Void | CERuntime_exit (Void)
Exit the Codec Engine Runtime.
Void | CERuntime_init (Void)
Initialize the Codec Engine Runtime.
Engine_Error | Engine_add (String engineName, String remoteName)
Add an Engine to the database of engines that can be opened with Engine_open()
Engine_Error | Engine_addAlg (Engine_Handle engine, String location, Engine_DllAlgParams *pAlgParams)
Dynamically add an algorithm to an Engine instance.
Engine_Error | Engine_removeAlg (Engine_Handle engine, String name)
Dynamically remove an algorithm from an Engine instance.
Void | Engine_close (Engine_Handle engine)
Close an Engine.
Engine_Handle | Engine_open (String name, Engine_Attrs *attrs, Engine_Error *ec)
Open an Engine.
Int | Engine_fwriteTrace (Engine_Handle engine, String prefix, FILE *out)
Write Server's trace buffer to specifed file stream.
Engine_Error | Engine_getAlgInfo (String name, Engine_AlgInfo *algInfo, Int index)
Get details of an algorithm configured into an engine.
Int | Engine_getCpuLoad (Engine_Handle engine)
Get Server's cpu usage in percent.
Engine_Error | Engine_getLastError (Engine_Handle engine)
Get error code of the last failed operation.
String | Engine_getName (Engine_Handle engine)
Get the name of an opened engine.
Engine_Error | Engine_getNumAlgs (String name, Int *numAlgs)
Get the number of algorithms configured into an Engine.
Server_Handle | Engine_getServer (Engine_Handle engine)
Get handle to an Engine's Server.
UInt32 | Engine_getUsedMem (Engine_Handle engine)
Get Server's total memory usage.
Engine_Error | Engine_remove (String engineName)
Remove an engine from the list of engines that can be opened.
Int | Engine_setTrace (Engine_Handle engine, String mask)
Set Server's trace mask.

Variables

Engine_Attrs Engine_ATTRS
Default engine attributes.

Define Documentation

#define Engine_MODNAME "ti.sdo.ce.Engine"

Name to pass to Diags_setMask() to enable logging for Engine functions. For example, Diags_setMask(Engine_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.

#define Engine_EOK 0

Success.

#define Engine_EEXIST 1

Name does not exist.

#define Engine_ENOMEM 2

Unable to allocate memory.

#define Engine_EDSPLOAD 3

Unable to load the DSP.

#define Engine_ENOCOMM 4

Unable to create a comm connection to the DSP.

#define Engine_ENOSERVER 5

Unable to locate the server on the DSP.

#define Engine_ECOMALLOC 6

Unable to allocate communication buffer.

#define Engine_ERUNTIME 7

Internal engine runtime failure.

#define Engine_ECODECCREATE 8

Creation of the Codec failed.

#define Engine_ECODECSTART 9

Start of the Codec failed. For codecs which are implemented as a thread, this implies that the codec thread of execution failed to start.

#define Engine_EINVAL 10

Bad paramater passed to method.

#define Engine_EBADSERVER 11

Incompatible server specified.

#define Engine_ENOTAVAIL 12

Service not available.

#define Engine_EWRONGSTATE 13

Call can not be made at this time.

#define Engine_EINUSE 14

Call can't be made at this time because a required name/resource is in use.

#define Engine_ENOTFOUND 15

Entity was not found.

#define Engine_ETIMEOUT 16

Timeout-based operation timed out.

#define Engine_GETALGDESCFXN "GetEngineAlgDesc"

Name of function that a dynamically loaded codec must supply.

Typedef Documentation

typedef struct Engine_Obj* Engine_Handle

Opaque handle to an engine.

typedef Int Engine_Error

Engine error code.

typedef struct Engine_Attrs Engine_Attrs

Attributes of an Engine.

See also:
Engine_open() and Engine_ATTRS.
typedef struct Engine_AlgInfo Engine_AlgInfo

Properties of an Engine algorithm.

See also:
Engine_getAlgInfo()
typedef struct Engine_DllAlgDesc Engine_DllAlgDesc

Discriptor for a dynamically loaded codec. A dynamic library for a codec must export a function that fills in a structure of this type.

See also:
Engine_GetAlgDescFxn
typedef Int(* Engine_GetAlgDescFxn)(Engine_DllAlgDesc *dllAlgDesc)

Prototype of function that must be supplied by a dynamic codec library to fill in a Engine_DllAlgDesc structure.

Remarks:
This function will be called by Engine_addAlg() to fill in the dynamic codec's descriptor.
See also:
Engine_DllAlgDesc
typedef struct Engine_DllAlgParams Engine_DllAlgParams

This structure is passed to Engine_addAlg(), and contains parameters to create a dynamic codec with.

See also:
Engine_addAlg().

Function Documentation

Void CERuntime_exit ( Void )

Exit the Codec Engine Runtime.

Remarks:
This function finalizes the Codec Engine modules used in the current configuration.
See also:
CERuntime_init()
Void CERuntime_init ( Void )

Initialize the Codec Engine Runtime.

Remarks:
This function must be called prior to using any Codec Engine APIs; it initializes all Codec Engine modules used in the the current configuration.
See also:
CERuntime_exit()
Engine_Error Engine_add | ( | String | engineName,
 |  | String | remoteName
 | ) |  |

Add an Engine to the database of engines that can be opened with Engine_open()

Parameters:
[in] | engineName | The name of the engine to create. This must not be NULL.
[in] | remoteName | The name of the remote server to load (if any).
Return values:
Engine_EINVAL | Bad parameter passed.
Engine_EINUSE | An engine with the given name already exists.
Engine_ENOMEM | A memory allocation failed.
Engine_EOK | Success.
Precondition:
As with all Codec Engine API's, CERuntime_init() must have previously been called.
Postcondition:
If the return value is Engine_EOK, Engine_open() can be called with engineName.
See also:
Engine_remove()
Engine_Error Engine_addAlg | ( | Engine_Handle | engine,
 |  | String | location,
 |  | Engine_DllAlgParams * | pAlgParams
 | ) |  |

Dynamically add an algorithm to an Engine instance.

Parameters:
[in] | engine | The handle to an engine, previously acquired by a call to Engine_open().
[in] | location | String identifying the location of the algorithm. Often this is a file name, but for systems without a file system, it may be a system-specific string identifier.
[in] | pAlgParams | Parameters describing the algorithm being added.
Precondition:
engine is a valid (non-NULL) engine handle which is in the open state.
Remarks:
This API is not yet supported.
If there is an existing algorithm in the engine already named name, an error will be returned.
Return values:
Engine_EOK | Success.
Engine_EINUSE | attrs.name is in use.
See also:
Engine_open()
Engine_removeAlg()
Engine_Error Engine_removeAlg | ( | Engine_Handle | engine,
 |  | String | name
 | ) |  |

Dynamically remove an algorithm from an Engine instance.

Parameters:
[in] | engine | The handle to an engine, previously acquired by a call to Engine_open().
[in] | name | Name of the algorithm to remove.
Remarks:
This API is not yet supported.
Return values:
Engine_EOK | Success.
Engine_ENOTFOUND | name could not be found in engine.
See also:
Engine_open()
Engine_addAlg()
Void Engine_close ( Engine_Handle engine )

Close an Engine.

Parameters:
[in] engine The handle to an engine, previously acquired by a call to Engine_open().
Precondition:
engine must not be referenced by any algorithm instance objects; i.e., you must first delete all algorithm instances associated with engine before closing it.
engine is a valid (non-NULL) engine handle which is in the open state.
Engine_Handle Engine_open | ( | String | name,
 |  | Engine_Attrs * | attrs,
 |  | Engine_Error * | ec
 | ) |  |

Open an Engine.

The handle returned may be used to create one or more instances of an algorithm contained in the specified Engine.

An Engine may be opened more than once; each open returns a unique handle that can be used to create algorithm instances or get status of the Engine.

Engine handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via Engine_open()) or explicitly serialize access to a shared handle.

Parameters:
[in] | name | The name of the engine to open. name is specified in the engine configuration.
[in] | attrs | Attributes for the open engine.
[out] | ec | Optional output error code
Return values:
NULL | An error has occurred.
non-NULL | The handle to the opened engine.
Precondition:
name is a non-NULL string.
name is a valid, pre-configured name of an engine.
As with all Codec Engine API's, CERuntime_init() must have previously been called.
Postcondition:
If the return handle is NULL and ec is non-NULL, *ec is set to a non-zero value indicating the cause of the failure.
If ec is non-NULL, the Engine_Error value is set to one of the following values:
  • Engine_EOK success
  • Engine_EEXIST name does not exist
  • Engine_ENOMEM can't allocate memory
  • Engine_EDSPLOAD can't load the DSP
  • Engine_ENOCOMM can't create a comm connection to DSP
  • Engine_ENOSERVER can't locate the server on the DSP
  • Engine_ECOMALLOC can't allocate communication buffer
Int Engine_fwriteTrace | ( | Engine_Handle | engine,
 |  | String | prefix,
 |  | FILE * | out
 | ) |  |

Write Server's trace buffer to specifed file stream.

Parameters:
[in] | engine | The handle to the opened engine.
[in] | prefix | A string to prepend to each line output; this allows one to easily identify trace from the server from the application's trace, for example.
[in] | out | A open FILE stream used to output the Server's trace characters.
Return values:
Integer number of characters copied to the specified FILE stream.
Precondition:
engine is a valid (non-NULL) engine handle and the engine is in the open state.
Postcondition:
In the event a negative value is returned, Engine_getLastError() will return one of the following values:
  • Engine_ERUNTIME Either an internal runtime error occured or the underlying server error occured.
  • Engine_EINUSE Server trace resource is already in use.
Engine_Error Engine_getAlgInfo | ( | String | name,
 |  | Engine_AlgInfo * | algInfo,
 |  | Int | index
 | ) |  |

Get details of an algorithm configured into an engine.

Parameters:
[in] | name | The name of the engine. name is specified in the engine configuration.
[out] | algInfo | Structure to store algorithm details. The algInfoSize field of this structure must be set to sizeof(Engine_AlgInfo) by the application.
[out] | index | The index of the algorithm to get the information.
Return values:
Engine_EOK | Success.
Engine_EEXIST | There is no engine with the given name.
Engine_ENOTFOUND | index is greater than or equal to the total number of algorithms configured for the engine, or index < 0.
Engine_EINVAL | The value of algInfoSize passed to this function does not match the CE library's sizeof(Engine_AlgInfo).
Precondition:
name is a non-NULL string.
algInfo is non-NULL.
As with all Codec Engine API's, CERuntime_init() must have previously been called.
Postcondition:
If name is a valid engine name and 0 <= index < the total number of algorithms configured for the engine, then algInfo will contain the information for the engine's ith (i = index) algorithm.
See also:
Engine_getNumAlgs()
Int Engine_getCpuLoad ( Engine_Handle engine )

Get Server's cpu usage in percent.

Deprecated:
This service has been replaced by Server_getCpuLoad() to better indicate that this API is not intended for obtaining the current processor's CPU load, rather it obtains the CPU load of a remote Server.
Parameters:
[in] engine The handle to the opened engine.
Return values:
integer between 0-100 indicating percentage of time the Server is processing measured over a period of approximately 1 second. If the load is unavailable, a negative value is returned.
Precondition:
engine is a valid (non-NULL) engine handle and the engine is in the open state.
Postcondition:
In the event a negative value is returned, Engine_getLastError() will return one of the following values:
  • Engine_ERUNTIME Either an internal runtime error occured or the underlying server error occured.
  • Engine_ENOTAVAIL The CPU load can not be computed.
See also:
Server_getCpuLoad()
Engine_Error Engine_getLastError ( Engine_Handle engine )

Get error code of the last failed operation.

Parameters:
[in] engine The handle to the opened engine.
Return values:
error code (Engine_Error) of the last failed engine operation.
Precondition:
engine is a valid (non-NULL) engine handle and the engine is in the open state.
String Engine_getName ( Engine_Handle engine )

Get the name of an opened engine.

Parameters:
[in] engine The handle to the opened engine.
Return values:
NULL | An error has occurred.
non-NULL | The name of the opened engine.
Engine_Error Engine_getNumAlgs | ( | String | name,
 |  | Int * | numAlgs
 | ) |  |

Get the number of algorithms configured into an Engine.

Parameters:
[in] | name | The name of the Engine. name is specified in the engine configuration.
[out] | numAlgs | The number of algorithms that are configured in the given engine.
Return values:
Engine_EOK | Success.
Engine_EEXIST | There is no engine with the given name.
Precondition:
name is a non-NULL string.
numAlgs is non-NULL.
As with all Codec Engine API's, CERuntime_init() must have previously been called.
Postcondition:
If name is a valid engine name, then numAlgs will contain the number of algorithms configured for the given engine.
See also:
Engine_getAlgs()
Server_Handle Engine_getServer ( Engine_Handle engine )

Get handle to an Engine's Server.

This function returns the handle to an Engines server, that can be used with Server APIs to obtain information from and control the remote DSP server.

Parameters:
[in] engine The handle to the opened engine.
Return values:
Handle to engine's server.
Precondition:
engine is a valid (non-NULL) engine handle and the engine is in the open state.
UInt32 Engine_getUsedMem ( Engine_Handle engine )

Get Server's total memory usage.

Deprecated:
This service has been replaced by Server_getMemStat() to better indicate that this API is not intended for obtaining the current processor's memory statistics, rather it obtains the memory statistics of a remote Server. Also, Server_getMemStat() provides more granularity than Engine_getUsedMem().
Parameters:
[in] engine The handle to the opened engine.
Return values:
Total amount of used memory (in MAUs). If the amount is not available, 0 is returned and the reason can be retrieved via Engine_getLastError().
Precondition:
engine is a valid (non-NULL) engine handle and the engine is in the open state.
Postcondition:
in the event that 0 is returned, Engine_getLastError() will return one of the following values:
  • Engine_ERUNTIME Either an internal runtime error occured or the underlying server error occured.
  • Engine_ENOTAVAIL The memory usage can not be computed.
Engine_Error Engine_remove ( String engineName )

Remove an engine from the list of engines that can be opened.

Parameters:
[in] engineName The name of the engine to be removed.
Precondition:
engineName is non-NULL.
Return values:
Engine_EINUSE | The engine cannot be removed because an instance of it is still opened.
Engine_EEXIST | No engine by this name exists.
Engine_EOK | Success.
See also:
Engine_add()
Int Engine_setTrace | ( | Engine_Handle | engine,
 |  | String | mask
 | ) |  |

Set Server's trace mask.

Parameters:
[in] | engine | The handle to the opened engine.
[in] | mask | Trace mask, e.g. "*=01234567"
Return values:
Engine_ENOSERVER | No server for this engine.
Engine_EINUSE | Trace resource is already in use.
Engine_ERUNTIME | Internal runtime error has occurred.
Precondition:
engine is a valid (non-NULL) engine handle and the engine is in the open state.
Remarks:
This only sets the trace for a remote server. To change the trace mask for the application-side of the framework, use Diags_setMask(), or Diags_setMaskMeta().
See also:
xdc.runtime.Diags

Variable Documentation

Engine_Attrs Engine_ATTRS

Default engine attributes.

Default attrs.


Codec Engine Application Programming Interface (API): Codec Engine Server Interface

Data Structures | Defines | Typedefs | Enumerations | Functions

Codec Engine Server Interface

Data Structures

struct | Server_MemStat
Information for a memory heap of a remote DSP server. More...

Defines

#define | Server_MODNAME "ti.sdo.ce.Server"
Name to pass to Diags_setMask() to enable logging for Server functions. For example, Diags_setMask(Server_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.
#define | Server_MAXSEGNAMELENGTH 32
Maximum number of characters used in memory segment names.

Typedefs

typedef struct Server_Obj * | Server_Handle
Opaque handle to the server for an engine.
typedef enum Server_Status | Server_Status
Server error code.
typedef struct Server_MemStat | Server_MemStat
Information for a memory heap of a remote DSP server.

Enumerations

enum Server_Status {
Server_EOK = 0,
Server_ENOSERVER = 1,
Server_ENOMEM = 2,
Server_ERUNTIME = 3,
Server_EINVAL = 4,
Server_EWRONGSTATE = 5,
Server_EINUSE = 6,
Server_ENOTFOUND = 7,
Server_EFAIL = 8
}

Server error code.

More...

Functions

Server_Status | Server_connectTrace (Server_Handle server, Int *token)
Connect to server for purposes of collecting trace and/or LOG data.
Server_Status | Server_disconnectTrace (Server_Handle server, Int token)
Disconnect from server when finished collecting trace and/or LOG data.
Int | Server_fwriteTrace (Server_Handle server, String prefix, FILE *out)
Write Server's trace buffer to specifed file stream.
Int | Server_getCpuLoad (Server_Handle server)
Get Server's CPU usage in percent.
Server_Status | Server_getMemStat (Server_Handle server, Int segNum, Server_MemStat *memStat)
Get information on a memory heap segment of a remote DSP server.
Server_Status | Server_getNumMemSegs (Server_Handle server, Int *numSegs)
Get the number of memory heap segments of a remote DSP server.
Server_Status | Server_redefineHeap (Server_Handle server, String name, Uint32 base, Uint32 size)
Set the base address and size of a remote DSP server heap.
Server_Status | Server_restoreHeap (Server_Handle server, String name)
Set the base address and size of a remote DSP server heap back to their original values.
Int | Server_setTrace (Server_Handle server, String mask)
Set Server's trace mask.

Define Documentation

#define Server_MODNAME "ti.sdo.ce.Server"

Name to pass to Diags_setMask() to enable logging for Server functions. For example, Diags_setMask(Server_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.

#define Server_MAXSEGNAMELENGTH 32

Maximum number of characters used in memory segment names.

Typedef Documentation

typedef struct Server_Obj* Server_Handle

Opaque handle to the server for an engine.

typedef enum Server_Status Server_Status

Server error code.

typedef struct Server_MemStat Server_MemStat

Information for a memory heap of a remote DSP server.

Remarks:
Sizes are given in DSP data MAUs.
See also:
Server_getMemStat().

Enumeration Type Documentation

enum Server_Status

Server error code.

Enumerator:
Server_EOK

Success.

Server_ENOSERVER

Engine has no server.

Server_ENOMEM

Unable to allocate memory.

Server_ERUNTIME

Internal runtime failure.

Server_EINVAL

Bad value passed to function.

Server_EWRONGSTATE

Server is not in the correct state to execute the requested function.

Server_EINUSE

Server call did not succeed because a because a required resource is in use.

Server_ENOTFOUND

An entity was not found

Server_EFAIL

Unknown failure

Function Documentation

Server_Status Server_connectTrace | ( | Server_Handle | server,
 |  | Int * | token
 | ) |  |

Connect to server for purposes of collecting trace and/or LOG data.

Parameters:
[in] | server | Server handle obtained from Engine_getServer().
[in] | token | Address to store connection token. This token should be specified in the companion call to Server_disconnectTrace().
Return values:
Server_EOK | Success, trace token was acquired.
Server_EINUSE | A connection for server trace is already established.
Server_ERUNTIME | An internal runtime error occurred.
Precondition:
server is non-NULL.
token is non-NULL.
See also:
Server_disconnectTrace().
Server_Status Server_disconnectTrace | ( | Server_Handle | server,
 |  | Int | token
 | ) |  |

Disconnect from server when finished collecting trace and/or LOG data.

Parameters:
[in] | server | Server handle obtained from Engine_getServer().
[in] | token | Connection token (as obtained from earlier, companion call to Server_connectTrace()).
Return values:
Server_EOK | Success.
Server_ERUNTIME | An internal runtime error occurred.
Precondition:
server is non-NULL.
See also:
Server_connectTrace().
Int Server_fwriteTrace | ( | Server_Handle | server,
 |  | String | prefix,
 |  | FILE * | out
 | ) |  |

Write Server's trace buffer to specifed file stream.

Parameters:
[in] | server | Server handle, obtained from Engine_getServer().
[in] | prefix | A string to prepend to each line output; this allows one to easily identify trace from the server from the application's trace, for example.
[in] | out | An open FILE stream used to output the Server's trace characters.
Return values:
Integer number of characters copied to the specified FILE stream.
Precondition:
server is non-NULL.
Corresponding engine is in the open state.
Postcondition:
In the event a negative value is returned, Engine_getLastError() will return the value:
  • Engine_ERUNTIME Either an internal runtime error occured or the underlying server error occured.
Int Server_getCpuLoad ( Server_Handle server )

Get Server's CPU usage in percent.

Parameters:
[in] server Server handle, obtained from Engine_getServer().
Return values:
Integer between 0-100 indicating percentage of time the Server is processing measured over a period of approximately 1 second. If the load is unavailable, a negative value is returned.
Precondition:
server is non-NULL.
Postcondition:
In the event a negative value is returned, Engine_getLastError() will return one of the following values:
  • Engine_ERUNTIME Either an internal runtime error occured or an underlying server error occured.
  • Engine_EINVAL The Server handle is not valid.
Server_Status Server_getMemStat | ( | Server_Handle | server,
 |  | Int | segNum,
 |  | Server_MemStat * | memStat
 | ) |  |

Get information on a memory heap segment of a remote DSP server.

Parameters:
[in] | server | Server handle obtained from Engine_getServer().
[in] | segNum | The heap number of a segment on the DSP.
[out] | memStat | Structure to store memory segment information.
Return values:
Server_EOK | Success.
Server_ENOTFOUND | segNum is out of range.
Server_ERUNTIME | Internal runtime error occurred.
Precondition:
server is non-NULL.
memStat is non-NULL.
Postcondition:
On success, memStat will contain information about the memory heap segNum on the DSP.
See also:
Server_getNumMemSegs().
Remarks:
This API is not supported in Codec Engine 3.20.
Server_Status Server_getNumMemSegs | ( | Server_Handle | server,
 |  | Int * | numSegs
 | ) |  |

Get the number of memory heap segments of a remote DSP server.

Parameters:
[in] | server | Server handle obtained from Engine_getServer().
[out] | numSegs | The number of heap segments of the DSP server.
Return values:
Server_EOK | Success.
Server_ERUNTIME | Internal runtime error occurred.
Precondition:
server is non-NULL.
numSegs is non-NULL.
Postcondition:
On success, numSegs will contain the number of memory heaps on the DSP.
See also:
Server_getMemStat().
Remarks:
This API is not supported in Codec Engine 3.20.
Server_Status Server_redefineHeap | ( | Server_Handle | server,
 |  | String | name,
 |  | Uint32 | base,
 |  | Uint32 | size
 | ) |  |

Set the base address and size of a remote DSP server heap.

This API is used to move and/or resize a named heap of the remote DSP server. The address passed to this API is a DSP address and the memory from base to base + size must be contiguous in physical memory. The size of the heap should be given in DSP MADUs (minimum addressable data units). The name of the heap can be at most Server_MAXSEGNAMELENGTH characters long.

For example, in the case of DM644x, suppose that an application wants to allocate a block of memory on the GPP to be used by the DSP server for the memory segment named "DDRALGHEAP". A block of physically contiguous memory could be obtained by Memory_alloc() and the corresponding DSP address obtained with Memory_getBufferPhysicalAddress(). This DSP address and the size of the block could then be passed to Server_redefineHeap(). For example:

      Server_redefineHeap(server, "DDRALGHEAP", base, size);

This function can only be called when there is no memory currently allocated in the heap (since the heap cannot be changed if it is being used).

Parameters:
[in] | server | Server handle obtained from Engine_getServer().
[in] | name | Name of heap to be redefined.
[in] | base | Base address for algorithm heap.
[in] | size | Size (DSP MADUs) of new heap.
Return values:
Server_EOK | Success.
Server_ERUNTIME | Internal runtime error occurred.
Server_ENOTFOUND | No heap with the specified name was found.
Server_EINVAL | Changing to the new base and size would cause an overlap with another heap.
Server_EINUSE | Memory is currently allocated in the heap.
Precondition:
server is non-NULL.
base is a DSP address of a physically contiguous block of memory.
base is aligned on an 8-byte boundary.
Postcondition:
On success, the server's algorithm heap base will have been set to base, and the size will have been set to size.
See also:
Server_restoreHeap().
Remarks:
This API is not supported in Codec Engine 3.20.
Server_Status Server_restoreHeap | ( | Server_Handle | server,
 |  | String | name
 | ) |  |

Set the base address and size of a remote DSP server heap back to their original values.

This function resets the base address and size of a named heap of the remote server, back to their values before the first call to Server_redefineHeap() was made. The name of the heap can be at most Server_MAXSEGNAMELENGTH characters long, otherwise this function will return Server_ENOTFOUND.

As with Server_redefineHeap(), this function can only be called when no memory is currently allocated from the heap (as the heap cannot be changed if it is being used).

Parameters:
[in] | server | Server handle obtained through Engine_getServer().
[in] | name | Name of the heap to be restored.
Return values:
Server_EOK | Success.
Server_ERUNTIME | Internal runtime error occurred.
Server_ENOTFOUND | No heap with the specified name was found.
Server_EINVAL | Changing back to the original base and size would cause an overlap with another heap.
Server_EINUSE | Memory is currently allocated in the heap.
Precondition:
server is non-NULL.
Postcondition:
On success, the server's algorithm heap base and size will have been reset to their original value.
See also:
Server_redefineHeap().
Remarks:
This API is not supported in Codec Engine 3.20.
Int Server_setTrace | ( | Server_Handle | server,
 |  | String | mask
 | ) |  |

Set Server's trace mask.

Parameters:
[in] | server | Server handle obtained through Engine_getServer().
[in] | mask | Trace mask, e.g. "*=01234567"
Return values:
Server_EOK | Success.
Server_EINUSE | A connection for server trace is already established.
Server_ENOSERVER | No server for the engine.
Server_ERUNTIME | Internal runtime error occurred.
Precondition:
server is non-NULL.
Corresponding engine is in the open state.
Remarks:
This only sets the trace for a remote server. To change the trace mask for the application-side of the framework, use Diags_setMask or Diags_setMaskMeta.
See also:
xdc.runtime.Diags


Codec Engine Application Programming Interface (API): VISA - Alg-independent user APIs

Defines | Typedefs | Functions

VISA - Alg-independent user APIs

Defines

#define | VISA_EOK 0
Success.
#define | VISA_ERUNTIME -1
Internal runtime error.
#define | VISA_EFAIL -2
General system error.
#define | VISA_ETIMEOUT -100
Timeout occurred.
#define | VISA_FOREVER Engine_FOREVER
Special value for timeout parameter indicating never timeout.

Typedefs

typedef Int | VISA_Status
VISA result data type.

Functions

VISA_Status | VISA_getAlgMemRecs (VISA_Handle visa, IALG_MemRec *memTab, Int size, Int *numRecs)
Get the IALG_MemRec memory assigned to an algorithm instance.
VISA_Status | VISA_getAlgNumRecs (VISA_Handle visa, Int *numRecs)
Get the number of IALG_MemRecs assigned to an algorithm.
Ptr | VISA_getCodecClassConfig (VISA_Handle visa)
Get codec-specific values for the VISA class-specific (or codec-specific if the codec doesn't extend VISA) stub-and/ or-skeleton configuration data (that some classes have)
UInt | VISA_getMaxMsgSize (VISA_Handle visa)
Returns max size of messages allocated by VISA_allocMsg()
Bool | VISA_isLocal (VISA_Handle visa)
Indicates whether VISA codecs run on a remote or local CPU.

Detailed Description

Codec Engine Algorithm-independent shared definitions and services.

Define Documentation

#define VISA_EOK 0

Success.

#define VISA_ERUNTIME -1

Internal runtime error.

#define VISA_EFAIL -2

General system error.

#define VISA_ETIMEOUT -100

Timeout occurred.

#define VISA_FOREVER Engine_FOREVER

Special value for timeout parameter indicating never timeout.

Typedef Documentation

typedef Int VISA_Status

VISA result data type.

Function Documentation

VISA_Status VISA_getAlgMemRecs | ( | VISA_Handle | visa,
 |  | IALG_MemRec * | memTab,
 |  | Int | size,
 |  | Int * | numRecs
 | ) |  |

Get the IALG_MemRec memory assigned to an algorithm instance.

Parameters:
[in] | visa | Handle to an algorithm instance.
[out] | memTab | Location to store the IALG_MemRecs.
[in] | size | Maximum number of IALG_MemRecs to put in memTab array.
[out] | numRecs | Actual number of IALG_MemRecs copied into memTab array.
Remarks:
Any algorithm instance handle (e.g. VIDDEC2_Handle, AUDDEC1_Handle, etc), can be cast to a visa handle.
Example:
      AUDDEC1_Handle decoder;

      decoder = AUDDEC1_create(...);

      ... likely use VISA_getAlgNumRecs() to alloc enough mem...

      VISA_getAlgMemRecs((VISA_Handle)decoder, ...);
Return values:
VISA_EOK | Success.
VISA_EFAIL | Failure.
See also:
VISA_getAlgNumRecs()
VISA_Status VISA_getAlgNumRecs | ( | VISA_Handle | visa,
 |  | Int * | numRecs
 | ) |  |

Get the number of IALG_MemRecs assigned to an algorithm.

Parameters:
[in] | visa | Handle to an algorithm instance.
[out] | numRecs | Location to store the number of IALG_MemRecs used.
Remarks:
Any algorithm instance handle (e.g. VIDDEC2_Handle, AUDDEC1_Handle, etc), can be cast to a visa handle.
Example:
      Int numRecs;
      AUDDEC1_Handle decoder;

      decoder = AUDDEC1_create(...);

      VISA_getAlgNumRecs((VISA_Handle)decoder, &numRecs);
Return values:
VISA_EOK | Success.
VISA_EFAIL | Failure.
See also:
VISA_getAlgMemRecs()
Ptr VISA_getCodecClassConfig ( VISA_Handle visa )

Get codec-specific values for the VISA class-specific (or codec-specific if the codec doesn't extend VISA) stub-and/ or-skeleton configuration data (that some classes have)

Parameters:
[in] visa Handle to an algorithm instance.
Return values:
address of the codec class config data structure, or NULL if codec class config data not defined for the codec; the format of the structure is class-specific, and the data in it is codec- specific
Precondition:
visa must be a valid algorithm instance handle.
UInt VISA_getMaxMsgSize ( VISA_Handle visa )

Returns max size of messages allocated by VISA_allocMsg()

Return values:
maxMsgSize Max size of messages allocated by VISA_allocMsg()
Remarks:
This is typically called by an algorithm class' stub.
See also:
VISA_allocMsg()
Bool VISA_isLocal ( VISA_Handle visa )

Indicates whether VISA codecs run on a remote or local CPU.

Return values:
FALSE | VISA codecs run on remote CPU
TRUE | VISA codecs run on local CPU
Remarks:
This is typically called by an algorithm class' stub.


Codec Engine Application Programming Interface (API): VISA - CE Stub SPIs

Data Structures | Typedefs | Functions

VISA - CE Stub SPIs

Data Structures

struct | VISA_MsgHeader
VISA message header. More...

Typedefs

typedef struct VISA_MsgHeader | VISA_MsgHeader
VISA message header.

Functions

VISA_Msg | VISA_allocMsg (VISA_Handle visa)
Obtain an algorithm instance's message.
VISA_Status | VISA_call (VISA_Handle visa, VISA_Msg *msg)
Invoke the operation specified in the message and wait for it to complete.
VISA_Status | VISA_callAsync (VISA_Handle visa, VISA_Msg *msg)
Invoke the operation specified in the message and return without waiting for it to complete.
VISA_Status | VISA_wait (VISA_Handle visa, VISA_Msg *msg, UInt timeout)
Wait for the oldest operation from a command specified with VISA_callAsync() to complete.
Void | VISA_freeMsg (VISA_Handle visa, VISA_Msg msg)
Release an algorithm instance's message.
Void | VISA_getContext (VISA_Handle visa, UInt32 *pContext)
Get optional context parameter.
Void | VISA_setContext (VISA_Handle visa, UInt32 context)
Set optional context parameter.

Detailed Description

Codec Engine System Programming Interface (SPI) for stub implementors.

Typedef Documentation

typedef struct VISA_MsgHeader VISA_MsgHeader

VISA message header.

Remarks:
This must be the first field in a message

Function Documentation

VISA_Msg VISA_allocMsg ( VISA_Handle visa )

Obtain an algorithm instance's message.

Parameters:
[in] visa Handle to an algorithm instance.
Return values:
NULL | General system error
non-NULL | The remote algorithm's message.
Remarks:
This is typically called by an algorithm class' stub.
See also:
VISA_allocMsg()
VISA_Status VISA_call | ( | VISA_Handle | visa,
 |  | VISA_Msg * | msg
 | ) |  |

Invoke the operation specified in the message and wait for it to complete.

Parameters:
[in] | visa | Handle to an algorithm instance.
[out] | msg | The remote algorithm's message, to be sent to the skeleton.
Remarks:
This is typically called by an algorithm class' stub.
Return values:
VISA_EOK | Success
VISA_ERUNTIME | General system error
See also:
VISA_callAsync()
VISA_Status VISA_callAsync | ( | VISA_Handle | visa,
 |  | VISA_Msg * | msg
 | ) |  |

Invoke the operation specified in the message and return without waiting for it to complete.

Parameters:
[in] | visa | Handle to an algorithm instance.
[out] | msg | The remote algorithm's message, to be sent to the skeleton.
Remarks:
This is typically called by an algorithm class' stub.
Return values:
VISA_EOK | Success
VISA_ERUNTIME | General system error
See also:
VISA_wait()
VISA_call()
VISA_Status VISA_wait | ( | VISA_Handle | visa,
 |  | VISA_Msg * | msg,
 |  | UInt | timeout
 | ) |  |

Wait for the oldest operation from a command specified with VISA_callAsync() to complete.

Parameters:
[in] | visa | Handle to an algorithm instance.
[out] | msg | Placeholder for the remote algorithm's return message, retrieved from the skeleton.
[in] | timeout | Amount of "time" to wait ("time" depends on underlying mechanism, such as that used with MSGQ_Get()).
Remarks:
This is typically called by an algorithm class' stub.
Return values:
VISA_EOK | Success
VISA_ERUNTIME | General system error
VISA_ETIMEOUT | Operation timed out
See also:
VISA_callAsync()
Void VISA_freeMsg | ( | VISA_Handle | visa,
 |  | VISA_Msg | msg
 | ) |  |

Release an algorithm instance's message.

Parameters:
[in] | visa | Handle to an algorithm instance.
[in] | msg | Message to free, obtained through a call to VISA_allocMsg().
Return values:
NULL | General system error
non-NULL | The remote algorithm's message.
Remarks:
This is typically called by an algorithm class' stub.
See also:
VISA_allocMsg()
Void VISA_getContext | ( | VISA_Handle | visa,
 |  | UInt32 * | pContext
 | ) |  |

Get optional context parameter.

Parameters:
[in] | visa | Handle to an algorithm instance.
[out] | pContext | Location to store context.
Precondition:
visa must be a valid algorithm instance handle.
pContext must be a valid pointer.
Remarks:
The VISA_setContext() / VISA_getContext() pair does not work across processors. That is, the context can only be stored and retrieved on the local processor.
See also:
VISA_setContext()
Void VISA_setContext | ( | VISA_Handle | visa,
 |  | UInt32 | context
 | ) |  |

Set optional context parameter.

Parameters:
[in] | visa | Handle to an algorithm instance.
[in] | context | Context.
Precondition:
visa must be a valid algorithm instance handle.
Remarks:
The VISA_setContext() / VISA_getContext() pair does not work across processors. That is, the context can only be stored and retrieved on the local processor.
See also:
VISA_getContext()


Codec Engine Application Programming Interface (API): VISA - CE interface SPIs

VISA - CE interface SPIs

VISA_Handle | VISA_create (Engine_Handle engine, String name, IALG_Params *params, size_t msgSize, String type)
Create a new instance of an algorithm.
Void | VISA_delete (VISA_Handle visa)
Delete an instance of an algorithm.
VISA_Handle | VISA_create2 (Engine_Handle engine, String name, IALG_Params *params, Int paramsSize, size_t msgSize, String type)
Create a new instance of an algorithm.
Void | VISA_enter (VISA_Handle visa)
Enter an algorithm's critical section. This must be called before any of the algorithm's IALG_Fxns are invoked.
Void | VISA_exit (VISA_Handle visa)
Leave an algorithm's critical section. This must be called after the API has completed calling an algorithm's IALG_Fxns.
Ptr | VISA_getAlgHandle (VISA_Handle visa)
Obtains an algorithm's handle. This is the handle required to be passed to the algorithm's IALG_Fxns.
Ptr | VISA_getAlgorithmHandle (VISA_Handle visa)
Obtains an algorithm's handle. If the algorithm is local, this is the handle that can be passed to Algorithm APIs, not to the IALG_Fxns.
IALG_Fxns * | VISA_getAlgFxns (VISA_Handle visa)
Get implementation functions for this algorithm.

Detailed Description

Codec Engine System Programming Interface (SPI) for class interface implementors.

Function Documentation

VISA_Handle VISA_create | ( | Engine_Handle | engine,
 |  | String | name,
 |  | IALG_Params * | params,
 |  | size_t | msgSize,
 |  | String | type
 | ) |  |

Create a new instance of an algorithm.

Parameters:
[in] | engine | Handle to an engine in which the algorithm has been configured.
[in] | name | Name of the algorithm to create. name is specified in the engine configuration.
[in] | params | Creation parameters.
[in] | msgSize | Size of the message which will be allocated in the event that this algorithm is configured to run remotely.
[in] | type | String name of the "type" of algorithm.
Return values:
NULL | General failure.
non-NULL | Handle to an algorithm instance.
Remarks:
type must match the package/module name of the interface which the algorithm implements. For example, the VISA interface shipped with CE to support xDM video decoders is named "ti.sdo.ce.video.IVIDDEC". That is, the module IVIDDEC is in the package "ti.sdo.ce.video". You will, by definition, find a file named IVIDDEC.xdc in the ti.sdo.ce.video package.
When calling VISA_create(), a string comparison is done between the type parameter and the actual name of the module (described in the previous paragraph). If these strings don't match exactly, VISA_create() will fail.
See also:
VISA_delete()
Void VISA_delete ( VISA_Handle visa )

Delete an instance of an algorithm.

Parameters:
[in] visa Handle to an algorithm instance to delete.
See also:
VISA_create()
VISA_Handle VISA_create2 | ( | Engine_Handle | engine,
 |  | String | name,
 |  | IALG_Params * | params,
 |  | Int | paramsSize,
 |  | size_t | msgSize,
 |  | String | type
 | ) |  |

Create a new instance of an algorithm.

Parameters:
[in] | engine | Handle to an engine in which the algorithm has been configured.
[in] | name | Name of the algorithm to create. name is specified in the engine configuration.
[in] | params | Creation parameters.
[in] | paramsSize | Size of params.
[in] | msgSize | Size of the message which will be allocated in the event that this algorithm is configured to run remotely.
[in] | type | String name of the "type" of algorithm.
Return values:
NULL | General failure.
non-NULL | Handle to an algorithm instance.
Remarks:
type must match the package/module name of the interface which the algorithm implements. For example, the VISA interface shipped with CE to support xDM video decoders is named "ti.sdo.ce.video.IVIDDEC". That is, the module IVIDDEC is in the package "ti.sdo.ce.video". You will, by definition, find a file named IVIDDEC.xdc in the ti.sdo.ce.video package.
When calling VISA_create2(), a string comparison is done between the type parameter and the actual name of the module (described in the previous paragraph). If these strings don't match exactly, VISA_create2() will fail.
VISA_create() is the preferred method to create algorithms. VISA_create2() is provided to enable creation of algorithms which violate the xDAIS spec and do not have a size field of type "Int" as the first field of params.
See also:
VISA_create()
VISA_delete()
Void VISA_enter ( VISA_Handle visa )

Enter an algorithm's critical section. This must be called before any of the algorithm's IALG_Fxns are invoked.

Parameters:
[in] visa Handle to an algorithm instance.
Remarks:
This is typically called by an algorithm class' application API.
This call has the same semantics as IALG's activate fxn.
See also:
VISA_exit()
Void VISA_exit ( VISA_Handle visa )

Leave an algorithm's critical section. This must be called after the API has completed calling an algorithm's IALG_Fxns.

Parameters:
[in] visa Handle to an algorithm instance.
Remarks:
This call has the same semantics as IALG's de-activate fxn.
See also:
VISA_enter()
Ptr VISA_getAlgHandle ( VISA_Handle visa )

Obtains an algorithm's handle. This is the handle required to be passed to the algorithm's IALG_Fxns.

Parameters:
[in] visa Handle to an algorithm instance.
Return values:
NULL | General system error
non-NULL | The remote algorithm's message.
Remarks:
This is typically called by an algorithm class' application API.
See also:
VISA_getAlgFxns()
Ptr VISA_getAlgorithmHandle ( VISA_Handle visa )

Obtains an algorithm's handle. If the algorithm is local, this is the handle that can be passed to Algorithm APIs, not to the IALG_Fxns.

Parameters:
[in] visa Handle to an algorithm instance.
Return values:
NULL | General system error
non-NULL | The Algorithm handle.
Remarks:
This is used internally.
See also:
VISA_getAlgHandle()
IALG_Fxns* VISA_getAlgFxns ( VISA_Handle visa )

Get implementation functions for this algorithm.

Parameters:
[in] visa Handle to an algorithm instance.
Return values:
NULL | An error has occurred.
non-NULL | The algorithm's IALG_Fxns.
Remarks:
This is typically called by an algorithm class' application API.
Both local and remote implementations return a non-NULL pointer. However, the IALG_Fxns functions may be NULL.
In the case of a local algorithm, the algorithm's IALG_Fxns returned. In the case of a remote algorithm, its stubs are returned. In either case, the handle passed as the first arg to the IALG_Fxns must be the value returned by VISA_getAlgHandle().
See also:
VISA_getAlgHandle()


Codec Engine Application Programming Interface (API): Data Structures

  • Data Structures
  • Data Structure Index
  • Data Fields

Data Structures

Here are the data structures with brief descriptions:
Engine_AlgInfo | Properties of an Engine algorithm
Engine_Attrs | Attributes of an Engine
Engine_DllAlgDesc | Discriptor for a dynamically loaded codec. A dynamic library for a codec must export a function that fills in a structure of this type
Engine_DllAlgParams | This structure is passed to Engine_addAlg(), and contains parameters to create a dynamic codec with
IALG_Fxns | Defines the fields and methods that must be supplied by all XDAIS algorithms
IALG_MemRec | Memory records
IALG_Obj | Algorithm instance object definition
IALG_Params | Algorithm instance creation parameters
IALG_Status | Pointer to algorithm specific status structure
IAUDDEC1_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IAUDDEC1_Fxns | Defines all of the operations on IAUDDEC1 objects
IAUDDEC1_InArgs | Defines the input arguments for all IAUDDEC1 instance process function
IAUDDEC1_Obj | This must be the first field of all IAUDDEC1 instance objects
IAUDDEC1_OutArgs | Defines the run time output arguments for all IAUDDEC1 instance objects
IAUDDEC1_Params | Defines the creation time parameters for all IAUDDEC1 instance objects
IAUDDEC1_Status | Defines instance status parameters (read-only)
IAUDDEC_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IAUDDEC_Fxns | Defines all of the operations on IAUDDEC objects
IAUDDEC_InArgs | Defines the input arguments for all IAUDDEC instance process function
IAUDDEC_Obj | This must be the first field of all IAUDDEC instance objects
IAUDDEC_OutArgs | Defines the run time output arguments for all IAUDDEC instance objects
IAUDDEC_Params | Defines the creation time parameters for all IAUDDEC instance objects
IAUDDEC_Status | Defines instance status parameters (read-only)
IAUDENC1_DynamicParams | This structure defines the algorithm parameters that can be modified after creation via control() calls
IAUDENC1_Fxns | Defines all of the operations on IAUDENC1 objects
IAUDENC1_InArgs | Defines the input arguments for all IAUDENC1 instance process function
IAUDENC1_Obj | This must be the first field of all IAUDENC1 instance objects
IAUDENC1_OutArgs | Defines the run time output arguments for all IAUDENC1 instance objects
IAUDENC1_Params | Defines the creation time parameters for all IAUDENC1 instance objects
IAUDENC1_Status | Defines instance status parameters (read-only)
IAUDENC_DynamicParams | This structure defines the algorithm parameters that can be modified after creation via control() calls
IAUDENC_Fxns | Defines all of the operations on IAUDENC objects
IAUDENC_InArgs | Defines the input arguments for all IAUDENC instance process function
IAUDENC_Obj | This must be the first field of all IAUDENC instance objects
IAUDENC_OutArgs | Defines the run time output arguments for all IAUDENC instance objects
IAUDENC_Params | Defines the creation time parameters for all IAUDENC instance objects
IAUDENC_Status | Defines instance status parameters (read-only)
IIMGDEC1_CodecClassConfig | Definition of IIMGDEC1 codec class configurable parameters
IIMGDEC1_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IIMGDEC1_Fxns | Defines all of the operations on IIMGDEC1 objects
IIMGDEC1_InArgs | Defines the input arguments for all IIMGDEC1 instance process() function
IIMGDEC1_Obj | This must be the first field of all IIMGDEC1 instance objects
IIMGDEC1_OutArgs | Defines the run time output arguments for all IIMGDEC1 instance objects
IIMGDEC1_Params | Defines the creation time parameters for all IIMGDEC1 instance objects
IIMGDEC1_Status | Defines instance status parameters
IIMGDEC_CodecClassConfig | Definition of IIMGDEC codec class configurable parameters
IIMGDEC_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IIMGDEC_Fxns | Defines all of the operations on IIMGDEC objects
IIMGDEC_InArgs | Defines the input arguments for all IIMGDEC instance process() function
IIMGDEC_Obj | This must be the first field of all IIMGDEC instance objects
IIMGDEC_OutArgs | Defines the run time output arguments for all IIMGDEC instance objects
IIMGDEC_Params | Defines the creation time parameters for all IIMGDEC instance objects
IIMGDEC_Status | Defines instance status parameters (read-only)
IIMGENC1_CodecClassConfig | Definition of IIMGENC1 codec class configurable parameters
IIMGENC1_DynamicParams | This structure defines the algorithm parameters that can be modified after creation via control() calls
IIMGENC1_Fxns | Defines all of the operations on IIMGENC1 objects
IIMGENC1_InArgs | Defines the input arguments for all IIMGENC1 instance process() function
IIMGENC1_Obj | This must be the first field of all IIMGENC1 instance objects
IIMGENC1_OutArgs | Defines the run time output arguments for all IIMGENC1 instance objects
IIMGENC1_Params | Defines the creation time parameters for all IIMGENC1 instance objects
IIMGENC1_Status | Defines instance status parameters
IIMGENC_CodecClassConfig | Definition of IIMGENC codec class configurable parameters
IIMGENC_DynamicParams | This structure defines the algorithm parameters that can be modified after creation via control() calls
IIMGENC_Fxns | Defines all of the operations on IIMGENC objects
IIMGENC_InArgs | Defines the input arguments for all IIMGENC instance process() function
IIMGENC_Obj | This must be the first field of all IIMGENC instance objects
IIMGENC_OutArgs | Defines the run time output arguments for all IIMGENC instance objects
IIMGENC_Params | Defines the creation time parameters for all IIMGENC instance objects
IIMGENC_Status | Defines instance status parameters (read-only)
ISPHDEC1_DynamicParams | This structure defines the codec parameters that can be modified after creation via ISPHDEC1_Fxns.control()
ISPHDEC1_Fxns | Defines all of the operations on ISPHDEC1 objects
ISPHDEC1_InArgs | Defines the input arguments for all ISPHDEC1 instance process function
ISPHDEC1_Obj | This must be the first field of all ISPHDEC1 instance objects
ISPHDEC1_OutArgs | Defines the run time output arguments for all ISPHDEC1 instance objects
ISPHDEC1_Params | Defines the creation time parameters for all ISPHDEC1 instance objects
ISPHDEC1_Status | Defines instance status parameters
ISPHDEC_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
ISPHDEC_Fxns | Defines all of the operations on ISPHDEC objects
ISPHDEC_InArgs | Defines the input arguments for all ISPHDEC instance process function
ISPHDEC_Obj | This must be the first field of all ISPHDEC instance objects
ISPHDEC_OutArgs | Defines the run time output arguments for all ISPHDEC instance objects
ISPHDEC_Params | Defines the creation time parameters for all ISPHDEC instance objects
ISPHDEC_Status | Defines instance status parameters (read-only)
ISPHENC1_DynamicParams | This structure defines the codec parameters that can be modified after creation via ISPHENC1_Fxns.control()
ISPHENC1_Fxns | Defines all of the operations on ISPHENC1 objects
ISPHENC1_InArgs | Defines the input arguments for all ISPHENC1 instance process function
ISPHENC1_Obj | This must be the first field of all ISPHENC1 instance objects
ISPHENC1_OutArgs | Defines the run time output arguments for all ISPHENC1 instance objects
ISPHENC1_Params | Defines the creation time parameters for all ISPHENC1 instance objects
ISPHENC1_Status | Defines instance status parameters
ISPHENC_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
ISPHENC_Fxns | Defines all of the operations on ISPHENC objects
ISPHENC_InArgs | Defines the input arguments for all ISPHENC instance process function
ISPHENC_Obj | This must be the first field of all ISPHENC instance objects
ISPHENC_OutArgs | Defines the run time output arguments for all ISPHENC instance objects
ISPHENC_Params | Defines the creation time parameters for all ISPHENC instance objects
ISPHENC_Status | Defines instance status parameters (read-only)
IUNIVERSAL_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IUNIVERSAL_Fxns | Defines all of the operations on IUNIVERSAL objects
IUNIVERSAL_InArgs | Defines the input arguments for all IUNIVERSAL instance process function
IUNIVERSAL_Obj | This must be the first field of all IUNIVERSAL instance objects
IUNIVERSAL_OutArgs | Defines the run time output arguments for all IUNIVERSAL instance objects
IUNIVERSAL_Params | Defines the creation time parameters for all IUNIVERSAL instance objects
IUNIVERSAL_Status | Defines instance status parameters (read-only)
IVIDANALYTICS_DynamicParams | This structure defines the algorithm parameters that can be modified after creation via control() calls
IVIDANALYTICS_Fxns | Defines all of the operations on IVIDANALYTICS objects
IVIDANALYTICS_Grid | Access modes used to declare how the algorithm accessed buffers
IVIDANALYTICS_InArgs | Defines the input arguments for all IVIDANALYTICS instance process function
IVIDANALYTICS_Obj | This must be the first field of all IVIDANALYTICS instance objects
IVIDANALYTICS_OutArgs | Defines the run time output arguments for all IVIDANALYTICS instance objects
IVIDANALYTICS_Params | Defines the creation time parameters for all IVIDANALYTICS instance objects
IVIDANALYTICS_Rule | Analytics rule
IVIDANALYTICS_Status | Defines instance status parameters
IVIDDEC1_CodecClassConfig | Definition of IVIDDEC1 codec class configurable parameters
IVIDDEC1_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IVIDDEC1_Fxns | Defines all of the operations on IVIDDEC1 objects
IVIDDEC1_InArgs | Defines the input arguments for all IVIDDEC1 instance process function
IVIDDEC1_Obj | This must be the first field of all IVIDDEC1 instance objects
IVIDDEC1_OutArgs | Defines the run time output arguments for all IVIDDEC1 instance objects
IVIDDEC1_Params | Defines the creation time parameters for all IVIDDEC1 instance objects
IVIDDEC1_Status | Defines instance status parameters
IVIDDEC2_CodecClassConfig | Definition of IVIDDEC2 codec class configurable parameters
IVIDDEC2_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IVIDDEC2_Fxns | Defines all of the operations on IVIDDEC2 objects
IVIDDEC2_InArgs | Defines the input arguments for all IVIDDEC2 instance process function
IVIDDEC2_Obj | This must be the first field of all IVIDDEC2 instance objects
IVIDDEC2_OutArgs | Defines the run time output arguments for all IVIDDEC2 instance objects
IVIDDEC2_Params | Defines the creation time parameters for all IVIDDEC2 instance objects
IVIDDEC2_Status | Defines instance status parameters
IVIDDEC2BACK_CodecClassConfig | Definition of IVIDDEC2BACK codec class configurable parameters
IVIDDEC2BACK_Fxns | Defines all of the operations on IVIDDEC2BACK objects
IVIDDEC2BACK_Obj | This must be the first field of all IVIDDEC2BACK instance objects
IVIDDEC2FRONT_Fxns | Defines all of the operations on IVIDDEC2FRONT objects
IVIDDEC2FRONT_Obj | This must be the first field of all IVIDDEC2FRONT instance objects
IVIDDEC2FRONT_OutArgs | Defines the run time output arguments for all IVIDDEC2FRONT instance objects
IVIDDEC2FRONT_Status | Defines instance status parameters
IVIDDEC3_CodecClassConfig | Definition of IVIDDEC3 codec class configurable parameters
IVIDDEC3_DynamicParams | This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls
IVIDDEC3_Fxns | Defines all of the operations on IVIDDEC3 objects
IVIDDEC3_InArgs | Defines the input arguments for all IVIDDEC3 instance process function
IVIDDEC3_Obj | This must be the first field of all IVIDDEC3 instance objects
IVIDDEC3_OutArgs | Defines the run time output arguments for all IVIDDEC3 instance objects
IVIDDEC3_Params | Defines the creation time parameters for all IVIDDEC3 instance objects
IVIDDEC3_Status | Defines instance status parameters
IVIDDEC_CodecClassConfig | Definition of VIDDEC codec class configurable parameters
IVIDDEC_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IVIDDEC_Fxns | Defines all of the operations on IVIDDEC objects
IVIDDEC_InArgs | Defines the input arguments for all IVIDDEC instance process function
IVIDDEC_Obj | This must be the first field of all IVIDDEC instance objects
IVIDDEC_OutArgs | Defines the run time output arguments for all IVIDDEC instance objects
IVIDDEC_Params | Defines the creation time parameters for all IVIDDEC instance objects
IVIDDEC_Status | Defines instance status parameters
IVIDENC1_CodecClassConfig | Definition of IVIDENC1 codec class configurable parameters
IVIDENC1_DynamicParams | This structure defines the algorithm parameters that can be modified after creation via control() calls
IVIDENC1_Fxns | Defines all of the operations on IVIDENC1 objects
IVIDENC1_InArgs | Defines the input arguments for all IVIDENC1 instance process function
IVIDENC1_MbData | Defines the structure that contains macroblock related encoding parameter estimates
IVIDENC1_Obj | This must be the first field of all IVIDENC1 instance objects
IVIDENC1_OutArgs | Defines the run time output arguments for all IVIDENC1 instance objects
IVIDENC1_Params | Defines the creation time parameters for all IVIDENC1 instance objects
IVIDENC1_Status | Defines instance status parameters
IVIDENC2_CodecClassConfig | Definition of IVIDENC2 codec class configurable parameters
IVIDENC2_DynamicParams | This structure defines the algorithm parameters that can be modified after creation via control() calls
IVIDENC2_Fxns | Defines all of the operations on IVIDENC2 objects
IVIDENC2_InArgs | Defines the input arguments for all IVIDENC2 instance process function
IVIDENC2_Obj | This must be the first field of all IVIDENC2 instance objects
IVIDENC2_OutArgs | Defines the run time output arguments for all IVIDENC2 instance objects
IVIDENC2_Params | Defines the creation time parameters for all IVIDENC2 instance objects
IVIDENC2_Status | Defines instance status parameters
IVIDENC_CodecClassConfig | Definition of IVIDENC codec class configurable parameters
IVIDENC_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IVIDENC_Fxns | Defines all of the operations on IVIDENC objects
IVIDENC_InArgs | Defines the input arguments for all IVIDENC instance process function
IVIDENC_Obj | This must be the first field of all IVIDENC instance objects
IVIDENC_OutArgs | Defines the run time output arguments for all IVIDENC instance objects
IVIDENC_Params | Defines the creation time parameters for all IVIDENC instance objects
IVIDENC_Status | Defines instance status parameters (read-only)
IVIDEO1_BufDesc | Detailed buffer descriptor for video buffers
IVIDEO1_BufDescIn | Buffer descriptor for input video buffers
IVIDEO2_BufDesc | Detailed buffer descriptor for video buffers
IVIDEO_BufDesc | Buffer descriptor for video buffers
IVIDTRANSCODE_DynamicParams | This structure defines the codec parameters that can be modified after creation via control() calls
IVIDTRANSCODE_Fxns | Defines all of the operations on IVIDTRANSCODE objects
IVIDTRANSCODE_InArgs | Defines the input arguments for all IVIDTRANSCODE instance process function
IVIDTRANSCODE_Obj | This must be the first field of all IVIDTRANSCODE instance objects
IVIDTRANSCODE_OutArgs | Defines the run time output arguments for all IVIDTRANSCODE instance objects
IVIDTRANSCODE_Params | Defines the creation time parameters for all IVIDTRANSCODE instance objects
IVIDTRANSCODE_Status | Defines instance status parameters
Server_MemStat | Information for a memory heap of a remote DSP server
ti_sdo_ce_osal_Memory_AllocParams | Parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free()
VISA_MsgHeader | VISA message header
XDM1_AlgBufInfo | Buffer information descriptor for input and output buffers
XDM1_BufDesc | Buffer descriptor
XDM1_SingleBufDesc | Single buffer descriptor
XDM2_BufDesc | Buffer descriptor
XDM2_BufSize | Union describing a buffer size
XDM2_SingleBufDesc | Single buffer descriptor
XDM_AlgBufInfo | Buffer information descriptor for input and output buffers
XDM_BufDesc | Buffer descriptor for multiple buffers
XDM_Context | Context used by split codecs
XDM_ContextInfo | Buffer information descriptor for input and output buffers
XDM_DataSyncDesc | Descriptor for the chunk of data being transferred in one call to putData or getData
XDM_Date | Date and time
XDM_Point | 2-dimensional point
XDM_Rect | Rectangle
XDM_SingleBufDesc | Single buffer descriptor


Codec Engine Application Programming Interface (API): Engine_AlgInfo Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

Engine_AlgInfo Struct Reference
[Codec Engine Runtime]

Properties of an Engine algorithm. More...

#include <Engine.h>

Data Fields

Int | algInfoSize
String | name
String * | typeTab
Bool | isLocal

Detailed Description

Properties of an Engine algorithm.

See also:
Engine_getAlgInfo()

Field Documentation

Int Engine_AlgInfo::algInfoSize

Size of this structure.

String Engine_AlgInfo::name

Name of algorithm.

String* Engine_AlgInfo::typeTab

Inheritance hierarchy.

Bool Engine_AlgInfo::isLocal

If TRUE, run locally.

The documentation for this struct was generated from the following file:
  • Engine.h


Codec Engine Application Programming Interface (API): Engine_Attrs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

Engine_Attrs Struct Reference
[Codec Engine Runtime]

Attributes of an Engine. More...

#include <Engine.h>

Data Fields

String procId

Detailed Description

Attributes of an Engine.

See also:
Engine_open() and Engine_ATTRS.

Field Documentation

String Engine_Attrs::procId

id of the processor that runs the server; only needed in the case that there's more than one processor that can provide the same server.

The documentation for this struct was generated from the following file:
  • Engine.h


Codec Engine Application Programming Interface (API): Engine_DllAlgDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

Engine_DllAlgDesc Struct Reference
[Codec Engine Runtime]

Discriptor for a dynamically loaded codec. A dynamic library for a codec must export a function that fills in a structure of this type. More...

#include <Engine.h>

Collaboration diagram for Engine_DllAlgDesc:
[legend]

Data Fields

NODE_Uuid | uuid
IALG_Fxns * fxns
Pointer to codec's IALG_Fxns. This can not be NULL.
Ptr | idmaFxns
Pointer to codec's IDMA3_Fxns table. If the codec does not use DMA, this should be NULL.
String * | typeTab
Inheritance hierarchy of codec. This is a NULL terminated array that lists the interfaces inherited by the code. For example:
Ptr | iresFxns
Pointer to codec's IRES_Fxns function table. This should be NULL if the codec does not implement the IRES_Fxns.
Void * | codecClassConfig
codec class config data, if any.

Detailed Description

Discriptor for a dynamically loaded codec. A dynamic library for a codec must export a function that fills in a structure of this type.

See also:
Engine_GetAlgDescFxn

Field Documentation

NODE_Uuid Engine_DllAlgDesc::uuid
Todo:
Figure out what should be put for uuid.
IALG_Fxns* Engine_DllAlgDesc::fxns

Pointer to codec's IALG_Fxns. This can not be NULL.

Ptr Engine_DllAlgDesc::idmaFxns

Pointer to codec's IDMA3_Fxns table. If the codec does not use DMA, this should be NULL.

String* Engine_DllAlgDesc::typeTab

Inheritance hierarchy of codec. This is a NULL terminated array that lists the interfaces inherited by the code. For example:

static String typeTab_SPHDEC1COPY_TI_ISPHDEC1COPY[] = { "ti.sdo.ce.speech1.ISPHDEC1", NULL };

Ptr Engine_DllAlgDesc::iresFxns

Pointer to codec's IRES_Fxns function table. This should be NULL if the codec does not implement the IRES_Fxns.

Void* Engine_DllAlgDesc::codecClassConfig

codec class config data, if any.

Todo:
Figure out what this is.
The documentation for this struct was generated from the following file:
  • Engine.h


Codec Engine Application Programming Interface (API): Engine_DllAlgParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

Engine_DllAlgParams Struct Reference
[Codec Engine Runtime]

This structure is passed to Engine_addAlg(), and contains parameters to create a dynamic codec with. More...

#include <Engine.h>

Data Fields

String | name
Bool | isLocal
Int | groupId

Detailed Description

This structure is passed to Engine_addAlg(), and contains parameters to create a dynamic codec with.

See also:
Engine_addAlg().

Field Documentation

String Engine_DllAlgParams::name

Name of algorithm.

Bool Engine_DllAlgParams::isLocal

if TRUE, run locally.

Int Engine_DllAlgParams::groupId

Resource sharing group Id.

The documentation for this struct was generated from the following file:
  • Engine.h


Codec Engine Application Programming Interface (API): IALG_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IALG_Fxns Struct Reference
[IALG - XDAIS Algorithm Interface]

Defines the fields and methods that must be supplied by all XDAIS algorithms. More...

#include <ialg.h>

Data Fields

Void * | implementationId
Unique pointer that identifies the module implementing this interface.
Void(* | algActivate )(IALG_Handle handle)
Notification to the algorithm that its memory is "active" and algorithm processing methods may be called.
Int(* | algAlloc )(const IALG_Params *params, struct IALG_Fxns **parentFxns, IALG_MemRec *memTab)
Apps call this to query the algorithm about its memory requirements. Must be non-NULL.
Int(* | algControl )(IALG_Handle handle, IALG_Cmd cmd, IALG_Status *status)
Algorithm specific control and status.
Void(* | algDeactivate )(IALG_Handle handle)
Save all persistent data to non-scratch memory.
Int(* | algFree )(IALG_Handle handle, IALG_MemRec *memTab)
Apps call this to allow the algorithm to initialize memory requested via algAlloc(). Must be non-NULL.
Int(* | algInit )(IALG_Handle handle, const IALG_MemRec *memTab, IALG_Handle parent, const IALG_Params *params)
Initialize an algorithm's instance object. Must be non-NULL.
Void(* | algMoved )(IALG_Handle handle, const IALG_MemRec *memTab, IALG_Handle parent, const IALG_Params *params)
Notify algorithm instance that instance memory has been relocated.
Int(* | algNumAlloc )(Void)
Number of memory allocation requests required.

Detailed Description

Defines the fields and methods that must be supplied by all XDAIS algorithms.

Field Documentation

Void* IALG_Fxns::implementationId

Unique pointer that identifies the module implementing this interface.

Void(* IALG_Fxns::algActivate)(IALG_Handle handle)

Notification to the algorithm that its memory is "active" and algorithm processing methods may be called.

Parameters:
[in] handle Handle to an algorithm instance.
Remarks:
algActivate() initializes any of the instance's scratch buffers using the persistent memory that is part of the algorithm's instance object.
The implementation of algActivate() (and algDeactivate()) is required if the algorithm requests memory of type IALG_SCRATCH.
The algActivate() method should only be implemented if a module wants to factor out initialization code that can be executed once prior to processing multiple consecutive frames of data.
If a module does not implement this method, the algActivate() field in the module's static function table (of type IALG_Fxns) must be set to NULL. This is equivalent to the following implementation:
      Void algActivate(IALG_Handle handle)
      {
      }
Precondition:
algActivate() can only be called after a successful return from algInit().
handle must be a valid handle for the algorithm's instance object.
No other algorithm method is currently being run on this instance. This method never preempts any other method on the same instance.
If the algorithm has implemented the IDMA2 interface, algActivate() can only be called after a successful return from dmaInit().
Postcondition:
All methods related to the algorithm may now be executed by client (subject to algorithm specific restrictions).
See also:
algDeactivate().
Int(* IALG_Fxns::algAlloc)(const IALG_Params *params, struct IALG_Fxns **parentFxns, IALG_MemRec *memTab)

Apps call this to query the algorithm about its memory requirements. Must be non-NULL.

Parameters:
[in] | params | Algorithm specific attributes.
[out] | parentFxns | Parent algorithm functions.
[out] | memTab | array of memory records.
Remarks:
algAlloc() returns a table of memory records that describe the size, alignment, type and memory space of all buffers required by an algorithm (including the algorithm's instance object itself). If successful, this function returns a positive non-zero value indicating the number of records initialized. This function can never initialize more memory records than the number returned by algNumAlloc().
If algNumAlloc() is not implemented, the maximum number of initialized memory records is IALG_DEFMEMRECS.
The first argument to algAlloc() is a pointer to the creation parameters for the instance of the algorithm object to be created. This pointer is algorithm-specific; i.e., it points to a structure that is defined by each particular algorithm. This pointer may be NULL; however, in this case, algAlloc() must assume default creation parameters and must not fail.
The second argument to algAlloc() is an optional parameter. algAlloc() may return a pointer to its parent's IALG functions. If this output value is assigned a non-NULL value, the client must create the parent instance object using the designated IALG functions pointer. The parent instance object must then be passed to algInit().
algAlloc() may be called at any time and it must be idempotent; i.e., it can be called repeatedly without any side effects, and always returns the same result.
Algorithms are encouraged to return (and document!) clear, algorithm-specific error codes from algAlloc(). Create-time failures are a common integration issue, and the clearer a return value, the sooner the algorithm integrator can identify and resolve the issue.
Precondition:
The number of memory records in the array memTab[] is no less than the number returned by algNumAlloc().
*parentFxns is a valid pointer to an IALG_Fxns pointer variable.
Postcondition:
If the algorithm needs a parent object to be created, the pointer *parentFxns is set to a non-NULL value that points to a valid IALG_Fxns structure, the parent's IALG implementation. Otherwise, this pointer is not set. algAlloc() may elect to ignore the parentFxns pointer altogether.
For each memory descriptor in memTab with an IALG_WRITEONCE attribute, the algorithm has either set the base field to a non-NULL value, which is the address of a statically allocated and initialized memory buffer of the indicated 'size', or has set the base field to NULL, thereby requiring the memory for the buffer to be provided by the client.
Exactly n elements of the memTab[] array are initialized, where n is the return value from this operation.
For each memory descriptor in memTab with an IALG_PERSIST or IALG_SCRATCH attribute, the algorithm does not set its base field.
memTab[0] defines the memory required for the instance's object and this object's first field is an IALG_Obj structure.
memTab[0] is requested as persistent memory.
See also:
algFree()
Int(* IALG_Fxns::algControl)(IALG_Handle handle, IALG_Cmd cmd, IALG_Status *status)

Algorithm specific control and status.

Parameters:
[in] | handle | Algorithm instance handle.
[in] | cmd | Algorithm specific command.
[out] | status | Algorithm specific status.
Remarks:
algControl() sends an algorithm specific command, cmd, and an input/output status buffer pointer to an algorithm's instance object.
In preemptive execution environments, algControl() may preempt a module's other metods (for example, its processing methods).
The implementation of algControl() is optional. If a module does not implement this method, the algControl() field in the module's static function table (of type IALG_Fxns) must be set to NULL. This is equivalent to the following implementation:
      Void algControl(IALG_Handle handle, IALG_Cmd cmd, IALG_Status *status)
      {
          return (IALG_EFAIL);
      }
Precondition:
algControl() can only be called after a successful return from algInit().
handle must be a valid handle for the algorithm's instance object.
Algorithm specific cmd values are always less than IALG_SYSCMD.
Postcondition:
If the cmd value is not recognized by the algorithm, the return value is not equal to IALG_EOK.
See also:
algInit()
Void(* IALG_Fxns::algDeactivate)(IALG_Handle handle)

Save all persistent data to non-scratch memory.

Parameters:
[in] handle Algorithm instance handle.
Remarks:
algDeactivate() saves any persistent information to non-scratch buffers using the persistent memory that is part of the algorithm's instance object.
handle is used by the algorithm to identify the various buffers that must be saved prior to the next cycle of algActivate() and processing.
The implementation of algDeactivate() (and algActivate()) is required if the algorithm requests memory of type IALG_SCRATCH.
The algDeactivate() method is only implemented if a module wants to factor out initialization code that can be executed once prior to processing multiple consecutive frames of data.
If a module does not implement this method, the algDeactivate() field in the module's static function table (of type IALG_Fxns) must be set to NULL. This is equivalent to the following implementation:
      Void algDeactivate(IALG_Handle handle)
      {
      }
Precondition:
algDeactivate() can only be called after a successful return from algInit().
The instance object is currently "active"; i.e., all instance memory is active and if an algActivate() method is defined, it has been called.
handle must be a valid handle for the algorithm's instance object.
No other algorithm method is currently being run on this instance. This method never preempts any other method on the same instance.
Postcondition:
No methods related to the algorithm may now be executed by the client; only algActivate() or algFree() may be called.
All instance scratch memory may be safely overwritten.
See also:
algActivate()
Int(* IALG_Fxns::algFree)(IALG_Handle handle, IALG_MemRec *memTab)

Apps call this to allow the algorithm to initialize memory requested via algAlloc(). Must be non-NULL.

Parameters:
[in] | handle | Algorithm instance handle.
[out] | memTab | Output array of memory records.
Remarks:
algFree() returns a table of memory records that describe the base address, size, alignment, type and memory space of all buffers previously allocated for the algorithm's instance (including the algorithm's instance object itself) specified by handle. This function always returns a positive non-zero value indicating the number of records initialized. This function can never initialize more memory records than the value returned by algNumAlloc().
Precondition:
The memTab[] array contains at least algNumAlloc() records.
handle must be a valid handle for the algorithm's instance object.
If the prior call to algAlloc() returned a non-NULL parent functions pointer, then the parent instance must be an active instance object created via that function pointer.
No other agorithm method is currently being run on this instance. This method never preempts any other method on the same instance.
Postcondition:
memTab[] contains pointers to all of the memory passed to the algorithm via algInit().
The size and alignment fields contain the same values passed to the client via algAlloc(); i.e., if the client makes changes to the values returned via algAlloc() and passes these new values to algInit(), the algorithm is not responsible for retaining any such changes.
See also:
algAlloc()
Int(* IALG_Fxns::algInit)(IALG_Handle handle, const IALG_MemRec *memTab, IALG_Handle parent, const IALG_Params *params)

Initialize an algorithm's instance object. Must be non-NULL.

Parameters:
[in] | handle | Algorithm instance handle. This is a pointer to an initialized IALG_Obj structure. Its value is identical to the memTab[0].base.
[in] | memTab | Array of allocated buffers.
[in] | parent | Handle of algorithm's parent instance.
[in] | params | Pointer to algorithm's instance parameters.
Remarks:
algInit() performs all initialization necessary to complete the run-time creation of an algorithm's instance object. After a successful return from algInit(), the algorithm's instance object is ready to be used to process data.
handle is a pointer to an initialized IALG_Obj structure. Its value is identical to the memTab[0].base.
memTab is a table of memory records that describe the base address, size, alignment, type, and memory space of all buffers allocated for an algorithm instance (including the algorithm's instance object itself). The number of initialized records is identical to the number returned by a prior call to algAlloc().
parent is a handle to another algorithm instance object. This parameter is often NULL; indicating that no parent object exists. This parameter allows clients to create a shared algorithm instance object and pass it to other algorithm instances. For example, a parent instance object might contain global read-only tables that are used by several instances of a vocoder.
params is a pointer to algorithm-specific parameters that are necessary for the creation and initialization of the instance object. This pointer points to the same parameters passed to the algAlloc() operation. However, this pointer may be NULL. In this case, algInit(), must assume default creation parameters.
Algorithms are encouraged to return (and document!) clear, algorithm-specific error codes from algInit(). Create-time failures are a common integration issue, and the clearer a return value, the sooner the algorithm integrator can identify and resolve the issue.
The algorithm must not access any scratch resources, memory or otherwise, until it has been activated (see algActivate()). A common error is to initialize scratch resources during algInit(). This is an error as another algorithm, or instance of the same algorithm, may be active when this instance's algInit() is called. This algorithm must not access scratch resources until it is active.
The client is not required to satisfy the IALG_MemSpace attribute of the requested memory. Note however that C6000 algorithms that use DMA may strictly require the client to satisfy its on-chip memory requirements and may not function correctly otherwise.
The client may allocate the requested IALG_WRITEONCE buffers once (or never, if the algorithm has assigned a base address in the prior call to algAlloc) and use the same buffers to initialize multiple instances of the same algorithm that are created with identical parameters.
Example:
      typedef struct EncoderObj {
          IALG_Obj ialgObj;
          int workBuf;
          Int workBufLen;
          ... ;
      } EncoderObj;

      Int algInit(IALG_Handle handle, IALG_MemRec memTab[],
              IALG_Handle parent, IALG_Params *params)
      {
          EncoderObj *inst = (EncoderObj *)handle;
          EncoderParams *encParams = (EncoderParams *)params;

          if (encParams == NULL) {
              encParams = MYDEFAULTPARAMS;
          }

          if (IALG_isOffChip(memTab[1].space)) {
              // unsupported off-chip memory, return documented error code
              return (MYMOD_MYVENDOR_EUNSUPPORTEDOFFCHIPWORKBUF);
          }

          inst->workBuf = memTab[1].base;
          inst->workBufLen = encParams->frameDuration * 8;
          ...

          return (IALG_EOK);
      }
Precondition:
memTab contains pointers to non-overlapping buffers with the size and alignment requested via a prior call to algAlloc(). In addition, the algorithm parameters, params, passed to algAlloc() are identical to those passed to this operation.
handle must be a valid handle for the algorithm's instance object; i.e., handle == memTab[0].base and handle->fxns is initialized to point to the appropriate IALG_Fxns structure.
The prior call to algAlloc() using same creation params must have returned value > 1. This pre-condition ensures that any create-time parameter validation can be done once (in algAlloc()), and is not required to be done in algInit(). Note that algInit() can, and should, validate any algorithm- specific requirements on resources received (e.g. internal memory, etc).
If the prior call to algAlloc() has not assigned a non-NULL base address to an IALG_WRITEONCE memTab entry, the client must provide the memory resource with the requested size and alignment.
If the prior call to algAlloc() returned a non-NULL parent functions pointer, then the parent handle, parent, must be a valid handle to an instance object created via that function pointer.
No other algorithm method is currently being run on this instance. This method never preempts any other method on the same instance.
If parent is non-NULL, no other method is currently being run on the parent instance; i.e., this method never preempts any other method on the parent instance.
If the prior call to algAlloc() assigned a non-NULL base address to an IALG_WRITEONCE memTab[] entry, the client may pass back the same address in the base field without allocating additional memory for that persistent write-once buffer. Alternatively, the client may treat IALG_WRITEONCE buffers in the same way as IALG_PERSIST buffers; by allocating new memory and granting it to the algorithm using the base field.
The buffer pointed to in memTab[0] is initialized with a pointer to the appropriate IALG_Fxns structure followed by all 0s.
Postcondition:
With the exception of any initialization performed by algActivate() and any optional auxilary interface initialization functions (such as IRES and IDMA3), all of the instance's persistent and write-once memory is initialized and the object is ready to be used.
All subsequent memory accesses to the IALG_WRITEONCE buffers by this algorithm instance will be read-only.
If the algorithm has implemented the IDMA2 interface, the dmaGetChannels() operation can be called.
Return values:
IALG_EOK

Successful return status code.

IALG_EFAIL

Unspecified error return status code.

Custom error Algorithm-specific error - see algorithm's documentation.
See also:
algAlloc()
algMoved()
Void(* IALG_Fxns::algMoved)(IALG_Handle handle, const IALG_MemRec *memTab, IALG_Handle parent, const IALG_Params *params)

Notify algorithm instance that instance memory has been relocated.

Parameters:
[in] | handle | Algorithm instance handle.
[in] | memTab | Array of allocated buffers.
[in] | parent | Handle of algorithm's parent instance.
[in] | params | Pointer to algorithm's instance parameters.
Remarks:
algMoved() performs any reinitialization necessary to insure that, if an algorithm's instance object has been moved by the client, all internal data references are recomputed.
The implementation of algMoved() is optional. However, it is highly recommended that this method be implemented. If a module does not implement this method, the algMoved() field in the module's static function table (of type IALG_Fxns) must be set to NULL. This is equivalent to asserting that the algorithm's instance objects cannot be moved.
Int(* IALG_Fxns::algNumAlloc)(Void)

Number of memory allocation requests required.

Remarks:
algNumAlloc() returns the maximum number of memory allocation requests that the algAlloc() method requires. This operation allows clients to allocate sufficient space to call the algAlloc() method or fail because insufficient space exists to support the creation of the algorithm's instance object. algNumAlloc() may be called at any time, and it must be idempotent; i.e., it can be called repeatedly without any side effects, and always returns the same result.
algNumAlloc() is optional; if it is not implemented, the maximum number of memory records for algAlloc() is assumed to be IALG_DEFMEMRECS. This is equivalent to the following implementation:
      Void algNumAlloc(Void)
      {
          return (IALG_DEFNUMRECS);
      }
If a module does not implement this method, the algNumAlloc() field in the module's static function table (of type IALG_Fxns) must be set to NULL.
Postcondition:
The return value from algNumAlloc() is always greater than or equal to one and always equals or exceeds the value returned by algAlloc().
Example:
      #define NUMBUF 3
      extern IALG_Fxns *subAlg;

      Int algNumAlloc(Void)
      {
          return (NUMBUF + subAlg->algNumAlloc());
      }

      Int algAlloc(const IALG_Params *p, struct IALG_Fxns **pFxns,
              IALG_MemRec memTab)
      {
          Int n;

          ...

          n = subAlg->algAlloc(0, memTab);
          return (n + NUMBUF);
      }
See also:
algAlloc()
The documentation for this struct was generated from the following file:
  • ialg.h


Codec Engine Application Programming Interface (API): IALG_MemRec Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IALG_MemRec Struct Reference
[IALG - XDAIS Algorithm Interface]

Memory records. More...

#include <ialg.h>

Data Fields

Uns | size
Int | alignment
IALG_MemSpace space
IALG_MemAttrs attrs
Void * | base

Detailed Description

Memory records.

Field Documentation

Uns IALG_MemRec::size

Size in MAU of allocation

Int IALG_MemRec::alignment

Alignment requirement (MAU)

IALG_MemSpace IALG_MemRec::space

Allocation space

IALG_MemAttrs IALG_MemRec::attrs

Memory attributes

Void* IALG_MemRec::base

Base address of allocated buf

The documentation for this struct was generated from the following file:
  • ialg.h


Codec Engine Application Programming Interface (API): IALG_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IALG_Obj Struct Reference
[IALG - XDAIS Algorithm Interface]

Algorithm instance object definition. More...

#include <ialg.h>

Collaboration diagram for IALG_Obj:
[legend]

Data Fields

struct IALG_Fxns * fxns

Detailed Description

Algorithm instance object definition.

Remarks:
All XDAIS algorithm instance objects must have this structure as their first element. However, they do not need to initialize it; initialization of this sub-structure is done by the "framework".

Field Documentation

struct IALG_Fxns* IALG_Obj::fxns

Pointer to IALG function table.

The documentation for this struct was generated from the following file:
  • ialg.h


Codec Engine Application Programming Interface (API): IALG_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IALG_Params Struct Reference
[IALG - XDAIS Algorithm Interface]

Algorithm instance creation parameters. More...

#include <ialg.h>

Data Fields

Int size

Detailed Description

Algorithm instance creation parameters.

Remarks:
All XDAS algorithm parameter structures must have this as their first element.

Field Documentation

Int IALG_Params::size

Number of MAU in the structure

The documentation for this struct was generated from the following file:
  • ialg.h


Codec Engine Application Programming Interface (API): IALG_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IALG_Status Struct Reference
[IALG - XDAIS Algorithm Interface]

Pointer to algorithm specific status structure. More...

#include <ialg.h>

Data Fields

Int size

Detailed Description

Pointer to algorithm specific status structure.

Remarks:
All XDAIS algorithm parameter structures must have this as their first element.

Field Documentation

Int IALG_Status::size

Number of MAU in the structure

The documentation for this struct was generated from the following file:
  • ialg.h


Codec Engine Application Programming Interface (API): IAUDDEC1_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC1_DynamicParams Struct Reference
[IAUDDEC1 - XDM Audio Decoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <iauddec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 downSampleSbrFlag

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::control()

Field Documentation

XDAS_Int32 IAUDDEC1_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC1_DynamicParams::downSampleSbrFlag

Flag to indicate downsampling for SBR.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

The documentation for this struct was generated from the following file:
  • iauddec1.h


Codec Engine Application Programming Interface (API): IAUDDEC1_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC1_Fxns Struct Reference
[IAUDDEC1 - XDM Audio Decoder Interface]

Defines all of the operations on IAUDDEC1 objects. More...

#include <iauddec1.h>

Collaboration diagram for IAUDDEC1_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IAUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IAUDDEC1_InArgs *inArgs, IAUDDEC1_OutArgs *outArgs)
Basic audio decoding call.
XDAS_Int32(* | control )(IAUDDEC1_Handle handle, IAUDDEC1_Cmd id, IAUDDEC1_DynamicParams *params, IAUDDEC1_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on IAUDDEC1 objects.

Field Documentation

IALG_Fxns IAUDDEC1_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IAUDDEC1_Fxns::process)(IAUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IAUDDEC1_InArgs *inArgs, IAUDDEC1_OutArgs *outArgs)

Basic audio decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid IAUDDEC1_InArgs structure.
outArgs must not be NULL, and must point to a valid IAUDDEC1_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.
outBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
outBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least outBufs->descs[0].bufSize bytes in length.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.descs[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must appropriately set/clear the XDM1_BufDesc::descs[].accessMask field in both inBufs and outBufs. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IAUDDEC1_EOK

Success.

IAUDDEC1_EFAIL

General failure.

See IAUDDEC1_Status::extendedError for more detailed further error conditions.
IAUDDEC1_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IAUDDEC1_Fxns::control)(IAUDDEC1_Handle handle, IAUDDEC1_Cmd id, IAUDDEC1_DynamicParams *params, IAUDDEC1_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IAUDDEC1_DynamicParams structure.
status must not be NULL, and must point to a valid IAUDDEC1_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IAUDDEC1_EOK

Success.

IAUDDEC1_EFAIL

General failure.

See IAUDDEC1_Status::extendedError for more detailed further error conditions.
IAUDDEC1_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • iauddec1.h


Codec Engine Application Programming Interface (API): IAUDDEC1_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC1_InArgs Struct Reference
[IAUDDEC1 - XDM Audio Decoder Interface]

Defines the input arguments for all IAUDDEC1 instance process function. More...

#include <iauddec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numBytes
XDAS_Int32 desiredChannelMode
XDAS_Int32 lfeFlag

Detailed Description

Defines the input arguments for all IAUDDEC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::process()

Field Documentation

XDAS_Int32 IAUDDEC1_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC1_InArgs::numBytes

Size of input data in bytes, provided to the algorithm for decoding.

XDAS_Int32 IAUDDEC1_InArgs::desiredChannelMode

Desired Channel Configuration.

See also:
IAUDIO_ChannelMode
XDAS_Int32 IAUDDEC1_InArgs::lfeFlag

Flag indicating whether LFE channel data is desired in the output.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

The documentation for this struct was generated from the following file:
  • iauddec1.h


Codec Engine Application Programming Interface (API): IAUDDEC1_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC1_Obj Struct Reference
[IAUDDEC1 - XDM Audio Decoder Interface]

This must be the first field of all IAUDDEC1 instance objects. More...

#include <iauddec1.h>

Collaboration diagram for IAUDDEC1_Obj:
[legend]

Data Fields

struct IAUDDEC1_Fxns * fxns

Detailed Description

This must be the first field of all IAUDDEC1 instance objects.

Field Documentation

struct IAUDDEC1_Fxns* IAUDDEC1_Obj::fxns
The documentation for this struct was generated from the following file:
  • iauddec1.h


Codec Engine Application Programming Interface (API): IAUDDEC1_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC1_OutArgs Struct Reference
[IAUDDEC1 - XDM Audio Decoder Interface]

Defines the run time output arguments for all IAUDDEC1 instance objects. More...

#include <iauddec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesConsumed
XDAS_Int32 numSamples
XDAS_Int32 channelMode
XDAS_Int32 lfeFlag
XDAS_Int32 dualMonoMode
XDAS_Int32 sampleRate

Detailed Description

Defines the run time output arguments for all IAUDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::process()

Field Documentation

XDAS_Int32 IAUDDEC1_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC1_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IAUDDEC1_OutArgs::bytesConsumed

Number of bytes consumed during the process() call.

XDAS_Int32 IAUDDEC1_OutArgs::numSamples

Number of output samples per channel.

XDAS_Int32 IAUDDEC1_OutArgs::channelMode

Output Channel Configuration.

See also:
IAUDIO_ChannelMode
XDAS_Int32 IAUDDEC1_OutArgs::lfeFlag

Flag indicating the precense of LFE channel in the output. When the LFE channel is not in the output, this is set to XDAS_FALSE.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

XDAS_Int32 IAUDDEC1_OutArgs::dualMonoMode

Mode to indicate type of Dual Mono. Only used in case of Dual Mono output.

See also:
IAUDIO_DualMonoMode
XDAS_Int32 IAUDDEC1_OutArgs::sampleRate

Sampling frequency, in Hz. For example, if the sampling frequency is 44.1 kHz, this field will be 44100.

The documentation for this struct was generated from the following file:
  • iauddec1.h


Codec Engine Application Programming Interface (API): IAUDDEC1_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC1_Params Struct Reference
[IAUDDEC1 - XDM Audio Decoder Interface]

Defines the creation time parameters for all IAUDDEC1 instance objects. More...

#include <iauddec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 outputPCMWidth
XDAS_Int32 pcmFormat
XDAS_Int32 dataEndianness

Detailed Description

Defines the creation time parameters for all IAUDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IAUDDEC1_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC1_Params::outputPCMWidth

Number of bits per output PCM Sample.

XDAS_Int32 IAUDDEC1_Params::pcmFormat

Output PCM Format Block/Interleaved.

See also:
IAUDIO_PcmFormat
XDAS_Int32 IAUDDEC1_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
The documentation for this struct was generated from the following file:
  • iauddec1.h


Codec Engine Application Programming Interface (API): IAUDDEC1_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC1_Status Struct Reference
[IAUDDEC1 - XDM Audio Decoder Interface]

Defines instance status parameters (read-only). More...

#include <iauddec1.h>

Collaboration diagram for IAUDDEC1_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDAS_Int32 validFlag
XDAS_Int32 lfeFlag
XDAS_Int32 bitRate
XDAS_Int32 sampleRate
XDAS_Int32 channelMode
XDAS_Int32 pcmFormat
XDAS_Int32 numSamples
XDAS_Int32 outputBitsPerSample
XDM_AlgBufInfo bufInfo
XDAS_Int32 dualMonoMode

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC1_Fxns::control()

Field Documentation

XDAS_Int32 IAUDDEC1_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC1_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IAUDDEC1_Status::data

Buffer descriptor for data passing.

Remarks:
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int32 IAUDDEC1_Status::validFlag

Reflects the validity of this status structure.

Remarks:
In some cases (e.g. erroneous data streams), just after an error has been detected, the complete status provided by the algorithm may be incorrect (e.g. because of header corruption, etc). This field can "warn" the calling application that the contents of this structure are not valid. (Ideally, the algorithm makes a best attempt to always provide valid data, and this field is always set to XDAS_TRUE.)
Valid values for this field are XDAS_TRUE and XDAS_FALSE.
XDAS_Int32 IAUDDEC1_Status::lfeFlag

Flag indicating the presence of LFE channel in the output. When the LFE channel is not in the output, this is set to XDAS_FALSE.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

XDAS_Int32 IAUDDEC1_Status::bitRate

Average bit rate, in bits per second.

XDAS_Int32 IAUDDEC1_Status::sampleRate

Sampling frequency, in Hz. For example, if the sampling frequency is 44.1 kHz, this field will be 44100.

XDAS_Int32 IAUDDEC1_Status::channelMode

Output Channel Configuration.

See also:
IAUDIO_ChannelMode
XDAS_Int32 IAUDDEC1_Status::pcmFormat

Output PCM Format Block/Interleaved.

See also:
IAUDIO_PcmFormat
XDAS_Int32 IAUDDEC1_Status::numSamples

Number of samples in the output.

XDAS_Int32 IAUDDEC1_Status::outputBitsPerSample

Number of bits per output sample. For example, if the value of the field is 16, there are 16 output bits per PCM sample.

XDM_AlgBufInfo IAUDDEC1_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
XDAS_Int32 IAUDDEC1_Status::dualMonoMode

Mode to indicate type of Dual Mono. Only used in case of Dual Mono Output.

See also:
IAUDIO_DualMonoMode
The documentation for this struct was generated from the following file:
  • iauddec1.h


Codec Engine Application Programming Interface (API): IAUDDEC_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC_DynamicParams Struct Reference
[IAUDDEC - XDM Audio Decoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <iauddec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 outputFormat

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::control()

Field Documentation

XDAS_Int32 IAUDDEC_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC_DynamicParams::outputFormat

Output PCM format. See IAUDIO_PcmFormat.

The documentation for this struct was generated from the following file:
  • iauddec.h


Codec Engine Application Programming Interface (API): IAUDDEC_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC_Fxns Struct Reference
[IAUDDEC - XDM Audio Decoder Interface]

Defines all of the operations on IAUDDEC objects. More...

#include <iauddec.h>

Collaboration diagram for IAUDDEC_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IAUDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IAUDDEC_InArgs *inArgs, IAUDDEC_OutArgs *outArgs)
Basic audio decoding call.
XDAS_Int32(* | control )(IAUDDEC_Handle handle, IAUDDEC_Cmd id, IAUDDEC_DynamicParams *params, IAUDDEC_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on IAUDDEC objects.

Field Documentation

IALG_Fxns IAUDDEC_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IAUDDEC_Fxns::process)(IAUDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IAUDDEC_InArgs *inArgs, IAUDDEC_OutArgs *outArgs)

Basic audio decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid IAUDDEC_InArgs structure.
outArgs must not be NULL, and must point to a valid IAUDDEC_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IAUDDEC_OutArgs::extendedError for more detailed further error conditions.
XDAS_Int32(* IAUDDEC_Fxns::control)(IAUDDEC_Handle handle, IAUDDEC_Cmd id, IAUDDEC_DynamicParams *params, IAUDDEC_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IAUDDEC_DynamicParams structure.
status must not be NULL, and must point to a valid IAUDDEC_Status structure.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IAUDDEC_Status::extendedError for more detailed further error conditions.
The documentation for this struct was generated from the following file:
  • iauddec.h


Codec Engine Application Programming Interface (API): IAUDDEC_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC_InArgs Struct Reference
[IAUDDEC - XDM Audio Decoder Interface]

Defines the input arguments for all IAUDDEC instance process function. More...

#include <iauddec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numBytes

Detailed Description

Defines the input arguments for all IAUDDEC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::process()

Field Documentation

XDAS_Int32 IAUDDEC_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC_InArgs::numBytes

Size of valid input data (in bytes) to be processed.

The documentation for this struct was generated from the following file:
  • iauddec.h


Codec Engine Application Programming Interface (API): IAUDDEC_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC_Obj Struct Reference
[IAUDDEC - XDM Audio Decoder Interface]

This must be the first field of all IAUDDEC instance objects. More...

#include <iauddec.h>

Collaboration diagram for IAUDDEC_Obj:
[legend]

Data Fields

struct IAUDDEC_Fxns * fxns

Detailed Description

This must be the first field of all IAUDDEC instance objects.

Field Documentation

struct IAUDDEC_Fxns* IAUDDEC_Obj::fxns
The documentation for this struct was generated from the following file:
  • iauddec.h


Codec Engine Application Programming Interface (API): IAUDDEC_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC_OutArgs Struct Reference
[IAUDDEC - XDM Audio Decoder Interface]

Defines the run time output arguments for all IAUDDEC instance objects. More...

#include <iauddec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesConsumed

Detailed Description

Defines the run time output arguments for all IAUDDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::process()

Field Documentation

XDAS_Int32 IAUDDEC_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IAUDDEC_OutArgs::bytesConsumed

Number of bytes consumed during the process() call.

The documentation for this struct was generated from the following file:
  • iauddec.h


Codec Engine Application Programming Interface (API): IAUDDEC_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC_Params Struct Reference
[IAUDDEC - XDM Audio Decoder Interface]

Defines the creation time parameters for all IAUDDEC instance objects. More...

#include <iauddec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxSampleRate
XDAS_Int32 maxBitrate
XDAS_Int32 maxNoOfCh
XDAS_Int32 dataEndianness

Detailed Description

Defines the creation time parameters for all IAUDDEC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IAUDDEC_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC_Params::maxSampleRate

Maximum sampling frequency in Hz. For example, if the maximum sampling frequency is 44.1 kHz, this field should be 44100.

XDAS_Int32 IAUDDEC_Params::maxBitrate

Maximum bit rate in bits per second. For example, if the maximum bit rate is 128 kbps, set this field to 128000.

XDAS_Int32 IAUDDEC_Params::maxNoOfCh

Maximum Channels. See IAUDIO_ChannelId.

XDAS_Int32 IAUDDEC_Params::dataEndianness

Endianness of input data.

See also:
XDM_DataFormat
The documentation for this struct was generated from the following file:
  • iauddec.h


Codec Engine Application Programming Interface (API): IAUDDEC_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDDEC_Status Struct Reference
[IAUDDEC - XDM Audio Decoder Interface]

Defines instance status parameters (read-only). More...

#include <iauddec.h>

Collaboration diagram for IAUDDEC_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bitRate
XDAS_Int32 sampleRate
XDAS_Int32 numChannels
XDAS_Int32 numLFEChannels
XDAS_Int32 outputFormat
XDAS_Int32 autoPosition
XDAS_Int32 fastFwdLen
XDAS_Int32 frameLen
XDAS_Int32 outputBitsPerSample
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDDEC_Fxns::control()

Field Documentation

XDAS_Int32 IAUDDEC_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDDEC_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IAUDDEC_Status::bitRate

Average bit rate, in bits per second.

XDAS_Int32 IAUDDEC_Status::sampleRate

Sampling frequency, in Hz. For example, if the sampling frequency is 44.1 kHz, this field will be 44100.

XDAS_Int32 IAUDDEC_Status::numChannels

Number of Channels. See IAUDIO_ChannelId.

XDAS_Int32 IAUDDEC_Status::numLFEChannels

Number of LFE (Low Frequency Effects) channels in the stream.

XDAS_Int32 IAUDDEC_Status::outputFormat

The output PCM format. See IAUDIO_PcmFormat.

XDAS_Int32 IAUDDEC_Status::autoPosition

Flag to indicate support for random position decoding, which means that a stream can be decoded from any point. 0 indicates this feature is not supported, 1 indicates this feature is supported.

XDAS_Int32 IAUDDEC_Status::fastFwdLen

Recommended fast forward length in bytes in case of random position decoding.

XDAS_Int32 IAUDDEC_Status::frameLen

Number of samples decoded per process() call.

XDAS_Int32 IAUDDEC_Status::outputBitsPerSample

Number of bits per output sample. For example, if the value of the field is 16, there are 16 output bits per PCM sample.

XDM_AlgBufInfo IAUDDEC_Status::bufInfo

Input and output buffer information. See XDM_AlgBufInfo.

The documentation for this struct was generated from the following file:
  • iauddec.h


Codec Engine Application Programming Interface (API): IAUDENC1_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC1_DynamicParams Struct Reference
[IAUDENC1 - Audio Encoder Interface]

This structure defines the algorithm parameters that can be modified after creation via control() calls. More...

#include <iaudenc1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 bitRate
XDAS_Int32 sampleRate
XDAS_Int32 channelMode
XDAS_Int32 lfeFlag
XDAS_Int32 dualMonoMode
XDAS_Int32 inputBitsPerSample

Detailed Description

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::control()

Field Documentation

XDAS_Int32 IAUDENC1_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDENC1_DynamicParams::bitRate

Average bit rate, in bits per second.

See also:
IAUDENC1_Params.bitRate
IAUDENC1_Status.bitRate
XDAS_Int32 IAUDENC1_DynamicParams::sampleRate

Sampling frequency in Hz. For example, if the sampling frequency is 44.1 kHz, this field will be 44100.

See also:
IAUDENC1_Params.sampleRate
IAUDENC1_Status.sampleRate
XDAS_Int32 IAUDENC1_DynamicParams::channelMode

Input Channel Mode.

See also:
IAUDIO_ChannelMode
IAUDENC1_Params.channelMode
XDAS_Int32 IAUDENC1_DynamicParams::lfeFlag

Flag indicating whether LFE channel data is present or not in the input.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

XDAS_Int32 IAUDENC1_DynamicParams::dualMonoMode

Mode to indicate type of Dual Mono. Applicable only if channelMode is dualMono

See also:
IAUDIO_DualMonoMode
IAUDENC1_Params.dualMonoMode
XDAS_Int32 IAUDENC1_DynamicParams::inputBitsPerSample

Number of input bits per output sample. For example, if there are 16 bits per PCM input sample, this should be set to 16.

See also:
IAUDENC1_Params.inputBitsPerSample
The documentation for this struct was generated from the following file:
  • iaudenc1.h


Codec Engine Application Programming Interface (API): IAUDENC1_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC1_Fxns Struct Reference
[IAUDENC1 - Audio Encoder Interface]

Defines all of the operations on IAUDENC1 objects. More...

#include <iaudenc1.h>

Collaboration diagram for IAUDENC1_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IAUDENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IAUDENC1_InArgs *inArgs, IAUDENC1_OutArgs *outArgs)
Basic audio encoding call.
XDAS_Int32(* | control )(IAUDENC1_Handle handle, IAUDENC1_Cmd id, IAUDENC1_DynamicParams *params, IAUDENC1_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on IAUDENC1 objects.

Field Documentation

IALG_Fxns IAUDENC1_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IAUDENC1_Fxns::process)(IAUDENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IAUDENC1_InArgs *inArgs, IAUDENC1_OutArgs *outArgs)

Basic audio encoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid IAUDENC1_InArgs structure.
outArgs must not be NULL, and must point to a valid IAUDENC1_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.
outBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
outBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least outBufs->descs[0].bufSize bytes in length.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.descs[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must appropriately set/clear the XDM1_BufDesc::descs[].accessMask field in both inBufs and outBufs. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IAUDENC1_EOK

Success.

IAUDENC1_EFAIL

General failure.

See IAUDENC1_Status::extendedError for more detailed further error conditions.
IAUDENC1_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IAUDENC1_Fxns::control)(IAUDENC1_Handle handle, IAUDENC1_Cmd id, IAUDENC1_DynamicParams *params, IAUDENC1_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IAUDENC1_DynamicParams structure.
status must not be NULL, and must point to a valid IAUDENC1_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IAUDDEC1_EOK

Success.

IAUDDEC1_EFAIL

General failure.

See IAUDDEC1_Status::extendedError for more detailed further error conditions.
IAUDENC1_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • iaudenc1.h


Codec Engine Application Programming Interface (API): IAUDENC1_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC1_InArgs Struct Reference
[IAUDENC1 - Audio Encoder Interface]

Defines the input arguments for all IAUDENC1 instance process function. More...

#include <iaudenc1.h>

Collaboration diagram for IAUDENC1_InArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 numInSamples
XDM1_SingleBufDesc ancData

Detailed Description

Defines the input arguments for all IAUDENC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::process()

Field Documentation

XDAS_Int32 IAUDENC1_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDENC1_InArgs::numInSamples

Number of Input Samples per Channel.

See also:
IAUDENC_Params.inputBitsPerSample
XDM1_SingleBufDesc IAUDENC1_InArgs::ancData

Ancillary Data.

Remarks:
Ancillary data contains any extra information to be encoded along with the PCM samples.
The documentation for this struct was generated from the following file:
  • iaudenc1.h


Codec Engine Application Programming Interface (API): IAUDENC1_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC1_Obj Struct Reference
[IAUDENC1 - Audio Encoder Interface]

This must be the first field of all IAUDENC1 instance objects. More...

#include <iaudenc1.h>

Collaboration diagram for IAUDENC1_Obj:
[legend]

Data Fields

struct IAUDENC1_Fxns * fxns

Detailed Description

This must be the first field of all IAUDENC1 instance objects.

Field Documentation

struct IAUDENC1_Fxns* IAUDENC1_Obj::fxns
The documentation for this struct was generated from the following file:
  • iaudenc1.h


Codec Engine Application Programming Interface (API): IAUDENC1_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC1_OutArgs Struct Reference
[IAUDENC1 - Audio Encoder Interface]

Defines the run time output arguments for all IAUDENC1 instance objects. More...

#include <iaudenc1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesGenerated
XDAS_Int32 numZeroesPadded
XDAS_Int32 numInSamples

Detailed Description

Defines the run time output arguments for all IAUDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::process()

Field Documentation

XDAS_Int32 IAUDENC1_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDENC1_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IAUDENC1_OutArgs::bytesGenerated

Number of bytes generated during the process() call.

XDAS_Int32 IAUDENC1_OutArgs::numZeroesPadded

Number of zeroes padded to input.

Remarks:
Some of the encoders pad zeroes at the end of the stream to complete the last frame.
XDAS_Int32 IAUDENC1_OutArgs::numInSamples

Number of input samples per channel consumed by the encoder.

The documentation for this struct was generated from the following file:
  • iaudenc1.h


Codec Engine Application Programming Interface (API): IAUDENC1_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC1_Params Struct Reference
[IAUDENC1 - Audio Encoder Interface]

Defines the creation time parameters for all IAUDENC1 instance objects. More...

#include <iaudenc1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 sampleRate
XDAS_Int32 bitRate
XDAS_Int32 channelMode
XDAS_Int32 dataEndianness
XDAS_Int32 encMode
XDAS_Int32 inputFormat
XDAS_Int32 inputBitsPerSample
XDAS_Int32 maxBitRate
XDAS_Int32 dualMonoMode
XDAS_Int32 crcFlag
XDAS_Int32 ancFlag
XDAS_Int32 lfeFlag

Detailed Description

Defines the creation time parameters for all IAUDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IAUDENC1_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDENC1_Params::sampleRate

Sampling Frequency in Hz. For example, if the sampling frequency is 44.1 kHz, this field will be 44100.

See also:
IAUDENC1_DynamicParams.sampleRate
IAUDENC1_Status.sampleRate
XDAS_Int32 IAUDENC1_Params::bitRate

Average bit rate, in bits per second.

See also:
IAUDENC1_DynamicParams.bitRate
IAUDENC1_Status.bitRate
XDAS_Int32 IAUDENC1_Params::channelMode

Input Channel Mode.

See also:
IAUDIO_ChannelMode
IAUDENC1_DynamicParams.channelMode
XDAS_Int32 IAUDENC1_Params::dataEndianness

Endianness of input data.

See also:
XDM_DataFormat
XDAS_Int32 IAUDENC1_Params::encMode

Encoding mode.

See also:
IAUDIO_EncMode
IAUDENC1_Status.encMode
XDAS_Int32 IAUDENC1_Params::inputFormat

Input format block/interleaved.

See also:
IAUDIO_PcmFormat
XDAS_Int32 IAUDENC1_Params::inputBitsPerSample

Number of input bits per output sample. For example, if there are 16 bits per PCM input sample, this should be set to 16.

See also:
IAUDENC1_DynamicParams.inputBitsPerSample
XDAS_Int32 IAUDENC1_Params::maxBitRate

Maximum bit rate in case of VBR. Some of the encoders allow you to specify max bit rate in case of VBR mode

XDAS_Int32 IAUDENC1_Params::dualMonoMode

Mode to indicate type of Dual Mono. Applicable only if channelMode is dualMono

See also:
IAUDIO_DualMonoMode
IAUDENC1_DynamicParams.dualMonoMode
XDAS_Int32 IAUDENC1_Params::crcFlag

Flag indicating whether the encoder should insert CRC bits into the bitstream or not.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

XDAS_Int32 IAUDENC1_Params::ancFlag

Ancillary Data Flag.

Remarks:
This flag indicates to the encoder that Ancillary data needs to be encoded along with the normal audio data. The ancillary data can be provided for each input frame.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

XDAS_Int32 IAUDENC1_Params::lfeFlag

Flag indicating whether LFE channel data is present or not in the input.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

The documentation for this struct was generated from the following file:
  • iaudenc1.h


Codec Engine Application Programming Interface (API): IAUDENC1_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC1_Status Struct Reference
[IAUDENC1 - Audio Encoder Interface]

Defines instance status parameters (read-only). More...

#include <iaudenc1.h>

Collaboration diagram for IAUDENC1_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDM_AlgBufInfo bufInfo
XDAS_Int32 validFlag
XDAS_Int32 lfeFlag
XDAS_Int32 bitRate
XDAS_Int32 sampleRate
XDAS_Int32 channelMode
XDAS_Int32 encMode

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC1_Fxns::control()

Field Documentation

XDAS_Int32 IAUDENC1_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDENC1_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IAUDENC1_Status::data

Buffer descriptor for data passing.

Remarks:
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDM_AlgBufInfo IAUDENC1_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
XDAS_Int32 IAUDENC1_Status::validFlag

Flag indicating the validity of the status struct.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

XDAS_Int32 IAUDENC1_Status::lfeFlag

Flag indicating whether LFE channel data is present or not in the input.

Valid values for this field are XDAS_TRUE and XDAS_FALSE.

XDAS_Int32 IAUDENC1_Status::bitRate

Average bit rate, in bits per second.

See also:
IAUDENC1_Params.bitRate
IAUDENC1_DynamicParams.bitRate
XDAS_Int32 IAUDENC1_Status::sampleRate

Sampling frequency in Hz. For example, if the sampling frequency is 44.1 kHz, this field will be 44100.

See also:
IAUDENC1_Params.sampleRate
IAUDENC1_DynamicParams.sampleRate
XDAS_Int32 IAUDENC1_Status::channelMode

Input Channel Mode.

See also:
IAUDIO_ChannelMode for valid values.
IAUDENC1_Params.channelMode
IAUDENC1_DynamicParams.channelMode
XDAS_Int32 IAUDENC1_Status::encMode

Encoding mode.

See also:
IAUDIO_EncMode
IAUDENC1_Params.encMode
The documentation for this struct was generated from the following file:
  • iaudenc1.h


Codec Engine Application Programming Interface (API): IAUDENC_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC_DynamicParams Struct Reference
[IAUDENC - XDM Audio Encoder Interface]

This structure defines the algorithm parameters that can be modified after creation via control() calls. More...

#include <iaudenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 inputFormat
XDAS_Int32 bitRate
XDAS_Int32 sampleRate
XDAS_Int32 numChannels
XDAS_Int32 numLFEChannels
XDAS_Int32 inputBitsPerSample

Detailed Description

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::control()

Field Documentation

XDAS_Int32 IAUDENC_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDENC_DynamicParams::inputFormat

The input PCM format. See IAUDIO_PcmFormat.

XDAS_Int32 IAUDENC_DynamicParams::bitRate

Average bit rate, in bits per second.

XDAS_Int32 IAUDENC_DynamicParams::sampleRate

Sampling frequency in Hz. For example, if the sampling frequency is 44.1 kHz, this field will be 44100.

XDAS_Int32 IAUDENC_DynamicParams::numChannels

Number of Channels. See IAUDIO_ChannelId.

XDAS_Int32 IAUDENC_DynamicParams::numLFEChannels

Number of LFE (Low Frequency Effects) channels in the stream.

XDAS_Int32 IAUDENC_DynamicParams::inputBitsPerSample

Number of input bits per output sample. For example, if there are 16 bits per PCM input sample, this should be set to 16.

The documentation for this struct was generated from the following file:
  • iaudenc.h


Codec Engine Application Programming Interface (API): IAUDENC_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC_Fxns Struct Reference
[IAUDENC - XDM Audio Encoder Interface]

Defines all of the operations on IAUDENC objects. More...

#include <iaudenc.h>

Collaboration diagram for IAUDENC_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IAUDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IAUDENC_InArgs *inArgs, IAUDENC_OutArgs *outArgs)
Basic audio encoding call.
XDAS_Int32(* | control )(IAUDENC_Handle handle, IAUDENC_Cmd id, IAUDENC_DynamicParams *params, IAUDENC_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on IAUDENC objects.

Field Documentation

IALG_Fxns IAUDENC_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IAUDENC_Fxns::process)(IAUDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IAUDENC_InArgs *inArgs, IAUDENC_OutArgs *outArgs)

Basic audio encoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid IAUDENC_InArgs structure.
outArgs must not be NULL, and must point to a valid IAUDENC_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IAUDENC_OutArgs::extendedError for more detailed further error conditions.
XDAS_Int32(* IAUDENC_Fxns::control)(IAUDENC_Handle handle, IAUDENC_Cmd id, IAUDENC_DynamicParams *params, IAUDENC_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IAUDENC_DynamicParams structure.
status must not be NULL, and must point to a valid IAUDENC_Status structure.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IAUDENC_Status::extendedError for more detailed further error conditions.
The documentation for this struct was generated from the following file:
  • iaudenc.h


Codec Engine Application Programming Interface (API): IAUDENC_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC_InArgs Struct Reference
[IAUDENC - XDM Audio Encoder Interface]

Defines the input arguments for all IAUDENC instance process function. More...

#include <iaudenc.h>

Data Fields

XDAS_Int32 size

Detailed Description

Defines the input arguments for all IAUDENC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::process()

Field Documentation

XDAS_Int32 IAUDENC_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

The documentation for this struct was generated from the following file:
  • iaudenc.h


Codec Engine Application Programming Interface (API): IAUDENC_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC_Obj Struct Reference
[IAUDENC - XDM Audio Encoder Interface]

This must be the first field of all IAUDENC instance objects. More...

#include <iaudenc.h>

Collaboration diagram for IAUDENC_Obj:
[legend]

Data Fields

struct IAUDENC_Fxns * fxns

Detailed Description

This must be the first field of all IAUDENC instance objects.

Field Documentation

struct IAUDENC_Fxns* IAUDENC_Obj::fxns
The documentation for this struct was generated from the following file:
  • iaudenc.h


Codec Engine Application Programming Interface (API): IAUDENC_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC_OutArgs Struct Reference
[IAUDENC - XDM Audio Encoder Interface]

Defines the run time output arguments for all IAUDENC instance objects. More...

#include <iaudenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesGenerated

Detailed Description

Defines the run time output arguments for all IAUDENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::process()

Field Documentation

XDAS_Int32 IAUDENC_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDENC_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IAUDENC_OutArgs::bytesGenerated

Number of bytes generated during the process() call.

The documentation for this struct was generated from the following file:
  • iaudenc.h


Codec Engine Application Programming Interface (API): IAUDENC_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC_Params Struct Reference
[IAUDENC - XDM Audio Encoder Interface]

Defines the creation time parameters for all IAUDENC instance objects. More...

#include <iaudenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 encodingPreset
XDAS_Int32 maxSampleRate
XDAS_Int32 maxBitrate
XDAS_Int32 maxNoOfCh
XDAS_Int32 dataEndianness

Detailed Description

Defines the creation time parameters for all IAUDENC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IAUDENC_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDENC_Params::encodingPreset

Encoding Preset. See XDM_EncodingPreset.

XDAS_Int32 IAUDENC_Params::maxSampleRate

Maximum sampling frequency in Hz. For example, if the maximum sampling frequency is 44.1 kHz, this field should be 44100.

XDAS_Int32 IAUDENC_Params::maxBitrate

Maximum bit rate in bits per second. For example, if the maximum bit rate is 128 kbps, set this field to 128000.

XDAS_Int32 IAUDENC_Params::maxNoOfCh

Maximum Channels. See IAUDIO_ChannelId.

XDAS_Int32 IAUDENC_Params::dataEndianness

Endianness of output data. See XDM_DataFormat.

The documentation for this struct was generated from the following file:
  • iaudenc.h


Codec Engine Application Programming Interface (API): IAUDENC_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IAUDENC_Status Struct Reference
[IAUDENC - XDM Audio Encoder Interface]

Defines instance status parameters (read-only). More...

#include <iaudenc.h>

Collaboration diagram for IAUDENC_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 frameLen
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IAUDENC_Fxns::control()

Field Documentation

XDAS_Int32 IAUDENC_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IAUDENC_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IAUDENC_Status::frameLen

Number of samples encoded per process() call.

XDM_AlgBufInfo IAUDENC_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • iaudenc.h


Codec Engine Application Programming Interface (API): IIMGDEC1_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC1_CodecClassConfig Struct Reference
[IMGDEC1 - Image Decoder Interface]

Definition of IIMGDEC1 codec class configurable parameters. More...

#include <imgdec1.h>

Data Fields

Bool | manageInBufsCache [16]
Bool | manageOutBufsCache [16]

Detailed Description

Definition of IIMGDEC1 codec class configurable parameters.

Field Documentation

Bool IIMGDEC1_CodecClassConfig::manageInBufsCache[16]
Bool IIMGDEC1_CodecClassConfig::manageOutBufsCache[16]
The documentation for this struct was generated from the following file:
  • imgdec1.h


Codec Engine Application Programming Interface (API): IIMGDEC1_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC1_DynamicParams Struct Reference
[IIMGDEC1 - XDM Image Decoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <iimgdec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numAU
XDAS_Int32 decodeHeader
XDAS_Int32 displayWidth

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::control()

Field Documentation

XDAS_Int32 IIMGDEC1_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC1_DynamicParams::numAU

Number of Access unit to decode. Set to XDM_DEFAULT to decode the entire frame.

XDAS_Int32 IIMGDEC1_DynamicParams::decodeHeader

Decode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_DecMode
XDAS_Int32 IIMGDEC1_DynamicParams::displayWidth

Pitch. If set to zero, imageWidth is used; else, this field (assuming it's larger than imageWidth) is used.

The documentation for this struct was generated from the following file:
  • iimgdec1.h


Codec Engine Application Programming Interface (API): IIMGDEC1_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC1_Fxns Struct Reference
[IIMGDEC1 - XDM Image Decoder Interface]

Defines all of the operations on IIMGDEC1 objects. More...

#include <iimgdec1.h>

Collaboration diagram for IIMGDEC1_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IIMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGDEC1_InArgs *inArgs, IIMGDEC1_OutArgs *outArgs)
Basic image decoding call.
XDAS_Int32(* | control )(IIMGDEC1_Handle handle, IIMGDEC1_Cmd id, IIMGDEC1_DynamicParams *params, IIMGDEC1_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on IIMGDEC1 objects.

Field Documentation

IALG_Fxns IIMGDEC1_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IIMGDEC1_Fxns::process)(IIMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGDEC1_InArgs *inArgs, IIMGDEC1_OutArgs *outArgs)

Basic image decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid IIMGDEC1_InArgs structure.
outArgs must not be NULL, and must point to a valid IIMGDEC1_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.
outBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
outBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least outBufs->descs[0].bufSize bytes in length.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.descs[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must appropriately set/clear the XDM1_BufDesc::descs[].accessMask field in both inBufs and outBufs. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IIMGDEC1_EOK

Success.

IIMGDEC1_EFAIL

General failure.

See IIMGDEC1_Status::extendedError for more detailed further error conditions.
IIMGDEC1_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IIMGDEC1_Fxns::control)(IIMGDEC1_Handle handle, IIMGDEC1_Cmd id, IIMGDEC1_DynamicParams *params, IIMGDEC1_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IIMGDEC1_DynamicParams structure.
status must not be NULL, and must point to a valid IIMGDEC1_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IIMGDEC1_EOK

Success.

IIMGDEC1_EFAIL

General failure.

See IIMGDEC1_Status::extendedError for more detailed further error conditions.
IIMGDEC1_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • iimgdec1.h


Codec Engine Application Programming Interface (API): IIMGDEC1_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC1_InArgs Struct Reference
[IIMGDEC1 - XDM Image Decoder Interface]

Defines the input arguments for all IIMGDEC1 instance process() function. More...

#include <iimgdec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numBytes

Detailed Description

Defines the input arguments for all IIMGDEC1 instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::process()

Field Documentation

XDAS_Int32 IIMGDEC1_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC1_InArgs::numBytes

Size of input data in bytes, provided to the algorithm for decoding.

The documentation for this struct was generated from the following file:
  • iimgdec1.h


Codec Engine Application Programming Interface (API): IIMGDEC1_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC1_Obj Struct Reference
[IIMGDEC1 - XDM Image Decoder Interface]

This must be the first field of all IIMGDEC1 instance objects. More...

#include <iimgdec1.h>

Collaboration diagram for IIMGDEC1_Obj:
[legend]

Data Fields

struct IIMGDEC1_Fxns * fxns

Detailed Description

This must be the first field of all IIMGDEC1 instance objects.

Field Documentation

struct IIMGDEC1_Fxns* IIMGDEC1_Obj::fxns
The documentation for this struct was generated from the following file:
  • iimgdec1.h


Codec Engine Application Programming Interface (API): IIMGDEC1_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC1_OutArgs Struct Reference
[IIMGDEC1 - XDM Image Decoder Interface]

Defines the run time output arguments for all IIMGDEC1 instance objects. More...

#include <iimgdec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesConsumed
XDAS_Int32 currentAU
XDAS_Int32 currentScan

Detailed Description

Defines the run time output arguments for all IIMGDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::process()

Field Documentation

XDAS_Int32 IIMGDEC1_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC1_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IIMGDEC1_OutArgs::bytesConsumed

Number of bytes consumed during the process() call.

XDAS_Int32 IIMGDEC1_OutArgs::currentAU

Current access unit number.

XDAS_Int32 IIMGDEC1_OutArgs::currentScan

Current scan number.

The documentation for this struct was generated from the following file:
  • iimgdec1.h


Codec Engine Application Programming Interface (API): IIMGDEC1_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC1_Params Struct Reference
[IIMGDEC1 - XDM Image Decoder Interface]

Defines the creation time parameters for all IIMGDEC1 instance objects. More...

#include <iimgdec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxScans
XDAS_Int32 dataEndianness
XDAS_Int32 forceChromaFormat

Detailed Description

Defines the creation time parameters for all IIMGDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IIMGDEC1_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC1_Params::maxHeight

Maximum image height.

XDAS_Int32 IIMGDEC1_Params::maxWidth

Maximum image width.

XDAS_Int32 IIMGDEC1_Params::maxScans

Maximum number of scans.

XDAS_Int32 IIMGDEC1_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IIMGDEC1_Params::forceChromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ChromaFormat.
The documentation for this struct was generated from the following file:
  • iimgdec1.h


Codec Engine Application Programming Interface (API): IIMGDEC1_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC1_Status Struct Reference
[IIMGDEC1 - XDM Image Decoder Interface]

Defines instance status parameters. More...

#include <iimgdec1.h>

Collaboration diagram for IIMGDEC1_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDAS_Int32 outputHeight
XDAS_Int32 outputWidth
XDAS_Int32 imageWidth
XDAS_Int32 outputChromaFormat
XDAS_Int32 totalAU
XDAS_Int32 totalScan
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::control()

Field Documentation

XDAS_Int32 IIMGDEC1_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC1_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IIMGDEC1_Status::data

Buffer descriptor for data passing.

Remarks:
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int32 IIMGDEC1_Status::outputHeight

Output height.

XDAS_Int32 IIMGDEC1_Status::outputWidth

Output width. Padding should be taken care of by the decoder.

XDAS_Int32 IIMGDEC1_Status::imageWidth

Image width.

XDAS_Int32 IIMGDEC1_Status::outputChromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ChromaFormat
XDAS_Int32 IIMGDEC1_Status::totalAU

Total number of Access Units.

XDAS_Int32 IIMGDEC1_Status::totalScan

Total number of scans.

XDM_AlgBufInfo IIMGDEC1_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • iimgdec1.h


Codec Engine Application Programming Interface (API): IIMGDEC_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC_CodecClassConfig Struct Reference
[IMGDEC - Image Decoder Interface]

Definition of IIMGDEC codec class configurable parameters. More...

#include <imgdec.h>

Data Fields

Bool | manageInBufsCache [16]
Bool | manageOutBufsCache [16]

Detailed Description

Definition of IIMGDEC codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Field Documentation

Bool IIMGDEC_CodecClassConfig::manageInBufsCache[16]
Bool IIMGDEC_CodecClassConfig::manageOutBufsCache[16]
The documentation for this struct was generated from the following file:
  • imgdec.h


Codec Engine Application Programming Interface (API): IIMGDEC_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC_DynamicParams Struct Reference
[IIMGDEC - XDM Image Decoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <iimgdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numAU
XDAS_Int32 decodeHeader
XDAS_Int32 displayWidth

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC_Fxns::control()

Field Documentation

XDAS_Int32 IIMGDEC_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC_DynamicParams::numAU

Number of Access unit to decode. Set to XDM_DEFAULT to decode the entire frame.

XDAS_Int32 IIMGDEC_DynamicParams::decodeHeader

Decode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_DecMode
XDAS_Int32 IIMGDEC_DynamicParams::displayWidth

Pitch. If set to zero, imageWidth is used; else, this field (assuming it's larger than imageWidth) is used.

The documentation for this struct was generated from the following file:
  • iimgdec.h


Codec Engine Application Programming Interface (API): IIMGDEC_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC_Fxns Struct Reference
[IIMGDEC - XDM Image Decoder Interface]

Defines all of the operations on IIMGDEC objects. More...

#include <iimgdec.h>

Collaboration diagram for IIMGDEC_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IIMGDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IIMGDEC_InArgs *inArgs, IIMGDEC_OutArgs *outArgs)
Basic image decoding call.
XDAS_Int32(* | control )(IIMGDEC_Handle handle, IIMGDEC_Cmd id, IIMGDEC_DynamicParams *params, IIMGDEC_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on IIMGDEC objects.

Field Documentation

IALG_Fxns IIMGDEC_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IIMGDEC_Fxns::process)(IIMGDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IIMGDEC_InArgs *inArgs, IIMGDEC_OutArgs *outArgs)

Basic image decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid IIMGDEC_InArgs structure.
outArgs must not be NULL, and must point to a valid IIMGDEC_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IIMGDEC_OutArgs::extendedError for more detailed further error conditions.
XDAS_Int32(* IIMGDEC_Fxns::control)(IIMGDEC_Handle handle, IIMGDEC_Cmd id, IIMGDEC_DynamicParams *params, IIMGDEC_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IIMGDEC_DynamicParams structure.
status must not be NULL, and must point to a valid IIMGDEC_Status structure.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IIMGDEC_Status::extendedError for more detailed further error conditions.
The documentation for this struct was generated from the following file:
  • iimgdec.h


Codec Engine Application Programming Interface (API): IIMGDEC_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC_InArgs Struct Reference
[IIMGDEC - XDM Image Decoder Interface]

Defines the input arguments for all IIMGDEC instance process() function. More...

#include <iimgdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numBytes

Detailed Description

Defines the input arguments for all IIMGDEC instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC_Fxns::process()

Field Documentation

XDAS_Int32 IIMGDEC_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC_InArgs::numBytes

Size of input data in bytes, provided to the algorithm for decoding.

The documentation for this struct was generated from the following file:
  • iimgdec.h


Codec Engine Application Programming Interface (API): IIMGDEC_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC_Obj Struct Reference
[IIMGDEC - XDM Image Decoder Interface]

This must be the first field of all IIMGDEC instance objects. More...

#include <iimgdec.h>

Collaboration diagram for IIMGDEC_Obj:
[legend]

Data Fields

struct IIMGDEC_Fxns * fxns

Detailed Description

This must be the first field of all IIMGDEC instance objects.

Field Documentation

struct IIMGDEC_Fxns* IIMGDEC_Obj::fxns
The documentation for this struct was generated from the following file:
  • iimgdec.h


Codec Engine Application Programming Interface (API): IIMGDEC_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC_OutArgs Struct Reference
[IIMGDEC - XDM Image Decoder Interface]

Defines the run time output arguments for all IIMGDEC instance objects. More...

#include <iimgdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesconsumed
XDAS_Int32 currentAU
XDAS_Int32 currentScan

Detailed Description

Defines the run time output arguments for all IIMGDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC1_Fxns::process()

Field Documentation

XDAS_Int32 IIMGDEC_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IIMGDEC_OutArgs::bytesconsumed

Number of bytes consumed during the process() call.

XDAS_Int32 IIMGDEC_OutArgs::currentAU

Current access unit number.

XDAS_Int32 IIMGDEC_OutArgs::currentScan

Current scan number.

The documentation for this struct was generated from the following file:
  • iimgdec.h


Codec Engine Application Programming Interface (API): IIMGDEC_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC_Params Struct Reference
[IIMGDEC - XDM Image Decoder Interface]

Defines the creation time parameters for all IIMGDEC instance objects. More...

#include <iimgdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxScans
XDAS_Int32 dataEndianness
XDAS_Int32 forceChromaFormat

Detailed Description

Defines the creation time parameters for all IIMGDEC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IIMGDEC_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC_Params::maxHeight

Maximum image height.

XDAS_Int32 IIMGDEC_Params::maxWidth

Maximum image width.

XDAS_Int32 IIMGDEC_Params::maxScans

Maximum number of scans.

XDAS_Int32 IIMGDEC_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IIMGDEC_Params::forceChromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ChromaFormat.
The documentation for this struct was generated from the following file:
  • iimgdec.h


Codec Engine Application Programming Interface (API): IIMGDEC_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGDEC_Status Struct Reference
[IIMGDEC - XDM Image Decoder Interface]

Defines instance status parameters (read-only). More...

#include <iimgdec.h>

Collaboration diagram for IIMGDEC_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 outputHeight
XDAS_Int32 outputWidth
XDAS_Int32 imageWidth
XDAS_Int32 outChromaformat
XDAS_Int32 totalAU
XDAS_Int32 totalScan
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGDEC_Fxns::control()

Field Documentation

XDAS_Int32 IIMGDEC_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGDEC_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IIMGDEC_Status::outputHeight

Output height.

XDAS_Int32 IIMGDEC_Status::outputWidth

Output width. Padding should be taken care of by the decoder.

XDAS_Int32 IIMGDEC_Status::imageWidth

Image width.

XDAS_Int32 IIMGDEC_Status::outChromaformat

Output chroma format.

See also:
XDM_ChromaFormat
XDAS_Int32 IIMGDEC_Status::totalAU

Total number of Access Units.

XDAS_Int32 IIMGDEC_Status::totalScan

Total number of scans.

XDM_AlgBufInfo IIMGDEC_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • iimgdec.h


Codec Engine Application Programming Interface (API): IIMGENC1_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC1_CodecClassConfig Struct Reference
[IMGENC1 - Image Encoder Interface]

Definition of IIMGENC1 codec class configurable parameters. More...

#include <imgenc1.h>

Data Fields

Bool | manageInBufsCache [16]
Bool | manageOutBufsCache [16]

Detailed Description

Definition of IIMGENC1 codec class configurable parameters.

Field Documentation

Bool IIMGENC1_CodecClassConfig::manageInBufsCache[16]
Bool IIMGENC1_CodecClassConfig::manageOutBufsCache[16]
The documentation for this struct was generated from the following file:
  • imgenc1.h


Codec Engine Application Programming Interface (API): IIMGENC1_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC1_DynamicParams Struct Reference
[IIMGENC1 - XDM Image Encoder Interface]

This structure defines the algorithm parameters that can be modified after creation via control() calls. More...

#include <iimgenc1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numAU
XDAS_Int32 inputChromaFormat
XDAS_Int32 inputHeight
XDAS_Int32 inputWidth
XDAS_Int32 captureWidth
XDAS_Int32 generateHeader
XDAS_Int32 qValue

Detailed Description

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::control()

Field Documentation

XDAS_Int32 IIMGENC1_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGENC1_DynamicParams::numAU

Number of Access unit to encode. Set to XDM_DEFAULT to encode the entire frame.

XDAS_Int32 IIMGENC1_DynamicParams::inputChromaFormat

Input chroma format.

See also:
XDM_ChromaFormat
XDAS_Int32 IIMGENC1_DynamicParams::inputHeight

Input frame height.

XDAS_Int32 IIMGENC1_DynamicParams::inputWidth

Input frame width.

XDAS_Int32 IIMGENC1_DynamicParams::captureWidth

Pitch. If set to zero, imageWidth is used; else, this field (assuming it's larger than imageWidth) is used.

XDAS_Int32 IIMGENC1_DynamicParams::generateHeader

Header generation mode.

See also:
XDM_EncMode
XDAS_Int32 IIMGENC1_DynamicParams::qValue

Quality factor for encoder. Set to a value between 0 (lowest quality) and 100 (highest quality).

The documentation for this struct was generated from the following file:
  • iimgenc1.h


Codec Engine Application Programming Interface (API): IIMGENC1_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC1_Fxns Struct Reference
[IIMGENC1 - XDM Image Encoder Interface]

Defines all of the operations on IIMGENC1 objects. More...

#include <iimgenc1.h>

Collaboration diagram for IIMGENC1_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IIMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs)
Basic image encoding call.
XDAS_Int32(* | control )(IIMGENC1_Handle handle, IIMGENC1_Cmd id, IIMGENC1_DynamicParams *params, IIMGENC1_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on IIMGENC1 objects.

Field Documentation

IALG_Fxns IIMGENC1_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IIMGENC1_Fxns::process)(IIMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs)

Basic image encoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid IIMGENC1_InArgs structure.
outArgs must not be NULL, and must point to a valid IIMGENC1_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.
outBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
outBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least outBufs->descs[0].bufSize bytes in length.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.descs[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must appropriately set/clear the XDM1_BufDesc::descs[].accessMask field in both inBufs and outBufs. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IIMGENC1_EOK

Success.

IIMGENC1_EFAIL

General failure.

See IIMGENC1_Status::extendedError for more detailed further error conditions.
IIMGENC1_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IIMGENC1_Fxns::control)(IIMGENC1_Handle handle, IIMGENC1_Cmd id, IIMGENC1_DynamicParams *params, IIMGENC1_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IIMGENC1_DynamicParams structure.
status must not be NULL, and must point to a valid IIMGENC1_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IIMGENC1_EOK

Success.

IIMGENC1_EFAIL

General failure.

See IIMGDEN1_Status::extendedError for more detailed further error conditions.
IIMGENC1_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • iimgenc1.h


Codec Engine Application Programming Interface (API): IIMGENC1_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC1_InArgs Struct Reference
[IIMGENC1 - XDM Image Encoder Interface]

Defines the input arguments for all IIMGENC1 instance process() function. More...

#include <iimgenc1.h>

Data Fields

XDAS_Int32 size

Detailed Description

Defines the input arguments for all IIMGENC1 instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::process()

Field Documentation

XDAS_Int32 IIMGENC1_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

The documentation for this struct was generated from the following file:
  • iimgenc1.h


Codec Engine Application Programming Interface (API): IIMGENC1_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC1_Obj Struct Reference
[IIMGENC1 - XDM Image Encoder Interface]

This must be the first field of all IIMGENC1 instance objects. More...

#include <iimgenc1.h>

Collaboration diagram for IIMGENC1_Obj:
[legend]

Data Fields

struct IIMGENC1_Fxns * fxns

Detailed Description

This must be the first field of all IIMGENC1 instance objects.

Field Documentation

struct IIMGENC1_Fxns* IIMGENC1_Obj::fxns
The documentation for this struct was generated from the following file:
  • iimgenc1.h


Codec Engine Application Programming Interface (API): IIMGENC1_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC1_OutArgs Struct Reference
[IIMGENC1 - XDM Image Encoder Interface]

Defines the run time output arguments for all IIMGENC1 instance objects. More...

#include <iimgenc1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesGenerated
XDAS_Int32 currentAU

Detailed Description

Defines the run time output arguments for all IIMGENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::process()

Field Documentation

XDAS_Int32 IIMGENC1_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGENC1_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IIMGENC1_OutArgs::bytesGenerated

Number of bytes generated during the process() call.

XDAS_Int32 IIMGENC1_OutArgs::currentAU

Current access unit number.

The documentation for this struct was generated from the following file:
  • iimgenc1.h


Codec Engine Application Programming Interface (API): IIMGENC1_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC1_Params Struct Reference
[IIMGENC1 - XDM Image Encoder Interface]

Defines the creation time parameters for all IIMGENC1 instance objects. More...

#include <iimgenc1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxScans
XDAS_Int32 dataEndianness
XDAS_Int32 forceChromaFormat

Detailed Description

Defines the creation time parameters for all IIMGENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IIMGENC1_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGENC1_Params::maxHeight

Maximum height.

XDAS_Int32 IIMGENC1_Params::maxWidth

Maximum width.

XDAS_Int32 IIMGENC1_Params::maxScans

Maximum number of scans.

XDAS_Int32 IIMGENC1_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IIMGENC1_Params::forceChromaFormat

Force encoding in given Chroma format.

See also:
XDM_ChromaFormat
The documentation for this struct was generated from the following file:
  • iimgenc1.h


Codec Engine Application Programming Interface (API): IIMGENC1_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC1_Status Struct Reference
[IIMGENC1 - XDM Image Encoder Interface]

Defines instance status parameters. More...

#include <iimgenc1.h>

Collaboration diagram for IIMGENC1_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDAS_Int32 totalAU
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC1_Fxns::control()

Field Documentation

XDAS_Int32 IIMGENC1_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGENC1_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IIMGENC1_Status::data

Buffer descriptor for data passing.

Remarks:
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int32 IIMGENC1_Status::totalAU

Total number of Access Units.

XDM_AlgBufInfo IIMGENC1_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • iimgenc1.h


Codec Engine Application Programming Interface (API): IIMGENC_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC_CodecClassConfig Struct Reference
[IMGENC - Image Encoder Interface]

Definition of IIMGENC codec class configurable parameters. More...

#include <imgenc.h>

Data Fields

Bool | manageInBufsCache [16]
Bool | manageOutBufsCache [16]

Detailed Description

Definition of IIMGENC codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Field Documentation

Bool IIMGENC_CodecClassConfig::manageInBufsCache[16]
Bool IIMGENC_CodecClassConfig::manageOutBufsCache[16]
The documentation for this struct was generated from the following file:
  • imgenc.h


Codec Engine Application Programming Interface (API): IIMGENC_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC_DynamicParams Struct Reference
[IIMGENC - XDM Image Encoder Interface]

This structure defines the algorithm parameters that can be modified after creation via control() calls. More...

#include <iimgenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numAU
XDAS_Int32 inputChromaFormat
XDAS_Int32 inputHeight
XDAS_Int32 inputWidth
XDAS_Int32 captureWidth
XDAS_Int32 generateHeader
XDAS_Int32 qValue

Detailed Description

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::control()

Field Documentation

XDAS_Int32 IIMGENC_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGENC_DynamicParams::numAU

Number of Access unit to encode. Set to XDM_DEFAULT to encode the entire frame.

XDAS_Int32 IIMGENC_DynamicParams::inputChromaFormat

Input chroma format.

See also:
XDM_ChromaFormat
XDAS_Int32 IIMGENC_DynamicParams::inputHeight

Input frame height.

XDAS_Int32 IIMGENC_DynamicParams::inputWidth

Input frame width.

XDAS_Int32 IIMGENC_DynamicParams::captureWidth

Pitch. If set to zero, imageWidth is used; else, this field (assuming it's larger than imageWidth) is used.

XDAS_Int32 IIMGENC_DynamicParams::generateHeader

Header generation mode.

See also:
XDM_EncMode
XDAS_Int32 IIMGENC_DynamicParams::qValue

Quality factor for encoder. Set to a value between 0 (lowest quality) and 100 (highest quality).

The documentation for this struct was generated from the following file:
  • iimgenc.h


Codec Engine Application Programming Interface (API): IIMGENC_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC_Fxns Struct Reference
[IIMGENC - XDM Image Encoder Interface]

Defines all of the operations on IIMGENC objects. More...

#include <iimgenc.h>

Collaboration diagram for IIMGENC_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IIMGENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IIMGENC_InArgs *inArgs, IIMGENC_OutArgs *outArgs)
Basic image encoding call.
XDAS_Int32(* | control )(IIMGENC_Handle handle, IIMGENC_Cmd id, IIMGENC_DynamicParams *params, IIMGENC_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on IIMGENC objects.

Field Documentation

IALG_Fxns IIMGENC_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IIMGENC_Fxns::process)(IIMGENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IIMGENC_InArgs *inArgs, IIMGENC_OutArgs *outArgs)

Basic image encoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid IIMGENC_InArgs structure.
outArgs must not be NULL, and must point to a valid IIMGENC_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IIMGENC_OutArgs::extendedError for more detailed further error conditions.
XDAS_Int32(* IIMGENC_Fxns::control)(IIMGENC_Handle handle, IIMGENC_Cmd id, IIMGENC_DynamicParams *params, IIMGENC_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IIMGENC_DynamicParams structure.
status must not be NULL, and must point to a valid IIMGENC_Status structure.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IIMGENC_Status::extendedError for more detailed further error conditions.
The documentation for this struct was generated from the following file:
  • iimgenc.h


Codec Engine Application Programming Interface (API): IIMGENC_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC_InArgs Struct Reference
[IIMGENC - XDM Image Encoder Interface]

Defines the input arguments for all IIMGENC instance process() function. More...

#include <iimgenc.h>

Data Fields

XDAS_Int32 size

Detailed Description

Defines the input arguments for all IIMGENC instance process() function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::process()

Field Documentation

XDAS_Int32 IIMGENC_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

The documentation for this struct was generated from the following file:
  • iimgenc.h


Codec Engine Application Programming Interface (API): IIMGENC_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC_Obj Struct Reference
[IIMGENC - XDM Image Encoder Interface]

This must be the first field of all IIMGENC instance objects. More...

#include <iimgenc.h>

Collaboration diagram for IIMGENC_Obj:
[legend]

Data Fields

struct IIMGENC_Fxns * fxns

Detailed Description

This must be the first field of all IIMGENC instance objects.

Field Documentation

struct IIMGENC_Fxns* IIMGENC_Obj::fxns
The documentation for this struct was generated from the following file:
  • iimgenc.h


Codec Engine Application Programming Interface (API): IIMGENC_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC_OutArgs Struct Reference
[IIMGENC - XDM Image Encoder Interface]

Defines the run time output arguments for all IIMGENC instance objects. More...

#include <iimgenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesGenerated
XDAS_Int32 currentAU

Detailed Description

Defines the run time output arguments for all IIMGENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::process()

Field Documentation

XDAS_Int32 IIMGENC_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGENC_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IIMGENC_OutArgs::bytesGenerated

Number of bytes generated during the process() call.

XDAS_Int32 IIMGENC_OutArgs::currentAU

Current access unit number.

The documentation for this struct was generated from the following file:
  • iimgenc.h


Codec Engine Application Programming Interface (API): IIMGENC_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC_Params Struct Reference
[IIMGENC - XDM Image Encoder Interface]

Defines the creation time parameters for all IIMGENC instance objects. More...

#include <iimgenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxScans
XDAS_Int32 dataEndianness
XDAS_Int32 forceChromaFormat

Detailed Description

Defines the creation time parameters for all IIMGENC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IIMGENC_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGENC_Params::maxHeight

Maximum height.

XDAS_Int32 IIMGENC_Params::maxWidth

Maximum width.

XDAS_Int32 IIMGENC_Params::maxScans

Maximum number of scans.

XDAS_Int32 IIMGENC_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IIMGENC_Params::forceChromaFormat

Force encoding in given Chroma format.

See also:
XDM_ChromaFormat
The documentation for this struct was generated from the following file:
  • iimgenc.h


Codec Engine Application Programming Interface (API): IIMGENC_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IIMGENC_Status Struct Reference
[IIMGENC - XDM Image Encoder Interface]

Defines instance status parameters (read-only). More...

#include <iimgenc.h>

Collaboration diagram for IIMGENC_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 totalAU
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IIMGENC_Fxns::control()

Field Documentation

XDAS_Int32 IIMGENC_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IIMGENC_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IIMGENC_Status::totalAU

Total number of Access Units.

XDM_AlgBufInfo IIMGENC_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • iimgenc.h


Codec Engine Application Programming Interface (API): ISPHDEC1_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC1_DynamicParams Struct Reference
[ISPHDEC1 - XDM Speech Decoder Interface]

This structure defines the codec parameters that can be modified after creation via ISPHDEC1_Fxns.control(). More...

#include <isphdec1.h>

Data Fields

XDAS_Int16 size
XDAS_Int16 postFilter

Detailed Description

This structure defines the codec parameters that can be modified after creation via ISPHDEC1_Fxns.control().

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC1_Fxns::control()

Field Documentation

XDAS_Int16 ISPHDEC1_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHDEC1_DynamicParams::postFilter

Assign the postFilter setting.

See also:
ISPEECH1_PostFilter
ISPHDEC1_Status.postFilter
The documentation for this struct was generated from the following file:
  • isphdec1.h


Codec Engine Application Programming Interface (API): ISPHDEC1_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC1_Fxns Struct Reference
[ISPHDEC1 - XDM Speech Decoder Interface]

Defines all of the operations on ISPHDEC1 objects. More...

#include <isphdec1.h>

Collaboration diagram for ISPHDEC1_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(ISPHDEC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, ISPHDEC1_InArgs *inArgs, ISPHDEC1_OutArgs *outArgs)
Basic speech/voice decoding call.
XDAS_Int32(* | control )(ISPHDEC1_Handle handle, ISPHDEC1_Cmd id, ISPHDEC1_DynamicParams *params, ISPHDEC1_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on ISPHDEC1 objects.

Field Documentation

IALG_Fxns ISPHDEC1_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* ISPHDEC1_Fxns::process)(ISPHDEC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, ISPHDEC1_InArgs *inArgs, ISPHDEC1_OutArgs *outArgs)

Basic speech/voice decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBuf | Input buffer descriptor.
[in,out] | outBuf | Output buffer descriptor.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
If inArgs->data is not used in the process() call, the application must set it to NULL. The algorithm must therefore check this field for NULL before accessing it.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid ISPHDEC1_InArgs structure.
outArgs must not be NULL, and must point to a valid ISPHDEC1_OutArgs structure.
inBuf must not be NULL, and must point to a valid XDM1_SingleBufDesc structure.
inBuf->buf must not be NULL, and must point to a valid buffer of data that is at least inBuf->bufSize bytes in length.
outBuf must not be NULL, and must point to a valid XDM1_SingleBufDesc structure.
outBuf->buf must not be NULL, and must point to a valid buffer of data that is at least outBuf->bufSize bytes in length.
The buffers in inBuf and outBuf are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBuf, with the exception of inBuf->accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must set outBuf->bufSize to the size of valid data returned in outBuf->buf .
The algorithm must appropriately set/clear the XDM1_SingleBufDesc.accessMask field in both inBuf and outBuf. For example, if the algorithm only read from inBuf->buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBuf and outBuf are owned by the calling application.
Return values:
ISPHDEC1_EOK

Success.

ISPHDEC1_EFAIL

General failure.

See ISPHDEC1_Status::extendedError for more detailed further error conditions.
ISPHDEC1_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* ISPHDEC1_Fxns::control)(ISPHDEC1_Handle handle, ISPHDEC1_Cmd id, ISPHDEC1_DynamicParams *params, ISPHDEC1_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid ISPHDEC1_DynamicParams structure.
status must not be NULL, and must point to a valid ISPHDEC1_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
ISPHDEC1_EOK

Success.

ISPHDEC1_EFAIL

General failure.

See ISPHDEC1_Status::extendedError for more detailed further error conditions.
ISPHDEC1_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • isphdec1.h


Codec Engine Application Programming Interface (API): ISPHDEC1_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC1_InArgs Struct Reference
[ISPHDEC1 - XDM Speech Decoder Interface]

Defines the input arguments for all ISPHDEC1 instance process function. More...

#include <isphdec1.h>

Collaboration diagram for ISPHDEC1_InArgs:
[legend]

Data Fields

XDAS_Int16 size
XDAS_Int16 frameType
XDM1_SingleBufDesc data

Detailed Description

Defines the input arguments for all ISPHDEC1 instance process function.

Field Documentation

XDAS_Int16 ISPHDEC1_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHDEC1_InArgs::frameType

Frame type of this buffer.

See also:
ISPHDEC1_FrameType
XDM1_SingleBufDesc ISPHDEC1_InArgs::data

Raw data output for data transmission.

The documentation for this struct was generated from the following file:
  • isphdec1.h


Codec Engine Application Programming Interface (API): ISPHDEC1_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC1_Obj Struct Reference
[ISPHDEC1 - XDM Speech Decoder Interface]

This must be the first field of all ISPHDEC1 instance objects. More...

#include <isphdec1.h>

Collaboration diagram for ISPHDEC1_Obj:
[legend]

Data Fields

struct ISPHDEC1_Fxns * fxns

Detailed Description

This must be the first field of all ISPHDEC1 instance objects.

Field Documentation

struct ISPHDEC1_Fxns* ISPHDEC1_Obj::fxns
The documentation for this struct was generated from the following file:
  • isphdec1.h


Codec Engine Application Programming Interface (API): ISPHDEC1_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC1_OutArgs Struct Reference
[ISPHDEC1 - XDM Speech Decoder Interface]

Defines the run time output arguments for all ISPHDEC1 instance objects. More...

#include <isphdec1.h>

Data Fields

XDAS_Int16 size
XDAS_Int16 dataSize
XDAS_Int32 extendedError

Detailed Description

Defines the run time output arguments for all ISPHDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC1_Fxns::process()

Field Documentation

XDAS_Int16 ISPHDEC1_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHDEC1_OutArgs::dataSize

Size of raw data output in bits.

XDAS_Int32 ISPHDEC1_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
The documentation for this struct was generated from the following file:
  • isphdec1.h


Codec Engine Application Programming Interface (API): ISPHDEC1_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC1_Params Struct Reference
[ISPHDEC1 - XDM Speech Decoder Interface]

Defines the creation time parameters for all ISPHDEC1 instance objects. More...

#include <isphdec1.h>

Data Fields

XDAS_Int16 size
XDAS_Int16 compandingLaw
XDAS_Int16 packingType
XDAS_Int16 codecSelection
XDAS_Int16 bitRate
XDAS_Int16 reserved
XDAS_Int8 ** tablesPtr

Detailed Description

Defines the creation time parameters for all ISPHDEC1 instance objects.

Remarks:
Some of the fields in this structure are optional and depend on the class of speech decoder you're creating.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int16 ISPHDEC1_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHDEC1_Params::compandingLaw

Optional, codec-specific companding law. See your codec-specific interface documentation options.

See also:
ISPEECH1_PCM_CompandingLaw
ISPEECH1_G726_CompandingLaw
XDAS_Int16 ISPHDEC1_Params::packingType

Optional, codec-specific packing type. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_PackingType
ISPEECH1_G726_PackingType
ISPEECH1_WBAMR_PackingType
XDAS_Int16 ISPHDEC1_Params::codecSelection

Optional, codec-specific selection. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_CodecSelect
ISPHDEC1_Status.codecSelection
XDAS_Int16 ISPHDEC1_Params::bitRate

Optional, codec-specific bit rate. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_BitRate
ISPEECH1_G723_BitRate
ISPEECH1_G726_BitRate
ISPEECH1_WBAMR_BitRate
XDAS_Int16 ISPHDEC1_Params::reserved

Reserved - serves to pad this structure.

XDAS_Int8** ISPHDEC1_Params::tablesPtr

Optional pointer to the codec's initialization tables.

The documentation for this struct was generated from the following file:
  • isphdec1.h


Codec Engine Application Programming Interface (API): ISPHDEC1_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC1_Status Struct Reference
[ISPHDEC1 - XDM Speech Decoder Interface]

Defines instance status parameters. More...

#include <isphdec1.h>

Collaboration diagram for ISPHDEC1_Status:
[legend]

Data Fields

XDAS_Int16 size
XDAS_Int16 postFilter
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDAS_Int16 compandingLaw
XDAS_Int16 packingType
XDM_AlgBufInfo bufInfo
XDAS_Int16 codecSelection
XDAS_Int16 bitRate

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC1_Fxns::control()

Field Documentation

XDAS_Int16 ISPHDEC1_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHDEC1_Status::postFilter

Provides the current postFilter setting.

See also:
ISPEECH1_PostFilter
XDAS_Int32 ISPHDEC1_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc ISPHDEC1_Status::data

Buffer descriptor for data passing.

Remarks:
If this field is not used, the application must set data.buf to NULL.
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the ISPHDEC1_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int16 ISPHDEC1_Status::compandingLaw

Optional, codec-specific companding law. See your codec-specific interface documentation options.

See also:
ISPEECH1_PCM_CompandingLaw
ISPEECH1_G726_CompandingLaw
XDAS_Int16 ISPHDEC1_Status::packingType

Optional, codec-specific packing type. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_PackingType
ISPEECH1_G726_PackingType
ISPEECH1_WBAMR_PackingType
XDM_AlgBufInfo ISPHDEC1_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
XDAS_Int16 ISPHDEC1_Status::codecSelection

Optional, codec-specific codec selection. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_CodecSelect
ISPHDEC1_Params.codecSelection
XDAS_Int16 ISPHDEC1_Status::bitRate

Optional, codec-specific bit rate. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_BitRate
ISPEECH1_G723_BitRate
ISPEECH1_G726_BitRate
ISPEECH1_WBAMR_BitRate
The documentation for this struct was generated from the following file:
  • isphdec1.h


Codec Engine Application Programming Interface (API): ISPHDEC_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC_DynamicParams Struct Reference
[ISPHDEC - XDM Speech Decoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <isphdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 postFilter

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::control()

Field Documentation

XDAS_Int32 ISPHDEC_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHDEC_DynamicParams::postFilter

Post filter enabled flag. Set to 1 to enable, 0 to disable.

The documentation for this struct was generated from the following file:
  • isphdec.h


Codec Engine Application Programming Interface (API): ISPHDEC_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC_Fxns Struct Reference
[ISPHDEC - XDM Speech Decoder Interface]

Defines all of the operations on ISPHDEC objects. More...

#include <isphdec.h>

Collaboration diagram for ISPHDEC_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(ISPHDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, ISPHDEC_InArgs *inArgs, ISPHDEC_OutArgs *outArgs)
Basic speech/voice decoding call.
XDAS_Int32(* | control )(ISPHDEC_Handle handle, ISPHDEC_Cmd id, ISPHDEC_DynamicParams *params, ISPHDEC_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on ISPHDEC objects.

Field Documentation

IALG_Fxns ISPHDEC_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* ISPHDEC_Fxns::process)(ISPHDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, ISPHDEC_InArgs *inArgs, ISPHDEC_OutArgs *outArgs)

Basic speech/voice decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid ISPHDEC_InArgs structure.
outArgs must not be NULL, and must point to a valid ISPHDEC_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
inBufs.buf[0] must not be NULL, and must point to a valid buffer of data that is at least inBufs.bufSizes[0] bytes in length.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs.buf[0] must not be NULL, and must point to a valid buffer of data that is at least outBufs.bufSizes[0] bytes in length.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inBufs. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See ISPHDEC_OutArgs::extendedError for more detailed further error conditions.
XDAS_Int32(* ISPHDEC_Fxns::control)(ISPHDEC_Handle handle, ISPHDEC_Cmd id, ISPHDEC_DynamicParams *params, ISPHDEC_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid ISPHDEC_DynamicParams structure.
status must not be NULL, and must point to a valid ISPHDEC_Status structure.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See ISPHDEC_Status::extendedError for more detailed further error conditions.
The documentation for this struct was generated from the following file:
  • isphdec.h


Codec Engine Application Programming Interface (API): ISPHDEC_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC_InArgs Struct Reference
[ISPHDEC - XDM Speech Decoder Interface]

Defines the input arguments for all ISPHDEC instance process function. More...

#include <isphdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 frameType
XDAS_Int32 inBufferSize
XDAS_Int32 bfiFlag

Detailed Description

Defines the input arguments for all ISPHDEC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::process()

Field Documentation

XDAS_Int32 ISPHDEC_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHDEC_InArgs::frameType

Input frame type.

XDAS_Int32 ISPHDEC_InArgs::inBufferSize

Size of valid input data in bytes to be processed.

XDAS_Int32 ISPHDEC_InArgs::bfiFlag

Bad frame indicator. BFI = 1 indicates bad frame.

The documentation for this struct was generated from the following file:
  • isphdec.h


Codec Engine Application Programming Interface (API): ISPHDEC_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC_Obj Struct Reference
[ISPHDEC - XDM Speech Decoder Interface]

This must be the first field of all ISPHDEC instance objects. More...

#include <isphdec.h>

Collaboration diagram for ISPHDEC_Obj:
[legend]

Data Fields

struct ISPHDEC_Fxns * fxns

Detailed Description

This must be the first field of all ISPHDEC instance objects.

Field Documentation

struct ISPHDEC_Fxns* ISPHDEC_Obj::fxns
The documentation for this struct was generated from the following file:
  • isphdec.h


Codec Engine Application Programming Interface (API): ISPHDEC_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC_OutArgs Struct Reference
[ISPHDEC - XDM Speech Decoder Interface]

Defines the run time output arguments for all ISPHDEC instance objects. More...

#include <isphdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 mode

Detailed Description

Defines the run time output arguments for all ISPHDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::process()

Field Documentation

XDAS_Int32 ISPHDEC_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHDEC_OutArgs::mode

Speech voice mode. See ISPEECH_VoiceMode.

The documentation for this struct was generated from the following file:
  • isphdec.h


Codec Engine Application Programming Interface (API): ISPHDEC_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC_Params Struct Reference
[ISPHDEC - XDM Speech Decoder Interface]

Defines the creation time parameters for all ISPHDEC instance objects. More...

#include <isphdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 dataEnable
XDAS_Int32 compandingLaw
XDAS_Int32 packingType

Detailed Description

Defines the creation time parameters for all ISPHDEC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 ISPHDEC_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHDEC_Params::dataEnable

TTY/DTMF enabled flag. Set to 1 to enable, 0 to disable.

XDAS_Int32 ISPHDEC_Params::compandingLaw

Companding Law.

See also:
ISPEECH_CompoundLaw.
XDAS_Int32 ISPHDEC_Params::packingType

Packing Format Option (for codecs that support multiple packing formats - used for selection, 0, 1, 2...)

The documentation for this struct was generated from the following file:
  • isphdec.h


Codec Engine Application Programming Interface (API): ISPHDEC_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHDEC_Status Struct Reference
[ISPHDEC - XDM Speech Decoder Interface]

Defines instance status parameters (read-only). More...

#include <isphdec.h>

Collaboration diagram for ISPHDEC_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 postFilter
XDAS_Int32 dataMode
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHDEC_Fxns::control()

Field Documentation

XDAS_Int32 ISPHDEC_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHDEC_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 ISPHDEC_Status::postFilter

Post filter enabled flag. Set to 1 to enable, 0 to disable.

XDAS_Int32 ISPHDEC_Status::dataMode

To indicate in bavd data reception

XDM_AlgBufInfo ISPHDEC_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo.
The documentation for this struct was generated from the following file:
  • isphdec.h


Codec Engine Application Programming Interface (API): ISPHENC1_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC1_DynamicParams Struct Reference
[ISPHENC1 - XDM Speech Encoder Interface]

This structure defines the codec parameters that can be modified after creation via ISPHENC1_Fxns.control(). More...

#include <isphenc1.h>

Data Fields

XDAS_Int16 size
XDAS_Int16 frameSize
XDAS_Int16 bitRate
XDAS_Int16 mode
XDAS_Int16 vadFlag
XDAS_Int16 noiseSuppressionMode
XDAS_Int16 ttyTddMode
XDAS_Int16 dtmfMode
XDAS_Int16 dataTransmit
XDAS_Int16 reserved

Detailed Description

This structure defines the codec parameters that can be modified after creation via ISPHENC1_Fxns.control().

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int16 ISPHENC1_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHENC1_DynamicParams::frameSize

Input frame size in bytes for sample based codecs.

XDAS_Int16 ISPHENC1_DynamicParams::bitRate

Optional, codec-specific bit rate. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_BitRate
ISPEECH1_G723_BitRate
ISPEECH1_WBAMR_BitRate
XDAS_Int16 ISPHENC1_DynamicParams::mode

Optional, codec-specific mode. See your codec-specific interface documentation options.

See also:
ISPEECH1_EVRC_Mode
ISPEECH1_SMV_Mode
XDAS_Int16 ISPHENC1_DynamicParams::vadFlag

Voice Activity Detection (VAD) setting.

See also:
ISPEECH1_VADFlag.
XDAS_Int16 ISPHENC1_DynamicParams::noiseSuppressionMode

Optional, codec-specific noise suppression mode. See your codec-specific interface documentation options.

See also:
ISPEECH1_EVRC_NoisePreProc
ISPEECH1_G723_NoisePreProc
ISPEECH1_SMV_NoisePreProc
XDAS_Int16 ISPHENC1_DynamicParams::ttyTddMode

Optional, codec-specific TTY mode. See your codec-specific interface documentation options.

See also:
ISPEECH1_EVRC_TTYMode
ISPEECH1_SMV_TTYMode
XDAS_Int16 ISPHENC1_DynamicParams::dtmfMode

Optional, codec-specific DTMF mode. See your codec-specific interface documentation options.

See also:
ISPEECH1_SMV_DTMFMode
XDAS_Int16 ISPHENC1_DynamicParams::dataTransmit

Optional, codec-specific data transmit mode. See your codec-specific interface documentation options.

See also:
ISPEECH1_SMV_DataMode
XDAS_Int16 ISPHENC1_DynamicParams::reserved

Reserved - serves to pad this structure.

The documentation for this struct was generated from the following file:
  • isphenc1.h


Codec Engine Application Programming Interface (API): ISPHENC1_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC1_Fxns Struct Reference
[ISPHENC1 - XDM Speech Encoder Interface]

Defines all of the operations on ISPHENC1 objects. More...

#include <isphenc1.h>

Collaboration diagram for ISPHENC1_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(ISPHENC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, ISPHENC1_InArgs *inArgs, ISPHENC1_OutArgs *outArgs)
Basic speech/voice decoding call.
XDAS_Int32(* | control )(ISPHENC1_Handle handle, ISPHENC1_Cmd id, ISPHENC1_DynamicParams *params, ISPHENC1_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on ISPHENC1 objects.

Field Documentation

IALG_Fxns ISPHENC1_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* ISPHENC1_Fxns::process)(ISPHENC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, ISPHENC1_InArgs *inArgs, ISPHENC1_OutArgs *outArgs)

Basic speech/voice decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBuf | Input buffer descriptor.
[in,out] | outBuf | Output buffer descriptor.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
If inArgs->data is not used in the process() call, the application must set it to NULL. The algorithm must therefore check this field for NULL before accessing it.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid ISPHENC1_InArgs structure.
outArgs must not be NULL, and must point to a valid ISPHENC1_OutArgs structure.
inBuf must not be NULL, and must point to a valid XDM1_SingleBufDesc structure.
inBuf->buf must not be NULL, and must point to a valid buffer of data that is at least inBuf->bufSize bytes in length.
outBuf must not be NULL, and must point to a valid XDM1_SingleBufDesc structure.
outBuf->buf must not be NULL, and must point to a valid buffer of data that is at least outBuf->bufSize bytes in length.
The buffers in inBuf and outBuf are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs, with the optional exception of inArgs->data.
The algorithm must not modify the contents of inBuf, with the exception of inBuf->accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must set outBuf->bufSize to the size of valid data returned in outBuf->buf .
The algorithm must appropriately set/clear the XDM1_SingleBufDesc.accessMask field in both inBuf and outBuf. For example, if the algorithm only read from inBuf->buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBuf and outBuf are owned by the calling application.
Return values:
ISPHENC1_EOK

Success.

ISPHENC1_EFAIL

General failure.

See ISPHENC1_Status::extendedError for more detailed further error conditions.
ISPHENC1_EUNSUPPORTED

Request is unsupported.

ISPHENC1_ENOOUTPUT

This value signifies no output being available at encoder, for example in the case of intermediate calls in 10msec frame size execution.

XDAS_Int32(* ISPHENC1_Fxns::control)(ISPHENC1_Handle handle, ISPHENC1_Cmd id, ISPHENC1_DynamicParams *params, ISPHENC1_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid ISPHENC1_DynamicParams structure.
status must not be NULL, and must point to a valid ISPHENC1_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
ISPHENC1_EOK

Success.

ISPHENC1_EFAIL

General failure.

See ISPHENC1_Status::extendedError for more detailed further error conditions.
ISPHENC1_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • isphenc1.h


Codec Engine Application Programming Interface (API): ISPHENC1_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC1_InArgs Struct Reference
[ISPHENC1 - XDM Speech Encoder Interface]

Defines the input arguments for all ISPHENC1 instance process function. More...

#include <isphenc1.h>

Collaboration diagram for ISPHENC1_InArgs:
[legend]

Data Fields

XDAS_Int16 size
XDAS_Int16 nullTrafficChannel
XDM1_SingleBufDesc data

Detailed Description

Defines the input arguments for all ISPHENC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int16 ISPHENC1_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHENC1_InArgs::nullTrafficChannel

Enable/disable the null traffic channel.

Remarks:
This field is used for enabling/disabling the null traffic channel frames. When enabled, CDMA encoders produce 1/8th rate frames with all bits set to 1 without encoding the actual input.
See also:
ISPEECH1_NullTrafficMode
ISPEECH1_EVRC_NullTrafficMode
XDM1_SingleBufDesc ISPHENC1_InArgs::data

Raw data input for data transmission.

The documentation for this struct was generated from the following file:
  • isphenc1.h


Codec Engine Application Programming Interface (API): ISPHENC1_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC1_Obj Struct Reference
[ISPHENC1 - XDM Speech Encoder Interface]

This must be the first field of all ISPHENC1 instance objects. More...

#include <isphenc1.h>

Collaboration diagram for ISPHENC1_Obj:
[legend]

Data Fields

struct ISPHENC1_Fxns * fxns

Detailed Description

This must be the first field of all ISPHENC1 instance objects.

Field Documentation

struct ISPHENC1_Fxns* ISPHENC1_Obj::fxns
The documentation for this struct was generated from the following file:
  • isphenc1.h


Codec Engine Application Programming Interface (API): ISPHENC1_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC1_OutArgs Struct Reference
[ISPHENC1 - XDM Speech Encoder Interface]

Defines the run time output arguments for all ISPHENC1 instance objects. More...

#include <isphenc1.h>

Data Fields

XDAS_Int16 size
XDAS_Int16 frameType
XDAS_Int32 extendedError

Detailed Description

Defines the run time output arguments for all ISPHENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC1_Fxns::process()

Field Documentation

XDAS_Int16 ISPHENC1_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHENC1_OutArgs::frameType

Encoder frame types.

See also:
ISPHENC1_FrameType
XDAS_Int32 ISPHENC1_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
The documentation for this struct was generated from the following file:
  • isphenc1.h


Codec Engine Application Programming Interface (API): ISPHENC1_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC1_Params Struct Reference
[ISPHENC1 - XDM Speech Encoder Interface]

Defines the creation time parameters for all ISPHENC1 instance objects. More...

#include <isphenc1.h>

Data Fields

XDAS_Int16 size
XDAS_Int16 frameSize
XDAS_Int16 compandingLaw
XDAS_Int16 packingType
XDAS_Int16 vadSelection
XDAS_Int16 codecSelection
XDAS_Int16 bitRate
XDAS_Int16 reserved
XDAS_Int8 ** tablesPtr

Detailed Description

Defines the creation time parameters for all ISPHENC1 instance objects.

Remarks:
Some of the fields in this structure are optional and depend on the class of speech encoder you're creating.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int16 ISPHENC1_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHENC1_Params::frameSize

Input frame size in bytes for sample based codecs.

XDAS_Int16 ISPHENC1_Params::compandingLaw

Optional, codec-specific companding law. See your codec-specific interface documentation options.

See also:
ISPEECH1_PCM_CompandingLaw
ISPEECH1_G726_CompandingLaw
XDAS_Int16 ISPHENC1_Params::packingType

Optional, codec-specific packing type. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_PackingType
ISPEECH1_G726_PackingType
ISPEECH1_WBAMR_PackingType
XDAS_Int16 ISPHENC1_Params::vadSelection

Optional, codec-specific voice activity detection selection. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_VADSelect
ISPEECH1_SMV_VADSelect
XDAS_Int16 ISPHENC1_Params::codecSelection

Optional, codec-specific codec selection. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_CodecSelect
ISPHENC1_Params.codecSelection
XDAS_Int16 ISPHENC1_Params::bitRate

Optional, codec-specific bit rate. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_BitRate
ISPEECH1_G723_BitRate
ISPEECH1_G726_BitRate
ISPEECH1_WBAMR_BitRate
XDAS_Int16 ISPHENC1_Params::reserved

Reserved - serves to pad this structure.

XDAS_Int8** ISPHENC1_Params::tablesPtr

Optional pointer to the codec's initialization tables.

Remarks:
This parameter specifies a pointer to the array of the codec's table block pointers. If the application requires the codec to select the default table address array pointer, it should set this to NULL.
The documentation for this struct was generated from the following file:
  • isphenc1.h


Codec Engine Application Programming Interface (API): ISPHENC1_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC1_Status Struct Reference
[ISPHENC1 - XDM Speech Encoder Interface]

Defines instance status parameters. More...

#include <isphenc1.h>

Collaboration diagram for ISPHENC1_Status:
[legend]

Data Fields

XDAS_Int16 size
XDAS_Int16 frameSize
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDAS_Int16 bitRate
XDAS_Int16 mode
XDAS_Int16 vadFlag
XDAS_Int16 noiseSuppressionMode
XDAS_Int16 ttyTddMode
XDAS_Int16 dataTransmit
XDAS_Int16 compandingLaw
XDAS_Int16 packingType
XDAS_Int16 vadSelection
XDAS_Int16 codecSelection
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int16 ISPHENC1_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int16 ISPHENC1_Status::frameSize

Input frame size in bytes for sample based codecs.

XDAS_Int32 ISPHENC1_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc ISPHENC1_Status::data

Buffer descriptor for data passing.

Remarks:
If this field is not used, the application must set data.buf to NULL.
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the ISPHENC1_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int16 ISPHENC1_Status::bitRate

Optional, codec-specific bit rate. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_BitRate
ISPEECH1_G723_BitRate
ISPEECH1_WBAMR_BitRate
XDAS_Int16 ISPHENC1_Status::mode

Optional, codec-specific mode. See your codec-specific interface documentation options.

See also:
ISPEECH1_EVRC_Mode
ISPEECH1_SMV_Mode
XDAS_Int16 ISPHENC1_Status::vadFlag

Voice Activity Detection (VAD) setting.

See also:
ISPEECH1_VADFlag
XDAS_Int16 ISPHENC1_Status::noiseSuppressionMode

Optional, codec-specific noise suppression mode. See your codec-specific interface documentation options.

See also:
ISPEECH1_EVRC_NoisePreProc
ISPEECH1_G723_NoisePreProc
ISPEECH1_SMV_NoisePreProc
XDAS_Int16 ISPHENC1_Status::ttyTddMode

Optional, codec-specific TTY mode. See your codec-specific interface documentation options.

See also:
ISPEECH1_EVRC_TTYMode
ISPEECH1_SMV_TTYMode
XDAS_Int16 ISPHENC1_Status::dataTransmit

Optional, codec-specific data transmit mode. See your codec-specific interface documentation options.

See also:
ISPEECH1_SMV_DataMode
XDAS_Int16 ISPHENC1_Status::compandingLaw

Optional, codec-specific companding law. See your codec-specific interface documentation options.

See also:
ISPEECH1_PCM_CompandingLaw
ISPEECH1_G726_CompandingLaw
XDAS_Int16 ISPHENC1_Status::packingType

Optional, codec-specific packing type. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_PackingType
ISPEECH1_G726_PackingType
ISPEECH1_WBAMR_PackingType
XDAS_Int16 ISPHENC1_Status::vadSelection

Optional, codec-specific voice activity detection selection. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_VADSelect
ISPEECH1_SMV_VADSelect
XDAS_Int16 ISPHENC1_Status::codecSelection

Optional, codec-specific codec selection. See your codec-specific interface documentation options.

See also:
ISPEECH1_AMR_CodecSelect
ISPHENC1_Params.codecSelection
XDM_AlgBufInfo ISPHENC1_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • isphenc1.h


Codec Engine Application Programming Interface (API): ISPHENC_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC_DynamicParams Struct Reference
[ISPHENC - XDM Speech Encoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <isphenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 frameSize
XDAS_Int32 bitRate
XDAS_Int32 mode
XDAS_Int32 vadFlag
XDAS_Int32 noiseSuppressionMode
XDAS_Int32 ttyTddMode
XDAS_Int32 dtmfMode
XDAS_Int32 dataTransmit
XDAS_Int32 homingMode

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::control()

Field Documentation

XDAS_Int32 ISPHENC_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHENC_DynamicParams::frameSize

Input frame size in bytes for sample based codecs.

XDAS_Int32 ISPHENC_DynamicParams::bitRate

Rate selection for multi_rate codecs

XDAS_Int32 ISPHENC_DynamicParams::mode

Mode selection for multi_mode codecs

XDAS_Int32 ISPHENC_DynamicParams::vadFlag

VAD_On =1, VAD_OFF = 0

XDAS_Int32 ISPHENC_DynamicParams::noiseSuppressionMode

0 - OFF, 1 = NS-A, 2 = NS-B etc

XDAS_Int32 ISPHENC_DynamicParams::ttyTddMode

0 = TTY OFF, 1 = 45.45bauds 2 = 50 bauds

XDAS_Int32 ISPHENC_DynamicParams::dtmfMode

0 = DTMF_OFF, 1 = DTMF_ON

XDAS_Int32 ISPHENC_DynamicParams::dataTransmit

1 = ON, 0 = OFF

XDAS_Int32 ISPHENC_DynamicParams::homingMode

0 - DISABLED; 1 - ENABLED

The documentation for this struct was generated from the following file:
  • isphenc.h


Codec Engine Application Programming Interface (API): ISPHENC_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC_Fxns Struct Reference
[ISPHENC - XDM Speech Encoder Interface]

Defines all of the operations on ISPHENC objects. More...

#include <isphenc.h>

Collaboration diagram for ISPHENC_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(ISPHENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, ISPHENC_InArgs *inArgs, ISPHENC_OutArgs *outArgs)
Basic speech/voice encoding call.
XDAS_Int32(* | control )(ISPHENC_Handle handle, ISPHENC_Cmd id, ISPHENC_DynamicParams *params, ISPHENC_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on ISPHENC objects.

Field Documentation

IALG_Fxns ISPHENC_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* ISPHENC_Fxns::process)(ISPHENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, ISPHENC_InArgs *inArgs, ISPHENC_OutArgs *outArgs)

Basic speech/voice encoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid ISPHENC_InArgs structure.
outArgs must not be NULL, and must point to a valid ISPHENC_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
inBufs.buf[0] must not be NULL, and must point to a valid buffer of data that is at least inBufs.bufSizes[0] bytes in length.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs.buf[0] must not be NULL, and must point to a valid buffer of data that is at least outBufs.bufSizes[0] bytes in length.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inBufs. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See ISPHENC_OutArgs::extendedError for more detailed further error conditions.
XDAS_Int32(* ISPHENC_Fxns::control)(ISPHENC_Handle handle, ISPHENC_Cmd id, ISPHENC_DynamicParams *params, ISPHENC_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid ISPHENC_DynamicParams structure.
status must not be NULL, and must point to a valid ISPHENC_Status structure.
Postcondition:
The algorithm *must* not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See ISPHENC_Status::extendedError for more detailed further error conditions.
The documentation for this struct was generated from the following file:
  • isphenc.h


Codec Engine Application Programming Interface (API): ISPHENC_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC_InArgs Struct Reference
[ISPHENC - XDM Speech Encoder Interface]

Defines the input arguments for all ISPHENC instance process function. More...

#include <isphenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 nullTrafficChannel

Detailed Description

Defines the input arguments for all ISPHENC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::process()

Field Documentation

XDAS_Int32 ISPHENC_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHENC_InArgs::nullTrafficChannel

1 = ON, 0 = OFF

The documentation for this struct was generated from the following file:
  • isphenc.h


Codec Engine Application Programming Interface (API): ISPHENC_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC_Obj Struct Reference
[ISPHENC - XDM Speech Encoder Interface]

This must be the first field of all ISPHENC instance objects. More...

#include <isphenc.h>

Collaboration diagram for ISPHENC_Obj:
[legend]

Data Fields

struct ISPHENC_Fxns * fxns

Detailed Description

This must be the first field of all ISPHENC instance objects.

Field Documentation

struct ISPHENC_Fxns* ISPHENC_Obj::fxns
The documentation for this struct was generated from the following file:
  • isphenc.h


Codec Engine Application Programming Interface (API): ISPHENC_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC_OutArgs Struct Reference
[ISPHENC - XDM Speech Encoder Interface]

Defines the run time output arguments for all ISPHENC instance objects. More...

#include <isphenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 rate
XDAS_Int32 frameType
XDAS_Int32 outbufferSize

Detailed Description

Defines the run time output arguments for all ISPHENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::process()

Field Documentation

XDAS_Int32 ISPHENC_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHENC_OutArgs::rate

Current frame bit rate.

XDAS_Int32 ISPHENC_OutArgs::frameType

Current frame type.

XDAS_Int32 ISPHENC_OutArgs::outbufferSize

Output buffer size in bytes.

The documentation for this struct was generated from the following file:
  • isphenc.h


Codec Engine Application Programming Interface (API): ISPHENC_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC_Params Struct Reference
[ISPHENC - XDM Speech Encoder Interface]

Defines the creation time parameters for all ISPHENC instance objects. More...

#include <isphenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 frameSize
XDAS_Int32 compandingLaw
XDAS_Int32 packingType
XDAS_Int32 vadSelection

Detailed Description

Defines the creation time parameters for all ISPHENC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 ISPHENC_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHENC_Params::frameSize

Input frame size in bytes for sample based codecs.

XDAS_Int32 ISPHENC_Params::compandingLaw

Companding Law.

See also:
ISPEECH_CompoundLaw.
XDAS_Int32 ISPHENC_Params::packingType

Packing Format Option (for codecs that support multiple packing formats - used for selection, 0, 1, 2...)

XDAS_Int32 ISPHENC_Params::vadSelection

VAD A/VAD B, VAD 1/ VAD 2 etc

The documentation for this struct was generated from the following file:
  • isphenc.h


Codec Engine Application Programming Interface (API): ISPHENC_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ISPHENC_Status Struct Reference
[ISPHENC - XDM Speech Encoder Interface]

Defines instance status parameters (read-only). More...

#include <isphenc.h>

Collaboration diagram for ISPHENC_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 frameSize
XDAS_Int32 bitRate
XDAS_Int32 mode
XDAS_Int32 vadFlag
XDAS_Int32 noiseSuppressionMode
XDAS_Int32 ttyTddMode
XDAS_Int32 dtmfMode
XDAS_Int32 dataTransmit
XDAS_Int32 homingMode
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
ISPHENC_Fxns::control()

Field Documentation

XDAS_Int32 ISPHENC_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 ISPHENC_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 ISPHENC_Status::frameSize

Input frame size in bytes for sample based codecs

XDAS_Int32 ISPHENC_Status::bitRate

Rate selection for multi_rate codecs

XDAS_Int32 ISPHENC_Status::mode

Mode selection for multi_mode codecs

XDAS_Int32 ISPHENC_Status::vadFlag

VAD_On =1, VAD_OFF = 0

XDAS_Int32 ISPHENC_Status::noiseSuppressionMode

0 - OFF, 1 = NS-A, 2 = NS-B etc

XDAS_Int32 ISPHENC_Status::ttyTddMode

0 = TTY OFF, 1 = 45.45bauds 2 = 50 bauds

XDAS_Int32 ISPHENC_Status::dtmfMode

0 = DTMF_OFF, 1 = DTMF_ON

XDAS_Int32 ISPHENC_Status::dataTransmit

1 = ON, 0 = OFF

XDAS_Int32 ISPHENC_Status::homingMode

0 - DISABLED; 1 - ENABLED

XDM_AlgBufInfo ISPHENC_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo.
The documentation for this struct was generated from the following file:
  • isphenc.h


Codec Engine Application Programming Interface (API): IUNIVERSAL_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IUNIVERSAL_DynamicParams Struct Reference
[IUNIVERSAL - XDM Beta Universal Algorithm Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <iuniversal.h>

Data Fields

XDAS_Int32 size

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::control()

Field Documentation

XDAS_Int32 IUNIVERSAL_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

The documentation for this struct was generated from the following file:
  • iuniversal.h


Codec Engine Application Programming Interface (API): IUNIVERSAL_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IUNIVERSAL_Fxns Struct Reference
[IUNIVERSAL - XDM Beta Universal Algorithm Interface]

Defines all of the operations on IUNIVERSAL objects. More...

#include <iuniversal.h>

Collaboration diagram for IUNIVERSAL_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IUNIVERSAL_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs, IUNIVERSAL_InArgs *inArgs, IUNIVERSAL_OutArgs *outArgs)
Basic audio decoding call.
XDAS_Int32(* | control )(IUNIVERSAL_Handle handle, IUNIVERSAL_Cmd id, IUNIVERSAL_DynamicParams *params, IUNIVERSAL_Status *status)
Control behaviour of an algorithm.

Detailed Description

Defines all of the operations on IUNIVERSAL objects.

Field Documentation

IALG_Fxns IUNIVERSAL_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IUNIVERSAL_Fxns::process)(IUNIVERSAL_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs, IUNIVERSAL_InArgs *inArgs, IUNIVERSAL_OutArgs *outArgs)

Basic audio decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors.
[in,out] | inOutBufs | Input/Output buffer descriptors.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
handle must be a valid algorithm instance handle.
inArgs must not be NULL, and must point to a valid IUNIVERSAL_InArgs structure.
outArgs must not be NULL, and must point to a valid IUNIVERSAL_OutArgs structure.
inBufs must either be NULL or point to a valid XDM1_BufDesc structure.
outBufs must either be NULL or point to a valid XDM1_BufDesc structure.
inOutBufs must either be NULL or point to a valid XDM1_BufDesc structure.
The buffers in inBufs, outBufs and inOutBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.descs[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must appropriately set/clear the XDM1_BufDesc::descs[].accessMask field in inBufs, outBufs, and inOutBufs. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs, outBufs, and inOutBufs are owned by the calling application.
Return values:
IUNIVERSAL_EOK

Success.

IUNIVERSAL_EFAIL

General failure.

See IUNIVERSAL_Status::extendedError for more detailed further error conditions.
IUNIVERSAL_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IUNIVERSAL_Fxns::control)(IUNIVERSAL_Handle handle, IUNIVERSAL_Cmd id, IUNIVERSAL_DynamicParams *params, IUNIVERSAL_Status *status)

Control behaviour of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IUNIVERSAL_DynamicParams structure.
status must not be NULL, and must point to a valid IUNIVERSAL_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IUNIVERSAL_EOK

Success.

IUNIVERSAL_EFAIL

General failure.

See IUNIVERSAL_Status::extendedError for more detailed further error conditions.
IUNIVERSAL_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • iuniversal.h


Codec Engine Application Programming Interface (API): IUNIVERSAL_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IUNIVERSAL_InArgs Struct Reference
[IUNIVERSAL - XDM Beta Universal Algorithm Interface]

Defines the input arguments for all IUNIVERSAL instance process function. More...

#include <iuniversal.h>

Data Fields

XDAS_Int32 size

Detailed Description

Defines the input arguments for all IUNIVERSAL instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::process()

Field Documentation

XDAS_Int32 IUNIVERSAL_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

The documentation for this struct was generated from the following file:
  • iuniversal.h


Codec Engine Application Programming Interface (API): IUNIVERSAL_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IUNIVERSAL_Obj Struct Reference
[IUNIVERSAL - XDM Beta Universal Algorithm Interface]

This must be the first field of all IUNIVERSAL instance objects. More...

#include <iuniversal.h>

Collaboration diagram for IUNIVERSAL_Obj:
[legend]

Data Fields

struct IUNIVERSAL_Fxns * fxns

Detailed Description

This must be the first field of all IUNIVERSAL instance objects.

Field Documentation

struct IUNIVERSAL_Fxns* IUNIVERSAL_Obj::fxns
The documentation for this struct was generated from the following file:
  • iuniversal.h


Codec Engine Application Programming Interface (API): IUNIVERSAL_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IUNIVERSAL_OutArgs Struct Reference
[IUNIVERSAL - XDM Beta Universal Algorithm Interface]

Defines the run time output arguments for all IUNIVERSAL instance objects. More...

#include <iuniversal.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError

Detailed Description

Defines the run time output arguments for all IUNIVERSAL instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::process()

Field Documentation

XDAS_Int32 IUNIVERSAL_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IUNIVERSAL_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
The documentation for this struct was generated from the following file:
  • iuniversal.h


Codec Engine Application Programming Interface (API): IUNIVERSAL_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IUNIVERSAL_Params Struct Reference
[IUNIVERSAL - XDM Beta Universal Algorithm Interface]

Defines the creation time parameters for all IUNIVERSAL instance objects. More...

#include <iuniversal.h>

Data Fields

XDAS_Int32 size

Detailed Description

Defines the creation time parameters for all IUNIVERSAL instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IUNIVERSAL_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

The documentation for this struct was generated from the following file:
  • iuniversal.h


Codec Engine Application Programming Interface (API): IUNIVERSAL_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IUNIVERSAL_Status Struct Reference
[IUNIVERSAL - XDM Beta Universal Algorithm Interface]

Defines instance status parameters (read-only). More...

#include <iuniversal.h>

Collaboration diagram for IUNIVERSAL_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_BufDesc data

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IUNIVERSAL_Fxns::control()

Field Documentation

XDAS_Int32 IUNIVERSAL_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IUNIVERSAL_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_BufDesc IUNIVERSAL_Status::data

Buffer descriptor for data passing.

Remarks:
These buffers can be used as either input, output, or input/output buffers, depending on the command.
The buffers will be provided by the application, and returned to the application upon return of the control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
The documentation for this struct was generated from the following file:
  • iuniversal.h


Codec Engine Application Programming Interface (API): IVIDANALYTICS_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDANALYTICS_DynamicParams Struct Reference
[IVIDANALYTICS - XDM Beta Video Analytics Interface]

This structure defines the algorithm parameters that can be modified after creation via control() calls. More...

#include <ividanalytics.h>

Collaboration diagram for IVIDANALYTICS_DynamicParams:
[legend]

Data Fields

XDAS_Int32 size
IVIDANALYTICS_Grid * grid
XDM_Date date
IVIDANALYTICS_Rule rule

Detailed Description

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDANALYTICS_Fxns::control()

Field Documentation

XDAS_Int32 IVIDANALYTICS_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

IVIDANALYTICS_Grid* IVIDANALYTICS_DynamicParams::grid

New overlay grid with analytics enable mask

XDM_Date IVIDANALYTICS_DynamicParams::date

Set the current time.

IVIDANALYTICS_Rule IVIDANALYTICS_DynamicParams::rule

Rule associated with this command (if applicable).

The documentation for this struct was generated from the following file:
  • ividanalytics.h


Codec Engine Application Programming Interface (API): IVIDANALYTICS_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDANALYTICS_Fxns Struct Reference
[IVIDANALYTICS - XDM Beta Video Analytics Interface]

Defines all of the operations on IVIDANALYTICS objects. More...

#include <ividanalytics.h>

Collaboration diagram for IVIDANALYTICS_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs, IVIDANALYTICS_OutArgs *outArgs)
Basic video decoding call.
XDAS_Int32(* | control )(IVIDANALYTICS_Handle handle, IVIDANALYTICS_Cmd id, IVIDANALYTICS_DynamicParams *params, IVIDANALYTICS_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDANALYTICS objects.

Field Documentation

IALG_Fxns IVIDANALYTICS_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDANALYTICS_Fxns::process)(IVIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs, IVIDANALYTICS_OutArgs *outArgs)

Basic video decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
inBufs->numBufs will indicate the total number of input buffers supplied for input frame.
inArgs must not be NULL, and must point to a valid IVIDANALYTICS_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDANALYTICS_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.
outBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
outBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least outBufs->descs[0].bufSize bytes in length.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.bufDesc[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must modify the contents of inBufs->descs[].accessMask and appropriately indicate the mode in which each of the buffers in inBufs were read. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs and outBufs are owned by the calling application.
Return values:
IVIDANALYTICS_EOK

Success.

IVIDANALYTICS_EFAIL

General failure.

See IVIDANALYTICS_Status::extendedError for more detailed further error conditions.
IVIDANALYTICS_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IVIDANALYTICS_Fxns::control)(IVIDANALYTICS_Handle handle, IVIDANALYTICS_Cmd id, IVIDANALYTICS_DynamicParams *params, IVIDANALYTICS_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDANALYTICS_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDANALYTICS_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IVIDANALYTICS_EOK

Success.

IVIDANALYTICS_EFAIL

General failure.

See IVIDANALYTICS_Status::extendedError for more detailed further error conditions.
IVIDANALYTICS_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • ividanalytics.h


Codec Engine Application Programming Interface (API): IVIDANALYTICS_Grid Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDANALYTICS_Grid Struct Reference
[IVIDANALYTICS - XDM Beta Video Analytics Interface]

Access modes used to declare how the algorithm accessed buffers. More...

#include <ividanalytics.h>

Collaboration diagram for IVIDANALYTICS_Grid:
[legend]

Data Fields

XDAS_Int32 blockHeight
XDAS_Int32 blockWidth
XDAS_Int32 numBlockHorizontal
XDAS_Int32 numBlockVertical
XDM1_SingleBufDesc enableMaskArray

Detailed Description

Access modes used to declare how the algorithm accessed buffers.

Remarks:
The IVIDANALYTICS interface reserves bits 0-15. Bits 16-31 are available to the user.
See also:
IVIDANALYTICS_DynamicParams::grid

Field Documentation

XDAS_Int32 IVIDANALYTICS_Grid::blockHeight

Height of a block

XDAS_Int32 IVIDANALYTICS_Grid::blockWidth

Width of a block

XDAS_Int32 IVIDANALYTICS_Grid::numBlockHorizontal

Number of blocks per row

XDAS_Int32 IVIDANALYTICS_Grid::numBlockVertical

Number of blocks per column

XDM1_SingleBufDesc IVIDANALYTICS_Grid::enableMaskArray

Buffer containing an array representing the type of analysis to enable on each block in the grid.

Remarks:
The array will be numBlockHorizontal * numBlockVertical.
See also:
IVIDANALYTICS_AnalysisMask
The documentation for this struct was generated from the following file:
  • ividanalytics.h


Codec Engine Application Programming Interface (API): IVIDANALYTICS_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDANALYTICS_InArgs Struct Reference
[IVIDANALYTICS - XDM Beta Video Analytics Interface]

Defines the input arguments for all IVIDANALYTICS instance process function. More...

#include <ividanalytics.h>

Collaboration diagram for IVIDANALYTICS_InArgs:
[legend]

Data Fields

XDAS_Int32 size
XDM_Date date

Detailed Description

Defines the input arguments for all IVIDANALYTICS instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDANALYTICS_Fxns::process()

Field Documentation

XDAS_Int32 IVIDANALYTICS_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDM_Date IVIDANALYTICS_InArgs::date

Set the current time.

The documentation for this struct was generated from the following file:
  • ividanalytics.h


Codec Engine Application Programming Interface (API): IVIDANALYTICS_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDANALYTICS_Obj Struct Reference
[IVIDANALYTICS - XDM Beta Video Analytics Interface]

This must be the first field of all IVIDANALYTICS instance objects. More...

#include <ividanalytics.h>

Collaboration diagram for IVIDANALYTICS_Obj:
[legend]

Data Fields

struct IVIDANALYTICS_Fxns * fxns

Detailed Description

This must be the first field of all IVIDANALYTICS instance objects.

Field Documentation

struct IVIDANALYTICS_Fxns* IVIDANALYTICS_Obj::fxns
The documentation for this struct was generated from the following file:
  • ividanalytics.h


Codec Engine Application Programming Interface (API): IVIDANALYTICS_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDANALYTICS_OutArgs Struct Reference
[IVIDANALYTICS - XDM Beta Video Analytics Interface]

Defines the run time output arguments for all IVIDANALYTICS instance objects. More...

#include <ividanalytics.h>

Collaboration diagram for IVIDANALYTICS_OutArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 numTargets
XDM_Rect | targets [128]
XDAS_Int32 numEvents
XDAS_Int32 | eventId [128]
XDAS_Int32 extendedError
XDM_Date date

Detailed Description

Defines the run time output arguments for all IVIDANALYTICS instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::process()

Field Documentation

XDAS_Int32 IVIDANALYTICS_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDANALYTICS_OutArgs::numTargets

Number of targets detected

XDM_Rect IVIDANALYTICS_OutArgs::targets[128]

target locations.

Remarks:
If numTargets is zero, the values in this array are undefined.
XDAS_Int32 IVIDANALYTICS_OutArgs::numEvents

Number of events detected

XDAS_Int32 IVIDANALYTICS_OutArgs::eventId[128]

Zero-terminated array containing the ids of rules fired during the process() call.

Remarks:
If numEvents is zero, the values in this array are undefined.
XDAS_Int32 IVIDANALYTICS_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM_Date IVIDANALYTICS_OutArgs::date

Current time.

The documentation for this struct was generated from the following file:
  • ividanalytics.h


Codec Engine Application Programming Interface (API): IVIDANALYTICS_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDANALYTICS_Params Struct Reference
[IVIDANALYTICS - XDM Beta Video Analytics Interface]

Defines the creation time parameters for all IVIDANALYTICS instance objects. More...

#include <ividanalytics.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxFrameRate
XDAS_Int32 dataEndianness
XDAS_Int32 inputChromaFormat
XDAS_Int32 maxRules

Detailed Description

Defines the creation time parameters for all IVIDANALYTICS instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IVIDANALYTICS_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDANALYTICS_Params::maxHeight

Maximum video height in pixels.

XDAS_Int32 IVIDANALYTICS_Params::maxWidth

Maximum video width in pixels.

XDAS_Int32 IVIDANALYTICS_Params::maxFrameRate

Maximum frame rate in fps * 1000. For example, if max frame rate is 30 frames per second, set this field to 30000.

XDAS_Int32 IVIDANALYTICS_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IVIDANALYTICS_Params::inputChromaFormat

Chroma format for the input buffer.

See also:
XDM_ChromaFormat
XDAS_Int32 IVIDANALYTICS_Params::maxRules

Maximum number of rules allowed.

The documentation for this struct was generated from the following file:
  • ividanalytics.h


Codec Engine Application Programming Interface (API): IVIDANALYTICS_Rule Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDANALYTICS_Rule Struct Reference
[IVIDANALYTICS - XDM Beta Video Analytics Interface]

Analytics rule. More...

#include <ividanalytics.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 id
IVIDANALYTICS_ObjectType objectType
IVIDANALYTICS_ActionType actionType

Detailed Description

Analytics rule.

Field Documentation

XDAS_Int32 IVIDANALYTICS_Rule::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDANALYTICS_Rule::id

id associated with this rule.

IVIDANALYTICS_ObjectType IVIDANALYTICS_Rule::objectType

Type of the object associated with this rule.

IVIDANALYTICS_ActionType IVIDANALYTICS_Rule::actionType

Type of action associated with this rule.

The documentation for this struct was generated from the following file:
  • ividanalytics.h


Codec Engine Application Programming Interface (API): IVIDANALYTICS_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDANALYTICS_Status Struct Reference
[IVIDANALYTICS - XDM Beta Video Analytics Interface]

Defines instance status parameters. More...

#include <ividanalytics.h>

Collaboration diagram for IVIDANALYTICS_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_BufDesc data
XDM_AlgBufInfo bufInfo
XDAS_Int32 viewState

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDANALYTICS_Fxns::control()

Field Documentation

XDAS_Int32 IVIDANALYTICS_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDANALYTICS_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_BufDesc IVIDANALYTICS_Status::data

Buffer descriptors for data passing.

Remarks:
If this field is not used, the application must set data.numBufs to 0.
These buffers can be used as either input or output, depending on the command.
The buffers will be provided by the application, and returned to the application upon return of the IVIDANALYTICS_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDM_AlgBufInfo IVIDANALYTICS_Status::bufInfo

Input and output buffer information.

Remarks:
This field provides the application with the algorithm's buffer requirements. The requirements may vary depending on the current configuration of the algorithm instance.
See also:
IVIDANALYTICS_Params
XDM_AlgBufInfo
IVIDANALYTICS_Fxns::control()
XDAS_Int32 IVIDANALYTICS_Status::viewState

View state of the analytics engine.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
Todo:
Need to further review and define. Probably need hooks for user-defined states, in addition to some pre-defined ones.
See also:
IVIDANALYTICS_OutArgs::viewState
IVIDANALYTICS_Status::viewState
See also:
IVIDANALYTICS_ViewState
The documentation for this struct was generated from the following file:
  • ividanalytics.h


Codec Engine Application Programming Interface (API): IVIDDEC1_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC1_CodecClassConfig Struct Reference
[VIDDEC1 - Video Decoder Interface]

Definition of IVIDDEC1 codec class configurable parameters. More...

#include <viddec1.h>

Data Fields

Bool | manageInBufsCache [16]
Bool | manageOutBufsCache [16]

Detailed Description

Definition of IVIDDEC1 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Field Documentation

Bool IVIDDEC1_CodecClassConfig::manageInBufsCache[16]
Bool IVIDDEC1_CodecClassConfig::manageOutBufsCache[16]
The documentation for this struct was generated from the following file:
  • viddec1.h


Codec Engine Application Programming Interface (API): IVIDDEC1_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC1_DynamicParams Struct Reference
[IVIDDEC1 - XDM Video Decoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <ividdec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 decodeHeader
XDAS_Int32 displayWidth
XDAS_Int32 frameSkipMode
XDAS_Int32 frameOrder
XDAS_Int32 newFrameFlag
XDAS_Int32 mbDataFlag

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::control()

Field Documentation

XDAS_Int32 IVIDDEC1_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC1_DynamicParams::decodeHeader

Decode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_DecMode
XDAS_Int32 IVIDDEC1_DynamicParams::displayWidth

Pitch. If set to zero, use the decoded image width. Else, use given display width in pixels.

XDAS_Int32 IVIDDEC1_DynamicParams::frameSkipMode

Video frame skip features for video decoder.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_FrameSkip
XDAS_Int32 IVIDDEC1_DynamicParams::frameOrder

Video decoder output frame order.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
IVIDDEC1_DynamicParams::frameOrder
See also:
IVIDDEC1_FrameOrder
XDAS_Int32 IVIDDEC1_DynamicParams::newFrameFlag

Flag to indicate that the algorithm should start a new frame.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This is useful for error recovery, for example when the end of frame cannot be detected by the codec but is known to the application.
XDAS_Int32 IVIDDEC1_DynamicParams::mbDataFlag

Flag to indicate that the algorithm should generate MB Data in addition to decoding the data.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
See also:
IVIDDEC1_OutArgs::mbDataBuf
The documentation for this struct was generated from the following file:
  • ividdec1.h


Codec Engine Application Programming Interface (API): IVIDDEC1_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC1_Fxns Struct Reference
[IVIDDEC1 - XDM Video Decoder Interface]

Defines all of the operations on IVIDDEC1 objects. More...

#include <ividdec1.h>

Collaboration diagram for IVIDDEC1_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDDEC1_InArgs *inArgs, IVIDDEC1_OutArgs *outArgs)
Basic video decoding call.
XDAS_Int32(* | control )(IVIDDEC1_Handle handle, IVIDDEC1_Cmd id, IVIDDEC1_DynamicParams *params, IVIDDEC1_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDDEC1 objects.

Field Documentation

IALG_Fxns IVIDDEC1_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDDEC1_Fxns::process)(IVIDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDDEC1_InArgs *inArgs, IVIDDEC1_OutArgs *outArgs)

Basic video decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
inBufs->numBufs will indicate the total number of input buffers supplied for input frame, and conditionally, the encoders MB data buffer.
If IVIDDEC1_DynamicParams::mbDataFlag was set to XDAS_FALSE in a previous control() call, the application only needs to provide buffers for reconstruction frames.
If IVIDDEC1_DynamicParams::mbDataFlag was set to XDAS_TRUE in a previous control() call, outBufs->bufs[outBufs->numBufs - 1] is a buffer descriptor into which the algorithm will write MB data for each macro block. The size of the MB data buffer will vary based on the decoder type. H.264 may generate N264 bytes per MB, while Mpeg2 may generate NMP2 bytes. The exact size of the buffers should be obtained by calling the algorithm's control() method with XDM_GETBUFINFO.
inArgs must not be NULL, and must point to a valid IVIDDEC1_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDDEC1_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs->buf[0] must not be NULL, and must point to a valid buffer of data that is at least outBufs->bufSizes[0] bytes in length.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.bufDesc[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must modify the contents of inBufs->descs[].accessMask and appropriately indicate the mode in which each of the buffers in inBufs were read. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs are owned by the calling application.
Return values:
IVIDDEC1_EOK

Success.

IVIDDEC1_EFAIL

General failure.

See IVIDDEC1_Status::extendedError for more detailed further error conditions.
IVIDDEC1_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IVIDDEC1_Fxns::control)(IVIDDEC1_Handle handle, IVIDDEC1_Cmd id, IVIDDEC1_DynamicParams *params, IVIDDEC1_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDDEC1_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDDEC1_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IVIDDEC1_EOK

Success.

IVIDDEC1_EFAIL

General failure.

See IVIDDEC1_Status::extendedError for more detailed further error conditions.
IVIDDEC1_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • ividdec1.h


Codec Engine Application Programming Interface (API): IVIDDEC1_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC1_InArgs Struct Reference
[IVIDDEC1 - XDM Video Decoder Interface]

Defines the input arguments for all IVIDDEC1 instance process function. More...

#include <ividdec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numBytes
XDAS_Int32 inputID

Detailed Description

Defines the input arguments for all IVIDDEC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::process()

Field Documentation

XDAS_Int32 IVIDDEC1_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC1_InArgs::numBytes

Size of input data in bytes, provided to the algorithm for decoding.

XDAS_Int32 IVIDDEC1_InArgs::inputID

The decoder will attach this ID with the corresponding output frames.

Remarks:
This is useful when frames require re-ordering (e.g. B frames).
When there is no re-ordering, IVIDDEC1_OutArgs::outputID will be same as this inputID field.
Zero (0) is not a supported inputID. This value is reserved for cases when there is no output buffer provided in IVIDDEC1_OutArgs::displayBufs.
See also:
IVIDDEC1_OutArgs::outputID.
The documentation for this struct was generated from the following file:
  • ividdec1.h


Codec Engine Application Programming Interface (API): IVIDDEC1_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC1_Obj Struct Reference
[IVIDDEC1 - XDM Video Decoder Interface]

This must be the first field of all IVIDDEC1 instance objects. More...

#include <ividdec1.h>

Collaboration diagram for IVIDDEC1_Obj:
[legend]

Data Fields

struct IVIDDEC1_Fxns * fxns

Detailed Description

This must be the first field of all IVIDDEC1 instance objects.

Field Documentation

struct IVIDDEC1_Fxns* IVIDDEC1_Obj::fxns
The documentation for this struct was generated from the following file:
  • ividdec1.h


Codec Engine Application Programming Interface (API): IVIDDEC1_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC1_OutArgs Struct Reference
[IVIDDEC1 - XDM Video Decoder Interface]

Defines the run time output arguments for all IVIDDEC1 instance objects. More...

#include <ividdec1.h>

Collaboration diagram for IVIDDEC1_OutArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 bytesConsumed
XDAS_Int32 | outputID [16]
IVIDEO1_BufDesc decodedBufs
IVIDEO1_BufDesc | displayBufs [16]
XDAS_Int32 outputMbDataID
XDM1_SingleBufDesc mbDataBuf
XDAS_Int32 | freeBufID [16]
XDAS_Int32 outBufsInUseFlag

Detailed Description

Defines the run time output arguments for all IVIDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC1_Fxns::process()

Field Documentation

XDAS_Int32 IVIDDEC1_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC1_OutArgs::bytesConsumed

Number of bytes consumed during the process() call.

XDAS_Int32 IVIDDEC1_OutArgs::outputID[16]

Output ID corresponding to displayBufs[].

Remarks:
A value of zero (0) indicates an invalid ID. The first zero entry in array will indicate end of valid outputIDs within the array. Hence the application can stop reading the array when it encounters the first zero entry.
See also:
IVIDDEC1_OutArgs::displayBufs
IVIDDEC1_InArgs::inputID
IVIDEO1_BufDesc IVIDDEC1_OutArgs::decodedBufs

The decoder fills this structure with buffer pointers to the decoded frame. Related information fields for the decoded frame are also populated.

When frame decoding is not complete, as indicated by outBufsInUseFlag, the frame data in this structure will be incomplete. However, the algorithm will provide incomplete decoded frame data in case application may choose to use it for error recovery purposes.

See also:
IVIDDEC1_OutArgs::outBufsInUseFlag
IVIDEO1_BufDesc IVIDDEC1_OutArgs::displayBufs[16]

Array containing display frames corresponding to valid ID entries in the outputID[] array.

Remarks:
Entries in the array corresponding to invalid ID values (zero) in outputID[] will set zero value for the following fields in the IVIDEO1_BufDesc structure: numBufs, frameWidth, frameHeight, and framePitch.
Implied by the previous remark, as this array corresponds to buffer IDs indicated by outputID[], elements of this array are undefined if the corresponding outputID[] element is zero (0).
XDAS_Int32 IVIDDEC1_OutArgs::outputMbDataID

Output ID corresponding with the MB Data

Remarks:
This will be set to zero when there is no MB Data Buffer
XDM1_SingleBufDesc IVIDDEC1_OutArgs::mbDataBuf

The decoder populates the last buffer among the buffers supplied within outBufs->bufs[] with the decoded MB data generated by the ECD module. The pointer buffer along with the buffer size is output via this buffer descriptor.

XDAS_Int32 IVIDDEC1_OutArgs::freeBufID[16]

This is an array of inputID's corresponding to the buffers that have been unlocked in the current process call.

Remarks:
Buffers returned to the application for display (via IVIDDEC1_OutArgs::displayBufs) continue to be owned by the algorithm until they are released - indicated by the ID being returned in this freeBuf array.
The buffers released by the algorithm are indicated by their non-zero ID (previously provided via IVIDDEC1_InArgs::inputID).
A value of zero (0) indicates an invalid ID. The first zero entry in array will indicate end of valid freeBufIDs within the array. Hence the application can stop searching the array when it encounters the first zero entry.
If no buffer was unlocked in the process call, freeBufID[0] will have a value of zero.
See also:
IVIDDEC1_InArgs::inputID
IVIDDEC1_OutArgs::displayBufs
XDAS_Int32 IVIDDEC1_OutArgs::outBufsInUseFlag

Flag to indicate that the outBufs provided with the process() call are in use. No outBufs are required to be supplied with the next process() call.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
The documentation for this struct was generated from the following file:
  • ividdec1.h


Codec Engine Application Programming Interface (API): IVIDDEC1_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC1_Params Struct Reference
[IVIDDEC1 - XDM Video Decoder Interface]

Defines the creation time parameters for all IVIDDEC1 instance objects. More...

#include <ividdec1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxFrameRate
XDAS_Int32 maxBitRate
XDAS_Int32 dataEndianness
XDAS_Int32 forceChromaFormat

Detailed Description

Defines the creation time parameters for all IVIDDEC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IVIDDEC1_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC1_Params::maxHeight

Maximum video height in pixels.

XDAS_Int32 IVIDDEC1_Params::maxWidth

Maximum video width in pixels.

XDAS_Int32 IVIDDEC1_Params::maxFrameRate

Maximum frame rate in fps * 1000. For example, if max frame rate is 30 frames per second, set this field to 30000.

XDAS_Int32 IVIDDEC1_Params::maxBitRate

Maximum bit rate, bits per second. For example, if bit rate is 10 Mbps, set this field to 10000000

XDAS_Int32 IVIDDEC1_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IVIDDEC1_Params::forceChromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ChromaFormat
The documentation for this struct was generated from the following file:
  • ividdec1.h


Codec Engine Application Programming Interface (API): IVIDDEC1_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC1_Status Struct Reference
[IVIDDEC1 - XDM Video Decoder Interface]

Defines instance status parameters. More...

#include <ividdec1.h>

Collaboration diagram for IVIDDEC1_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDAS_Int32 outputHeight
XDAS_Int32 outputWidth
XDAS_Int32 frameRate
XDAS_Int32 bitRate
XDAS_Int32 contentType
XDAS_Int32 outputChromaFormat
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
All fields correspond to latest IVIDDEC1_Fxns::process() call on the particular instance of the decoder.
See also:
IVIDDEC1_Fxns::control()

Field Documentation

XDAS_Int32 IVIDDEC1_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC1_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IVIDDEC1_Status::data

Buffer descriptor for data passing.

Remarks:
If this field is not used, the application must set data.buf to NULL.
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the IVIDDEC1_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int32 IVIDDEC1_Status::outputHeight

Output height in pixels.

XDAS_Int32 IVIDDEC1_Status::outputWidth

Output width in pixels.

XDAS_Int32 IVIDDEC1_Status::frameRate

Average frame rate in fps * 1000. For example, if average frame rate is 30 frames per second, this field should be 30000.

XDAS_Int32 IVIDDEC1_Status::bitRate

Average bit rate, in bits per second.

XDAS_Int32 IVIDDEC1_Status::contentType

Video content types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_ContentType
XDAS_Int32 IVIDDEC1_Status::outputChromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ChromaFormat
XDM_AlgBufInfo IVIDDEC1_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • ividdec1.h


Codec Engine Application Programming Interface (API): IVIDDEC2_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2_CodecClassConfig Struct Reference
[VIDDEC2 - Video Decoder Interface]

Definition of IVIDDEC2 codec class configurable parameters. More...

#include <viddec2.h>

Data Fields

Bool | manageInBufsCache [16]
Bool | manageOutBufsCache [16]

Detailed Description

Definition of IVIDDEC2 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Field Documentation

Bool IVIDDEC2_CodecClassConfig::manageInBufsCache[16]
Bool IVIDDEC2_CodecClassConfig::manageOutBufsCache[16]
The documentation for this struct was generated from the following file:
  • viddec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2_DynamicParams Struct Reference
[IVIDDEC2 - XDM Video Decoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <ividdec2.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 decodeHeader
XDAS_Int32 displayWidth
XDAS_Int32 frameSkipMode
XDAS_Int32 frameOrder
XDAS_Int32 newFrameFlag
XDAS_Int32 mbDataFlag

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2_Fxns::control()

Field Documentation

XDAS_Int32 IVIDDEC2_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC2_DynamicParams::decodeHeader

Decode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_DecMode
XDAS_Int32 IVIDDEC2_DynamicParams::displayWidth

Pitch. If set to zero, use the decoded image width. Else, use given display width in pixels.

XDAS_Int32 IVIDDEC2_DynamicParams::frameSkipMode

Video frame skip features for video decoder.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_FrameSkip
XDAS_Int32 IVIDDEC2_DynamicParams::frameOrder

Video decoder output frame order.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
IVIDDEC2_DynamicParams::frameOrder
See also:
IVIDDEC2_FrameOrder
XDAS_Int32 IVIDDEC2_DynamicParams::newFrameFlag

Flag to indicate that the algorithm should start a new frame.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This is useful for error recovery, for example when the end of frame cannot be detected by the codec but is known to the application.
XDAS_Int32 IVIDDEC2_DynamicParams::mbDataFlag

Flag to indicate that the algorithm should generate MB Data in addition to decoding the data.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
See also:
IVIDDEC2_OutArgs::mbDataBuf
The documentation for this struct was generated from the following file:
  • ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2_Fxns Struct Reference
[IVIDDEC2 - XDM Video Decoder Interface]

Defines all of the operations on IVIDDEC2 objects. More...

#include <ividdec2.h>

Collaboration diagram for IVIDDEC2_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDDEC2_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDDEC2_InArgs *inArgs, IVIDDEC2_OutArgs *outArgs)
Basic video decoding call.
XDAS_Int32(* | control )(IVIDDEC2_Handle handle, IVIDDEC2_Cmd id, IVIDDEC2_DynamicParams *params, IVIDDEC2_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDDEC2 objects.

Field Documentation

IALG_Fxns IVIDDEC2_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDDEC2_Fxns::process)(IVIDDEC2_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDDEC2_InArgs *inArgs, IVIDDEC2_OutArgs *outArgs)

Basic video decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
process() enables codecs to support error resiliency and error concealment. As a result, even if IVIDDEC2_EFAIL is returned from process() because the encoded buffer has an error, it's possible that decoded buffers (outArgs->decodedBufs) and display buffers (outArgs->displayBufs) could still be returned. The codec can indicate that buffers are available by not setting the XDM_ISFATALERROR bit in the respective displayBufs and decodedBufs extendedError field if the buffers contain valid data.
By extension then, if the outArgs->decodedBufs and outArgs->displayBufs buffers are not valid, even if the codec's process() call returns IVIDDEC2_EFAIL, it must also be sure to set the XDM_ISFATALERROR bit in the respective extendedError fields. Failure to do so may result in applications accessing these buffers and causing system instability.
Precondition:
inBufs->numBufs will indicate the total number of input buffers supplied for input frame, and conditionally, the encoders MB data buffer.
If IVIDDEC2_DynamicParams::mbDataFlag was set to XDAS_FALSE in a previous control() call, the application only needs to provide buffers for reconstruction frames.
If IVIDDEC2_DynamicParams::mbDataFlag was set to XDAS_TRUE in a previous control() call, outBufs->bufs[outBufs->numBufs - 1] is a buffer descriptor into which the algorithm will write MB data for each macro block. The size of the MB data buffer will vary based on the decoder type. H.264 may generate N264 bytes per MB, while Mpeg2 may generate NMP2 bytes. The exact size of the buffers should be obtained by calling the algorithm's control() method with XDM_GETBUFINFO.
inArgs must not be NULL, and must point to a valid IVIDDEC2_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDDEC2_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs->buf[0] must not be NULL, and must point to a valid buffer of data that is at least outBufs->bufSizes[0] bytes in length.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.bufDesc[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must modify the contents of inBufs->descs[].accessMask and appropriately indicate the mode in which each of the buffers in inBufs were read. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs are owned by the calling application.
Return values:
IVIDDEC2_EOK

Success.

IVIDDEC2_EFAIL

General failure.

See IVIDDEC2_Status::extendedError for more detailed further error conditions.
IVIDDEC2_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IVIDDEC2_Fxns::control)(IVIDDEC2_Handle handle, IVIDDEC2_Cmd id, IVIDDEC2_DynamicParams *params, IVIDDEC2_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDDEC2_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDDEC2_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IVIDDEC2_EOK

Success.

IVIDDEC2_EFAIL

General failure.

See IVIDDEC2_Status::extendedError for more detailed further error conditions.
IVIDDEC2_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2_InArgs Struct Reference
[IVIDDEC2 - XDM Video Decoder Interface]

Defines the input arguments for all IVIDDEC2 instance process function. More...

#include <ividdec2.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numBytes
XDAS_Int32 inputID

Detailed Description

Defines the input arguments for all IVIDDEC2 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2_Fxns::process()

Field Documentation

XDAS_Int32 IVIDDEC2_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC2_InArgs::numBytes

Size of input data in bytes, provided to the algorithm for decoding.

XDAS_Int32 IVIDDEC2_InArgs::inputID

The decoder will attach this ID with the corresponding output frames.

Remarks:
This is useful when frames require re-ordering (e.g. B frames).
When there is no re-ordering, IVIDDEC2_OutArgs::outputID will be same as this inputID field.
Zero (0) is not a supported inputID. This value is reserved for cases when there is no output buffer provided in IVIDDEC2_OutArgs::displayBufs.
See also:
IVIDDEC2_OutArgs::outputID.
The documentation for this struct was generated from the following file:
  • ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2_Obj Struct Reference
[IVIDDEC2 - XDM Video Decoder Interface]

This must be the first field of all IVIDDEC2 instance objects. More...

#include <ividdec2.h>

Collaboration diagram for IVIDDEC2_Obj:
[legend]

Data Fields

struct IVIDDEC2_Fxns * fxns

Detailed Description

This must be the first field of all IVIDDEC2 instance objects.

Field Documentation

struct IVIDDEC2_Fxns* IVIDDEC2_Obj::fxns
The documentation for this struct was generated from the following file:
  • ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2_OutArgs Struct Reference
[IVIDDEC2 - XDM Video Decoder Interface]

Defines the run time output arguments for all IVIDDEC2 instance objects. More...

#include <ividdec2.h>

Collaboration diagram for IVIDDEC2_OutArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 bytesConsumed
XDAS_Int32 | outputID [20]
IVIDEO1_BufDesc decodedBufs
IVIDEO1_BufDesc | displayBufs [20]
XDAS_Int32 outputMbDataID
XDM1_SingleBufDesc mbDataBuf
XDAS_Int32 | freeBufID [20]
XDAS_Int32 outBufsInUseFlag

Detailed Description

Defines the run time output arguments for all IVIDDEC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2_Fxns::process()

Field Documentation

XDAS_Int32 IVIDDEC2_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC2_OutArgs::bytesConsumed

Number of bytes consumed during the process() call.

XDAS_Int32 IVIDDEC2_OutArgs::outputID[20]

Output ID corresponding to displayBufs[].

Remarks:
A value of zero (0) indicates an invalid ID. The first zero entry in array will indicate end of valid outputIDs within the array. Hence the application can stop reading the array when it encounters the first zero entry.
See also:
IVIDDEC2_OutArgs::displayBufs
IVIDDEC2_InArgs::inputID
IVIDEO1_BufDesc IVIDDEC2_OutArgs::decodedBufs

The decoder fills this structure with buffer pointers to the decoded frame. Related information fields for the decoded frame are also populated.

When frame decoding is not complete, as indicated by outBufsInUseFlag, the frame data in this structure will be incomplete. However, the algorithm will provide incomplete decoded frame data in case application may choose to use it for error recovery purposes.

See also:
IVIDDEC2_OutArgs::outBufsInUseFlag
IVIDEO1_BufDesc IVIDDEC2_OutArgs::displayBufs[20]

Array containing display frames corresponding to valid ID entries in the outputID[] array.

Remarks:
Entries in the array corresponding to invalid ID values (zero) in outputID[] will set zero value for the following fields in the IVIDEO1_BufDesc structure: numBufs, frameWidth, frameHeight, and framePitch.
Implied by the previous remark, as this array corresponds to buffer IDs indicated by outputID[], elements of this array are undefined if the corresponding outputID[] element is zero (0).
XDAS_Int32 IVIDDEC2_OutArgs::outputMbDataID

Output ID corresponding with the MB Data

Remarks:
This will be set to zero when there is no MB Data Buffer
XDM1_SingleBufDesc IVIDDEC2_OutArgs::mbDataBuf

The decoder populates the last buffer among the buffers supplied within outBufs->bufs[] with the decoded MB data generated by the ECD module. The pointer buffer along with the buffer size is output via this buffer descriptor.

XDAS_Int32 IVIDDEC2_OutArgs::freeBufID[20]

This is an array of inputID's corresponding to the buffers that have been unlocked in the current process call.

Remarks:
Buffers returned to the application for display (via IVIDDEC2_OutArgs::displayBufs) continue to be owned by the algorithm until they are released - indicated by the ID being returned in this freeBuf array.
The buffers released by the algorithm are indicated by their non-zero ID (previously provided via IVIDDEC2_InArgs::inputID).
A value of zero (0) indicates an invalid ID. The first zero entry in array will indicate end of valid freeBufIDs within the array. Hence the application can stop searching the array when it encounters the first zero entry.
If no buffer was unlocked in the process call, freeBufID[0] will have a value of zero.
See also:
IVIDDEC2_InArgs::inputID
IVIDDEC2_OutArgs::displayBufs
XDAS_Int32 IVIDDEC2_OutArgs::outBufsInUseFlag

Flag to indicate that the outBufs provided with the process() call are in use. No outBufs are required to be supplied with the next process() call.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
The documentation for this struct was generated from the following file:
  • ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2_Params Struct Reference
[IVIDDEC2 - XDM Video Decoder Interface]

Defines the creation time parameters for all IVIDDEC2 instance objects. More...

#include <ividdec2.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxFrameRate
XDAS_Int32 maxBitRate
XDAS_Int32 dataEndianness
XDAS_Int32 forceChromaFormat

Detailed Description

Defines the creation time parameters for all IVIDDEC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IVIDDEC2_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC2_Params::maxHeight

Maximum video height in pixels.

XDAS_Int32 IVIDDEC2_Params::maxWidth

Maximum video width in pixels.

XDAS_Int32 IVIDDEC2_Params::maxFrameRate

Maximum frame rate in fps * 1000. For example, if max frame rate is 30 frames per second, set this field to 30000.

XDAS_Int32 IVIDDEC2_Params::maxBitRate

Maximum bit rate, bits per second. For example, if bit rate is 10 Mbps, set this field to 10000000

XDAS_Int32 IVIDDEC2_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IVIDDEC2_Params::forceChromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ChromaFormat
The documentation for this struct was generated from the following file:
  • ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2_Status Struct Reference
[IVIDDEC2 - XDM Video Decoder Interface]

Defines instance status parameters. More...

#include <ividdec2.h>

Collaboration diagram for IVIDDEC2_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDAS_Int32 maxNumDisplayBufs
XDAS_Int32 outputHeight
XDAS_Int32 outputWidth
XDAS_Int32 frameRate
XDAS_Int32 bitRate
XDAS_Int32 contentType
XDAS_Int32 outputChromaFormat
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
All fields correspond to latest IVIDDEC2_Fxns::process() call on the particular instance of the decoder.
See also:
IVIDDEC2_Fxns::control()

Field Documentation

XDAS_Int32 IVIDDEC2_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC2_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IVIDDEC2_Status::data

Buffer descriptor for data passing.

Remarks:
If this field is not used, the application must set data.buf to NULL.
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the IVIDDEC2_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int32 IVIDDEC2_Status::maxNumDisplayBufs

The maximum number of buffers that will be required by the codec.

Remarks:
The maximum number of buffers can be IVIDEO2_MAX_IO_BUFFERS.
XDAS_Int32 IVIDDEC2_Status::outputHeight

Output height in pixels.

XDAS_Int32 IVIDDEC2_Status::outputWidth

Output width in pixels.

XDAS_Int32 IVIDDEC2_Status::frameRate

Average frame rate in fps * 1000. For example, if average frame rate is 30 frames per second, this field should be 30000.

XDAS_Int32 IVIDDEC2_Status::bitRate

Average bit rate, in bits per second.

XDAS_Int32 IVIDDEC2_Status::contentType

Video content types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_ContentType
XDAS_Int32 IVIDDEC2_Status::outputChromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ChromaFormat
XDM_AlgBufInfo IVIDDEC2_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2BACK_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2BACK_CodecClassConfig Struct Reference
[VIDDEC2FRONT/VIDDEC2BACK - Split video decoder interface]

Definition of IVIDDEC2BACK codec class configurable parameters. More...

#include <viddec2.h>

Data Fields

Bool | manageInBufsCache [32]
Bool | manageOutBufsCache [32]
Bool | manageIntermediateBufsCache [32]

Detailed Description

Definition of IVIDDEC2BACK codec class configurable parameters.

Field Documentation

Bool IVIDDEC2BACK_CodecClassConfig::manageInBufsCache[32]
Bool IVIDDEC2BACK_CodecClassConfig::manageOutBufsCache[32]
Bool IVIDDEC2BACK_CodecClassConfig::manageIntermediateBufsCache[32]
The documentation for this struct was generated from the following file:
  • split/viddec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2BACK_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2BACK_Fxns Struct Reference
[XDM IVIDDEC2-based Video Decoder Split Interface]

Defines all of the operations on IVIDDEC2BACK objects. More...

#include <ividdec2.h>

Collaboration diagram for IVIDDEC2BACK_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDDEC2BACK_Handle handle, XDM_Context *context, IVIDDEC2_OutArgs *outArgs)
Basic video decoding call.
XDAS_Int32(* | control )(IVIDDEC2BACK_Handle handle, XDM_Context *context, IVIDDEC2_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDDEC2BACK objects.

Field Documentation

IALG_Fxns IVIDDEC2BACK_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDDEC2BACK_Fxns::process)(IVIDDEC2BACK_Handle handle, XDM_Context *context, IVIDDEC2_OutArgs *outArgs)

Basic video decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | context | Context provided to, and managed by the split codec.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
context must not be NULL, and must point to a valid XDM_Context structure.
context->numInOutBufs must be zero (0).
outArgs must not be NULL, and must point to a valid IVIDDEC2_OutArgs structure.
Postcondition:
The buffers in context are owned by the calling application.
Return values:
IVIDDEC2_EOK

Success.

IVIDDEC2_EFAIL

General failure.

See IVIDDEC2_Status::extendedError for more detailed further error conditions.
IVIDDEC2_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IVIDDEC2BACK_Fxns::control)(IVIDDEC2BACK_Handle handle, XDM_Context *context, IVIDDEC2_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | context | Codec context. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
context must not be NULL, and must point to a valid XDM_Context structure.
status must not be NULL, and must point to a valid IVIDDEC2_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IVIDDEC2_EOK

Success.

IVIDDEC2_EFAIL

General failure.

See IVIDDEC2_Status::extendedError for more detailed further error conditions.
IVIDDEC2_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • split/ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2BACK_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2BACK_Obj Struct Reference
[XDM IVIDDEC2-based Video Decoder Split Interface]

This must be the first field of all IVIDDEC2BACK instance objects. More...

#include <ividdec2.h>

Collaboration diagram for IVIDDEC2BACK_Obj:
[legend]

Data Fields

struct IVIDDEC2BACK_Fxns * fxns

Detailed Description

This must be the first field of all IVIDDEC2BACK instance objects.

Field Documentation

struct IVIDDEC2BACK_Fxns* IVIDDEC2BACK_Obj::fxns
The documentation for this struct was generated from the following file:
  • split/ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2FRONT_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2FRONT_Fxns Struct Reference
[XDM IVIDDEC2-based Video Decoder Split Interface]

Defines all of the operations on IVIDDEC2FRONT objects. More...

#include <ividdec2.h>

Collaboration diagram for IVIDDEC2FRONT_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDDEC2FRONT_Handle handle, IVIDDEC2_InArgs *inArgs, XDM_Context *context, IVIDDEC2FRONT_OutArgs *outArgs)
Basic video decoding call.
XDAS_Int32(* | control )(IVIDDEC2FRONT_Handle handle, IVIDDEC2_Cmd id, IVIDDEC2_DynamicParams *params, XDM_Context *context, IVIDDEC2FRONT_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDDEC2FRONT objects.

Field Documentation

IALG_Fxns IVIDDEC2FRONT_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDDEC2FRONT_Fxns::process)(IVIDDEC2FRONT_Handle handle, IVIDDEC2_InArgs *inArgs, XDM_Context *context, IVIDDEC2FRONT_OutArgs *outArgs)

Basic video decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | inArgs | Input arguments. This is a required parameter.
[in,out] | context | Context provided to, and managed by the split codec.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
The application must call IVIDDEC2FRONT::control() with XDM_GETCONTEXTINFO to obtain the minimum buffer sizes the codec requires.
context includes input and output buffers, intermediate buffers, and other values used by the codec. See XDM_Context for more details.
Precondition:
context->numInBufs will indicate the total number of input buffers supplied for input frame, and conditionally, the encoders MB data buffer.
If IVIDDEC2_DynamicParams::mbDataFlag was set to XDAS_FALSE in a previous control() call, the application only needs to provide buffers for reconstruction frames.
If IVIDDEC2_DynamicParams::mbDataFlag was set to XDAS_TRUE in a previous control() call, context->outBufs[context->numOutBufs - 1] is a buffer descriptor into which the algorithm will write MB data for each macro block. The size of the MB data buffer will vary based on the decoder type. H.264 may generate N264 bytes per MB, while Mpeg2 may generate NMP2 bytes. The exact size of the buffers should be obtained by calling the algorithm's control() method with XDM_GETBUFINFO.
inArgs must not be NULL, and must point to a valid IVIDDEC2_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDDEC2FRONT_OutArgs structure.
context must not be NULL, and must point to a valid XDM_Context structure.
context->inBufs[0].buf must not be NULL, and must point to a valid buffer of data that is at least context->inBufs[0].bufSize bytes in length.
context->outBufs[0] must not be NULL, and must point to a valid buffer of data that is at least context->outBufs[0].bufSize bytes in length.
context->numInOutBufs must be zero (0).
The buffers in context->inBufs and context->outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of context->inBufs, with the exception of context->inBufs[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must modify the contents of context->inBufs[].accessMask and appropriately indicate the mode in which each of the buffers in context->inBufs were read. For example, if the algorithm only read from context->inBufs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in context->inBufs and context->outBufs are not owned by the calling application.
The buffers in context->algContext and context->intermediateBufs[] are owned by the calling application, but must be provided - unmodified - to the next part in this split codec.
Return values:
IVIDDEC2_EOK

Success.

IVIDDEC2_EFAIL

General failure.

See IVIDDEC2_Status::extendedError for more detailed further error conditions.
IVIDDEC2_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IVIDDEC2FRONT_Fxns::control)(IVIDDEC2FRONT_Handle handle, IVIDDEC2_Cmd id, IVIDDEC2_DynamicParams *params, XDM_Context *context, IVIDDEC2FRONT_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[in,out] | context | Context provided to, and managed by the split codec.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDDEC2_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDDEC2FRONT_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Remarks:
context may be NULL. The FRONT part of a codec may be capable of completely handling the control() command. The codec indicates this the application is sure the FRONT part of the codec can return and must point to a valid XDM_Context structure.
Return values:
IVIDDEC2_EOK

Success.

IVIDDEC2_EFAIL

General failure.

See IVIDDEC2_Status::extendedError for more detailed further error conditions.
IVIDDEC2_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • split/ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2FRONT_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2FRONT_Obj Struct Reference
[XDM IVIDDEC2-based Video Decoder Split Interface]

This must be the first field of all IVIDDEC2FRONT instance objects. More...

#include <ividdec2.h>

Collaboration diagram for IVIDDEC2FRONT_Obj:
[legend]

Data Fields

struct IVIDDEC2FRONT_Fxns * fxns

Detailed Description

This must be the first field of all IVIDDEC2FRONT instance objects.

Field Documentation

struct IVIDDEC2FRONT_Fxns* IVIDDEC2FRONT_Obj::fxns
The documentation for this struct was generated from the following file:
  • split/ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2FRONT_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2FRONT_OutArgs Struct Reference
[XDM IVIDDEC2-based Video Decoder Split Interface]

Defines the run time output arguments for all IVIDDEC2FRONT instance objects. More...

#include <ividdec2.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesConsumed

Detailed Description

Defines the run time output arguments for all IVIDDEC2FRONT instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC2FRONT_Fxns::process()

Field Documentation

XDAS_Int32 IVIDDEC2FRONT_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC2FRONT_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IVIDDEC2FRONT_OutArgs::bytesConsumed

Number of bytes consumed during the process() call.

The documentation for this struct was generated from the following file:
  • split/ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC2FRONT_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC2FRONT_Status Struct Reference
[XDM IVIDDEC2-based Video Decoder Split Interface]

Defines instance status parameters. More...

#include <ividdec2.h>

Collaboration diagram for IVIDDEC2FRONT_Status:
[legend]

Data Fields

XDM_ContextInfo contextInfo
XDAS_Int32 nextPartRequiredFlag
XDAS_Int32 partialExtendedError
IVIDDEC2_Status fullStatus

Detailed Description

Defines instance status parameters.

Remarks:
All fields correspond to latest IVIDDEC2FRONT_Fxns::process() call on the particular instance of the decoder.
See also:
IVIDDEC2FRONT_Fxns::control()

Field Documentation

XDM_ContextInfo IVIDDEC2FRONT_Status::contextInfo

Context info.

Remarks:
Only valid when the cmd issued to control() is XDM_GETCONTEXTINFO.
XDAS_Int32 IVIDDEC2FRONT_Status::nextPartRequiredFlag

Flag indicating whether the next part in the split codec must be called or not.

Remarks:
If the control() call returned IVIDDEC2_EOK, and this nextPartRequiredFlag field is XDAS_TRUE, the application must call the next part in the split codec.
If the control() call returned failure (i.e., something other than IVIDDEC2_EOK), the codec must set this field to XDAS_FALSE. Further information about the failure can be obtained via the partialExtendedError field.
XDAS_Int32 IVIDDEC2FRONT_Status::partialExtendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
Remarks:
This field should be filled by the codec if the control() call does not return IVIDDEC2_EOK. Otherwise, it is an undefined output field.
IVIDDEC2_Status IVIDDEC2FRONT_Status::fullStatus

Complete status results.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
The size field of this structure must be filled by the application before calling control(). This is necessary even if the FRONT codec is unable to complete the request (e.g., the codec sets the nextPartRequiredFlag to XDAS_TRUE) and further parts of the codec must be called. This size field indicates to the codec whether any codec-specific extensions are requested.
The fullStatus.size field should only indicate the size of the [potentially extended] fullStatus structure.
This field should be used if nextPartRequiredFlag is XDAS_FALSE.
This struct, with the exception of the size field, will be populated by the codec. If the control() call returns IVIDDEC2_EOK, the application must inspect the nextPartRequiredFlag field to determine whether it must call the next part or whether this fullStatus field contains the complete results of the control() call.
The fullStatus.data field should not be used to provide buffers to split codecs. In the same way the application provides data buffers to process() via an XDM_Context argument, control() does the same. As a result, the fullStatus.data field is ignored and unused in this struct.
If control() is called with the XDM_GETVERSION command, the application must provide the buffer into which the codec will place its version string in the context->outBuffers[0] field.
The documentation for this struct was generated from the following file:
  • split/ividdec2.h


Codec Engine Application Programming Interface (API): IVIDDEC3_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC3_CodecClassConfig Struct Reference
[VIDDEC3 - Video Decoder Interface]

Definition of IVIDDEC3 codec class configurable parameters. More...

#include <viddec3.h>

Data Fields

Bool | manageInBufsCache [16]
Bool | manageOutBufsCache [16]

Detailed Description

Definition of IVIDDEC3 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Field Documentation

Bool IVIDDEC3_CodecClassConfig::manageInBufsCache[16]
Bool IVIDDEC3_CodecClassConfig::manageOutBufsCache[16]
The documentation for this struct was generated from the following file:
  • viddec3.h


Codec Engine Application Programming Interface (API): IVIDDEC3_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC3_DynamicParams Struct Reference
[IVIDDEC3 - XDM Video Decoder Interface]

This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls. More...

#include <ividdec3.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 decodeHeader
XDAS_Int32 displayWidth
XDAS_Int32 frameSkipMode
XDAS_Int32 newFrameFlag
XDM_DataSyncPutFxn putDataFxn
XDM_DataSyncHandle putDataHandle
XDM_DataSyncGetFxn getDataFxn
XDM_DataSyncHandle getDataHandle
XDM_DataSyncPutBufferFxn putBufferFxn
XDM_DataSyncHandle putBufferHandle
XDAS_Int32 lateAcquireArg

Detailed Description

This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC3_Fxns::control()

Field Documentation

XDAS_Int32 IVIDDEC3_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC3_DynamicParams::decodeHeader

Decode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_DecMode
XDAS_Int32 IVIDDEC3_DynamicParams::displayWidth

Pitch. If set to zero, use the decoded image width. Else, use given display width in pixels. Display width has to be greater than or equal to image width.

XDAS_Int32 IVIDDEC3_DynamicParams::frameSkipMode

Video frame skip features for video decoder.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_FrameSkip
XDAS_Int32 IVIDDEC3_DynamicParams::newFrameFlag

Flag to indicate that the algorithm should start a new frame.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This is useful for error recovery, for example when the end of frame cannot be detected by the codec but is known to the application.
XDM_DataSyncPutFxn IVIDDEC3_DynamicParams::putDataFxn

Optional datasync "put data" function.

Remarks:
Apps/frameworks that don't support datasync should set this to NULL.
This function is provided by the app/framework to the video decoder. The decoder calls this function when sub-frame data has been put into an output buffer and is available.
XDM_DataSyncHandle IVIDDEC3_DynamicParams::putDataHandle

Datasync "put data" handle

Remarks:
This is a handle which the codec must provide when calling the app-registered IVIDDEC3_DynamicParams.putDataFxn().
Apps/frameworks that don't support datasync should set this to NULL.
For an algorithm, this handle is read-only; it must not be modified when calling the app-registered IVIDDEC3_DynamicParams.putDataFxn().
The app/framework can use this handle to differentiate callbacks from different algorithms.
XDM_DataSyncGetFxn IVIDDEC3_DynamicParams::getDataFxn

Datasync "get data" function.

Remarks:
This function is provided by the app/framework to the video decoder. The decoder calls this function to get partial compressed bit-stream data from the app/framework.
Apps/frameworks that don't support datasync should set this to NULL.
XDM_DataSyncHandle IVIDDEC3_DynamicParams::getDataHandle

Datasync "get data" handle

Remarks:
This is a handle which the codec must provide when calling getDataFxn.
Apps/frameworks that don't support datasync should set this to NULL.
For an algorithm, this handle is read-only; it must not be modified when calling the app-registered IVIDDEC3_DynamicParams.getDataFxn().
The app/framework can use this handle to differentiate callbacks from different algorithms.
XDM_DataSyncPutBufferFxn IVIDDEC3_DynamicParams::putBufferFxn

Datasync "put buffer" function.

Remarks:
This function is provided by the app/framework to the video decoder. The decoder calls this function to release consumed, partial compressed bit-stream data buffers to the app/framework.
Apps/frameworks that don't support datasync should set this to NULL.
XDM_DataSyncHandle IVIDDEC3_DynamicParams::putBufferHandle

Datasync "put buffer" handle

Remarks:
This is a handle which the codec must provide when calling the app-registered IVIDDEC3_DynamicParam.putBufferFxn().
Apps/frameworks that don't support datasync should set this to NULL.
For an algorithm, this handle is read-only; it must not be modified when calling the app-registered IVIDDEC3_DynamicParams.putBufferFxn().
The app/framework can use this handle to differentiate callbacks from different algorithms.
XDAS_Int32 IVIDDEC3_DynamicParams::lateAcquireArg

Argument used during late acquire.

Remarks:
For all control() commands other than XDM_SETLATEACQUIREARG, this field is ignored and can therefore be set by the caller to any value.
This field is used to provide the 'late acquire' arg required by XDM_SETLATEACQUIREARG.
Late acquire support is an optional feature for video decoders. If the codec supports late acquisition of resources, and the application has supplied a lateAcquireArg value (via XDM_SETLATEACQUIREARG), then the codec must also provide this lateAcquireArg value when requesting resources (i.e. during their call to acquire() when requesting the resource).
The documentation for this struct was generated from the following file:
  • ividdec3.h


Codec Engine Application Programming Interface (API): IVIDDEC3_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC3_Fxns Struct Reference
[IVIDDEC3 - XDM Video Decoder Interface]

Defines all of the operations on IVIDDEC3 objects. More...

#include <ividdec3.h>

Collaboration diagram for IVIDDEC3_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDDEC3_Handle handle, XDM2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDDEC3_InArgs *inArgs, IVIDDEC3_OutArgs *outArgs)
Basic video decoding call.
XDAS_Int32(* | control )(IVIDDEC3_Handle handle, IVIDDEC3_Cmd id, IVIDDEC3_DynamicParams *params, IVIDDEC3_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDDEC3 objects.

Field Documentation

IALG_Fxns IVIDDEC3_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDDEC3_Fxns::process)(IVIDDEC3_Handle handle, XDM2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDDEC3_InArgs *inArgs, IVIDDEC3_OutArgs *outArgs)

Basic video decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
process() enables codecs to support error resiliency and error concealment. As a result, even if IVIDDEC3_EFAIL is returned from process() because the encoded buffer has an error, it's possible that decoded buffers (outArgs->decodedBufs) and display buffers (outArgs->displayBufs) could still be returned. The codec can indicate that buffers are available by not setting the XDM_ISFATALERROR bit in the respective displayBufs and decodedBufs extendedError field if the buffers contain valid data.
By extension then, if the outArgs->decodedBufs and outArgs->displayBufs buffers are not valid, even if the codec's process() call returns IVIDDEC3_EFAIL, it must also be sure to set the XDM_ISFATALERROR bit in the respective extendedError fields. Failure to do so may result in applications accessing these buffers and causing system instability.
Precondition:
inArgs must not be NULL, and must point to a valid IVIDDEC3_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDDEC3_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM2_BufDesc structure.
When operating in "fullframe mode" (e.g. not in data sync mode), inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.
When created with .inputDataMode (for inBufs) or .outputDataMode (for outBufs) set to operate in "subframe mode" (e.g. data sync mode), the appropriate .descs[].usageMode field(s)'s XDM_MEMUSAGE_DATASYNC bit must be set. See XDM_MemoryUsageMode for more details.
outBufs must not be NULL, and must point to a valid XDM2_BufDesc structure.
When operating in "fullframe mode" (e.g. not in data sync mode), outBufs->buf[0] must not be NULL, and must point to a valid buffer of data that is at least outBufs->bufSizes[0] bytes in length.
Unless used in data sync mode, the buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.bufDesc[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must modify the contents of inBufs->descs[].accessMask and appropriately indicate the mode in which each of the buffers in inBufs were read. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs are owned by the calling application.
Return values:
IVIDDEC3_EOK

Success.

IVIDDEC3_EFAIL

General failure.

See IVIDDEC3_Status::extendedError for more detailed further error conditions.
IVIDDEC3_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IVIDDEC3_Fxns::control)(IVIDDEC3_Handle handle, IVIDDEC3_Cmd id, IVIDDEC3_DynamicParams *params, IVIDDEC3_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDDEC3_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDDEC3_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IVIDDEC3_EOK

Success.

IVIDDEC3_EFAIL

General failure.

See IVIDDEC3_Status::extendedError for more detailed further error conditions.
IVIDDEC3_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • ividdec3.h


Codec Engine Application Programming Interface (API): IVIDDEC3_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC3_InArgs Struct Reference
[IVIDDEC3 - XDM Video Decoder Interface]

Defines the input arguments for all IVIDDEC3 instance process function. More...

#include <ividdec3.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numBytes
XDAS_Int32 inputID

Detailed Description

Defines the input arguments for all IVIDDEC3 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC3_Fxns::process()

Field Documentation

XDAS_Int32 IVIDDEC3_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC3_InArgs::numBytes

Size of input data in bytes, provided to the algorithm for decoding.

XDAS_Int32 IVIDDEC3_InArgs::inputID

The decoder will attach this ID with the corresponding output frames.

Remarks:
This is useful when frames require re-ordering (e.g. B frames).
When there is no re-ordering, IVIDDEC3_OutArgs::outputID will be same as this inputID field.
Zero (0) is not a supported inputID. This value is reserved for cases when there is no output buffer provided in IVIDDEC3_OutArgs::displayBufs.
See also:
IVIDDEC3_OutArgs::outputID.
The documentation for this struct was generated from the following file:
  • ividdec3.h


Codec Engine Application Programming Interface (API): IVIDDEC3_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC3_Obj Struct Reference
[IVIDDEC3 - XDM Video Decoder Interface]

This must be the first field of all IVIDDEC3 instance objects. More...

#include <ividdec3.h>

Collaboration diagram for IVIDDEC3_Obj:
[legend]

Data Fields

struct IVIDDEC3_Fxns * fxns

Detailed Description

This must be the first field of all IVIDDEC3 instance objects.

Field Documentation

struct IVIDDEC3_Fxns* IVIDDEC3_Obj::fxns
The documentation for this struct was generated from the following file:
  • ividdec3.h


Codec Engine Application Programming Interface (API): IVIDDEC3_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC3_OutArgs Struct Reference
[IVIDDEC3 - XDM Video Decoder Interface]

Defines the run time output arguments for all IVIDDEC3 instance objects. More...

#include <ividdec3.h>

Collaboration diagram for IVIDDEC3_OutArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesConsumed
XDAS_Int32 | outputID [20]
IVIDEO2_BufDesc decodedBufs
XDAS_Int32 | freeBufID [20]
XDAS_Int32 outBufsInUseFlag
XDAS_Int32 displayBufsMode
union {
IVIDEO2_BufDesc bufDesc [1]
IVIDEO2_BufDesc * pBufDesc [20]
} displayBufs

Detailed Description

Defines the run time output arguments for all IVIDDEC3 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
The size of this struct may vary when IVIDDEC3_OutArgs.displayBufsMode is set to IVIDDEC3_DISPLAYBUFS_EMBEDDED (see details in IVIDDEC3_OutArgs.displayBufs.bufDesc).
When IVIDDEC3_OutArgs.displayBufsMode is set to IVIDDEC3_DISPLAYBUFS_EMBEDDED, the number of elements in the IVIDDEC3_OutArgs.displayBufs.bufDesc array is a constant (and can be acquired by calling IVIDDEC3_Fxns.control() and looking in the IVIDDEC3_Status.maxOutArgsDisplayBufs field. Note that any extended fields follow the IVIDDEC3_OutArgs.displayBufs.bufDesc array.
See also:
IVIDDEC3_Fxns.process()

Field Documentation

XDAS_Int32 IVIDDEC3_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

Remarks:
Extra care must be taken when setting this field as the size of even the base data can vary because of the IVIDDEC3_OutArgs.displayBufs field.
See also:
IVIDDEC3_OutArgs.displayBufs
XDAS_Int32 IVIDDEC3_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IVIDDEC3_OutArgs::bytesConsumed

Number of bytes consumed.

XDAS_Int32 IVIDDEC3_OutArgs::outputID[20]

Output ID corresponding to displayBufs[].

Remarks:
A value of zero (0) indicates an invalid ID. The first zero entry in array will indicate end of valid outputIDs within the array. Hence the application can stop reading the array when it encounters the first zero entry.
See also:
IVIDDEC3_OutArgs.displayBufs
IVIDDEC3_InArgs.inputID
IVIDEO2_BufDesc IVIDDEC3_OutArgs::decodedBufs

The decoder fills this structure with buffer pointers to the decoded frame. Related information fields for the decoded frame are also populated.

When frame decoding is not complete, as indicated by IVIDDEC3_OutArgs.outBufsInUseFlag, the frame data in this structure will be incomplete. However, the algorithm will provide incomplete decoded frame data in case application wants to use it for error recovery purposes.

See also:
IVIDDEC3_OutArgs.outBufsInUseFlag
XDAS_Int32 IVIDDEC3_OutArgs::freeBufID[20]

This is an array of inputID's corresponding to the buffers that have been unlocked in the current process call.

Remarks:
Buffers returned to the application for display (via IVIDDEC3_OutArgs.displayBufs) continue to be owned by the algorithm until they are released - indicated by the ID being returned in this freeBuf array.
The buffers released by the algorithm are indicated by their non-zero ID (previously provided via IVIDDEC3_InArgs.inputID).
A value of zero (0) indicates an invalid ID. The first zero entry in array will indicate end of valid freeBufIDs within the array. Hence the application can stop searching the array when it encounters the first zero entry.
If no buffer was unlocked in the process call, freeBufID[0] will have a value of zero.
See also:
IVIDDEC3_InArgs.inputID
IVIDDEC3_OutArgs.displayBufs
XDAS_Int32 IVIDDEC3_OutArgs::outBufsInUseFlag

Flag to indicate that the outBufs provided with the IVIDDEC3_Fxns.process() call are in use. No outBufs are required to be supplied with the next IVIDDEC3_Fxns.process() call.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
XDAS_Int32 IVIDDEC3_OutArgs::displayBufsMode

Indicates which mode the IVIDDEC3_OutArgs.displayBufs are presented in.

Remarks:
See the IVIDDEC3_DisplayBufsMode enum for the values this field may contain.
This will be set to the same value the application provided at creation time via IVIDDEC3_Params.displayBufsMode.
See also:
IVIDDEC3_Params.displayBufsMode
IVIDDEC3_DisplayBufsMode
IVIDEO2_BufDesc IVIDDEC3_OutArgs::bufDesc[1]

Array containing display frames corresponding to valid ID entries in the outputID[] array.

Remarks:
The number of elements in this array is not necessarily 1, and should be acquired by the app via the IVIDDEC3_Status.maxNumDisplayBufs field - acquired by calling IVIDDEC3_Fxns.control() with XDM_GETSTATUS. The application should acquire this prior to calling IVIDDEC3_Fxns.process().
Because of the variable size of this array, care must be taken when setting the IVIDDEC3_OutArgs.size field to include the complete size of this struct.
Entries in the array corresponding to invalid ID values (zero) in IVIDDEC3_OutArgs.outputID[] will set zero value for the following fields in the IVIDEO2_BufDesc structure: numPlanes, numMetaPlanes.
Implied by the previous remark, as this array corresponds to buffer IDs indicated by outputID[], elements of this array are undefined if the corresponding outputID[] element is zero (0).
IVIDEO2_BufDesc* IVIDDEC3_OutArgs::pBufDesc[20]

Array containing pointers to display frames corresponding to valid ID entries in the outputID[] array.

Remarks:
These buffers must be allocated by the application, and provided into this "outArgs" structure by the app.
union { ... } IVIDDEC3_OutArgs::displayBufs

Display Buffers union.

Remarks:
This field is complex. The value in IVIDDEC3_OutArgs.displayBufsMode indicates how the user should interact with this union field. If IVIDDEC3_OutArgs.displayBufsMode is IVIDDEC3_DISPLAYBUFS_EMBEDDED, this field should be referenced via the IVIDDEC3_OutArgs.bufDesc[] array who's number of elements is determined via the IVIDDEC3_OutArgs.outputID[] array. If this field is IVIDDEC3_DISPLAYBUFS_PTRS, this field should be referenced via the IVIDDEC3_OutArgs.pBufDesc[] array.
See also:
IVIDDEC3_OutArgs.bufDesc
IVIDDEC3_OutArgs.pBufDesc
The documentation for this struct was generated from the following file:
  • ividdec3.h


Codec Engine Application Programming Interface (API): IVIDDEC3_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC3_Params Struct Reference
[IVIDDEC3 - XDM Video Decoder Interface]

Defines the creation time parameters for all IVIDDEC3 instance objects. More...

#include <ividdec3.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxFrameRate
XDAS_Int32 maxBitRate
XDAS_Int32 dataEndianness
XDAS_Int32 forceChromaFormat
XDAS_Int32 operatingMode
XDAS_Int32 displayDelay
XDAS_Int32 inputDataMode
XDAS_Int32 outputDataMode
XDAS_Int32 numInputDataUnits
XDAS_Int32 numOutputDataUnits
XDAS_Int32 errorInfoMode
XDAS_Int32 displayBufsMode
XDAS_Int32 metadataType [3]

Detailed Description

Defines the creation time parameters for all IVIDDEC3 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IVIDDEC3_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC3_Params::maxHeight

Maximum video height in pixels.

XDAS_Int32 IVIDDEC3_Params::maxWidth

Maximum video width in pixels.

XDAS_Int32 IVIDDEC3_Params::maxFrameRate

Maximum frame rate in fps * 1000. For example, if max frame rate is 30 frames per second, set this field to 30000.

XDAS_Int32 IVIDDEC3_Params::maxBitRate

Maximum bit rate, bits per second. For example, if bit rate is 10 Mbps, set this field to 10000000

XDAS_Int32 IVIDDEC3_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IVIDDEC3_Params::forceChromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ChromaFormat
XDAS_Int32 IVIDDEC3_Params::operatingMode

Video coding mode of operation.

See also:
IVIDEO_OperatingMode
XDAS_Int32 IVIDDEC3_Params::displayDelay

Video decoder output frame order.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
IVIDDEC3_Params.displayDelay
See also:
IVIDDEC3_displayDelay
XDAS_Int32 IVIDDEC3_Params::inputDataMode

Input data mode.

Remarks:
If a subframe mode is provided, the application must call IVIDDEC3_Fxns.control() with XDM_SETPARAMS id prior to IVIDDEC3_Fxns.process() to set IVIDDEC3_DynamicParams.getDataFxn() and IVIDDEC3_DynamicParams.getDataHandle (and optionally IVIDDEC3_DynamicParams.putBufferFxn(), and IVIDDEC3_DynamicParams.putBufferHandle). Else, the alg can return error.
See also:
IVIDEO_DataMode
XDAS_Int32 IVIDDEC3_Params::outputDataMode

Output data mode.

Remarks:
If a subframe mode is provided, the application must call IVIDDEC3_Fxns.control() with XDM_SETPARAMS id prior to IVIDDEC3_Fxns.process() to set IVIDDEC3_DynamicParams.putDataFxn(), and IVIDDEC3_DynamicParams.putDataHandle. Else, the alg can return error.
See also:
IVIDEO_DataMode
XDAS_Int32 IVIDDEC3_Params::numInputDataUnits

Number of input slices/rows.

Remarks:
Units depend on the IVIDDEC3_Params.inputDataMode, like number of slices/rows/blocks etc.
Ignored if IVIDDEC3_Params.inputDataMode is set to full frame mode.
XDAS_Int32 IVIDDEC3_Params::numOutputDataUnits

Number of output slices/rows.

Remarks:
Units depend on the IVIDDEC3_Params.outputDataMode, like number of slices/rows/blocks etc.
Ignored if IVIDDEC3_Params.outputDataMode is set to full frame mode.
XDAS_Int32 IVIDDEC3_Params::errorInfoMode

Enable/disable packet error information for input and/or output.

See also:
IVIDEO_ErrorInfoMode
XDAS_Int32 IVIDDEC3_Params::displayBufsMode

Indicates which mode the displayBufs are presented in.

Remarks:
See the IVIDDEC3_DisplayBufsMode enum for the values this field may contain.
See also:
IVIDDEC3_OutArgs.displayBufsMode
IVIDDEC3_DisplayBufsMode
XDAS_Int32 IVIDDEC3_Params::metadataType[3]

Type of each metadata plane.

See also:
IVIDEO_MetadataType
The documentation for this struct was generated from the following file:
  • ividdec3.h


Codec Engine Application Programming Interface (API): IVIDDEC3_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC3_Status Struct Reference
[IVIDDEC3 - XDM Video Decoder Interface]

Defines instance status parameters. More...

#include <ividdec3.h>

Collaboration diagram for IVIDDEC3_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDAS_Int32 maxNumDisplayBufs
XDAS_Int32 maxOutArgsDisplayBufs
XDAS_Int32 outputHeight
XDAS_Int32 outputWidth
XDAS_Int32 frameRate
XDAS_Int32 bitRate
XDAS_Int32 contentType
XDAS_Int32 sampleAspectRatioHeight
XDAS_Int32 sampleAspectRatioWidth
XDAS_Int32 bitRange
XDAS_Int32 forceChromaFormat
XDAS_Int32 operatingMode
XDAS_Int32 frameOrder
XDAS_Int32 inputDataMode
XDAS_Int32 outputDataMode
XDM1_AlgBufInfo bufInfo
XDAS_Int32 numInputDataUnits
XDAS_Int32 numOutputDataUnits
XDAS_Int32 configurationID
XDAS_Int32 metadataType [3]
IVIDDEC3_DynamicParams decDynamicParams

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC3_Fxns::control()

Field Documentation

XDAS_Int32 IVIDDEC3_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC3_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IVIDDEC3_Status::data

Buffer descriptor for data passing.

Remarks:
If this field is not used, the application must set data.buf to NULL.
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the IVIDDEC3_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int32 IVIDDEC3_Status::maxNumDisplayBufs

The maximum number of buffers that will be required by the codec.

Remarks:
The maximum number of buffers can be IVIDEO2_MAX_IO_BUFFERS.
XDAS_Int32 IVIDDEC3_Status::maxOutArgsDisplayBufs

The maximum number of display buffers that can be returned via IVIDDEC3_OutArgs.displayBufs.

Remarks:
If returning display buffers embedded into the OutArgs struct, this field provides the size of the OutArgs.displayBufs.bufDesc[] array.
XDAS_Int32 IVIDDEC3_Status::outputHeight

Output height in pixels.

XDAS_Int32 IVIDDEC3_Status::outputWidth

Output width in pixels.

XDAS_Int32 IVIDDEC3_Status::frameRate

Average frame rate in fps * 1000. For example, if average frame rate is 30 frames per second, this field should be 30000.

XDAS_Int32 IVIDDEC3_Status::bitRate

Average bit rate, in bits per second.

XDAS_Int32 IVIDDEC3_Status::contentType

Video content types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_ContentType
XDAS_Int32 IVIDDEC3_Status::sampleAspectRatioHeight

Sample aspect ratio height.

XDAS_Int32 IVIDDEC3_Status::sampleAspectRatioWidth

Sample aspect ratio width.

XDAS_Int32 IVIDDEC3_Status::bitRange

Full 8 bit, CCIR 601

XDAS_Int32 IVIDDEC3_Status::forceChromaFormat

Output chroma format.

See also:
XDM_ChromaFormat
XDAS_Int32 IVIDDEC3_Status::operatingMode

Video decoding mode of operation.

See also:
IVIDEO_OperatingMode
XDAS_Int32 IVIDDEC3_Status::frameOrder

Frame Order

Remarks:
This field reflects the value provided during creation in IVIDDEC3_Params.displayDelay
XDAS_Int32 IVIDDEC3_Status::inputDataMode

Input data mode.

See also:
IVIDDEC3_Params.inputDataMode
IVIDEO_DataMode
XDAS_Int32 IVIDDEC3_Status::outputDataMode

Output data mode.

See also:
IVIDDEC3_Params.outputDataMode
IVIDEO_DataMode
XDM1_AlgBufInfo IVIDDEC3_Status::bufInfo

Input and output buffer information.

Remarks:
This field provides the application with the algorithm's buffer requirements. The requirements may vary depending on the current configuration of the algorithm instance.
See also:
XDM1_AlgBufInfo
XDAS_Int32 IVIDDEC3_Status::numInputDataUnits

Number of input slices/rows.

Remarks:
Units depend on the IVIDDEC3_Params.inputDataMode, like number of slices/rows/blocks etc.
Ignored if IVIDDEC3_Params.inputDataMode is set to full frame mode.
See also:
IVIDDEC3_Params.inputDataMode
XDAS_Int32 IVIDDEC3_Status::numOutputDataUnits

Number of output slices/rows.

Remarks:
Units depend on the outputDataMode, like number of slices/rows/blocks etc.
Ignored if IVIDDEC3_Params.outputDataMode is set to full frame mode.
See also:
IVIDDEC3_Params.outputDataMode
XDAS_Int32 IVIDDEC3_Status::configurationID

Configuration ID of given codec.

Remarks:
This is based on the input stream & can be used by the framework to optimize the save/restore overhead of any resources used.
This can be useful in multichannel use case scenarios.
XDAS_Int32 IVIDDEC3_Status::metadataType[3]

Type of each metadata plane.

See also:
IVIDEO_MetadataType
IVIDDEC3_DynamicParams IVIDDEC3_Status::decDynamicParams

Current values of the decoder's dynamic parameters.

Remarks:
This is the last field in the base struct as it can be extended.
The documentation for this struct was generated from the following file:
  • ividdec3.h


Codec Engine Application Programming Interface (API): IVIDDEC_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC_CodecClassConfig Struct Reference
[VIDDEC - Video Decoder Interface]

Definition of VIDDEC codec class configurable parameters. More...

#include <viddec.h>

Data Fields

Bool | manageInBufsCache [16]
Indicates how to manage the inBuf cache.
Bool | manageOutBufsCache [16]
Indicates how to manage the outBuf cache.
Bool | manageDisplayBufsCache [16]
Indicates how to manage the displayBuf cache.

Detailed Description

Definition of VIDDEC codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Field Documentation

Bool IVIDDEC_CodecClassConfig::manageInBufsCache[16]

Indicates how to manage the inBuf cache.

Remarks:
Array of Bools, indicating whether a particular inBuf should be invalidated prior to calling the codec's process() method.
Bool IVIDDEC_CodecClassConfig::manageOutBufsCache[16]

Indicates how to manage the outBuf cache.

Remarks:
Array of Bools, indicating whether a particular outBuf should be invalidated prior to calling the codec's process() method, and written back after.
Bool IVIDDEC_CodecClassConfig::manageDisplayBufsCache[16]

Indicates how to manage the displayBuf cache.

Remarks:
Array of Bools, indicating whether a particular displayBuf should be writeback invalidated after calling the codec's process() method.
The documentation for this struct was generated from the following file:
  • viddec.h


Codec Engine Application Programming Interface (API): IVIDDEC_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC_DynamicParams Struct Reference
[IVIDDEC - XDM Video Decoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <ividdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 decodeHeader
XDAS_Int32 displayWidth
XDAS_Int32 frameSkipMode

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::control()

Field Documentation

XDAS_Int32 IVIDDEC_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC_DynamicParams::decodeHeader

Number of access units to decode.

See also:
XDM_DecMode
XDAS_Int32 IVIDDEC_DynamicParams::displayWidth

Pitch. If set to zero, use the decoded image width. Else, use given display width in pixels.

XDAS_Int32 IVIDDEC_DynamicParams::frameSkipMode

Frame skip mode.

See also:
IVIDEO_FrameSkip
The documentation for this struct was generated from the following file:
  • ividdec.h


Codec Engine Application Programming Interface (API): IVIDDEC_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC_Fxns Struct Reference
[IVIDDEC - XDM Video Decoder Interface]

Defines all of the operations on IVIDDEC objects. More...

#include <ividdec.h>

Collaboration diagram for IVIDDEC_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDDEC_InArgs *inArgs, IVIDDEC_OutArgs *outArgs)
Basic video decoding call.
XDAS_Int32(* | control )(IVIDDEC_Handle handle, IVIDDEC_Cmd id, IVIDDEC_DynamicParams *params, IVIDDEC_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDDEC objects.

Field Documentation

IALG_Fxns IVIDDEC_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDDEC_Fxns::process)(IVIDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDDEC_InArgs *inArgs, IVIDDEC_OutArgs *outArgs)

Basic video decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
inArgs must not be NULL, and must point to a valid IVIDDEC_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDDEC_OutArgs structure.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inBufs or inArgs. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The buffers in inBufs are owned by the calling application.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IVIDDEC_OutArgs::extendedError for more detailed further error conditions.
XDAS_Int32(* IVIDDEC_Fxns::control)(IVIDDEC_Handle handle, IVIDDEC_Cmd id, IVIDDEC_DynamicParams *params, IVIDDEC_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDDEC_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDDEC_Status structure.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IVIDDEC_Status::extendedError for more detailed further error conditions.
The documentation for this struct was generated from the following file:
  • ividdec.h


Codec Engine Application Programming Interface (API): IVIDDEC_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC_InArgs Struct Reference
[IVIDDEC - XDM Video Decoder Interface]

Defines the input arguments for all IVIDDEC instance process function. More...

#include <ividdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numBytes
XDAS_Int32 inputID

Detailed Description

Defines the input arguments for all IVIDDEC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::process()

Field Documentation

XDAS_Int32 IVIDDEC_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC_InArgs::numBytes

Size of input data in bytes, provided to the algorithm for decoding.

XDAS_Int32 IVIDDEC_InArgs::inputID

The decoder will attach this ID with the corresponding output frames.

Remarks:
This is useful when frames require re-ordering (e.g. B frames).
When there is no re-ordering, IVIDDEC1_OutArgs::outputID will be same as this inputID field.
Zero (0) is not a supported inputID. This value is reserved for cases when there is no output buffer provided in IVIDDEC1_OutArgs::displayBufs.
See also:
IVIDDEC_OutArgs::outputID.
The documentation for this struct was generated from the following file:
  • ividdec.h


Codec Engine Application Programming Interface (API): IVIDDEC_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC_Obj Struct Reference
[IVIDDEC - XDM Video Decoder Interface]

This must be the first field of all IVIDDEC instance objects. More...

#include <ividdec.h>

Collaboration diagram for IVIDDEC_Obj:
[legend]

Data Fields

struct IVIDDEC_Fxns * fxns

Detailed Description

This must be the first field of all IVIDDEC instance objects.

Field Documentation

struct IVIDDEC_Fxns* IVIDDEC_Obj::fxns
The documentation for this struct was generated from the following file:
  • ividdec.h


Codec Engine Application Programming Interface (API): IVIDDEC_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC_OutArgs Struct Reference
[IVIDDEC - XDM Video Decoder Interface]

Defines the run time output arguments for all IVIDDEC instance objects. More...

#include <ividdec.h>

Collaboration diagram for IVIDDEC_OutArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesConsumed
XDAS_Int32 decodedFrameType
XDAS_Int32 outputID
IVIDEO_BufDesc displayBufs

Detailed Description

Defines the run time output arguments for all IVIDDEC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::process()

Field Documentation

XDAS_Int32 IVIDDEC_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
.

XDAS_Int32 IVIDDEC_OutArgs::bytesConsumed

Bytes consumed.

XDAS_Int32 IVIDDEC_OutArgs::decodedFrameType

Decoded frame type. See IVIDEO_FrameType.

XDAS_Int32 IVIDDEC_OutArgs::outputID

Output ID. Refer to comment IVIDDEC_InArgs::inputID.

IVIDEO_BufDesc IVIDDEC_OutArgs::displayBufs

The decoder fills this structure to denote the buffer pointers for current displayable frames. In case of sequences having I & P frames only, these values are identical to outBufs passed in process().

The documentation for this struct was generated from the following file:
  • ividdec.h


Codec Engine Application Programming Interface (API): IVIDDEC_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC_Params Struct Reference
[IVIDDEC - XDM Video Decoder Interface]

Defines the creation time parameters for all IVIDDEC instance objects. More...

#include <ividdec.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxFrameRate
XDAS_Int32 maxBitRate
XDAS_Int32 dataEndianness
XDAS_Int32 forceChromaFormat

Detailed Description

Defines the creation time parameters for all IVIDDEC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementation allowing customization with vendor specific parameters.
The size field must be correctly set by the caller.

Field Documentation

XDAS_Int32 IVIDDEC_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC_Params::maxHeight

Maximum video height in pixels.

XDAS_Int32 IVIDDEC_Params::maxWidth

Maximum video width in pixels.

XDAS_Int32 IVIDDEC_Params::maxFrameRate

Maximum frame rate in fps * 1000.

XDAS_Int32 IVIDDEC_Params::maxBitRate

Maximum bit rate, bits per second. For example, if bit rate is 10 Mbps, set this field to 10000000

XDAS_Int32 IVIDDEC_Params::dataEndianness

Endianness of input data.

See also:
XDM_DataFormat
XDAS_Int32 IVIDDEC_Params::forceChromaFormat

Force decode in given Chroma format.

See also:
XDM_ChromaFormat
The documentation for this struct was generated from the following file:
  • ividdec.h


Codec Engine Application Programming Interface (API): IVIDDEC_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDDEC_Status Struct Reference
[IVIDDEC - XDM Video Decoder Interface]

Defines instance status parameters. More...

#include <ividdec.h>

Collaboration diagram for IVIDDEC_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 outputHeight
XDAS_Int32 outputWidth
XDAS_Int32 frameRate
XDAS_Int32 bitRate
XDAS_Int32 contentType
XDAS_Int32 outputChromaFormat
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDDEC_Fxns::control()

Field Documentation

XDAS_Int32 IVIDDEC_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IVIDDEC_Status::outputHeight

Output height in pixels.

XDAS_Int32 IVIDDEC_Status::outputWidth

Output width in pixels.

XDAS_Int32 IVIDDEC_Status::frameRate

Average frame rate in fps * 1000.

XDAS_Int32 IVIDDEC_Status::bitRate

Average bit rate in bits/second.

XDAS_Int32 IVIDDEC_Status::contentType

Video Content type.

See also:
IVIDEO_ContentType
XDAS_Int32 IVIDDEC_Status::outputChromaFormat

Chroma format of output.

See also:
XDM_ChromaFormat
XDM_AlgBufInfo IVIDDEC_Status::bufInfo

Input and output buffer information.

See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • ividdec.h


Codec Engine Application Programming Interface (API): IVIDENC1_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC1_CodecClassConfig Struct Reference
[VIDENC1 - Video Encoder Interface]

Definition of IVIDENC1 codec class configurable parameters. More...

#include <videnc1.h>

Data Fields

Bool | manageInBufsCache [16]
Bool | manageOutBufsCache [16]

Detailed Description

Definition of IVIDENC1 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Field Documentation

Bool IVIDENC1_CodecClassConfig::manageInBufsCache[16]
Bool IVIDENC1_CodecClassConfig::manageOutBufsCache[16]
The documentation for this struct was generated from the following file:
  • videnc1.h


Codec Engine Application Programming Interface (API): IVIDENC1_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC1_DynamicParams Struct Reference
[IVIDENC1 - XDM Video Encoder Interface]

This structure defines the algorithm parameters that can be modified after creation via control() calls. More...

#include <ividenc1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 inputHeight
XDAS_Int32 inputWidth
XDAS_Int32 refFrameRate
XDAS_Int32 targetFrameRate
XDAS_Int32 targetBitRate
XDAS_Int32 intraFrameInterval
XDAS_Int32 generateHeader
XDAS_Int32 captureWidth
XDAS_Int32 forceFrame
XDAS_Int32 interFrameInterval
XDAS_Int32 mbDataFlag

Detailed Description

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::control()

Field Documentation

XDAS_Int32 IVIDENC1_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC1_DynamicParams::inputHeight

Input frame height.

XDAS_Int32 IVIDENC1_DynamicParams::inputWidth

Input frame width.

XDAS_Int32 IVIDENC1_DynamicParams::refFrameRate

Reference, or input, frame rate in fps * 1000.

Remarks:
For example, if ref frame rate is 30 frames per second, this field will be 30000.
XDAS_Int32 IVIDENC1_DynamicParams::targetFrameRate

Target frame rate in fps * 1000.

Remarks:
For example, if target frame rate is 30 frames per second, this field will be 30000.
XDAS_Int32 IVIDENC1_DynamicParams::targetBitRate

Target bit rate in bits per second.

XDAS_Int32 IVIDENC1_DynamicParams::intraFrameInterval

The number of frames between two I frames. For example, 30.

Remarks:
For example, this field will be:
  • 0 - Only first frame to be intra coded. e.g. IPPPPPP...
  • 1 - No inter frames (all intra frames).
  • 2 - Consecutive IPIPIP... sequence (if no B frames).
  • 3 - IPPIPP... or IPBIPBI... and so on.
XDAS_Int32 IVIDENC1_DynamicParams::generateHeader

Encode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_EncMode
XDAS_Int32 IVIDENC1_DynamicParams::captureWidth

DEFAULT(0): use imagewidth as pitch else use given capture width for pitch provided it is greater than image width.

XDAS_Int32 IVIDENC1_DynamicParams::forceFrame

Force the current (immediate) frame to be encoded as a specific frame type.

Remarks:
For example, this field will be:
  • IVIDEO_NA_FRAME - No forcing of any specific frame type for the frame.
  • IVIDEO_I_FRAME - Force the frame to be encoded as I frame.
  • IVIDEO_IDR_FRAME - Force the frame to be encoded as an IDR frame (specific to H.264 codecs).
  • IVIDEO_P_FRAME - Force the frame to be encoded as a P frame.
  • IVIDEO_B_FRAME - Force the frame to be encoded as a B frame.
See also:
IVIDEO_FrameType.
XDAS_Int32 IVIDENC1_DynamicParams::interFrameInterval

Number of B frames between two reference frames; that is, the number of B frames between two P frames or I/P frames. DEFAULT(0).

Remarks:
For example, this field will be:
  • 0 - to use maxInterFrameInterval.
  • 1 - 0 B frames between two reference frames.
  • 2 - 1 B frame between two reference frames.
  • 3 - 2 B frames between two reference frames.
  • and so on...
See also:
IVIDENC1_Params.maxInterFrameInterval.
XDAS_Int32 IVIDENC1_DynamicParams::mbDataFlag

Flag to indicate that the algorithm should use MB data supplied in additional buffer within inBufs.

The documentation for this struct was generated from the following file:
  • ividenc1.h


Codec Engine Application Programming Interface (API): IVIDENC1_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC1_Fxns Struct Reference
[IVIDENC1 - XDM Video Encoder Interface]

Defines all of the operations on IVIDENC1 objects. More...

#include <ividenc1.h>

Collaboration diagram for IVIDENC1_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs, IVIDENC1_InArgs *inArgs, IVIDENC1_OutArgs *outArgs)
Basic video encoding call.
XDAS_Int32(* | control )(IVIDENC1_Handle handle, IVIDENC1_Cmd id, IVIDENC1_DynamicParams *params, IVIDENC1_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDENC1 objects.

Field Documentation

IALG_Fxns IVIDENC1_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDENC1_Fxns::process)(IVIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs, IVIDENC1_InArgs *inArgs, IVIDENC1_OutArgs *outArgs)

Basic video encoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input video buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
inBufs->numBufs will indicate the total number of input buffers supplied for input frame, and conditionally, the encoders MB data buffer.
If IVIDENC1_DynamicParams::mbDataFlag was set to XDAS_FALSE in a previous control() call, the application only needs to provide the input frame.
If IVIDENC1_DynamicParams::mbDataFlag was set to XDAS_TRUE in a previous control() call, inBufs->bufs[inBufs->numBufs - 1] is a buffer descriptor containing stacked structures of the type IVIDENC1_MbData, one for each macro block.
inArgs must not be NULL, and must point to a valid IVIDENC1_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDENC1_OutArgs structure.
inBufs must not be NULL, and must point to a valid IVIDEO1_BufDescIn structure.
inBufs->bufDesc[0].bufs must not be NULL, and must point to a valid buffer of data that is at least inBufs->bufDesc[0].bufSize bytes in length.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs->buf[0] must not be NULL, and must point to a valid buffer of data that is at least outBufs->bufSizes[0] bytes in length.
The buffers in inBuf and outBuf are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.bufDesc[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must appropriately set/clear the IVIDEO1_BufDescIn::bufDesc[].accessMask field in inBufs to indicate the mode in which each of the buffers in inBufs were read. For example, if the algorithm only read from inBufs.bufDesc[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs are owned by the calling application.
Remarks:
outBufs->bufs[0] may contain the encoded data buffer. See IVIDENC1_OutArgs.encodedBufs for more details.
outBufs->bufs[1], outBufs->bufs[2], and outBufs->bufs[3] are used when providing reconstruction buffers.
Return values:
IVIDENC1_EOK

Success.

IVIDENC1_EFAIL

General failure.

See IVIDENC1_Status::extendedError for more detailed further error conditions.
IVIDENC1_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IVIDENC1_Fxns::control)(IVIDENC1_Handle handle, IVIDENC1_Cmd id, IVIDENC1_DynamicParams *params, IVIDENC1_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDENC1_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDENC1_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IVIDENC1_EOK

Success.

IVIDENC1_EFAIL

General failure.

See IVIDENC1_Status::extendedError for more detailed further error conditions.
IVIDENC1_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • ividenc1.h


Codec Engine Application Programming Interface (API): IVIDENC1_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC1_InArgs Struct Reference
[IVIDENC1 - XDM Video Encoder Interface]

Defines the input arguments for all IVIDENC1 instance process function. More...

#include <ividenc1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 inputID
XDAS_Int32 topFieldFirstFlag

Detailed Description

Defines the input arguments for all IVIDENC1 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::process()

Field Documentation

XDAS_Int32 IVIDENC1_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC1_InArgs::inputID

Identifier to attach with the corresponding encoded bitstream frames.

Remarks:
This is useful when frames require buffering (e.g. B frames), and to support buffer management.
When there is no re-ordering, IVIDENC1_OutArgs::outputID will be the same as this inputID field.
Zero (0) is not a supported inputID. This value is reserved for cases when there is no output buffer provided.
See also:
IVIDENC1_OutArgs::outputID.
XDAS_Int32 IVIDENC1_InArgs::topFieldFirstFlag

Flag to indicate the field order in interlaced content.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This field is only applicable to the input image buffer.
This field is only applicable for interlaced content, not progressive.
The documentation for this struct was generated from the following file:
  • ividenc1.h


Codec Engine Application Programming Interface (API): IVIDENC1_MbData Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC1_MbData Struct Reference
[IVIDENC1 - XDM Video Encoder Interface]

Defines the structure that contains macroblock related encoding parameter estimates. More...

#include <ividenc1.h>

Data Fields

XDAS_Int32 mbMode
XDAS_Int32 QP
XDAS_Int32 mvFwdXY
XDAS_Int32 mvBwdXY

Detailed Description

Defines the structure that contains macroblock related encoding parameter estimates.

Remarks:
An array of IVIDENC1_MbData is provided within the inBufs parameter to IVIDENC1_Fxns::process() when IVIDENC1_DynamicParams::mbDataFlag is set.
See also:
IVIDENC1_DynamicParams::mbDataFlag
IVIDENC1_Fxns::process()
IVIDENC1_Fxns::control()

Field Documentation

XDAS_Int32 IVIDENC1_MbData::mbMode

MB encoding mode

Remarks:
Valid values are:
  • 0x00 for skip macroblock
  • 0x01 for I Frame macroblock
  • 0x02 for P Frame macroblock
  • 0x03 for B Frame macroblock
  • 0x04 for I Field macroblock
  • 0x05 for P Field macroblock
  • 0x06 for B Field macroblock
  • 0xFF for mbMode not specified
XDAS_Int32 IVIDENC1_MbData::QP

QP estimate.

Remarks:
A value of 0xFF for QP is not specified.
XDAS_Int32 IVIDENC1_MbData::mvFwdXY

Forward Motion vector estimate.

Remarks:
If MVx (XDAS_Int16) and MVy (XDAS_Int16) are the motion vectors in the x and y directions, in quarter pel units, then
   mvFwdXY = ((MVx & 0x0000FFFF) << 16) |
              (MVy & 0x0000FFFF);
A value of 0x7FFF7FFF to indicate mvFwdXY is not specified.
XDAS_Int32 IVIDENC1_MbData::mvBwdXY

Backward motion vector estimate.

Remarks:
The format is the same as IVIDENC1_MbData::mvFwdXY.
The documentation for this struct was generated from the following file:
  • ividenc1.h


Codec Engine Application Programming Interface (API): IVIDENC1_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC1_Obj Struct Reference
[IVIDENC1 - XDM Video Encoder Interface]

This must be the first field of all IVIDENC1 instance objects. More...

#include <ividenc1.h>

Collaboration diagram for IVIDENC1_Obj:
[legend]

Data Fields

struct IVIDENC1_Fxns * fxns

Detailed Description

This must be the first field of all IVIDENC1 instance objects.

Field Documentation

struct IVIDENC1_Fxns* IVIDENC1_Obj::fxns
The documentation for this struct was generated from the following file:
  • ividenc1.h


Codec Engine Application Programming Interface (API): IVIDENC1_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC1_OutArgs Struct Reference
[IVIDENC1 - XDM Video Encoder Interface]

Defines the run time output arguments for all IVIDENC1 instance objects. More...

#include <ividenc1.h>

Collaboration diagram for IVIDENC1_OutArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesGenerated
XDAS_Int32 encodedFrameType
XDAS_Int32 inputFrameSkip
XDAS_Int32 outputID
XDM1_SingleBufDesc encodedBuf
IVIDEO1_BufDesc reconBufs

Detailed Description

Defines the run time output arguments for all IVIDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::process()

Field Documentation

XDAS_Int32 IVIDENC1_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC1_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IVIDENC1_OutArgs::bytesGenerated

Number of bytes generated during the IVIDENC1_Fxns::process() call.

XDAS_Int32 IVIDENC1_OutArgs::encodedFrameType

Video frame types.

Remarks:
For the various IVIDEO_xy_FRAME values, this frame type is interlaced where both top and bottom fields are provided in a single frame. The first field is an "x" frame, the second field is "y" field.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_FrameType
XDAS_Int32 IVIDENC1_OutArgs::inputFrameSkip

Video frame skipping modes.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_SkipMode
XDAS_Int32 IVIDENC1_OutArgs::outputID

Output ID corresponding with the encoded buffer. This shall also be used to free up the corresponding image buffer for further use by client application code.

Remarks:
This will be set to zero when there is no encoded buffer for passing to client application.
See also:
IVIDENC1_InArgs::inputID.
XDM1_SingleBufDesc IVIDENC1_OutArgs::encodedBuf

The encoder fills the buffer with the encoded bitstream. In case of sequences having I & P frames only, these values are identical to outBufs passed in IVIDENC1_Fxns::process().

Remarks:
The encodedbuf.bufSize field returned corresponds to the actual valid bytes available in the buffer.
The bitstream is in encoded order.
outputID and encodedBuf together provide info relating to the corresponding encoded image buffer.
IVIDEO1_BufDesc IVIDENC1_OutArgs::reconBufs

Reconstruction frames.

Remarks:
These output buffers correspond to outBufs->bufs[1], outBufs->bufs[2], and outBufs->bufs[3].
reconBufs.bufDesc[0].buf is equivalent to outBufs->bufs[1], reconBufs.bufDesc[1].buf is equivalent to outBufs->bufs[2], and reconBufs.bufDesc[2].buf is equivalent to outBufs->bufs[3].
The documentation for this struct was generated from the following file:
  • ividenc1.h


Codec Engine Application Programming Interface (API): IVIDENC1_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC1_Params Struct Reference
[IVIDENC1 - XDM Video Encoder Interface]

Defines the creation time parameters for all IVIDENC1 instance objects. More...

#include <ividenc1.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 encodingPreset
XDAS_Int32 rateControlPreset
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxFrameRate
XDAS_Int32 maxBitRate
XDAS_Int32 dataEndianness
XDAS_Int32 maxInterFrameInterval
XDAS_Int32 inputChromaFormat
XDAS_Int32 inputContentType
XDAS_Int32 reconChromaFormat

Detailed Description

Defines the creation time parameters for all IVIDENC1 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IVIDENC1_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC1_Params::encodingPreset

Encoding preset.

XDAS_Int32 IVIDENC1_Params::rateControlPreset

Video rate control presets.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_RateControlPreset
XDAS_Int32 IVIDENC1_Params::maxHeight

Maximum video height in pixels.

XDAS_Int32 IVIDENC1_Params::maxWidth

Maximum video width in pixels.

XDAS_Int32 IVIDENC1_Params::maxFrameRate

Maximum frame rate in fps * 1000. For example, if max frame rate is 30 frames per second, set this field to 30000.

XDAS_Int32 IVIDENC1_Params::maxBitRate

Maximum bit rate, bits per second.

XDAS_Int32 IVIDENC1_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IVIDENC1_Params::maxInterFrameInterval

I to P frame distance. e.g. = 1 if no B frames, 2 to insert one B frame.

Remarks:
This is used for setting the maximum number of B frames between two refererence frames.
XDAS_Int32 IVIDENC1_Params::inputChromaFormat

Chroma format for the input buffer.

See also:
XDM_ChromaFormat
XDAS_Int32 IVIDENC1_Params::inputContentType

Video content type of the buffer being encoded.

See also:
IVIDEO_ContentType
XDAS_Int32 IVIDENC1_Params::reconChromaFormat

Chroma formats for the reconstruction buffers.

Remarks:
The application should set this to XDM_CHROMA_NA if reconstruction buffers are not required.
See also:
XDM_ChromaFormat
The documentation for this struct was generated from the following file:
  • ividenc1.h


Codec Engine Application Programming Interface (API): IVIDENC1_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC1_Status Struct Reference
[IVIDENC1 - XDM Video Encoder Interface]

Defines instance status parameters. More...

#include <ividenc1.h>

Collaboration diagram for IVIDENC1_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC1_Fxns::control()

Field Documentation

XDAS_Int32 IVIDENC1_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC1_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IVIDENC1_Status::data

Buffer descriptor for data passing.

Remarks:
If this field is not used, the application must set data.buf to NULL.
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the IVIDENC1_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDM_AlgBufInfo IVIDENC1_Status::bufInfo

Input and output buffer information.

Remarks:
This field provides the application with the algorithm's buffer requirements. The requirements may vary depending on the current configuration of the algorithm instance.
When configured to generate reconstruction buffers (see IVIDENC1_Params::reconChromaFormat), the recontruction buffer information will also be reported here.
See also:
IVIDENC1_Params
XDM_AlgBufInfo
IVIDENC1_Fxns::process()
The documentation for this struct was generated from the following file:
  • ividenc1.h


Codec Engine Application Programming Interface (API): IVIDENC2_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC2_CodecClassConfig Struct Reference
[VIDENC2 - Video Encoder Interface]

Definition of IVIDENC2 codec class configurable parameters. More...

#include <videnc2.h>

Data Fields

Bool | manageInBufsPlaneDescCache [3]
Bool | manageInBufsMetaPlaneDescCache [3]
Bool | manageOutBufsCache [16]

Detailed Description

Definition of IVIDENC2 codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Field Documentation

Bool IVIDENC2_CodecClassConfig::manageInBufsPlaneDescCache[3]
Bool IVIDENC2_CodecClassConfig::manageInBufsMetaPlaneDescCache[3]
Bool IVIDENC2_CodecClassConfig::manageOutBufsCache[16]
The documentation for this struct was generated from the following file:
  • videnc2.h


Codec Engine Application Programming Interface (API): IVIDENC2_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC2_DynamicParams Struct Reference
[IVIDENC2 - XDM Video Encoder Interface]

This structure defines the algorithm parameters that can be modified after creation via control() calls. More...

#include <ividenc2.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 inputHeight
XDAS_Int32 inputWidth
XDAS_Int32 refFrameRate
XDAS_Int32 targetFrameRate
XDAS_Int32 targetBitRate
XDAS_Int32 intraFrameInterval
XDAS_Int32 generateHeader
XDAS_Int32 captureWidth
XDAS_Int32 forceFrame
XDAS_Int32 interFrameInterval
XDAS_Int32 mvAccuracy
XDAS_Int32 sampleAspectRatioHeight
XDAS_Int32 sampleAspectRatioWidth
XDAS_Int32 ignoreOutbufSizeFlag
XDM_DataSyncPutFxn putDataFxn
XDM_DataSyncHandle putDataHandle
XDM_DataSyncGetFxn getDataFxn
XDM_DataSyncHandle getDataHandle
XDM_DataSyncGetBufferFxn getBufferFxn
XDM_DataSyncHandle getBufferHandle
XDAS_Int32 lateAcquireArg

Detailed Description

This structure defines the algorithm parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::control()

Field Documentation

XDAS_Int32 IVIDENC2_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC2_DynamicParams::inputHeight

Input frame height.

XDAS_Int32 IVIDENC2_DynamicParams::inputWidth

Input frame width.

XDAS_Int32 IVIDENC2_DynamicParams::refFrameRate

Reference, or input, frame rate in fps * 1000.

Remarks:
For example, if ref frame rate is 30 frames per second, this field will be 30000.
XDAS_Int32 IVIDENC2_DynamicParams::targetFrameRate

Target frame rate in fps * 1000.

Remarks:
For example, if target frame rate is 30 frames per second, this field will be 30000.
XDAS_Int32 IVIDENC2_DynamicParams::targetBitRate

Target bit rate in bits per second.

XDAS_Int32 IVIDENC2_DynamicParams::intraFrameInterval

The number of frames between two I frames. For example, 30.

Remarks:
For example, this field will be:
  • 0 - Only first frame to be intra coded. e.g. IPPPPPP...
  • 1 - No inter frames (all intra frames).
  • 2 - Consecutive IPIPIP... sequence (if no B frames).
  • 3 - IPPIPP... or IPBIPBI... and so on.
XDAS_Int32 IVIDENC2_DynamicParams::generateHeader

Encode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_EncMode
XDAS_Int32 IVIDENC2_DynamicParams::captureWidth

DEFAULT(0): use imagewidth as pitch else use given capture width for pitch provided it is greater than image width.

XDAS_Int32 IVIDENC2_DynamicParams::forceFrame

Force the current (immediate) frame to be encoded as a specific frame type.

Remarks:
For example, this field will be:
  • IVIDEO_NA_FRAME - No forcing of any specific frame type for the frame.
  • IVIDEO_I_FRAME - Force the frame to be encoded as I frame.
  • IVIDEO_IDR_FRAME - Force the frame to be encoded as an IDR frame (specific to H.264 codecs).
  • IVIDEO_P_FRAME - Force the frame to be encoded as a P frame.
  • IVIDEO_B_FRAME - Force the frame to be encoded as a B frame.
See also:
IVIDEO_FrameType.
XDAS_Int32 IVIDENC2_DynamicParams::interFrameInterval

Number of B frames between two reference frames; that is, the number of B frames between two P frames or I/P frames. DEFAULT(0).

Remarks:
For example, this field will be:
  • 0 - to use maxInterFrameInterval.
  • 1 - 0 B frames between two reference frames.
  • 2 - 1 B frame between two reference frames.
  • 3 - 2 B frames between two reference frames.
  • and so on...
See also:
IVIDENC2_Params.maxInterFrameInterval.
XDAS_Int32 IVIDENC2_DynamicParams::mvAccuracy

Pixel Accuracy of the motion vector

Remarks:
This parameter allows the user to tune performance by controlling the complexity of motion estimation and compensation within the video encoder.
See also:
IVIDENC2_MotionVectorAccuracy
XDAS_Int32 IVIDENC2_DynamicParams::sampleAspectRatioHeight

Sample aspect ratio: Height

Remarks:
This parameter is used to describe the desired aspect ratio in the bitstream.
XDAS_Int32 IVIDENC2_DynamicParams::sampleAspectRatioWidth

Sample aspect ratio: Width

Remarks:
This parameter is used to describe the desired aspect ratio in the bitstream.
XDAS_Int32 IVIDENC2_DynamicParams::ignoreOutbufSizeFlag

Flag to indicate that the application has ignored the output buffer size requirement.

Remarks:
Typically video encoders ask for large output buffers (compressed bit-streams) assuming theoretical worst case. But on memory constrained systems, the application may want to allocate less than this worst-case size, depending upon the use case. If the application provides a buffer that is smaller than the worst-case size, the encoder will return an error. To prevent the encoder from returning an error, the application can set this ignoreOutbufSizeFlag field to XDAS_TRUE. When this flag is set to XDAS_TRUE, the encoder shouldn't return an error even if the output buffer size is less than requested by the codec.
Valid values are XDAS_TRUE and XDAS_FALSE.
XDM_DataSyncPutFxn IVIDENC2_DynamicParams::putDataFxn

Optional datasync "put data" function.

Remarks:
Apps/frameworks that don't support datasync should set this to NULL.
This function is provided by the app/framework to the video encoder. The encoder calls this function when data has been put into an output buffer.
XDM_DataSyncHandle IVIDENC2_DynamicParams::putDataHandle

Datasync "put data" handle

Remarks:
This is a handle which the codec must provide when calling the app-registered IVIDENC2_DynamicParams.putDataFxn().
Apps/frameworks that don't support datasync should set this to NULL.
For an algorithm, this handle is read-only; it must not be modified when calling the app-registered IVIDENC2_DynamicParams.putDataFxn().
The app/framework can use this handle to differentiate callbacks from different algorithms.
XDM_DataSyncGetFxn IVIDENC2_DynamicParams::getDataFxn

Datasync "get data" function.

Remarks:
This function is provided by the app/framework to the video encoder. The encoder calls this function to get partial video buffer(s) from the app/framework.
Apps/frameworks that don't support datasync should set this to NULL.
XDM_DataSyncHandle IVIDENC2_DynamicParams::getDataHandle

Datasync "get data" handle

Remarks:
This is a handle which the codec must provide when calling getDataFxn.
Apps/frameworks that don't support datasync should set this to NULL.
For an algorithm, this handle is read-only; it must not be modified when calling the app-registered IVIDENC2_DynamicParams.getDataFxn().
The app/framework can use this handle to differentiate callbacks from different algorithms.
XDM_DataSyncGetBufferFxn IVIDENC2_DynamicParams::getBufferFxn

Datasync "get buffer" function.

Remarks:
This function is provided by the app/framework to the video encoder. The encoder calls this function to obtain partial compressed bit-stream data buffers from the app/framework.
Apps/frameworks that don't support datasync should set this to NULL.
XDM_DataSyncHandle IVIDENC2_DynamicParams::getBufferHandle

Datasync "get buffer" handle

Remarks:
This is a handle which the codec must provide when calling the app-registered IVIDENC2_DynamicParam.getBufferFxn().
Apps/frameworks that don't support datasync should set this to NULL.
For an algorithm, this handle is read-only; it must not be modified when calling the app-registered IVIDENC2_DynamicParams.getBufferFxn().
The app/framework can use this handle to differentiate callbacks from different algorithms.
XDAS_Int32 IVIDENC2_DynamicParams::lateAcquireArg

Argument used during late acquire.

Remarks:
For all control() commands other than XDM_SETLATEACQUIREARG, this field is ignored and can therefore be set by the caller to any value.
This field is used to provide the 'late acquire' arg required by XDM_SETLATEACQUIREARG.
Late acquire support is an optional feature for video encoders. If the codec supports late acquisition of resources, and the application has supplied a lateAcquireArg value (via XDM_SETLATEACQUIREARG), then the codec must also provide this lateAcquireArg value when requesting resources (i.e. during their call to acquire() when requesting the resource).
The documentation for this struct was generated from the following file:
  • ividenc2.h


Codec Engine Application Programming Interface (API): IVIDENC2_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC2_Fxns Struct Reference
[IVIDENC2 - XDM Video Encoder Interface]

Defines all of the operations on IVIDENC2 objects. More...

#include <ividenc2.h>

Collaboration diagram for IVIDENC2_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs)
Basic video encoding call.
XDAS_Int32(* | control )(IVIDENC2_Handle handle, IVIDENC2_Cmd id, IVIDENC2_DynamicParams *params, IVIDENC2_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDENC2 objects.

Field Documentation

IALG_Fxns IVIDENC2_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDENC2_Fxns::process)(IVIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs)

Basic video encoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input video buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
inBufs must not be NULL, and must point to a valid IVIDEO2_BufDesc structure.
inBufs->numPlanes will indicate the total number of input buffers supplied for input frame in the inBufs->planeDesc[] array.
inBufs->numMetaPlanes will indicate the total number of input buffers supplied for meta data planes in the inBufs->metadataPlaneDesc[] array.
outBufs must not be NULL, and must point to a valid XDM2_BufDesc structure.
outBufs->buf[0] must not be NULL, and must point to a valid buffer of data that is at least outBufs->bufSizes[0] bytes in length.
inArgs must not be NULL, and must point to a valid IVIDENC2_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDENC2_OutArgs structure.
The buffers in inBuf and outBuf are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.bufDesc[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must appropriately set/clear the IVIDEO2_BufDesc.planeDesc[].accessMask and IVIDEO2_BufDesc.metadataPlaneDesc[].accessMask fields in inBufs to indicate the mode in which each of the respective buffers were read. For example, if the algorithm only read from inBufs.planeDesc[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs are owned by the calling application.
Return values:
IVIDENC2_EOK

Success.

IVIDENC2_EFAIL

General failure.

See IVIDENC2_Status.extendedError for more detailed further error conditions.
IVIDENC2_EUNSUPPORTED

Request is unsupported.

Todo:
Need to review these comments. Not sure inBufs and outBufs are correctly described.
XDAS_Int32(* IVIDENC2_Fxns::control)(IVIDENC2_Handle handle, IVIDENC2_Cmd id, IVIDENC2_DynamicParams *params, IVIDENC2_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDENC2_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDENC2_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IVIDENC2_EOK

Success.

IVIDENC2_EFAIL

General failure.

See IVIDENC2_Status.extendedError for more detailed further error conditions.
IVIDENC2_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • ividenc2.h


Codec Engine Application Programming Interface (API): IVIDENC2_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC2_InArgs Struct Reference
[IVIDENC2 - XDM Video Encoder Interface]

Defines the input arguments for all IVIDENC2 instance process function. More...

#include <ividenc2.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 inputID
XDAS_Int32 control

Detailed Description

Defines the input arguments for all IVIDENC2 instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::process()

Field Documentation

XDAS_Int32 IVIDENC2_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC2_InArgs::inputID

Identifier to attach with the corresponding input frames to be encoded.

Remarks:
This is useful when frames require buffering (e.g. B frames), and to support buffer management.
When there is no re-ordering, IVIDENC2_OutArgs::outputID will be the same as this inputID field.
Zero (0) is not a supported inputID. This value is reserved for cases when there is no input buffer is provided.
See also:
IVIDENC2_OutArgs::outputID.
XDAS_Int32 IVIDENC2_InArgs::control

Encoder control operations

See also:
IVIDENC2_Control
The documentation for this struct was generated from the following file:
  • ividenc2.h


Codec Engine Application Programming Interface (API): IVIDENC2_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC2_Obj Struct Reference
[IVIDENC2 - XDM Video Encoder Interface]

This must be the first field of all IVIDENC2 instance objects. More...

#include <ividenc2.h>

Collaboration diagram for IVIDENC2_Obj:
[legend]

Data Fields

struct IVIDENC2_Fxns * fxns

Detailed Description

This must be the first field of all IVIDENC2 instance objects.

Field Documentation

struct IVIDENC2_Fxns* IVIDENC2_Obj::fxns
The documentation for this struct was generated from the following file:
  • ividenc2.h


Codec Engine Application Programming Interface (API): IVIDENC2_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC2_OutArgs Struct Reference
[IVIDENC2 - XDM Video Encoder Interface]

Defines the run time output arguments for all IVIDENC2 instance objects. More...

#include <ividenc2.h>

Collaboration diagram for IVIDENC2_OutArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesGenerated
XDAS_Int32 encodedFrameType
XDAS_Int32 inputFrameSkip
XDAS_Int32 freeBufID [20]
IVIDEO2_BufDesc reconBufs

Detailed Description

Defines the run time output arguments for all IVIDENC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::process()

Field Documentation

XDAS_Int32 IVIDENC2_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC2_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IVIDENC2_OutArgs::bytesGenerated

Number of bytes generated during the IVIDENC2_Fxns::process() call.

XDAS_Int32 IVIDENC2_OutArgs::encodedFrameType

Video frame types.

Remarks:
For the various IVIDEO_xy_FRAME values, this frame type is interlaced where both top and bottom fields are provided in a single frame. The first field is an "x" frame, the second field is "y" field.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_FrameType
XDAS_Int32 IVIDENC2_OutArgs::inputFrameSkip

Video frame skipping modes.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_SkipMode
XDAS_Int32 IVIDENC2_OutArgs::freeBufID[20]

This is an array of inputID's corresponding to the buffers that have been unlocked in the current process call.

Remarks:
The buffers released by the algorithm are indicated by their non-zero ID (previously provided via IVIDENC2_InArgs::inputID).
A value of zero (0) indicates an invalid ID. The first zero entry in array will indicate end of valid freeBufIDs within the array. Hence the application can stop searching the array when it encounters the first zero entry.
If no buffer was unlocked in the process call, freeBufID[0] will have a value of zero.
See also:
IVIDENC2_InArgs::inputID
IVIDEO2_BufDesc IVIDENC2_OutArgs::reconBufs

Reconstruction frames.

The documentation for this struct was generated from the following file:
  • ividenc2.h


Codec Engine Application Programming Interface (API): IVIDENC2_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC2_Params Struct Reference
[IVIDENC2 - XDM Video Encoder Interface]

Defines the creation time parameters for all IVIDENC2 instance objects. More...

#include <ividenc2.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 encodingPreset
XDAS_Int32 rateControlPreset
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 dataEndianness
XDAS_Int32 maxInterFrameInterval
XDAS_Int32 maxBitRate
XDAS_Int32 minBitRate
XDAS_Int32 inputChromaFormat
XDAS_Int32 inputContentType
XDAS_Int32 operatingMode
XDAS_Int32 profile
XDAS_Int32 level
XDAS_Int32 inputDataMode
XDAS_Int32 outputDataMode
XDAS_Int32 numInputDataUnits
XDAS_Int32 numOutputDataUnits
XDAS_Int32 metadataType [3]

Detailed Description

Defines the creation time parameters for all IVIDENC2 instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IVIDENC2_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC2_Params::encodingPreset

Encoding preset.

XDAS_Int32 IVIDENC2_Params::rateControlPreset

Video rate control presets.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_RateControlPreset
XDAS_Int32 IVIDENC2_Params::maxHeight

Maximum video height in pixels.

XDAS_Int32 IVIDENC2_Params::maxWidth

Maximum video width in pixels.

XDAS_Int32 IVIDENC2_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IVIDENC2_Params::maxInterFrameInterval

I to P frame distance. e.g. = 1 if no B frames, 2 to insert one B frame.

Remarks:
This is used for setting the maximum number of B frames between two refererence frames.
XDAS_Int32 IVIDENC2_Params::maxBitRate

Maximum Bit-rate for encoding in bits per second

XDAS_Int32 IVIDENC2_Params::minBitRate

Minumum Bit-rate for encoding in bits per second

XDAS_Int32 IVIDENC2_Params::inputChromaFormat

Chroma format for the input buffer.

See also:
XDM_ChromaFormat
XDAS_Int32 IVIDENC2_Params::inputContentType

Video content type of the buffer being encoded.

See also:
IVIDEO_ContentType
XDAS_Int32 IVIDENC2_Params::operatingMode

Video coding mode of operation.

See also:
IVIDEO_OperatingMode
XDAS_Int32 IVIDENC2_Params::profile

Profile indicator of video codec

Remarks:
Only one default value (IVIDENC2_DEFAULTPROFILE) is defined by XDM for this field. The reason for not defining further values is to keep profile values as defined by video codec standards.
See also:
IVIDENC2_Status.profile
XDAS_Int32 IVIDENC2_Params::level

Level indicator of video codec

Remarks:
Only one default value (IVIDENC2_DEFAULTLEVEL) is defined by XDM for this field. The reason for not defining further values is to keep profile values as defined by video codec standards.
See also:
IVIDENC2_Status.level
XDAS_Int32 IVIDENC2_Params::inputDataMode

Input data mode.

Remarks:
If a subframe mode is provided, the application must call IVIDENC2_Fxns::control() with XDM_SETPARAMS id prior to IVIDENC2_Fxns::process() to set the IVIDENC2_DynamicParams::getDataFxn and IVIDENC2_DynamicParams::getDataHandle. Else, the alg can return error.
See also:
IVIDEO_DataMode
XDAS_Int32 IVIDENC2_Params::outputDataMode

Output data mode.

Remarks:
If a subframe mode is provided, the application must call IVIDENC2_Fxns::control() with XDM_SETPARAMS id prior to IVIDENC2_Fxns::process() to set the IVIDENC2_DynamicParams::putDataFxn, IVIDENC2_DynamicParams::putDataHandle (and optionally IVIDENC2_DynamicParams::getBufferFxn, and IVIDENC2_DynamicParams::getBufferHandle). Else, the alg can return error.
See also:
IVIDEO_DataMode
XDAS_Int32 IVIDENC2_Params::numInputDataUnits

Number of input slices/rows.

Remarks:
Units depend on the inputDataMode, like number of slices/rows/blocks etc.
Ignored if inputDataMode is set to full frame mode.
XDAS_Int32 IVIDENC2_Params::numOutputDataUnits

Number of output slices/rows.

Remarks:
Units depend on the outputDataMode, like number of slices/rows/blocks etc.
Ignored if outputDataMode is set to full frame mode.
XDAS_Int32 IVIDENC2_Params::metadataType[3]

Type of each metadata plane.

See also:
IVIDEO_MetadataType
The documentation for this struct was generated from the following file:
  • ividenc2.h


Codec Engine Application Programming Interface (API): IVIDENC2_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC2_Status Struct Reference
[IVIDENC2 - XDM Video Encoder Interface]

Defines instance status parameters. More...

#include <ividenc2.h>

Collaboration diagram for IVIDENC2_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDAS_Int32 encodingPreset
XDAS_Int32 rateControlPreset
XDAS_Int32 maxInterFrameInterval
XDAS_Int32 inputChromaFormat
XDAS_Int32 inputContentType
XDAS_Int32 operatingMode
XDAS_Int32 profile
XDAS_Int32 level
XDAS_Int32 inputDataMode
XDAS_Int32 outputDataMode
XDAS_Int32 numInputDataUnits
XDAS_Int32 numOutputDataUnits
XDAS_Int32 configurationID
XDM1_AlgBufInfo bufInfo
XDAS_Int32 metadataType [3]
IVIDENC2_DynamicParams encDynamicParams

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC2_Fxns::control()

Field Documentation

XDAS_Int32 IVIDENC2_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC2_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IVIDENC2_Status::data

Buffer descriptor for data passing.

Remarks:
If this field is not used, the application must set data.buf to NULL.
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the IVIDENC2_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int32 IVIDENC2_Status::encodingPreset

Encoding preset.

XDAS_Int32 IVIDENC2_Status::rateControlPreset

Video rate control presets.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_RateControlPreset
XDAS_Int32 IVIDENC2_Status::maxInterFrameInterval

I to P frame distance. e.g. = 1 if no B frames, 2 to insert one B frame.

Remarks:
This is used for setting the maximum number of B frames between two refererence frames.
XDAS_Int32 IVIDENC2_Status::inputChromaFormat

Chroma format for the input buffer.

See also:
XDM_ChromaFormat
XDAS_Int32 IVIDENC2_Status::inputContentType

Video content type of the buffer being encoded.

See also:
IVIDEO_ContentType
XDAS_Int32 IVIDENC2_Status::operatingMode

Video encoding mode of operation.

See also:
IVIDEO_OperatingMode
XDAS_Int32 IVIDENC2_Status::profile

Profile indicator of video codec.

See also:
IVIDENC2_DEFAULTPROFILE
IVIDENC2_Params.profile
XDAS_Int32 IVIDENC2_Status::level

Level indicator of video codec.

See also:
IVIDENC2_DEFAULTLEVEL
IVIDENC2_Params.level
XDAS_Int32 IVIDENC2_Status::inputDataMode

Input data mode.

See also:
IVIDENC2_Params.inputDataMode
IVIDEO_DataMode
XDAS_Int32 IVIDENC2_Status::outputDataMode

Output data mode.

See also:
IVIDENC2_Params.outputDataMode
IVIDEO_DataMode
XDAS_Int32 IVIDENC2_Status::numInputDataUnits

Number of input slices/rows.

Remarks:
Units depend on the IVIDENC2_Params.inputDataMode, like number of slices/rows/blocks etc.
Ignored if IVIDENC2_Params.inputDataMode is set to full frame mode.
See also:
IVIDENC2_Params.inputDataMode
XDAS_Int32 IVIDENC2_Status::numOutputDataUnits

Number of output slices/rows.

Remarks:
Units depend on the outputDataMode, like number of slices/rows/blocks etc.
Ignored if IVIDENC2_Params.outputDataMode is set to full frame mode.
See also:
IVIDENC2_Params.outputDataMode
XDAS_Int32 IVIDENC2_Status::configurationID

Configuration ID of given codec.

Remarks:
This is used to differentiate multiple images of a vendor. It can be used by the framework to optimize the save/restore overhead of any resources used.
This can be useful in multichannel use case scenarios.
XDM1_AlgBufInfo IVIDENC2_Status::bufInfo

Input and output buffer information.

Remarks:
This field provides the application with the algorithm's buffer requirements. The requirements may vary depending on the current configuration of the algorithm instance.
See also:
IVIDENC2_Params
XDM1_AlgBufInfo
IVIDENC2_Fxns.process()
XDAS_Int32 IVIDENC2_Status::metadataType[3]

Type of each metadata plane.

See also:
IVIDEO_MetadataType
IVIDENC2_DynamicParams IVIDENC2_Status::encDynamicParams

Video encoder dynamic parameters.

Todo:
Need to better wordsmith this section.
Remarks:
In case of extened dynamic Params, alg can check the size of status or DynamicParams and return the parameters accordingly.
The documentation for this struct was generated from the following file:
  • ividenc2.h


Codec Engine Application Programming Interface (API): IVIDENC_CodecClassConfig Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC_CodecClassConfig Struct Reference
[VIDENC - Video Encoder Interface]

Definition of IVIDENC codec class configurable parameters. More...

#include <videnc.h>

Data Fields

Bool | manageInBufsCache [16]
Bool | manageOutBufsCache [16]
Bool | manageReconBufsCache [16]

Detailed Description

Definition of IVIDENC codec class configurable parameters.

See also:
VISA_getCodecClassConfig()

Field Documentation

Bool IVIDENC_CodecClassConfig::manageInBufsCache[16]
Bool IVIDENC_CodecClassConfig::manageOutBufsCache[16]
Bool IVIDENC_CodecClassConfig::manageReconBufsCache[16]
The documentation for this struct was generated from the following file:
  • videnc.h


Codec Engine Application Programming Interface (API): IVIDENC_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC_DynamicParams Struct Reference
[IVIDENC - XDM Video Encoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <ividenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 inputHeight
XDAS_Int32 inputWidth
XDAS_Int32 refFrameRate
XDAS_Int32 targetFrameRate
XDAS_Int32 targetBitRate
XDAS_Int32 intraFrameInterval
XDAS_Int32 generateHeader
XDAS_Int32 captureWidth
XDAS_Int32 forceIFrame

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::control()

Field Documentation

XDAS_Int32 IVIDENC_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC_DynamicParams::inputHeight

Input frame height.

XDAS_Int32 IVIDENC_DynamicParams::inputWidth

Input frame width.

XDAS_Int32 IVIDENC_DynamicParams::refFrameRate

Reference or input frame rate * 1000.

XDAS_Int32 IVIDENC_DynamicParams::targetFrameRate

Target frame rate * 1000.

XDAS_Int32 IVIDENC_DynamicParams::targetBitRate

Target bit rate in bits per second.

XDAS_Int32 IVIDENC_DynamicParams::intraFrameInterval

I frame interval. For example, 30.

XDAS_Int32 IVIDENC_DynamicParams::generateHeader

Encode entire access unit or only header.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_EncMode
XDAS_Int32 IVIDENC_DynamicParams::captureWidth

DEFAULT(0): use imagewidth as pitch else use given capture width for pitch provided it is greater than image width.

XDAS_Int32 IVIDENC_DynamicParams::forceIFrame

Force the current frame to be encoded as an I-frame.

The documentation for this struct was generated from the following file:
  • ividenc.h


Codec Engine Application Programming Interface (API): IVIDENC_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC_Fxns Struct Reference
[IVIDENC - XDM Video Encoder Interface]

Defines all of the operations on IVIDENC objects. More...

#include <ividenc.h>

Collaboration diagram for IVIDENC_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDENC_InArgs *inArgs, IVIDENC_OutArgs *outArgs)
Basic video encoding call.
XDAS_Int32(* | control )(IVIDENC_Handle handle, IVIDENC_Cmd id, IVIDENC_DynamicParams *params, IVIDENC_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDENC objects.

Field Documentation

IALG_Fxns IVIDENC_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDENC_Fxns::process)(IVIDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDENC_InArgs *inArgs, IVIDENC_OutArgs *outArgs)

Basic video encoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
inArgs must not be NULL, and must point to a valid IVIDENC_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDENC_OutArgs structure.
The buffers in inBufs and outBufs are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The buffers in inBufs are owned by the calling application.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IVIDENC_OutArgs::extendedError for more detailed further error conditions.
XDAS_Int32(* IVIDENC_Fxns::control)(IVIDENC_Handle handle, IVIDENC_Cmd id, IVIDENC_DynamicParams *params, IVIDENC_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDENC_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDENC_Status structure.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
Return values:
IALG_EOK | Success.
IALG_EFAIL | Failure. See IVIDENC_Status::extendedError for more detailed further error conditions.
The documentation for this struct was generated from the following file:
  • ividenc.h


Codec Engine Application Programming Interface (API): IVIDENC_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC_InArgs Struct Reference
[IVIDENC - XDM Video Encoder Interface]

Defines the input arguments for all IVIDENC instance process function. More...

#include <ividenc.h>

Data Fields

XDAS_Int32 size

Detailed Description

Defines the input arguments for all IVIDENC instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::process()

Field Documentation

XDAS_Int32 IVIDENC_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

The documentation for this struct was generated from the following file:
  • ividenc.h


Codec Engine Application Programming Interface (API): IVIDENC_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC_Obj Struct Reference
[IVIDENC - XDM Video Encoder Interface]

This must be the first field of all IVIDENC instance objects. More...

#include <ividenc.h>

Collaboration diagram for IVIDENC_Obj:
[legend]

Data Fields

struct IVIDENC_Fxns * fxns

Detailed Description

This must be the first field of all IVIDENC instance objects.

Field Documentation

struct IVIDENC_Fxns* IVIDENC_Obj::fxns
The documentation for this struct was generated from the following file:
  • ividenc.h


Codec Engine Application Programming Interface (API): IVIDENC_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC_OutArgs Struct Reference
[IVIDENC - XDM Video Encoder Interface]

Defines the run time output arguments for all IVIDENC instance objects. More...

#include <ividenc.h>

Collaboration diagram for IVIDENC_OutArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesGenerated
XDAS_Int32 encodedFrameType
XDAS_Int32 inputFrameSkip
IVIDEO_BufDesc reconBufs

Detailed Description

Defines the run time output arguments for all IVIDENC instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::process()

Field Documentation

XDAS_Int32 IVIDENC_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IVIDENC_OutArgs::bytesGenerated

Bytes generated by the encode.

XDAS_Int32 IVIDENC_OutArgs::encodedFrameType

Video frame types.

Remarks:
For the various IVIDEO_xy_FRAME values, this frame type is interlaced where both top and bottom fields are provided in a single frame. The first field is an "x" frame, the second field is "y" field.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_FrameType
XDAS_Int32 IVIDENC_OutArgs::inputFrameSkip

Frame Skip Mode. See IVIDEO_SkipMode.

IVIDEO_BufDesc IVIDENC_OutArgs::reconBufs

Reconstruction Frames.

The documentation for this struct was generated from the following file:
  • ividenc.h


Codec Engine Application Programming Interface (API): IVIDENC_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC_Params Struct Reference
[IVIDENC - XDM Video Encoder Interface]

Defines the creation time parameters for all IVIDENC instance objects. More...

#include <ividenc.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 encodingPreset
XDAS_Int32 rateControlPreset
XDAS_Int32 maxHeight
XDAS_Int32 maxWidth
XDAS_Int32 maxFrameRate
XDAS_Int32 maxBitRate
XDAS_Int32 dataEndianness
XDAS_Int32 maxInterFrameInterval
XDAS_Int32 inputChromaFormat
XDAS_Int32 inputContentType

Detailed Description

Defines the creation time parameters for all IVIDENC instance objects.

Remarks:
The application should set the parameters to 0 to use the algorithm's default values.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IVIDENC_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC_Params::encodingPreset

Encoding preset.

XDAS_Int32 IVIDENC_Params::rateControlPreset

Video rate control presets.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_RateControlPreset
XDAS_Int32 IVIDENC_Params::maxHeight

Maximum height.

XDAS_Int32 IVIDENC_Params::maxWidth

Maximum width.

XDAS_Int32 IVIDENC_Params::maxFrameRate

Maximum frame rate * 1000.

XDAS_Int32 IVIDENC_Params::maxBitRate

Maximum bit rate, bits per second.

XDAS_Int32 IVIDENC_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
XDAS_Int32 IVIDENC_Params::maxInterFrameInterval

I to P frame distance. e.g. = 1 if no B frames, 2 to insert one B frame.

XDAS_Int32 IVIDENC_Params::inputChromaFormat

Chroma format for the input buffer.

See also:
XDM_ChromaFormat
XDAS_Int32 IVIDENC_Params::inputContentType

Video content type of the buffer being encoded.

See also:
IVIDEO_ContentType
The documentation for this struct was generated from the following file:
  • ividenc.h


Codec Engine Application Programming Interface (API): IVIDENC_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDENC_Status Struct Reference
[IVIDENC - XDM Video Encoder Interface]

Defines instance status parameters (read-only). More...

#include <ividenc.h>

Collaboration diagram for IVIDENC_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters (read-only).

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDENC_Fxns::control()

Field Documentation

XDAS_Int32 IVIDENC_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDENC_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM_AlgBufInfo IVIDENC_Status::bufInfo

Input & output buffer information. See XDM_AlgBufInfo.

The documentation for this struct was generated from the following file:
  • ividenc.h


Codec Engine Application Programming Interface (API): IVIDEO1_BufDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDEO1_BufDesc Struct Reference
[IVIDEO - XDM Video Interface]

Detailed buffer descriptor for video buffers. More...

#include <ivideo.h>

Collaboration diagram for IVIDEO1_BufDesc:
[legend]

Data Fields

XDAS_Int32 numBufs
XDAS_Int32 frameWidth
XDAS_Int32 frameHeight
XDAS_Int32 framePitch
XDM1_SingleBufDesc bufDesc [3]
XDAS_Int32 extendedError
XDAS_Int32 frameType
XDAS_Int32 topFieldFirstFlag
XDAS_Int32 repeatFirstFieldFlag
XDAS_Int32 frameStatus
XDAS_Int32 repeatFrame
XDAS_Int32 contentType
XDAS_Int32 chromaFormat

Detailed Description

Detailed buffer descriptor for video buffers.

Field Documentation

XDAS_Int32 IVIDEO1_BufDesc::numBufs

Number of buffers in bufDesc[].

XDAS_Int32 IVIDEO1_BufDesc::frameWidth

Width of the video frame.

XDAS_Int32 IVIDEO1_BufDesc::frameHeight

Height of the video frame.

XDAS_Int32 IVIDEO1_BufDesc::framePitch

Frame pitch used to store the frame.

Remarks:
This field can also be used to indicate the padded width.
XDM1_SingleBufDesc IVIDEO1_BufDesc::bufDesc[3]

Picture buffers.

XDAS_Int32 IVIDEO1_BufDesc::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IVIDEO1_BufDesc::frameType

Video frame types.

Remarks:
For the various IVIDEO_xy_FRAME values, this frame type is interlaced where both top and bottom fields are provided in a single frame. The first field is an "x" frame, the second field is "y" field.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_FrameType
XDAS_Int32 IVIDEO1_BufDesc::topFieldFirstFlag

Flag to indicate when the application should display the top field first.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This field is only applicable for interlaced content, not progressive.
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO1_BufDesc::repeatFirstFieldFlag

Flag to indicate when the first field should be repeated.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This field is only applicable for interlaced content, not progressive.
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO1_BufDesc::frameStatus

Video output buffer status.

Remarks:
Ownership of the buffers, either by application or algorithm, is conveyed via these values.
This reflects the status of ALL output buffers. For example, if video decoded output is in 4:2:0 format, all the 3 output buffers' status is described by this value. Similarly, for 4:2:2 formatted buffers, this value describes the single buffer's status.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_OutputFrameStatus
Remarks:
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO1_BufDesc::repeatFrame

Number of times the display process needs to repeat the displayed progressive frame.

Remarks:
This information is useful for progressive content when the decoder expects the display process to repeat the displayed frame for a certain number of times. This is useful for pulldown (frame/field repetition by display system) support where the display frame rate is increased without increasing the decode frame rate.
The default value is 0.
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO1_BufDesc::contentType

Content type of the buffer.

Remarks:
This is useful when the content is both interlaced and progressive. The display process can use this field to determine how to render the display buffer.
See also:
IVIDEO_ContentType
XDAS_Int32 IVIDEO1_BufDesc::chromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ChromaFormat
The documentation for this struct was generated from the following file:
  • ivideo.h


Codec Engine Application Programming Interface (API): IVIDEO1_BufDescIn Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDEO1_BufDescIn Struct Reference
[IVIDEO - XDM Video Interface]

Buffer descriptor for input video buffers. More...

#include <ivideo.h>

Collaboration diagram for IVIDEO1_BufDescIn:
[legend]

Data Fields

XDAS_Int32 numBufs
XDAS_Int32 frameWidth
XDAS_Int32 frameHeight
XDAS_Int32 framePitch
XDM1_SingleBufDesc bufDesc [XDM_MAX_IO_BUFFERS]

Detailed Description

Buffer descriptor for input video buffers.

Field Documentation

XDAS_Int32 IVIDEO1_BufDescIn::numBufs

Number of buffers in bufDesc[].

XDAS_Int32 IVIDEO1_BufDescIn::frameWidth

Width of the video frame.

XDAS_Int32 IVIDEO1_BufDescIn::frameHeight

Height of the video frame.

XDAS_Int32 IVIDEO1_BufDescIn::framePitch

Frame pitch used to store the frame.

Remarks:
This field can also be used to indicate the padded width.
XDM1_SingleBufDesc IVIDEO1_BufDescIn::bufDesc[XDM_MAX_IO_BUFFERS]

Picture buffers.

The documentation for this struct was generated from the following file:
  • ivideo.h


Codec Engine Application Programming Interface (API): IVIDEO2_BufDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDEO2_BufDesc Struct Reference
[IVIDEO - XDM Video Interface]

Detailed buffer descriptor for video buffers. More...

#include <ivideo.h>

Collaboration diagram for IVIDEO2_BufDesc:
[legend]

Data Fields

XDAS_Int32 numPlanes
XDAS_Int32 numMetaPlanes
XDAS_Int32 dataLayout
XDM2_SingleBufDesc | planeDesc [3]
XDM2_SingleBufDesc | metadataPlaneDesc [3]
XDAS_Int32 | secondFieldOffsetWidth [3]
XDAS_Int32 | secondFieldOffsetHeight [3]
XDAS_Int32 | imagePitch [3]
XDM_Rect imageRegion
XDM_Rect activeFrameRegion
XDAS_Int32 extendedError
XDAS_Int32 frameType
XDAS_Int32 topFieldFirstFlag
XDAS_Int32 repeatFirstFieldFlag
XDAS_Int32 frameStatus
XDAS_Int32 repeatFrame
XDAS_Int32 contentType
XDAS_Int32 chromaFormat
XDAS_Int32 scalingWidth
XDAS_Int32 scalingHeight
XDAS_Int32 rangeMappingLuma
XDAS_Int32 rangeMappingChroma
XDAS_Int32 enableRangeReductionFlag

Detailed Description

Detailed buffer descriptor for video buffers.

Field Documentation

XDAS_Int32 IVIDEO2_BufDesc::numPlanes

Number of video planes.

Remarks:
This must be in the range 0 - IVIDEO_MAX_NUM_PLANES.
Todo:
Need further description.
XDAS_Int32 IVIDEO2_BufDesc::numMetaPlanes

Number of meta data planes.

Remarks:
This must be in the range 0 - IVIDEO_MAX_NUM_METADATA_PLANES.
Todo:
Need further description.
XDAS_Int32 IVIDEO2_BufDesc::dataLayout

Field interleaved, field separated.

Todo:
Need further description. Is there an enum we should reference for valid values? Perhaps IVIDEO_VideoLayout?
XDM2_SingleBufDesc IVIDEO2_BufDesc::planeDesc[3]

Picture buffers.

XDM2_SingleBufDesc IVIDEO2_BufDesc::metadataPlaneDesc[3]

Meta planes.

Remarks:
For MB Info & alpha blending
Todo:
Need further description.
XDAS_Int32 IVIDEO2_BufDesc::secondFieldOffsetWidth[3]

Offset for second field (width in pixels).

Remarks:
Valid only if above pointer is not NULL.
Todo:
Need further description. Which "above pointer"? Is this relavent to planeDesc or metadataPlaneDesc... or both? Is the "width in pixels" comment correct?
XDAS_Int32 IVIDEO2_BufDesc::secondFieldOffsetHeight[3]

Offset for second field (height in lines).

Remarks:
Valid only if above pointer is not NULL.
Todo:
Need further description. Which "above pointer"? Is this relavent to planeDesc or metadataPlaneDesc... or both?
XDAS_Int32 IVIDEO2_BufDesc::imagePitch[3]

Image pitch for each plane.

XDM_Rect IVIDEO2_BufDesc::imageRegion

Image region (top left and bottom right).

XDM_Rect IVIDEO2_BufDesc::activeFrameRegion

Active frame region (top left and bottom right).

XDAS_Int32 IVIDEO2_BufDesc::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
Remarks:
This field is not required for encoders.
XDAS_Int32 IVIDEO2_BufDesc::frameType

Video frame types.

Remarks:
For the various IVIDEO_xy_FRAME values, this frame type is interlaced where both top and bottom fields are provided in a single frame. The first field is an "x" frame, the second field is "y" field.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
Remarks:
This field is not required for encoder input buffer.
See also:
IVIDEO_FrameType
XDAS_Int32 IVIDEO2_BufDesc::topFieldFirstFlag

Flag to indicate when the application should display the top field first.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This field is only app licable for interlaced content, not progressive.
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO2_BufDesc::repeatFirstFieldFlag

Flag to indicate when the first field should be repeated.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This field is only applicable for interlaced content, not progressive.
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO2_BufDesc::frameStatus

Video output buffer status.

Remarks:
Ownership of the buffers, either by application or algorithm, is conveyed via these values.
This reflects the status of ALL output buffers. For example, if video decoded output is in 4:2:0 format, all the 3 output buffers' status is described by this value. Similarly, for 4:2:2 formatted buffers, this value describes the single buffer's status.
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_OutputFrameStatus
Remarks:
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO2_BufDesc::repeatFrame

Number of times the display process needs to repeat the displayed progressive frame.

Remarks:
This information is useful for progressive content when the decoder expects the display process to repeat the displayed frame for a certain number of times. This is useful for pulldown (frame/field repetition by display system) support where the display frame rate is increased without increasing the decode frame rate.
The default value is 0.
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO2_BufDesc::contentType

Content type of the buffer.

Remarks:
This is useful when the content is both interlaced and progressive. The display process can use this field to determine how to render the display buffer.
See also:
IVIDEO_ContentType
XDAS_Int32 IVIDEO2_BufDesc::chromaFormat

Chroma formats.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
XDM_ColorFormat
XDAS_Int32 IVIDEO2_BufDesc::scalingWidth

Scaled image width for post processing.

Remarks:
This field is not required for encoders.
Todo:
Is this in pixels?
Todo:
Should this field and scalingHeight use a XDM_Rect data type?
XDAS_Int32 IVIDEO2_BufDesc::scalingHeight

Scaled image width for post processing.

Remarks:
This field is not required for encoders.
Todo:
Is this in pixels?
XDAS_Int32 IVIDEO2_BufDesc::rangeMappingLuma

Range Mapping Luma

Todo:
Need further description.
Todo:
We should explore what we did in the speech interfaces and perhaps create an ivideo_vc1.h with VC1-specific definitions.
XDAS_Int32 IVIDEO2_BufDesc::rangeMappingChroma

Range Mapping Chroma

Todo:
Need further description.
Todo:
We should explore what we did in the speech interfaces and perhaps create an ivideo_vc1.h with VC1-specific definitions.
XDAS_Int32 IVIDEO2_BufDesc::enableRangeReductionFlag

Flag indicating whether or not to enable range reduction.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
Todo:
We should explore what we did in the speech interfaces and perhaps create an ivideo_vc1.h with VC1-specific definitions.
The documentation for this struct was generated from the following file:
  • ivideo.h


Codec Engine Application Programming Interface (API): IVIDEO_BufDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDEO_BufDesc Struct Reference
[IVIDEO - XDM Video Interface]

Buffer descriptor for video buffers. More...

#include <ivideo.h>

Data Fields

XDAS_Int32 numBufs
XDAS_Int32 width
XDAS_Int8 * | bufs [XDM_MAX_IO_BUFFERS]
XDAS_Int32 | bufSizes [XDM_MAX_IO_BUFFERS]

Detailed Description

Buffer descriptor for video buffers.

Field Documentation

XDAS_Int32 IVIDEO_BufDesc::numBufs

Number of buffers.

XDAS_Int32 IVIDEO_BufDesc::width

Added width of a video frame.

XDAS_Int8* IVIDEO_BufDesc::bufs[XDM_MAX_IO_BUFFERS]

Pointer to vector containing buffer addresses.

XDAS_Int32 IVIDEO_BufDesc::bufSizes[XDM_MAX_IO_BUFFERS]

Size of each buffer in 8-bit bytes.

The documentation for this struct was generated from the following file:
  • ivideo.h


Codec Engine Application Programming Interface (API): IVIDTRANSCODE_DynamicParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDTRANSCODE_DynamicParams Struct Reference
[IVIDTRANSCODE - XDM Video Transcoder Interface]

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <ividtranscode.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 readHeaderOnlyFlag
XDAS_Int32 | keepInputResolutionFlag [2]
XDAS_Int32 | outputHeight [2]
XDAS_Int32 | outputWidth [2]
XDAS_Int32 | keepInputFrameRateFlag [2]
XDAS_Int32 inputFrameRate
XDAS_Int32 | outputFrameRate [2]
XDAS_Int32 | targetBitRate [2]
XDAS_Int32 | rateControl [2]
XDAS_Int32 | keepInputGOPFlag [2]
XDAS_Int32 | intraFrameInterval [2]
XDAS_Int32 | interFrameInterval [2]
XDAS_Int32 | forceFrame [2]
XDAS_Int32 | frameSkipTranscodeFlag [2]

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::control()

Field Documentation

XDAS_Int32 IVIDTRANSCODE_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDTRANSCODE_DynamicParams::readHeaderOnlyFlag

Read the seq header, populate outargs, and return.

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
XDAS_Int32 IVIDTRANSCODE_DynamicParams::keepInputResolutionFlag[2]

Flag for each transcoded stream to indicate if the output frame resolution is to be kept equal to the input frame resolution (i.e. no resolution change).

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
XDAS_Int32 IVIDTRANSCODE_DynamicParams::outputHeight[2]

Output frame height for each of the transcoded outputs.

Remarks:
Used for scaling.
This field is ignored when the keepInputResolutionFlag is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::outputWidth[2]

Output frame for each of the transcoded outputs.

Remarks:
Used for scaling.
This field is ignored when the keepInputResolution is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::keepInputFrameRateFlag[2]

Flag for each transcoded stream to indicate if the input frame rate is to be maintained (i.e., no frame rate change).

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
XDAS_Int32 IVIDTRANSCODE_DynamicParams::inputFrameRate

Reference, or input, frame rate in fps * 1000.

Remarks:
For example, if ref frame rate is 30 frames per second, this field will be 30000.
This field is ignored when the keepInputFramerate field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::outputFrameRate[2]

Target frame rate in fps * 1000, for each of the transcoded outputs.

Remarks:
For example, if target frame rate is 30 frames per second, this field will be 30000.
This field is ignored when the keepInputFramerate field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::targetBitRate[2]

Target bit rate in bits per second, for each of the transcoded outputs.

XDAS_Int32 IVIDTRANSCODE_DynamicParams::rateControl[2]

Rate control related selection for each of the transcoded outputs.

See also:
IVIDEO_RateControlPreset
XDAS_Int32 IVIDTRANSCODE_DynamicParams::keepInputGOPFlag[2]

Retain the input GOP structure (to the extent possible) flag for each transcoded output.

Remarks:
Possible values are XDAS_TRUE, and XDAS_FALSE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::intraFrameInterval[2]

I frame interval for each of the transcoded outputs.

Remarks:
For example, this field will be:
  • 0 - Only first frame to be intra coded. e.g. IPPPPPP...
  • 1 - No inter frames (all intra frames).
  • 2 - Consecutive IPIPIP... sequence (if no B frames).
  • 3 - IPPIPP... or IPBIPBI... and so on.
This field is ignored when the keepInputGOP field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::interFrameInterval[2]

Number of B frames between two reference frames for each of the transcoded output.

Remarks:
For example, this field will be:
  • 0 - to use maxInterFrameInterval.
  • 1 - 0 B frames between two reference frames.
  • 2 - 1 B frame between two reference frames.
  • 3 - 2 B frames between two reference frames.
  • and so on...
See also:
IVIDTRANSCODE_Params.maxInterFrameInterval.
Remarks:
This field is ignored when the keepInputGOP field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::forceFrame[2]

Force the current (immediate) frame within the specific transcoded output to be encoded as a specific frame type.

Remarks:
For example, this field will be:
  • IVIDEO_NA_FRAME - No forcing of any specific frame type for the frame.
  • IVIDEO_I_FRAME - Force the frame to be encoded as I frame.
  • IVIDEO_IDR_FRAME - Force the frame to be encoded as an IDR frame (specific to H.264 codecs).
  • IVIDEO_P_FRAME - Force the frame to be encoded as a P frame.
  • IVIDEO_B_FRAME - Force the frame to be encoded as a B frame.
See also:
IVIDEO_FrameType.
Remarks:
This field is ignored when the keepInputGOPFlag field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::frameSkipTranscodeFlag[2]

A flag per transcoded output to enforce a frame skip.

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
This field is ignored when the keepInputGOPFlag field is set to XDAS_TRUE.
See also:
IVIDEO_FrameSkipTranscode
The documentation for this struct was generated from the following file:
  • ividtranscode.h


Codec Engine Application Programming Interface (API): IVIDTRANSCODE_Fxns Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDTRANSCODE_Fxns Struct Reference
[IVIDTRANSCODE - XDM Video Transcoder Interface]

Defines all of the operations on IVIDTRANSCODE objects. More...

#include <ividtranscode.h>

Collaboration diagram for IVIDTRANSCODE_Fxns:
[legend]

Data Fields

IALG_Fxns ialg
XDAS_Int32(* | process )(IVIDTRANSCODE_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDTRANSCODE_InArgs *inArgs, IVIDTRANSCODE_OutArgs *outArgs)
Basic video decoding call.
XDAS_Int32(* | control )(IVIDTRANSCODE_Handle handle, IVIDTRANSCODE_Cmd id, IVIDTRANSCODE_DynamicParams *params, IVIDTRANSCODE_Status *status)
Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDTRANSCODE objects.

Field Documentation

IALG_Fxns IVIDTRANSCODE_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDTRANSCODE_Fxns::process)(IVIDTRANSCODE_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDTRANSCODE_InArgs *inArgs, IVIDTRANSCODE_OutArgs *outArgs)

Basic video decoding call.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in,out] | inBufs | Input buffer descriptors.
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers.
[in] | inArgs | Input arguments. This is a required parameter.
[out] | outArgs | Ouput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
inArgs must not be NULL, and must point to a valid IVIDTRANSCODE_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDTRANSCODE_OutArgs structure.
inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.
inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.
outBufs must not be NULL, and must point to a valid XDM_BufDesc structure.
outBufs->buf[0] must not be NULL, and must point to a valid buffer of data that is at least outBufs->bufSizes[0] bytes in length.
The buffers in inBuf and outBuf are physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.bufDesc[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must modify the contents of inBufs->descs[].accessMask and appropriately indicate the mode in which each of the buffers in inBufs were read. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs are owned by the calling application.
Return values:
IVIDTRANSCODE_EOK

Success.

IVIDTRANSCODE_EFAIL

General failure.

See IVIDTRANSCODE_Status::extendedError for more detailed further error conditions.
IVIDTRANSCODE_EUNSUPPORTED

Request is unsupported.

XDAS_Int32(* IVIDTRANSCODE_Fxns::control)(IVIDTRANSCODE_Handle handle, IVIDTRANSCODE_Cmd id, IVIDTRANSCODE_DynamicParams *params, IVIDTRANSCODE_Status *status)

Control behavior of an algorithm.

Parameters:
[in] | handle | Handle to an algorithm instance.
[in] | id | Command id. See XDM_CmdId.
[in] | params | Dynamic parameters. This is a required parameter.
[out] | status | Output results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDTRANSCODE_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDTRANSCODE_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of params. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data field, it is owned by the calling application.
Return values:
IVIDTRANSCODE_EOK

Success.

IVIDTRANSCODE_EFAIL

General failure.

See IVIDTRANSCODE_Status::extendedError for more detailed further error conditions.
IVIDTRANSCODE_EUNSUPPORTED

Request is unsupported.

The documentation for this struct was generated from the following file:
  • ividtranscode.h


Codec Engine Application Programming Interface (API): IVIDTRANSCODE_InArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDTRANSCODE_InArgs Struct Reference
[IVIDTRANSCODE - XDM Video Transcoder Interface]

Defines the input arguments for all IVIDTRANSCODE instance process function. More...

#include <ividtranscode.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numBytes
XDAS_Int32 inputID

Detailed Description

Defines the input arguments for all IVIDTRANSCODE instance process function.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::process()

Field Documentation

XDAS_Int32 IVIDTRANSCODE_InArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDTRANSCODE_InArgs::numBytes

Size of input data in bytes, provided to the algorithm for decoding.

XDAS_Int32 IVIDTRANSCODE_InArgs::inputID

The decoder will attach this ID with the corresponding output frames.

The documentation for this struct was generated from the following file:
  • ividtranscode.h


Codec Engine Application Programming Interface (API): IVIDTRANSCODE_Obj Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDTRANSCODE_Obj Struct Reference
[IVIDTRANSCODE - XDM Video Transcoder Interface]

This must be the first field of all IVIDTRANSCODE instance objects. More...

#include <ividtranscode.h>

Collaboration diagram for IVIDTRANSCODE_Obj:
[legend]

Data Fields

struct IVIDTRANSCODE_Fxns * fxns

Detailed Description

This must be the first field of all IVIDTRANSCODE instance objects.

Field Documentation

struct IVIDTRANSCODE_Fxns* IVIDTRANSCODE_Obj::fxns
The documentation for this struct was generated from the following file:
  • ividtranscode.h


Codec Engine Application Programming Interface (API): IVIDTRANSCODE_OutArgs Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDTRANSCODE_OutArgs Struct Reference
[IVIDTRANSCODE - XDM Video Transcoder Interface]

Defines the run time output arguments for all IVIDTRANSCODE instance objects. More...

#include <ividtranscode.h>

Collaboration diagram for IVIDTRANSCODE_OutArgs:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bitsConsumed
XDAS_Int32 | bitsGenerated [2]
XDAS_Int32 decodedPictureType
XDAS_Int32 decodedPictureStructure
XDAS_Int32 | encodedPictureType [2]
XDAS_Int32 | encodedPictureStructure [2]
XDAS_Int32 decodedHeight
XDAS_Int32 decodedWidth
XDAS_Int32 | outputID [2]
XDAS_Int32 | inputFrameSkipTranscodeFlag [2]
XDM1_SingleBufDesc | encodedBuf [2]
XDAS_Int32 outBufsInUseFlag

Detailed Description

Defines the run time output arguments for all IVIDTRANSCODE instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::process()

Field Documentation

XDAS_Int32 IVIDTRANSCODE_OutArgs::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDTRANSCODE_OutArgs::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDAS_Int32 IVIDTRANSCODE_OutArgs::bitsConsumed

Number of bits consumed during the IVIDTRANSCODE_Fxns.process() call.

XDAS_Int32 IVIDTRANSCODE_OutArgs::bitsGenerated[2]

Number of bits generated during the IVIDTRANSCODE_Fxns.process() call for each transcode output.

XDAS_Int32 IVIDTRANSCODE_OutArgs::decodedPictureType

Type of the decoded picture.

See also:
IVIDEO_PictureType
XDAS_Int32 IVIDTRANSCODE_OutArgs::decodedPictureStructure

Structure of the decoded picture.

See also:
IVIDEO_ContentType
XDAS_Int32 IVIDTRANSCODE_OutArgs::encodedPictureType[2]

Type of the encoded picture for each transcode output.

See also:
IVIDEO_PictureType
XDAS_Int32 IVIDTRANSCODE_OutArgs::encodedPictureStructure[2]

Structure of the encoded picture for each transcode output.

See also:
IVIDEO_ContentType
XDAS_Int32 IVIDTRANSCODE_OutArgs::decodedHeight

Decoded frame height

XDAS_Int32 IVIDTRANSCODE_OutArgs::decodedWidth

Decoded frame width

XDAS_Int32 IVIDTRANSCODE_OutArgs::outputID[2]

This is the ID of the encoded buffer for each output. This field is also used by the client to identify the outBufs supplied with the IVIDTRANSCODE_Fxns.process() call that can be reused.

Remarks:
This will be set to zero when there is no encoded buffer for passing to client application.
See also:
IVIDTRANSCODE_InArgs::inputID.
XDAS_Int32 IVIDTRANSCODE_OutArgs::inputFrameSkipTranscodeFlag[2]

Flag to indicate if the current frame was skipped in specific transcode outputs.

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
XDM1_SingleBufDesc IVIDTRANSCODE_OutArgs::encodedBuf[2]

When outputID for a specific transcode output is non-zero, the corresponding encoded buffer related information is populated here.

XDAS_Int32 IVIDTRANSCODE_OutArgs::outBufsInUseFlag

Flag to indicate that the outBufs provided with the IVIDTRANSCODE_Fxns.process() call are in use. No outBufs are required to be supplied with the next IVIDTRANSCODE_Fxns.process() call.

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
The documentation for this struct was generated from the following file:
  • ividtranscode.h


Codec Engine Application Programming Interface (API): IVIDTRANSCODE_Params Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDTRANSCODE_Params Struct Reference
[IVIDTRANSCODE - XDM Video Transcoder Interface]

Defines the creation time parameters for all IVIDTRANSCODE instance objects. More...

#include <ividtranscode.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 numOutputStreams
XDAS_Int32 formatInput
XDAS_Int32 | formatOutput [2]
XDAS_Int32 maxHeightInput
XDAS_Int32 maxWidthInput
XDAS_Int32 maxFrameRateInput
XDAS_Int32 maxBitRateInput
XDAS_Int32 | maxHeightOutput [2]
XDAS_Int32 | maxWidthOutput [2]
XDAS_Int32 | maxFrameRateOutput [2]
XDAS_Int32 | maxBitRateOutput [2]
XDAS_Int32 dataEndianness

Detailed Description

Defines the creation time parameters for all IVIDTRANSCODE instance objects.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.

Field Documentation

XDAS_Int32 IVIDTRANSCODE_Params::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDTRANSCODE_Params::numOutputStreams

Number of output transcoded streams This allows the possibility of generating more than one transcoded bit-streams from a single incoming bit-stream.

XDAS_Int32 IVIDTRANSCODE_Params::formatInput

Video Format types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_Format
Remarks:
This is the video standard of incoming bit stream.
XDAS_Int32 IVIDTRANSCODE_Params::formatOutput[2]

Video Format types.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
This enumeration defines a base set of values. Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures. These extended enums should be between XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE
See also:
IVIDEO_Format
Remarks:
This array indicates the video standard for each of the transcoded bit streams.
XDAS_Int32 IVIDTRANSCODE_Params::maxHeightInput

Maximum video height in pixels.

XDAS_Int32 IVIDTRANSCODE_Params::maxWidthInput

Maximum video width in pixels.

XDAS_Int32 IVIDTRANSCODE_Params::maxFrameRateInput

Maximum frame rate in fps * 1000. For example, if max frame rate is 30 frames per second, set this field to 30000.

XDAS_Int32 IVIDTRANSCODE_Params::maxBitRateInput

Maximum bit rate, bits per second. For example, if bit rate is 10 Mbps, set this field to 10000000

XDAS_Int32 IVIDTRANSCODE_Params::maxHeightOutput[2]

Maximum output video height in pixels for each of the transcoded output.

XDAS_Int32 IVIDTRANSCODE_Params::maxWidthOutput[2]

Maximum output video width in pixels for each of the transcoded output.

XDAS_Int32 IVIDTRANSCODE_Params::maxFrameRateOutput[2]

Maximum frame rate in fps * 1000. for each out the output bitstreams For example, if max frame rate is 30 frames per second, set this field to 30000.

XDAS_Int32 IVIDTRANSCODE_Params::maxBitRateOutput[2]

Maximum bit rate, in bits per second for each of the transcoded bitstreams. For example, if bit rate is 10 Mbps, set this field to 10000000

XDAS_Int32 IVIDTRANSCODE_Params::dataEndianness

Endianness of output data.

See also:
XDM_DataFormat
The documentation for this struct was generated from the following file:
  • ividtranscode.h


Codec Engine Application Programming Interface (API): IVIDTRANSCODE_Status Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

IVIDTRANSCODE_Status Struct Reference
[IVIDTRANSCODE - XDM Video Transcoder Interface]

Defines instance status parameters. More...

#include <ividtranscode.h>

Collaboration diagram for IVIDTRANSCODE_Status:
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDM1_SingleBufDesc data
XDM_AlgBufInfo bufInfo

Detailed Description

Defines instance status parameters.

Remarks:
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See http://tiexpressdsp.com/index.php?title=Extending_data_structures_in_xDM for more details.
See also:
IVIDTRANSCODE_Fxns::control()

Field Documentation

XDAS_Int32 IVIDTRANSCODE_Status::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDTRANSCODE_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.
See also:
XDM_ErrorBit
XDM1_SingleBufDesc IVIDTRANSCODE_Status::data

Buffer descriptor for data passing.

Remarks:
If this field is not used, the application must set data.buf to NULL.
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the IVIDTRANSCODE_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDM_AlgBufInfo IVIDTRANSCODE_Status::bufInfo

Input and output buffer information.

Remarks:
This field provides the application with the algorithm's buffer requirements. The requirements may vary depending on the current configuration of the algorithm instance.
See also:
XDM_AlgBufInfo
The documentation for this struct was generated from the following file:
  • ividtranscode.h


Codec Engine Application Programming Interface (API): Server_MemStat Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

Server_MemStat Struct Reference
[Codec Engine Server Interface]

Information for a memory heap of a remote DSP server. More...

#include <Server.h>

Data Fields

Char | name [32+1]
Uint32 | base
Uint32 | size
Uint32 | used
Uint32 | maxBlockLen

Detailed Description

Information for a memory heap of a remote DSP server.

Remarks:
Sizes are given in DSP data MAUs.
See also:
Server_getMemStat().

Field Documentation

Char Server_MemStat::name[32+1]

Name of memory heap.

Uint32 Server_MemStat::base

Base address of the memory segment.

Uint32 Server_MemStat::size

Original size of the memory segment.

Uint32 Server_MemStat::used

Number of bytes used.

Uint32 Server_MemStat::maxBlockLen

Length of the largest contiguous free block.

The documentation for this struct was generated from the following file:
  • Server.h


Codec Engine Application Programming Interface (API): ti_sdo_ce_osal_Memory_AllocParams Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

ti_sdo_ce_osal_Memory_AllocParams Struct Reference
[Memory - OS Independent Memory Interface]

Parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free() More...

#include <Memory.h>

Data Fields

ti_sdo_ce_osal_Memory_type type
UInt | flags
UInt | align
UInt | seg

Detailed Description

Parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free()

Remarks:
This definition also has a short name alias of Memory_AllocParams.
See also:
ti_sdo_ce_osal_Memory_DEFAULTPARAMS

Field Documentation

ti_sdo_ce_osal_Memory_type ti_sdo_ce_osal_Memory_AllocParams::type

Type of allocation.

See also:
ti_sdo_ce_osal_Memory_type
UInt ti_sdo_ce_osal_Memory_AllocParams::flags

Flags affecting allocation.

Remarks:
Note that some OS's don't provide cacheability settings on a per-buffer allocation, and this field may be ignored. As an example, BIOS running on C6000 devices use MAR bits (at 16MB granularity) for marking memory regions as cached or not. In those systems, this field is ignored, and the MAR bits will dictate the cacheability of a buffer.
See also:
ti_sdo_ce_osal_Memory_CACHED
ti_sdo_ce_osal_Memory_NONCACHED
UInt ti_sdo_ce_osal_Memory_AllocParams::align

Alignment of allocation.

UInt ti_sdo_ce_osal_Memory_AllocParams::seg

Segment for allocation.

The documentation for this struct was generated from the following file:
  • Memory.h


Codec Engine Application Programming Interface (API): VISA_MsgHeader Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

VISA_MsgHeader Struct Reference
[VISA - CE Stub SPIs]

VISA message header. More...

#include <visa.h>

Data Fields

NODE_MsgHeader | header
Int | cmd
VISA_Status status

Detailed Description

VISA message header.

Remarks:
This must be the first field in a message

Field Documentation

NODE_MsgHeader VISA_MsgHeader::header
Int VISA_MsgHeader::cmd

Command id

VISA_Status VISA_MsgHeader::status

Return status

The documentation for this struct was generated from the following file:
  • visa.h


Codec Engine Application Programming Interface (API): XDM1_AlgBufInfo Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM1_AlgBufInfo Struct Reference
[XDM - Shared XDM Definitions]

Buffer information descriptor for input and output buffers. More...

#include <xdm.h>

Collaboration diagram for XDM1_AlgBufInfo:
[legend]

Data Fields

XDAS_Int32 minNumInBufs
XDAS_Int32 minNumOutBufs
XDM2_BufSize | minInBufSize [16]
XDM2_BufSize | minOutBufSize [16]
XDAS_Int32 | inBufMemoryType [16]
XDAS_Int32 | outBufMemoryType [16]
XDAS_Int32 minNumBufSets

Detailed Description

Buffer information descriptor for input and output buffers.

Field Documentation

XDAS_Int32 XDM1_AlgBufInfo::minNumInBufs

Minimum number of input buffers.

XDAS_Int32 XDM1_AlgBufInfo::minNumOutBufs

Minimum number of output buffers.

XDM2_BufSize XDM1_AlgBufInfo::minInBufSize[16]

Minimum size required for each input buffer.

XDM2_BufSize XDM1_AlgBufInfo::minOutBufSize[16]

Minimum size required for each output buffer.

XDAS_Int32 XDM1_AlgBufInfo::inBufMemoryType[16]

Required memory type for each input buffer.

See also:
XDM_MemoryType
XDAS_Int32 XDM1_AlgBufInfo::outBufMemoryType[16]

Required memory type for each output buffer.

See also:
XDM_MemoryType
XDAS_Int32 XDM1_AlgBufInfo::minNumBufSets

Minimum number of buffer sets for buffer management.

Todo:
need more details
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM1_BufDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM1_BufDesc Struct Reference
[XDM - Shared XDM Definitions]

Buffer descriptor. More...

#include <xdm.h>

Collaboration diagram for XDM1_BufDesc:
[legend]

Data Fields

XDAS_Int32 numBufs
XDM1_SingleBufDesc descs [16]

Detailed Description

Buffer descriptor.

Field Documentation

XDAS_Int32 XDM1_BufDesc::numBufs

Number of buffers in descs array.

Remarks:
Must be less than XDM_MAX_IO_BUFFERS.
XDM1_SingleBufDesc XDM1_BufDesc::descs[16]
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM1_SingleBufDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM1_SingleBufDesc Struct Reference
[XDM - Shared XDM Definitions]

Single buffer descriptor. More...

#include <xdm.h>

Data Fields

XDAS_Int8 * buf
XDAS_Int32 bufSize
XDAS_Int32 accessMask

Detailed Description

Single buffer descriptor.

Field Documentation

XDAS_Int8* XDM1_SingleBufDesc::buf

Pointer to a buffer address.

XDAS_Int32 XDM1_SingleBufDesc::bufSize

Size of buf in 8-bit bytes.

XDAS_Int32 XDM1_SingleBufDesc::accessMask

Mask filled by the algorithm, declaring how the buffer was accessed by the algorithm processor.

Remarks:
If the buffer was not accessed by the algorithm processor (e.g., it was filled via DMA or other hardware accelerator that doesn't write through the algorithm's CPU), then no bits in this mask should be set.
It is acceptible (and appropriate!)to set several bits in this mask if the algorithm accessed the buffer in several ways.
This mask is often used by the application and/or framework to appropriately manage cache on cache-based systems.
See also:
XDM_AccessMode
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM2_BufDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM2_BufDesc Struct Reference
[XDM - Shared XDM Definitions]

Buffer descriptor. More...

#include <xdm.h>

Collaboration diagram for XDM2_BufDesc:
[legend]

Data Fields

XDAS_Int32 numBufs
XDM2_SingleBufDesc descs [16]

Detailed Description

Buffer descriptor.

Remarks:
This advanced buffer uses the XDM2_SingleBufDesc, and is typically used for codecs which must reflect types of memory. For example, video codecs may need to indicate whether tiled memory is used.

Field Documentation

XDAS_Int32 XDM2_BufDesc::numBufs

Number of buffers in descs array.

Remarks:
Must be less than XDM_MAX_IO_BUFFERS.
XDM2_SingleBufDesc XDM2_BufDesc::descs[16]
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM2_BufSize Union Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM2_BufSize Union Reference
[XDM - Shared XDM Definitions]

Union describing a buffer size. More...

#include <xdm.h>

Data Fields

struct {
XDAS_Int32 width
XDAS_Int32 height
} tileMem
XDAS_Int32 bytes

Detailed Description

Union describing a buffer size.

Remarks:
More advanced memory types (e.g. tiled memory) cannot indicate buffer size using a simple integer, but rather must indicate memory size using a width and height.

Field Documentation

XDAS_Int32 XDM2_BufSize::width

Width of buf in 8-bit bytes.

XDAS_Int32 XDM2_BufSize::height

Height of buf in 8-bit bytes.

struct { ... } XDM2_BufSize::tileMem
XDAS_Int32 XDM2_BufSize::bytes

Size of buf in 8-bit bytes.

The documentation for this union was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM2_SingleBufDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM2_SingleBufDesc Struct Reference
[XDM - Shared XDM Definitions]

Single buffer descriptor. More...

#include <xdm.h>

Collaboration diagram for XDM2_SingleBufDesc:
[legend]

Data Fields

XDAS_Int8 * buf
XDAS_Int16 memType
XDAS_Int16 usageMode
XDM2_BufSize bufSize
XDAS_Int32 accessMask

Detailed Description

Single buffer descriptor.

Remarks:
This buffer descriptor contains a memType field, and uses the XDM_BufSize union to indicate the size of the buffer. As a result, this data type can be used to describe complex memory types (e.g. tiled memory).

Field Documentation

XDAS_Int8* XDM2_SingleBufDesc::buf

Pointer to a buffer address.

XDAS_Int16 XDM2_SingleBufDesc::memType

Memory type.

See also:
XDM_MemoryType
XDAS_Int16 XDM2_SingleBufDesc::usageMode

Memory usage descriptor.

Remarks:
This field is set by the owner of the buffer (typically the application), and read by users of the buffer (including the algorithm).
See also:
XDM_MemoryUsageMode
XDM2_BufSize XDM2_SingleBufDesc::bufSize

Buffer size(for tile memory/row memory

XDAS_Int32 XDM2_SingleBufDesc::accessMask

Mask filled by the algorithm, declaring how the buffer was accessed by the algorithm processor.

Remarks:
If the buffer was not accessed by the algorithm processor (e.g., it was filled via DMA or other hardware accelerator that doesn't write through the algorithm's CPU), then no bits in this mask should be set.
It is acceptible (and appropriate!)to set several bits in this mask if the algorithm accessed the buffer in several ways.
This mask is often used by the application and/or framework to appropriately manage cache on cache-based systems.
See also:
XDM_AccessMode
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM_AlgBufInfo Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM_AlgBufInfo Struct Reference
[XDM - Shared XDM Definitions]

Buffer information descriptor for input and output buffers. More...

#include <xdm.h>

Data Fields

XDAS_Int32 minNumInBufs
XDAS_Int32 minNumOutBufs
XDAS_Int32 | minInBufSize [16]
XDAS_Int32 | minOutBufSize [16]

Detailed Description

Buffer information descriptor for input and output buffers.

Field Documentation

XDAS_Int32 XDM_AlgBufInfo::minNumInBufs

Minimum number of input buffers.

XDAS_Int32 XDM_AlgBufInfo::minNumOutBufs

Minimum number of output buffers.

XDAS_Int32 XDM_AlgBufInfo::minInBufSize[16]

Minimum size, in 8-bit bytes, required for each input buffer.

XDAS_Int32 XDM_AlgBufInfo::minOutBufSize[16]

Minimum size, in 8-bit bytes, required for each output buffer.

The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM_BufDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM_BufDesc Struct Reference
[XDM - Shared XDM Definitions]

Buffer descriptor for multiple buffers. More...

#include <xdm.h>

Data Fields

XDAS_Int8 ** bufs
XDAS_Int32 numBufs
XDAS_Int32 * bufSizes

Detailed Description

Buffer descriptor for multiple buffers.

Precondition:
numBufs can not be larger than XDM_MAX_IO_BUFFERS. Related, *bufs and *bufSizes will never be indexed beyond XDM_MAX_IO_BUFFERS elements.
Remarks:
This data type is commonly used to manage input and output buffers.
If *bufs is a sparse array, *bufSizes will be a similar sparse array. The NULL indexes in bufs will be ignored in bufSizes.
numBufs describes the number of buffers in this descriptor. if *bufs is a sparse array, numBufs describes the number of non-NULL buffers in this descriptor; this is not necessarily the maximum index of the last buffer pointed to by *bufs.
An example utilizing XDM_BufDesc as a sparse array would be the following:
              XDM_BufDesc outBufs;
              XDAS_Int32  bufSizeArray[XDM_MAX_IO_BUFFERS];
              XDAS_Int8  *pBuffers[XDM_MAX_IO_BUFFERS];
              XDAS_Int8   buffer1[4096];
              XDAS_Int8   buffer2[1024];

              // ensure all pBuffers and bufSizeArray are initially NULL
              memset(pBuffers, 0, sizeof(pBuffers[0]) * XDM_MAX_IO_BUFFERS);
              memset(bufSizeArray, 0,
                  sizeof(bufSizeArray[0]) * XDM_MAX_IO_BUFFERS);

              pBuffers[0] = buffer1;
              pBuffers[4] = buffer2;

              bufSizeArray[0] = 4096;
              bufSizeArray[4] = 1024;

              outBufs.bufs = pBuffers;
              outBufs.numBufs = 2;
              outBufs.bufSizes = bufSizeArray;
The following diagram describes graphically the example above.

Field Documentation

XDAS_Int8** XDM_BufDesc::bufs

Pointer to an array containing buffer addresses.

XDAS_Int32 XDM_BufDesc::numBufs

Number of buffers.

XDAS_Int32* XDM_BufDesc::bufSizes

Size of each buffer in 8-bit bytes.

The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM_Context Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM_Context Struct Reference
[XDM - Shared XDM Definitions]

Context used by split codecs. More...

#include <xdm.h>

Collaboration diagram for XDM_Context:
[legend]

Data Fields

XDM1_SingleBufDesc algContext
XDAS_Int32 numInBufs
XDAS_Int32 numOutBufs
XDAS_Int32 numInOutBufs
XDM1_SingleBufDesc | inBufs [32]
XDM1_SingleBufDesc | outBufs [32]
XDM1_SingleBufDesc | inOutBufs [32]
XDM1_SingleBufDesc | intermediateBufs [32]

Detailed Description

Context used by split codecs.

Field Documentation

XDM1_SingleBufDesc XDM_Context::algContext

App allocated and provided.

Remarks:
Split codecs can use this for passing scalar data to the next part.
XDAS_Int32 XDM_Context::numInBufs

Number of input data buffers

XDAS_Int32 XDM_Context::numOutBufs

Number of output data buffers

XDAS_Int32 XDM_Context::numInOutBufs

Number of in/out data buffers

XDM1_SingleBufDesc XDM_Context::inBufs[32]

Input data Cbuffers.

Remarks:
This is a sparse array.
XDM1_SingleBufDesc XDM_Context::outBufs[32]

Output data buffers.

Remarks:
This is a sparse array.
XDM1_SingleBufDesc XDM_Context::inOutBufs[32]

Input/Output data buffers.

Remarks:
This is a sparse array.
XDM1_SingleBufDesc XDM_Context::intermediateBufs[32]

Intermediate, working buffers.

Remarks:
For FRONT codec parts, these buffers are treated as OUT buffers (i.e., written to by the algorithm). For BACK codec parts, these buffers are treated as IN buffers (i.e., read from by the algorithm). For MIDDLE codec parts, these buffers are treated as IN/OUT buffers (i.e., the codec can read from, and write to them).
This is a null-terminated array
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM_ContextInfo Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM_ContextInfo Struct Reference
[XDM - Shared XDM Definitions]

Buffer information descriptor for input and output buffers. More...

#include <xdm.h>

Data Fields

XDAS_Int32 minContextSize
XDAS_Int32 minIntermediateBufSizes [32]

Detailed Description

Buffer information descriptor for input and output buffers.

Field Documentation

XDAS_Int32 XDM_ContextInfo::minContextSize

Minimum size, in 8-bit bytes, required for the alg context.

XDAS_Int32 XDM_ContextInfo::minIntermediateBufSizes[32]

Minimum size, in 8-bit bytes, required for each intermediate buffer.

Remarks:
The codec indicates the number of intermediate buffers required by zero-terminating this array.
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM_DataSyncDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM_DataSyncDesc Struct Reference
[XDM - Shared XDM Definitions]

Descriptor for the chunk of data being transferred in one call to putData or getData. More...

#include <xdm.h>

Data Fields

XDAS_Int32 size
XDAS_Int32 scatteredBlocksFlag
XDAS_Int32 * baseAddr
XDAS_Int32 numBlocks
XDAS_Int32 varBlockSizesFlag
XDAS_Int32 * blockSizes

Detailed Description

Descriptor for the chunk of data being transferred in one call to putData or getData.

Field Documentation

XDAS_Int32 XDM_DataSyncDesc::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 XDM_DataSyncDesc::scatteredBlocksFlag

Flag indicating whether the individual data blocks may be scattered in memory.

Remarks:
Note that each individual block must be physically contiguous.
Valid values are XDAS_TRUE and XDAS_FALSE.
If set to XDAS_FALSE, the baseAddr field points directly to the start of the first block, and is not treated as a pointer to an array.
If set to XDAS_TRUE, the baseAddr array must contain the base address of each individual block.
XDAS_Int32* XDM_DataSyncDesc::baseAddr

Base address of single data block or pointer to an array of data block addresses of size numBlocks.

Remarks:
If scatteredBlocksFlag is set to XDAS_FALSE, this field points directly to the start of the first block, and is not treated as a pointer to an array.
If scatteredBlocksFlag is set to XDAS_TRUE, this field points to an array of pointers to the data blocks.
XDAS_Int32 XDM_DataSyncDesc::numBlocks

Number of blocks available

XDAS_Int32 XDM_DataSyncDesc::varBlockSizesFlag

Flag indicating whether any of the data blocks vary in size.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
XDAS_Int32* XDM_DataSyncDesc::blockSizes

Variable block sizes array.

Remarks:
If varBlockSizesFlag is XDAS_TRUE, this array contains the sizes of each block. If varBlockSizesFlag is XDAS_FALSE, this contains the size of same-size blocks.
Memory for this array (of size numBlocks) has to be allocated by the caller of the putData API.
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM_Date Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM_Date Struct Reference
[XDM - Shared XDM Definitions]

Date and time. More...

#include <xdm.h>

Data Fields

XDAS_Int32 msecsOfDay
XDAS_Int32 month
XDAS_Int32 dayOfMonth
XDAS_Int32 dayOfWeek
XDAS_Int32 year

Detailed Description

Date and time.

Field Documentation

XDAS_Int32 XDM_Date::msecsOfDay

Milliseconds of the day

XDAS_Int32 XDM_Date::month

Month (0 = January, 11 = December)

XDAS_Int32 XDM_Date::dayOfMonth

Month (1 - 31)

XDAS_Int32 XDM_Date::dayOfWeek

Day of week (0 = Sunday, 6 = Saturday)

XDAS_Int32 XDM_Date::year

Year (since 0)

The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM_Point Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM_Point Struct Reference
[XDM - Shared XDM Definitions]

2-dimensional point More...

#include <xdm.h>

Data Fields

XDAS_Int32 x
XDAS_Int32 y

Detailed Description

2-dimensional point

Field Documentation

XDAS_Int32 XDM_Point::x
XDAS_Int32 XDM_Point::y
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM_Rect Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM_Rect Struct Reference
[XDM - Shared XDM Definitions]

Rectangle. More...

#include <xdm.h>

Collaboration diagram for XDM_Rect:
[legend]

Data Fields

XDM_Point topLeft
XDM_Point bottomRight

Detailed Description

Rectangle.

Field Documentation

XDM_Point XDM_Rect::topLeft
XDM_Point XDM_Rect::bottomRight
The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): XDM_SingleBufDesc Struct Reference

  • Data Structures
  • Data Structure Index
  • Data Fields
Data Fields

XDM_SingleBufDesc Struct Reference
[XDM - Shared XDM Definitions]

Single buffer descriptor. More...

#include <xdm.h>

Data Fields

XDAS_Int8 * buf
XDAS_Int32 bufSize

Detailed Description

Single buffer descriptor.

Field Documentation

XDAS_Int8* XDM_SingleBufDesc::buf

Pointer to a buffer address.

XDAS_Int32 XDM_SingleBufDesc::bufSize

Size of buf in 8-bit bytes.

The documentation for this struct was generated from the following file:
  • xdm.h


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- a -

  • accessMask : XDM1_SingleBufDesc , XDM2_SingleBufDesc
  • actionType : IVIDANALYTICS_Rule
  • activeFrameRegion : IVIDEO2_BufDesc
  • algActivate : IALG_Fxns
  • algAlloc : IALG_Fxns
  • algContext : XDM_Context
  • algControl : IALG_Fxns
  • algDeactivate : IALG_Fxns
  • algFree : IALG_Fxns
  • algInfoSize : Engine_AlgInfo
  • algInit : IALG_Fxns
  • algMoved : IALG_Fxns
  • algNumAlloc : IALG_Fxns
  • align : ti_sdo_ce_osal_Memory_AllocParams
  • alignment : IALG_MemRec
  • ancData : IAUDENC1_InArgs
  • ancFlag : IAUDENC1_Params
  • attrs : IALG_MemRec
  • autoPosition : IAUDDEC_Status


Codec Engine Application Programming Interface (API): File Index

  • File List
  • Globals

File List

Here is a list of all files with brief descriptions:
auddec.h [code] | The AUDDEC audio decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDDEC audio decoder interface
auddec1.h [code] | The AUDDEC1 audio decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDDEC1 audio decoder interface
audenc.h [code] | The AUDENC audio encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDENC audio encoder interface
audenc1.h [code] | The AUDENC1 audio encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDENC1 audio encoder interface
CERuntime.h [code] | The Codec Engine Runtime init module. Provides system wide initialization of the Codec Engine Runtime
Engine.h [code] | The Codec Engine Runtime. Provides the user an inteface to open and manipulate an Engine which can instantiate and communicate with XDAIS algorithms that run either on the local CPU or on a "remote" Server
ialg.h [code] | This header defines all types, constants, and functions defined by XDAIS for algorithms
iauddec.h [code] | This header defines all types, constants, and functions shared by all implementations of the audio decoder algorithms
iauddec1.h [code] | This header defines all types, constants, and functions shared by all implementations of the audio decoder algorithms
iaudenc.h [code] | This header defines all types, constants, and functions shared by all implementations of the audio encoder algorithms
iaudenc1.h [code] | This header defines all types, constants, and functions shared by all implementations of the audio encoder algorithms
iaudio.h [code] | This header defines all types, constants, enums, and functions that are common across the various audio codecs
iimgdec.h [code] | This header defines all types, constants, and functions shared by all implementations of the image decoder algorithms
iimgdec1.h [code] | This header defines all types, constants, and functions shared by all implementations of the image decoder algorithms
iimgenc.h [code] | This header defines all types, constants, and functions shared by all implementations of the image encoder algorithms
iimgenc1.h [code] | This header defines all types, constants, and functions shared by all implementations of the image encoder algorithms
imgdec.h [code] | The IMGDEC image decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGDEC image decoder interface
imgdec1.h [code] | The IMGDEC1 image decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGDEC1 image decoder interface
imgenc.h [code] | The IMGENC image encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGENC image encoder interface
imgenc1.h [code] | The IMGENC1 image encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGENC1 image encoder interface
ispeech.h [code] | This header defines all types, constants, enums, and functions that are common across the various speech codecs
ispeech1.h [code] | This header defines all types, constants, enums, and functions that are common across the various speech codecs
ispeech1_amr.h [code] | This header defines all types, constants, enums, and functions that are needed for AMR
ispeech1_evrc.h [code] | This header defines all types, constants, enums, and functions that are needed for EVRC
ispeech1_g722.h [code] | This header defines all types, constants, enums, and functions that are needed for G.722
ispeech1_g7221.h [code] | This header defines all types, constants, enums, and functions that are needed for G.7221
ispeech1_g723.h [code] | This header defines all types, constants, enums, and functions that are needed for G.723
ispeech1_g726.h [code] | This header defines all types, constants, enums, and functions that are needed for G.726
ispeech1_ilbc.h [code] | This header defines all types, constants, enums, and functions that are needed for iLBC
ispeech1_pcm.h [code] | This header defines all types, constants, enums, and functions that are common across all G.711/PCM speech codecs
ispeech1_smv.h [code] | This header defines all types, constants, enums, and functions that are common across all SMV speech codecs
ispeech1_wbamr.h [code] | This header defines all types, constants, enums, and functions that are needed for WB-AMR
isphdec.h [code] | This header defines all types, constants, and functions shared by all implementations of the speech decoder algorithms
isphdec1.h [code] | This header defines all types, constants, and functions shared by all implementations of the speech decoder algorithms
isphenc.h [code] | This header defines all types, constants, and functions shared by all implementations of the speech encoder algorithms
isphenc1.h [code] | This header defines all types, constants, and functions shared by all implementations of the speech encoder algorithms
iuniversal.h [code] | This header defines all types, constants, and functions shared by all implementations of the "universal" XDM algorithm
ividanalytics.h [code] | This header defines all types, constants, and functions shared by all implementations of the video analytics algorithms
ividdec.h [code] | This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms
ividdec1.h [code] | This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms
ividdec2.h [code] | This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms
split/ividdec2.h [code] | This header defines all types, constants, enums, and functions that are common across all split IVIDDEC2-based codecs
ividdec3.h [code] | This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms
ividenc.h [code] | This header defines all types, constants, and functions shared by all implementations of the video encoder algorithms
ividenc1.h [code] | This header defines all types, constants, and functions shared by all implementations of the video encoder algorithms
ividenc2.h [code] | This header defines all types, constants, and functions shared by all implementations of the video encoder algorithms
ivideo.h [code] | This header defines all types, constants, enums, and functions that are common across the various video codecs
ividtranscode.h [code] | This header defines all types, constants, and functions shared by all implementations of the video transcoder algorithms
Memory.h [code] | The Codec Engine OSAL Memory interface. Provides the user an OS-independent Memory abstraction
Server.h [code] | The Codec Engine Server Interface. Provides the user an inteface to open and manipulate a Server which contains remote algorithms
sphdec.h [code] | The SPHDEC speech decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined ISPHDEC speech decoder interface
sphdec1.h [code] | The SPHDEC1 speech decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined ISPHDEC1 speech decoder interface
sphenc.h [code] | The SPHENC speech encoder codec interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM ISPHENC speech encoder interface
sphenc1.h [code] | The SPHENC1 speech encoder codec interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined ISPHENC1 speech encoder interface
universal.h [code] | The "universal" algorithm interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM IUNIVERSAL interface
vidanalytics.h [code] | The VIDANALYTICS video analytics interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDANALYTICS video analytics interface
viddec.h [code] | The VIDDEC video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC video decoder interface
viddec1.h [code] | The VIDDEC1 video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC1 video decoder interface
split/viddec2.h [code] | The VIDDEC2 split video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC2FRONT or IVIDDEC2BACK video decoder interface
viddec2.h [code] | The VIDDEC2 video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC2 video decoder interface
viddec3.h [code] | The VIDDEC3 video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC3 video decoder interface
videnc.h [code] | The VIDENC video encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDENC video encoder interface
videnc1.h [code] | The VIDENC1 video encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDENC1 video encoder interface
videnc2.h [code] | The VIDENC2 video encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDENC2 video encoder interface
vidtranscode.h [code] | The VIDTRANSCODE video transcoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDTRANSCODE video transcoder interface
visa.h [code] | The Codec Engine System Programming Interface. Provides system developers with services necessary to implement stubs and skeletons
xdas.h [code] | This header defines all types and constants used in the XDAS interfaces
xdm.h [code] | This header defines all types, constants, and functions shared across the various XDM classes of algorithms


Codec Engine Application Programming Interface (API): auddec.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • audio
Defines | Typedefs | Functions

auddec.h File Reference

Detailed Description

The AUDDEC audio decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDDEC audio decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/iauddec.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for auddec.h:

Go to the source code of this file.

Defines

#define | AUDDEC_EOK IAUDDEC_EOK
#define | AUDDEC_EFAIL IAUDDEC_EFAIL
#define | AUDDEC_ERUNTIME IAUDDEC_ERUNTIME
#define | AUDDEC_ETIMEOUT VISA_ETIMEOUT
#define | AUDDEC_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | AUDDEC_Handle
Opaque handle to a AUDDEC codec.
typedef IAUDDEC_Params | AUDDEC_Params
typedef IAUDDEC_InArgs | AUDDEC_InArgs
typedef IAUDDEC_OutArgs | AUDDEC_OutArgs
typedef IAUDDEC_Cmd | AUDDEC_Cmd
typedef IAUDDEC_Status | AUDDEC_Status
typedef IAUDDEC_DynamicParams | AUDDEC_DynamicParams

Functions

Int32 | AUDDEC_control (AUDDEC_Handle handle, AUDDEC_Cmd id, AUDDEC_DynamicParams *params, AUDDEC_Status *status)
Execute the control() method in this instance of an audio decoder algorithm.
AUDDEC_Handle | AUDDEC_create (Engine_Handle e, String name, AUDDEC_Params *params)
Create an instance of a audio decoder algorithm.
Void | AUDDEC_delete (AUDDEC_Handle handle)
Delete the instance of an audio decoder algorithm.
Int32 | AUDDEC_process (AUDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, AUDDEC_InArgs *inArgs, AUDDEC_OutArgs *outArgs)
Execute the process() method in this instance of an audio decoder algorithm.
Int32 | AUDDEC_processAsync (AUDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, AUDDEC_InArgs *inArgs, AUDDEC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a audio decoder algorithm.
Int32 | AUDDEC_processWait (AUDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, AUDDEC_InArgs *inArgs, AUDDEC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of AUDDEC_processAsync() in this instance of an audio decoder algorithm.


Codec Engine Application Programming Interface (API): auddec1.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • audio1
Defines | Typedefs | Functions

auddec1.h File Reference

Detailed Description

The AUDDEC1 audio decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDDEC1 audio decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/iauddec1.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for auddec1.h:

Go to the source code of this file.

Defines

#define | AUDDEC1_EOK IAUDDEC1_EOK
#define | AUDDEC1_EFAIL IAUDDEC1_EFAIL
#define | AUDDEC1_EUNSUPPORTED IAUDDEC1_EUNSUPPORTED
#define | AUDDEC1_ETIMEOUT VISA_ETIMEOUT
#define | AUDDEC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | AUDDEC1_Handle
Opaque handle to a AUDDEC1 codec.
typedef IAUDDEC1_Params | AUDDEC1_Params
typedef IAUDDEC1_InArgs | AUDDEC1_InArgs
typedef IAUDDEC1_OutArgs | AUDDEC1_OutArgs
typedef IAUDDEC1_Cmd | AUDDEC1_Cmd
typedef IAUDDEC1_DynamicParams | AUDDEC1_DynamicParams
typedef IAUDDEC1_Status | AUDDEC1_Status

Functions

Int32 | AUDDEC1_control (AUDDEC1_Handle handle, AUDDEC1_Cmd id, AUDDEC1_DynamicParams *params, AUDDEC1_Status *status)
Execute the control() method in this instance of an audio decoder algorithm.
AUDDEC1_Handle | AUDDEC1_create (Engine_Handle e, String name, AUDDEC1_Params *params)
Create an instance of an audio decoder algorithm.
Void | AUDDEC1_delete (AUDDEC1_Handle handle)
Delete the instance of an audio decoder algorithm.
Int32 | AUDDEC1_process (AUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDDEC1_InArgs *inArgs, AUDDEC1_OutArgs *outArgs)
Execute the process() method in this instance of an audio decoder algorithm.
Int32 | AUDDEC1_processAsync (AUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDDEC1_InArgs *inArgs, AUDDEC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a audio decoder algorithm.
Int32 | AUDDEC1_processWait (AUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDDEC1_InArgs *inArgs, AUDDEC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of AUDDEC1_processAsync() in this instance of an audio decoder algorithm.


Codec Engine Application Programming Interface (API): audenc.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • audio
Defines | Typedefs | Functions

audenc.h File Reference

Detailed Description

The AUDENC audio encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDENC audio encoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/iaudenc.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for audenc.h:

Go to the source code of this file.

Defines

#define | AUDENC_EOK IAUDENC_EOK
#define | AUDENC_EFAIL IAUDENC_EFAIL
#define | AUDENC_ERUNTIME IAUDENC_ERUNTIME
#define | AUDENC_ETIMEOUT VISA_ETIMEOUT
#define | AUDENC_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | AUDENC_Handle
Opaque handle to a AUDENC codec.
typedef IAUDENC_Params | AUDENC_Params
typedef IAUDENC_InArgs | AUDENC_InArgs
typedef IAUDENC_OutArgs | AUDENC_OutArgs
typedef IAUDENC_Cmd | AUDENC_Cmd
typedef IAUDENC_Status | AUDENC_Status
typedef IAUDENC_DynamicParams | AUDENC_DynamicParams

Functions

Int32 | AUDENC_control (AUDENC_Handle handle, AUDENC_Cmd id, AUDENC_DynamicParams *params, AUDENC_Status *status)
Execute the control() method in this instance of an audio encoder algorithm.
AUDENC_Handle | AUDENC_create (Engine_Handle e, String name, AUDENC_Params *params)
Create an instance of an audio encoder algorithm.
Void | AUDENC_delete (AUDENC_Handle handle)
Delete the instance of an audio encoder algorithm.
Int32 | AUDENC_process (AUDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, AUDENC_InArgs *inArgs, AUDENC_OutArgs *outArgs)
Execute the process() method in this instance of an audio encoder algorithm.
XDAS_Int32 | AUDENC_processAsync (AUDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IAUDENC_InArgs *inArgs, IAUDENC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a audio encoder algorithm.
XDAS_Int32 | AUDENC_processWait (AUDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IAUDENC_InArgs *inArgs, IAUDENC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of AUDENC_processAsync() in this instance of an audio encoder algorithm.


Codec Engine Application Programming Interface (API): audenc1.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • audio1
Defines | Typedefs | Functions

audenc1.h File Reference

Detailed Description

The AUDENC1 audio encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDENC1 audio encoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/iaudenc1.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for audenc1.h:

Go to the source code of this file.

Defines

#define | AUDENC1_EOK IAUDENC1_EOK
#define | AUDENC1_EFAIL IAUDENC1_EFAIL
#define | AUDENC1_EUNSUPPORTED IAUDENC1_EUNSUPPORTED
#define | AUDENC1_ETIMEOUT VISA_ETIMEOUT
#define | AUDENC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | AUDENC1_Handle
Opaque handle to a AUDENC1 codec.
typedef IAUDENC1_Params | AUDENC1_Params
typedef IAUDENC1_InArgs | AUDENC1_InArgs
typedef IAUDENC1_OutArgs | AUDENC1_OutArgs
typedef IAUDENC1_Cmd | AUDENC1_Cmd
typedef IAUDENC1_DynamicParams | AUDENC1_DynamicParams
typedef IAUDENC1_Status | AUDENC1_Status

Functions

Int32 | AUDENC1_control (AUDENC1_Handle handle, AUDENC1_Cmd id, AUDENC1_DynamicParams *params, AUDENC1_Status *status)
Execute the control() method in this instance of an audio encoder algorithm.
AUDENC1_Handle | AUDENC1_create (Engine_Handle e, String name, AUDENC1_Params *params)
Create an instance of an audio encoder algorithm.
Void | AUDENC1_delete (AUDENC1_Handle handle)
Delete the instance of an audio encoder algorithm.
Int32 | AUDENC1_process (AUDENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDENC1_InArgs *inArgs, AUDENC1_OutArgs *outArgs)
Execute the process() method in this instance of an audio encoder algorithm.
Int32 | AUDENC1_processAsync (AUDENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDENC1_InArgs *inArgs, AUDENC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of an audio encoder algorithm.
Int32 | AUDENC1_processWait (AUDENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, AUDENC1_InArgs *inArgs, AUDENC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of AUDENC1_processAsync() in this instance of an audio encoder algorithm.


Codec Engine Application Programming Interface (API): CERuntime.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
Functions

CERuntime.h File Reference

Detailed Description

The Codec Engine Runtime init module. Provides system wide initialization of the Codec Engine Runtime.

Go to the source code of this file.

Functions

Void | CERuntime_exit (Void)
Exit the Codec Engine Runtime.
Void | CERuntime_init (Void)
Initialize the Codec Engine Runtime.


Codec Engine Application Programming Interface (API): Engine.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
Data Structures | Defines | Typedefs | Functions | Variables

Engine.h File Reference

Detailed Description

The Codec Engine Runtime. Provides the user an inteface to open and manipulate an Engine which can instantiate and communicate with XDAIS algorithms that run either on the local CPU or on a "remote" Server.

#include <ti/sdo/ce/Server.h>
#include <ti/sdo/ce/ipc/Comm.h>
#include <ti/xdais/ialg.h>
#include <ti/sdo/ce/node/node.h>
#include <stddef.h>
#include <stdio.h>
Include dependency graph for Engine.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | Engine_Attrs
Attributes of an Engine. More...
struct | Engine_AlgInfo
Properties of an Engine algorithm. More...
struct | Engine_DllAlgDesc
Discriptor for a dynamically loaded codec. A dynamic library for a codec must export a function that fills in a structure of this type. More...
struct | Engine_DllAlgParams
This structure is passed to Engine_addAlg(), and contains parameters to create a dynamic codec with. More...

Defines

#define | Engine_MODNAME "ti.sdo.ce.Engine"
Name to pass to Diags_setMask() to enable logging for Engine functions. For example, Diags_setMask(Engine_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.
#define | Engine_EOK 0
#define | Engine_EEXIST 1
#define | Engine_ENOMEM 2
#define | Engine_EDSPLOAD 3
#define | Engine_ENOCOMM 4
#define | Engine_ENOSERVER 5
#define | Engine_ECOMALLOC 6
#define | Engine_ERUNTIME 7
#define | Engine_ECODECCREATE 8
#define | Engine_ECODECSTART 9
#define | Engine_EINVAL 10
#define | Engine_EBADSERVER 11
#define | Engine_ENOTAVAIL 12
#define | Engine_EWRONGSTATE 13
#define | Engine_EINUSE 14
#define | Engine_ENOTFOUND 15
#define | Engine_ETIMEOUT 16
#define | Engine_GETALGDESCFXN "GetEngineAlgDesc"
Name of function that a dynamically loaded codec must supply.

Typedefs

typedef struct Engine_Obj * | Engine_Handle
Opaque handle to an engine.
typedef Int | Engine_Error
Engine error code.
typedef struct Engine_Attrs | Engine_Attrs
Attributes of an Engine.
typedef struct Engine_AlgInfo | Engine_AlgInfo
Properties of an Engine algorithm.
typedef struct Engine_DllAlgDesc | Engine_DllAlgDesc
Discriptor for a dynamically loaded codec. A dynamic library for a codec must export a function that fills in a structure of this type.
typedef Int(* | Engine_GetAlgDescFxn )(Engine_DllAlgDesc *dllAlgDesc)
Prototype of function that must be supplied by a dynamic codec library to fill in a Engine_DllAlgDesc structure.
typedef struct Engine_DllAlgParams | Engine_DllAlgParams
This structure is passed to Engine_addAlg(), and contains parameters to create a dynamic codec with.

Functions

Engine_Error | Engine_add (String engineName, String remoteName)
Add an Engine to the database of engines that can be opened with Engine_open()
Engine_Error | Engine_addAlg (Engine_Handle engine, String location, Engine_DllAlgParams *pAlgParams)
Dynamically add an algorithm to an Engine instance.
Engine_Error | Engine_removeAlg (Engine_Handle engine, String name)
Dynamically remove an algorithm from an Engine instance.
Void | Engine_close (Engine_Handle engine)
Close an Engine.
Engine_Handle | Engine_open (String name, Engine_Attrs *attrs, Engine_Error *ec)
Open an Engine.
Int | Engine_fwriteTrace (Engine_Handle engine, String prefix, FILE *out)
Write Server's trace buffer to specifed file stream.
Engine_Error | Engine_getAlgInfo (String name, Engine_AlgInfo *algInfo, Int index)
Get details of an algorithm configured into an engine.
Int | Engine_getCpuLoad (Engine_Handle engine)
Get Server's cpu usage in percent.
Engine_Error | Engine_getLastError (Engine_Handle engine)
Get error code of the last failed operation.
String | Engine_getName (Engine_Handle engine)
Get the name of an opened engine.
Engine_Error | Engine_getNumAlgs (String name, Int *numAlgs)
Get the number of algorithms configured into an Engine.
Server_Handle | Engine_getServer (Engine_Handle engine)
Get handle to an Engine's Server.
UInt32 | Engine_getUsedMem (Engine_Handle engine)
Get Server's total memory usage.
Engine_Error | Engine_remove (String engineName)
Remove an engine from the list of engines that can be opened.
Int | Engine_setTrace (Engine_Handle engine, String mask)
Set Server's trace mask.

Variables

Engine_Attrs Engine_ATTRS
Default engine attributes.


Codec Engine Application Programming Interface (API): ialg.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
Data Structures | Defines | Typedefs | Enumerations

ialg.h File Reference

Detailed Description

This header defines all types, constants, and functions defined by XDAIS for algorithms.

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IALG_MemRec
Memory records. More...
struct | IALG_Obj
Algorithm instance object definition. More...
struct | IALG_Params
Algorithm instance creation parameters. More...
struct | IALG_Status
Pointer to algorithm specific status structure. More...
struct | IALG_Fxns
Defines the fields and methods that must be supplied by all XDAIS algorithms. More...

Defines

#define | IALG_DEFMEMRECS 4
#define | IALG_OBJMEMREC 0
#define | IALG_SYSCMD 256
#define | IALG_EOK 0
#define | IALG_EFAIL -1
#define | IALG_CUSTOMFAILBASE -2048
#define | IALG_CUSTOMFAILEND -256
#define | IALG_MPROG 0x0008
#define | IALG_MXTRN 0x0010
#define | IALG_isProg(s)
#define | IALG_isOffChip(s)

Typedefs

typedef enum IALG_MemAttrs | IALG_MemAttrs
Memory attributes.
typedef enum IALG_MemSpace | IALG_MemSpace
Defined memory spaces.
typedef struct IALG_MemRec | IALG_MemRec
Memory records.
typedef struct IALG_Obj | IALG_Obj
Algorithm instance object definition.
typedef struct IALG_Obj * | IALG_Handle
Handle to an algorithm instance object.
typedef struct IALG_Params | IALG_Params
Algorithm instance creation parameters.
typedef struct IALG_Status | IALG_Status
Pointer to algorithm specific status structure.
typedef unsigned int | IALG_Cmd
Algorithm specific command.
typedef struct IALG_Fxns | IALG_Fxns
Defines the fields and methods that must be supplied by all XDAIS algorithms.

Enumerations

enum IALG_MemAttrs {
IALG_SCRATCH,
IALG_PERSIST,
IALG_WRITEONCE
}

Memory attributes.

More...
enum IALG_MemSpace {
IALG_EPROG,
IALG_IPROG,
IALG_ESDATA,
IALG_EXTERNAL,
IALG_DARAM0 = 0,
IALG_DARAM1 = 1,
IALG_SARAM = 2,
IALG_SARAM0 = 2,
IALG_SARAM1 = 3,
IALG_DARAM2 = 4,
IALG_SARAM2 = 5
}

Defined memory spaces.

More...


Codec Engine Application Programming Interface (API): iauddec.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

iauddec.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the audio decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "iaudio.h"
Include dependency graph for iauddec.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IAUDDEC_Obj
This must be the first field of all IAUDDEC instance objects. More...
struct | IAUDDEC_Params
Defines the creation time parameters for all IAUDDEC instance objects. More...
struct | IAUDDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IAUDDEC_InArgs
Defines the input arguments for all IAUDDEC instance process function. More...
struct | IAUDDEC_Status
Defines instance status parameters (read-only). More...
struct | IAUDDEC_OutArgs
Defines the run time output arguments for all IAUDDEC instance objects. More...
struct | IAUDDEC_Fxns
Defines all of the operations on IAUDDEC objects. More...

Defines

#define | IAUDDEC_CID "ti.xdais.dm.IAUDDEC"
#define | IAUDDEC_ERUNTIME XDM_ERUNTIME
#define | IAUDDEC_EOK XDM_EOK
#define | IAUDDEC_EFAIL XDM_EFAIL

Typedefs

typedef struct IAUDDEC_Obj | IAUDDEC_Obj
This must be the first field of all IAUDDEC instance objects.
typedef struct IAUDDEC_Obj * | IAUDDEC_Handle
Opaque handle to an IAUDDEC objects.
typedef struct IAUDDEC_Params | IAUDDEC_Params
Defines the creation time parameters for all IAUDDEC instance objects.
typedef struct
IAUDDEC_DynamicParams 		IAUDDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IAUDDEC_InArgs | IAUDDEC_InArgs
Defines the input arguments for all IAUDDEC instance process function.
typedef struct IAUDDEC_Status | IAUDDEC_Status
Defines instance status parameters (read-only).
typedef struct IAUDDEC_OutArgs | IAUDDEC_OutArgs
Defines the run time output arguments for all IAUDDEC instance objects.
typedef IALG_Cmd | IAUDDEC_Cmd
Defines the control commands for the IAUDDEC module.
typedef struct IAUDDEC_Fxns | IAUDDEC_Fxns
Defines all of the operations on IAUDDEC objects.


Codec Engine Application Programming Interface (API): iauddec1.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

iauddec1.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the audio decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "iaudio.h"
Include dependency graph for iauddec1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IAUDDEC1_Obj
This must be the first field of all IAUDDEC1 instance objects. More...
struct | IAUDDEC1_Params
Defines the creation time parameters for all IAUDDEC1 instance objects. More...
struct | IAUDDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IAUDDEC1_InArgs
Defines the input arguments for all IAUDDEC1 instance process function. More...
struct | IAUDDEC1_Status
Defines instance status parameters (read-only). More...
struct | IAUDDEC1_OutArgs
Defines the run time output arguments for all IAUDDEC1 instance objects. More...
struct | IAUDDEC1_Fxns
Defines all of the operations on IAUDDEC1 objects. More...

Defines

#define | IAUDDEC1_EOK XDM_EOK
#define | IAUDDEC1_EFAIL XDM_EFAIL
#define | IAUDDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IAUDDEC1_Obj | IAUDDEC1_Obj
This must be the first field of all IAUDDEC1 instance objects.
typedef struct IAUDDEC1_Obj * | IAUDDEC1_Handle
Opaque handle to an IAUDDEC1 objects.
typedef struct IAUDDEC1_Params | IAUDDEC1_Params
Defines the creation time parameters for all IAUDDEC1 instance objects.
typedef struct
IAUDDEC1_DynamicParams 		IAUDDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IAUDDEC1_InArgs | IAUDDEC1_InArgs
Defines the input arguments for all IAUDDEC1 instance process function.
typedef struct IAUDDEC1_Status | IAUDDEC1_Status
Defines instance status parameters (read-only).
typedef struct IAUDDEC1_OutArgs | IAUDDEC1_OutArgs
Defines the run time output arguments for all IAUDDEC1 instance objects.
typedef IALG_Cmd | IAUDDEC1_Cmd
Defines the control commands for the IAUDDEC1 module.
typedef struct IAUDDEC1_Fxns | IAUDDEC1_Fxns
Defines all of the operations on IAUDDEC1 objects.


Codec Engine Application Programming Interface (API): iaudenc.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

iaudenc.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the audio encoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "iaudio.h"
Include dependency graph for iaudenc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IAUDENC_Obj
This must be the first field of all IAUDENC instance objects. More...
struct | IAUDENC_Params
Defines the creation time parameters for all IAUDENC instance objects. More...
struct | IAUDENC_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IAUDENC_InArgs
Defines the input arguments for all IAUDENC instance process function. More...
struct | IAUDENC_Status
Defines instance status parameters (read-only). More...
struct | IAUDENC_OutArgs
Defines the run time output arguments for all IAUDENC instance objects. More...
struct | IAUDENC_Fxns
Defines all of the operations on IAUDENC objects. More...

Defines

#define | IAUDENC_CID "ti.xdais.dm.IAUDENC"
#define | IAUDENC_ERUNTIME XDM_ERUNTIME
#define | IAUDENC_EOK XDM_EOK
#define | IAUDENC_EFAIL XDM_EFAIL

Typedefs

typedef struct IAUDENC_Obj | IAUDENC_Obj
This must be the first field of all IAUDENC instance objects.
typedef struct IAUDENC_Obj * | IAUDENC_Handle
Opaque handle to an IAUDENC objects.
typedef struct IAUDENC_Params | IAUDENC_Params
Defines the creation time parameters for all IAUDENC instance objects.
typedef struct
IAUDENC_DynamicParams 		IAUDENC_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IAUDENC_InArgs | IAUDENC_InArgs
Defines the input arguments for all IAUDENC instance process function.
typedef struct IAUDENC_Status | IAUDENC_Status
Defines instance status parameters (read-only).
typedef struct IAUDENC_OutArgs | IAUDENC_OutArgs
Defines the run time output arguments for all IAUDENC instance objects.
typedef IALG_Cmd | IAUDENC_Cmd
Defines the control commands for the IAUDENC module.
typedef struct IAUDENC_Fxns | IAUDENC_Fxns
Defines all of the operations on IAUDENC objects.


Codec Engine Application Programming Interface (API): iaudenc1.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

iaudenc1.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the audio encoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "iaudio.h"
Include dependency graph for iaudenc1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IAUDENC1_Obj
This must be the first field of all IAUDENC1 instance objects. More...
struct | IAUDENC1_Params
Defines the creation time parameters for all IAUDENC1 instance objects. More...
struct | IAUDENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IAUDENC1_InArgs
Defines the input arguments for all IAUDENC1 instance process function. More...
struct | IAUDENC1_Status
Defines instance status parameters (read-only). More...
struct | IAUDENC1_OutArgs
Defines the run time output arguments for all IAUDENC1 instance objects. More...
struct | IAUDENC1_Fxns
Defines all of the operations on IAUDENC1 objects. More...

Defines

#define | IAUDENC1_EOK XDM_EOK
#define | IAUDENC1_EFAIL XDM_EFAIL
#define | IAUDENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IAUDENC1_Obj | IAUDENC1_Obj
This must be the first field of all IAUDENC1 instance objects.
typedef struct IAUDENC1_Obj * | IAUDENC1_Handle
Opaque handle to an IAUDENC1 objects.
typedef struct IAUDENC1_Params | IAUDENC1_Params
Defines the creation time parameters for all IAUDENC1 instance objects.
typedef struct
IAUDENC1_DynamicParams 		IAUDENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IAUDENC1_InArgs | IAUDENC1_InArgs
Defines the input arguments for all IAUDENC1 instance process function.
typedef struct IAUDENC1_Status | IAUDENC1_Status
Defines instance status parameters (read-only).
typedef struct IAUDENC1_OutArgs | IAUDENC1_OutArgs
Defines the run time output arguments for all IAUDENC1 instance objects.
typedef IALG_Cmd | IAUDENC1_Cmd
Defines the control commands for the IAUDENC1 module.
typedef struct IAUDENC1_Fxns | IAUDENC1_Fxns
Defines all of the operations on IAUDENC1 objects.


Codec Engine Application Programming Interface (API): iaudio.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

iaudio.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are common across the various audio codecs.

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum IAUDIO_ChannelId {
IAUDIO_MONO = 0,
IAUDIO_STEREO = 1,
IAUDIO_THREE_ZERO = 2,
IAUDIO_FIVE_ZERO = 3,
IAUDIO_FIVE_ONE = 4,
IAUDIO_SEVEN_ONE = 5
}

XDM supported audio channel configurations.

More...
enum IAUDIO_ChannelMode {
IAUDIO_1_0 = 0,
IAUDIO_2_0 = 1,
IAUDIO_11_0 = 2,
IAUDIO_3_0 = 3,
IAUDIO_2_1 = 4,
IAUDIO_3_1 = 5,
IAUDIO_2_2 = 6,
IAUDIO_3_2 = 7,
IAUDIO_2_3 = 8,
IAUDIO_3_3 = 9,
IAUDIO_3_4 = 10
}

Channel modes for audio streams.

More...
enum IAUDIO_DualMonoMode {
IAUDIO_DUALMONO_LR = 0,
IAUDIO_DUALMONO_LEFT = 1,
IAUDIO_DUALMONO_RIGHT = 2,
IAUDIO_DUALMONO_LR_MIX = 3
}

Dual Mono Channel modes for audio streams.

More...
enum IAUDIO_PcmFormat {
IAUDIO_BLOCK = 0,
IAUDIO_INTERLEAVED = 1
}

XDM supported audio PCM formats.

More...
enum IAUDIO_EncMode {
IAUDIO_CBR = 0,
IAUDIO_VBR = 1
}

Audio encoding modes.

More...


Codec Engine Application Programming Interface (API): iimgdec.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

iimgdec.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the image decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
Include dependency graph for iimgdec.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IIMGDEC_Obj
This must be the first field of all IIMGDEC instance objects. More...
struct | IIMGDEC_Params
Defines the creation time parameters for all IIMGDEC instance objects. More...
struct | IIMGDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IIMGDEC_InArgs
Defines the input arguments for all IIMGDEC instance process() function. More...
struct | IIMGDEC_Status
Defines instance status parameters (read-only). More...
struct | IIMGDEC_OutArgs
Defines the run time output arguments for all IIMGDEC instance objects. More...
struct | IIMGDEC_Fxns
Defines all of the operations on IIMGDEC objects. More...

Defines

#define | IIMGDEC_CID "ti.xdais.dm.IIMGDEC"
#define | IIMGDEC_ERUNTIME XDM_ERUNTIME
#define | IIMGDEC_EOK XDM_EOK
#define | IIMGDEC_EFAIL XDM_EFAIL

Typedefs

typedef struct IIMGDEC_Obj | IIMGDEC_Obj
This must be the first field of all IIMGDEC instance objects.
typedef struct IIMGDEC_Obj * | IIMGDEC_Handle
Opaque handle to an IIMGDEC objects.
typedef struct IIMGDEC_Params | IIMGDEC_Params
Defines the creation time parameters for all IIMGDEC instance objects.
typedef struct
IIMGDEC_DynamicParams 		IIMGDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IIMGDEC_InArgs | IIMGDEC_InArgs
Defines the input arguments for all IIMGDEC instance process() function.
typedef struct IIMGDEC_Status | IIMGDEC_Status
Defines instance status parameters (read-only).
typedef struct IIMGDEC_OutArgs | IIMGDEC_OutArgs
Defines the run time output arguments for all IIMGDEC instance objects.
typedef IALG_Cmd | IIMGDEC_Cmd
Defines the control commands for the IIMGDEC module.
typedef struct IIMGDEC_Fxns | IIMGDEC_Fxns
Defines all of the operations on IIMGDEC objects.


Codec Engine Application Programming Interface (API): iimgdec1.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

iimgdec1.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the image decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
Include dependency graph for iimgdec1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IIMGDEC1_Obj
This must be the first field of all IIMGDEC1 instance objects. More...
struct | IIMGDEC1_Params
Defines the creation time parameters for all IIMGDEC1 instance objects. More...
struct | IIMGDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IIMGDEC1_InArgs
Defines the input arguments for all IIMGDEC1 instance process() function. More...
struct | IIMGDEC1_Status
Defines instance status parameters. More...
struct | IIMGDEC1_OutArgs
Defines the run time output arguments for all IIMGDEC1 instance objects. More...
struct | IIMGDEC1_Fxns
Defines all of the operations on IIMGDEC1 objects. More...

Defines

#define | IIMGDEC1_EOK XDM_EOK
#define | IIMGDEC1_EFAIL XDM_EFAIL
#define | IIMGDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IIMGDEC1_Obj | IIMGDEC1_Obj
This must be the first field of all IIMGDEC1 instance objects.
typedef struct IIMGDEC1_Obj * | IIMGDEC1_Handle
Opaque handle to an IIMGDEC1 objects.
typedef struct IIMGDEC1_Params | IIMGDEC1_Params
Defines the creation time parameters for all IIMGDEC1 instance objects.
typedef struct
IIMGDEC1_DynamicParams 		IIMGDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IIMGDEC1_InArgs | IIMGDEC1_InArgs
Defines the input arguments for all IIMGDEC1 instance process() function.
typedef struct IIMGDEC1_Status | IIMGDEC1_Status
Defines instance status parameters.
typedef struct IIMGDEC1_OutArgs | IIMGDEC1_OutArgs
Defines the run time output arguments for all IIMGDEC1 instance objects.
typedef IALG_Cmd | IIMGDEC1_Cmd
Defines the control commands for the IIMGDEC1 module.
typedef struct IIMGDEC1_Fxns | IIMGDEC1_Fxns
Defines all of the operations on IIMGDEC1 objects.


Codec Engine Application Programming Interface (API): iimgenc.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

iimgenc.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the image encoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
Include dependency graph for iimgenc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IIMGENC_Obj
This must be the first field of all IIMGENC instance objects. More...
struct | IIMGENC_Params
Defines the creation time parameters for all IIMGENC instance objects. More...
struct | IIMGENC_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IIMGENC_InArgs
Defines the input arguments for all IIMGENC instance process() function. More...
struct | IIMGENC_Status
Defines instance status parameters (read-only). More...
struct | IIMGENC_OutArgs
Defines the run time output arguments for all IIMGENC instance objects. More...
struct | IIMGENC_Fxns
Defines all of the operations on IIMGENC objects. More...

Defines

#define | IIMGENC_CID "ti.xdais.dm.IIMGENC"
#define | IIMGENC_ERUNTIME XDM_ERUNTIME
#define | IIMGENC_EOK XDM_EOK
#define | IIMGENC_EFAIL XDM_EFAIL

Typedefs

typedef struct IIMGENC_Obj | IIMGENC_Obj
This must be the first field of all IIMGENC instance objects.
typedef struct IIMGENC_Obj * | IIMGENC_Handle
Opaque handle to an IIMGENC objects.
typedef struct IIMGENC_Params | IIMGENC_Params
Defines the creation time parameters for all IIMGENC instance objects.
typedef struct
IIMGENC_DynamicParams 		IIMGENC_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IIMGENC_InArgs | IIMGENC_InArgs
Defines the input arguments for all IIMGENC instance process() function.
typedef struct IIMGENC_Status | IIMGENC_Status
Defines instance status parameters (read-only).
typedef struct IIMGENC_OutArgs | IIMGENC_OutArgs
Defines the run time output arguments for all IIMGENC instance objects.
typedef IALG_Cmd | IIMGENC_Cmd
Defines the control commands for the IIMGENC module.
typedef struct IIMGENC_Fxns | IIMGENC_Fxns
Defines all of the operations on IIMGENC objects.


Codec Engine Application Programming Interface (API): iimgenc1.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

iimgenc1.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the image encoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
Include dependency graph for iimgenc1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IIMGENC1_Obj
This must be the first field of all IIMGENC1 instance objects. More...
struct | IIMGENC1_Params
Defines the creation time parameters for all IIMGENC1 instance objects. More...
struct | IIMGENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IIMGENC1_InArgs
Defines the input arguments for all IIMGENC1 instance process() function. More...
struct | IIMGENC1_Status
Defines instance status parameters. More...
struct | IIMGENC1_OutArgs
Defines the run time output arguments for all IIMGENC1 instance objects. More...
struct | IIMGENC1_Fxns
Defines all of the operations on IIMGENC1 objects. More...

Defines

#define | IIMGENC1_EOK XDM_EOK
#define | IIMGENC1_EFAIL XDM_EFAIL
#define | IIMGENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IIMGENC1_Obj | IIMGENC1_Obj
This must be the first field of all IIMGENC1 instance objects.
typedef struct IIMGENC1_Obj * | IIMGENC1_Handle
Opaque handle to an IIMGENC1 objects.
typedef struct IIMGENC1_Params | IIMGENC1_Params
Defines the creation time parameters for all IIMGENC1 instance objects.
typedef struct
IIMGENC1_DynamicParams 		IIMGENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IIMGENC1_InArgs | IIMGENC1_InArgs
Defines the input arguments for all IIMGENC1 instance process() function.
typedef struct IIMGENC1_Status | IIMGENC1_Status
Defines instance status parameters.
typedef struct IIMGENC1_OutArgs | IIMGENC1_OutArgs
Defines the run time output arguments for all IIMGENC1 instance objects.
typedef IALG_Cmd | IIMGENC1_Cmd
Defines the control commands for the IIMGENC1 module.
typedef struct IIMGENC1_Fxns | IIMGENC1_Fxns
Defines all of the operations on IIMGENC1 objects.


Codec Engine Application Programming Interface (API): imgdec.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • image
Data Structures | Defines | Typedefs | Functions

imgdec.h File Reference

Detailed Description

The IMGDEC image decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGDEC image decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/iimgdec.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for imgdec.h:

Go to the source code of this file.

Data Structures

struct | IIMGDEC_CodecClassConfig
Definition of IIMGDEC codec class configurable parameters. More...

Defines

#define | IMGDEC_EOK IIMGDEC_EOK
#define | IMGDEC_EFAIL IIMGDEC_EFAIL
#define | IMGDEC_ERUNTIME IIMGDEC_ERUNTIME
#define | IMGDEC_ETIMEOUT VISA_ETIMEOUT
#define | IMGDEC_FOREVER VISA_FOREVER

Typedefs

typedef IIMGDEC_Status | IMGDEC_Status
typedef VISA_Handle | IMGDEC_Handle
Opaque handle to a IMGDEC codec.
typedef struct IIMGDEC_Params | IMGDEC_Params
This structure defines the parameters necessary to create an instance of a image decoder object.
typedef IIMGDEC_InArgs | IMGDEC_InArgs
typedef IIMGDEC_OutArgs | IMGDEC_OutArgs
typedef IIMGDEC_Cmd | IMGDEC_Cmd
typedef IIMGDEC_DynamicParams | IMGDEC_DynamicParams
typedef struct
IIMGDEC_CodecClassConfig 		IIMGDEC_CodecClassConfig
Definition of IIMGDEC codec class configurable parameters.

Functions

IMGDEC_Handle | IMGDEC_create (Engine_Handle e, String name, IMGDEC_Params *params)
Create an instance of an image decoder algorithm.
Int32 | IMGDEC_process (IMGDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IMGDEC_InArgs *inArgs, IMGDEC_OutArgs *outArgs)
Execute the process() method in this instance of a image decoder algorithm.
Int32 | IMGDEC_control (IMGDEC_Handle handle, IMGDEC_Cmd id, IMGDEC_DynamicParams *params, IMGDEC_Status *status)
Execute the control() method in this instance of an image decoder algorithm.
Void | IMGDEC_delete (IMGDEC_Handle handle)
Delete the instance of a image decoder algorithm.
XDAS_Int32 | IMGDEC_processAsync (IMGDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IMGDEC_InArgs *inArgs, IMGDEC_OutArgs *outArgs)
Perform asynchronous submission to this instance of an image decoder algorithm.
XDAS_Int32 | IMGDEC_processWait (IMGDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IMGDEC_InArgs *inArgs, IMGDEC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of IMGDEC_processAsync() in this instance of an image decoder algorithm.


Codec Engine Application Programming Interface (API): imgdec1.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • image1
Data Structures | Defines | Typedefs | Functions

imgdec1.h File Reference

Detailed Description

The IMGDEC1 image decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGDEC1 image decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/iimgdec1.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for imgdec1.h:

Go to the source code of this file.

Data Structures

struct | IIMGDEC1_CodecClassConfig
Definition of IIMGDEC1 codec class configurable parameters. More...

Defines

#define | IMGDEC1_EOK IIMGDEC1_EOK
#define | IMGDEC1_EFAIL IIMGDEC1_EFAIL
#define | IMGDEC1_EUNSUPPORTED IIMGDEC1_EUNSUPPORTED
#define | IMGDEC1_ETIMEOUT VISA_ETIMEOUT
#define | IMGDEC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | IMGDEC1_Handle
Opaque handle to a IMGDEC1 codec.
typedef struct IIMGDEC1_Params | IMGDEC1_Params
typedef IIMGDEC1_InArgs | IMGDEC1_InArgs
typedef IIMGDEC1_OutArgs | IMGDEC1_OutArgs
typedef IIMGDEC1_Cmd | IMGDEC1_Cmd
typedef IIMGDEC1_DynamicParams | IMGDEC1_DynamicParams
typedef IIMGDEC1_Status | IMGDEC1_Status
typedef struct
IIMGDEC1_CodecClassConfig 		IIMGDEC1_CodecClassConfig
Definition of IIMGDEC1 codec class configurable parameters.

Functions

Int32 | IMGDEC1_control (IMGDEC1_Handle handle, IMGDEC1_Cmd id, IMGDEC1_DynamicParams *params, IMGDEC1_Status *status)
Execute the control() method in this instance of an image decoder algorithm.
IMGDEC1_Handle | IMGDEC1_create (Engine_Handle e, String name, IMGDEC1_Params *params)
Create an instance of an image decoder algorithm.
Void | IMGDEC1_delete (IMGDEC1_Handle handle)
Delete the instance of an image decoder algorithm.
Int32 | IMGDEC1_process (IMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IMGDEC1_InArgs *inArgs, IMGDEC1_OutArgs *outArgs)
Execute the process() method in this instance of an image decoder algorithm.
XDAS_Int32 | IMGDEC1_processAsync (IMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IMGDEC1_InArgs *inArgs, IMGDEC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of an image decoder algorithm.
XDAS_Int32 | IMGDEC1_processWait (IMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IMGDEC1_InArgs *inArgs, IMGDEC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of IMGDEC1_processAsync() in this instance of an image decoder algorithm.


Codec Engine Application Programming Interface (API): imgenc.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • image
Data Structures | Defines | Typedefs | Functions

imgenc.h File Reference

Detailed Description

The IMGENC image encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGENC image encoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/iimgenc.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for imgenc.h:

Go to the source code of this file.

Data Structures

struct | IIMGENC_CodecClassConfig
Definition of IIMGENC codec class configurable parameters. More...

Defines

#define | IMGENC_EOK IIMGENC_EOK
#define | IMGENC_EFAIL IIMGENC_EFAIL
#define | IMGENC_ERUNTIME IIMGENC_ERUNTIME
#define | IMGENC_ETIMEOUT VISA_ETIMEOUT
#define | IMGENC_FOREVER VISA_FOREVER

Typedefs

typedef IIMGENC_Status | IMGENC_Status
typedef VISA_Handle | IMGENC_Handle
Opaque handle to a IMGENC codec.
typedef struct IIMGENC_Params | IMGENC_Params
This structure defines the parameters necessary to create an instance of a image encoder object.
typedef IIMGENC_InArgs | IMGENC_InArgs
typedef IIMGENC_OutArgs | IMGENC_OutArgs
typedef IIMGENC_Cmd | IMGENC_Cmd
typedef IIMGENC_DynamicParams | IMGENC_DynamicParams
typedef struct
IIMGENC_CodecClassConfig 		IIMGENC_CodecClassConfig
Definition of IIMGENC codec class configurable parameters.

Functions

IMGENC_Handle | IMGENC_create (Engine_Handle e, String name, IMGENC_Params *params)
Create an instance of an image encoder algorithm.
Int32 | IMGENC_process (IMGENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IMGENC_InArgs *inArgs, IMGENC_OutArgs *outArgs)
Execute the process() method in this instance of an image encoder algorithm.
Int32 | IMGENC_control (IMGENC_Handle handle, IMGENC_Cmd id, IMGENC_DynamicParams *params, IMGENC_Status *status)
Execute the control() method in this instance of an image encoder algorithm.
Void | IMGENC_delete (IMGENC_Handle handle)
Delete the instance of an image encoder algorithm.
XDAS_Int32 | IMGENC_processAsync (IMGENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IIMGENC_InArgs *inArgs, IIMGENC_OutArgs *outArgs)
Perform asynchronous submission to this instance of an image encoder algorithm.
XDAS_Int32 | IMGENC_processWait (IMGENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IIMGENC_InArgs *inArgs, IIMGENC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of IMGENC_processAsync() in this instance of an image encoder algorithm.


Codec Engine Application Programming Interface (API): imgenc1.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • image1
Data Structures | Defines | Typedefs | Functions

imgenc1.h File Reference

Detailed Description

The IMGENC1 image encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGENC1 image encoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/iimgenc1.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for imgenc1.h:

Go to the source code of this file.

Data Structures

struct | IIMGENC1_CodecClassConfig
Definition of IIMGENC1 codec class configurable parameters. More...

Defines

#define | IMGENC1_EOK IIMGENC1_EOK
#define | IMGENC1_EFAIL IIMGENC1_EFAIL
#define | IMGENC1_EUNSUPPORTED IIMGENC1_EUNSUPPORTED
#define | IMGENC1_ETIMEOUT VISA_ETIMEOUT
#define | IMGENC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | IMGENC1_Handle
Opaque handle to a IMGENC1 codec.
typedef struct IIMGENC1_Params | IMGENC1_Params
typedef IIMGENC1_InArgs | IMGENC1_InArgs
typedef IIMGENC1_OutArgs | IMGENC1_OutArgs
typedef IIMGENC1_Cmd | IMGENC1_Cmd
typedef IIMGENC1_DynamicParams | IMGENC1_DynamicParams
typedef IIMGENC1_Status | IMGENC1_Status
typedef struct
IIMGENC1_CodecClassConfig 		IIMGENC1_CodecClassConfig
Definition of IIMGENC1 codec class configurable parameters.

Functions

Int32 | IMGENC1_control (IMGENC1_Handle handle, IMGENC1_Cmd id, IMGENC1_DynamicParams *params, IMGENC1_Status *status)
Execute the control() method in this instance of an image encoder algorithm.
IMGENC1_Handle | IMGENC1_create (Engine_Handle e, String name, IMGENC1_Params *params)
Create an instance of an image encoder algorithm.
Void | IMGENC1_delete (IMGENC1_Handle handle)
Delete the instance of an image encoder algorithm.
Int32 | IMGENC1_process (IMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IMGENC1_InArgs *inArgs, IMGENC1_OutArgs *outArgs)
Execute the process() method in this instance of an image encoder algorithm.
XDAS_Int32 | IMGENC1_processAsync (IMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of an image encoder algorithm.
XDAS_Int32 | IMGENC1_processWait (IMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of IMGENC1_processAsync() in this instance of an image encoder algorithm.


Codec Engine Application Programming Interface (API): ispeech.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are common across the various speech codecs.

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum ISPEECH_VoiceMode {
ISPEECH_VOICED = 0,
ISPEECH_UNVOICED
}

XDM supported voice modes for speech.

More...
enum ISPEECH_CompoundLaw {
ISPEECH_LINEAR = 0,
ISPEECH_ALAW,
ISPEECH_ULAW
}


Codec Engine Application Programming Interface (API): ispeech1.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are common across the various speech codecs.

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum ISPEECH1_NullTrafficMode {
ISPEECH1_NULLTRAFFICMODE_OFF = 0,
ISPEECH1_NULLTRAFFICMODE_ON = 1,
ISPEECH1_NULLTRAFFICMODE_DEFAULT = ISPEECH1_NULLTRAFFICMODE_OFF
}

Null traffic channel setting.

More...
enum ISPEECH1_PostFilter {
ISPEECH1_POSTFILTER_OFF = 0,
ISPEECH1_POSTFILTER_ON = 1,
ISPEECH1_POSTFILTER_DEFAULT = ISPEECH1_POSTFILTER_ON
}

Post filter setting.

More...
enum ISPEECH1_VADFlag {
ISPEECH1_VADFLAG_OFF = 0,
ISPEECH1_VADFLAG_ON = 1,
ISPEECH1_VADFLAG_DEFAULT = ISPEECH1_VADFLAG_ON
}

Voice Activity Detection (VAD) setting.

More...


Codec Engine Application Programming Interface (API): ispeech1_amr.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_amr.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are needed for AMR.

#include "ispeech1.h"
Include dependency graph for ispeech1_amr.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_AMR_BitRate {
ISPEECH1_AMR_BITRATE_4P75 = 0,
ISPEECH1_AMR_BITRATE_5P15 = 1,
ISPEECH1_AMR_BITRATE_5P9 = 2,
ISPEECH1_AMR_BITRATE_6P7 = 3,
ISPEECH1_AMR_BITRATE_7P4 = 4,
ISPEECH1_AMR_BITRATE_7P95 = 5,
ISPEECH1_AMR_BITRATE_10P2 = 6,
ISPEECH1_AMR_BITRATE_12P2 = 7,
ISPEECH1_AMR_BITRATE_DEFAULT = ISPEECH1_AMR_BITRATE_12P2
}

Bitrate selection for AMR.

More...
enum ISPEECH1_AMR_CodecSelect {
ISPEECH1_AMR_CODECSELECT_PRIMARY = 0,
ISPEECH1_AMR_CODECSELECT_SECONDARY = 1,
ISPEECH1_AMR_CODECSELECT_DEFAULT = ISPEECH1_AMR_CODECSELECT_PRIMARY
}

Codec selection.

More...
enum ISPEECH1_AMR_PackingType {
ISPEECH1_AMR_PACKTYPE_IF1_NOCRC = 0,
ISPEECH1_AMR_PACKTYPE_IF1_WITHCRC = 1,
ISPEECH1_AMR_PACKTYPE_IF2 = 2,
ISPEECH1_AMR_PACKTYPE_MIME = 3,
ISPEECH1_AMR_PACKTYPEFORMAT_DEFAULT = ISPEECH1_AMR_PACKTYPE_IF1_NOCRC
}

Packing type options for AMR.

More...
enum ISPEECH1_AMR_VADSelect {
ISPEECH1_AMR_VADSELECT_VAD1 = 1,
ISPEECH1_AMR_VADSELECT_VAD2 = 2,
ISPEECH1_AMR_VADSELECT_DEFAULT = ISPEECH1_AMR_VADSELECT_VAD1
}

Voice activity detector (VAD) selection.

More...


Codec Engine Application Programming Interface (API): ispeech1_evrc.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_evrc.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are needed for EVRC.

#include "ispeech1.h"
Include dependency graph for ispeech1_evrc.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_EVRC_NoisePreProc {
ISPEECH1_EVRC_NOISEPREPROC_OFF = 0,
ISPEECH1_EVRC_NOISEPREPROC_ON = 1,
ISPEECH1_EVRC_NOISEPREPROC_DEFAULT = ISPEECH1_EVRC_NOISEPREPROC_ON
}

Enable/disable noise suppression.

More...
enum ISPEECH1_EVRC_TTYMode {
ISPEECH1_EVRC_TTYMODE_OFF = 0,
ISPEECH1_EVRC_TTYMODE_45P45BPS = 1,
ISPEECH1_EVRC_TTYMODE_50BPS = 2,
ISPEECH1_EVRC_TTYMODE_DEFAULT = ISPEECH1_EVRC_TTYMODE_OFF
}

TTY/TDD mode selection.

More...
enum ISPEECH1_EVRC_Mode {
ISPEECH1_EVRC_MODE_PREMIUM = 0,
ISPEECH1_EVRC_MODE_STANDARD = 1,
ISPEECH1_EVRC_MODE_ECONOMY = 2,
ISPEECH1_EVRC_MODE_CAPACITYSAVE = 3,
ISPEECH1_EVRC_MODE_HALFRATE_MAX = 4,
ISPEECH1_EVRC_MODE_DEFAULT = ISPEECH1_EVRC_MODE_PREMIUM
}

Mode selection.

More...
enum ISPEECH1_EVRC_NullTrafficMode {
ISPEECH1_EVRC_NULLTRAFFICMODE_OFF = 0,
ISPEECH1_EVRC_NULLTRAFFICMODE_ON = 1,
ISPEECH1_EVRC_NULLTRAFFICMODE_DEFAULT = ISPEECH1_EVRC_NULLTRAFFICMODE_OFF
}

Null traffic channel setting.

More...


Codec Engine Application Programming Interface (API): ispeech1_g722.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_g722.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are needed for G.722.

#include "ispeech1.h"
Include dependency graph for ispeech1_g722.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_G722_BitRate {
ISPEECH1_G722_BITRATE_RATE0 = 0,
ISPEECH1_G722_BITRATE_RATE1 = 1,
ISPEECH1_G722_BITRATE_RATE2 = 2,
ISPEECH1_G722_BITRATE_RATE3 = 3,
ISPEECH1_G722_BITRATE_DEFAULT = ISPEECH1_G722_BITRATE_RATE0
}

Bit rate selection for G722.

More...
enum ISPEECH1_G722_CodecSelect {
ISPEECH1_G722_CODECSELECT_NONITUMODE = 0,
ISPEECH1_G722_CODECSELECT_ITUMODE = 1,
ISPEECH1_G722_CODECSELECT_DEFAULT = ISPEECH2_G722_CODECSELECT_NONITUMODE
}


Codec Engine Application Programming Interface (API): ispeech1_g7221.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_g7221.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are needed for G.7221.

#include "ispeech1.h"
Include dependency graph for ispeech1_g7221.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_G7221_BitRate {
ISPEECH1_G7221_BITRATE_24 = 24,
ISPEECH1_G7221_BITRATE_32 = 32,
ISPEECH1_G7221_BITRATE_48 = 48,
ISPEECH1_G7221_BITRATE_DEFAULT = ISPEECH1_G7221_BITRATE_24
}

Bit rate selection for G7221.

More...
enum ISPEECH2_G7221_SamplingRate {
ISPEECH2_G7221_SAMPLINGRATE_WIDEBAND = 0,
ISPEECH2_G7221_SAMPLINGRATE_SUPEWIDEBAND = 1,
ISPEECH2_G7221_SAMPLINGRATE_DEFAULT = ISPEECH2_G7221_SAMPLINGRATE_WIDEBAND
}

Sampling Rate selection.

More...


Codec Engine Application Programming Interface (API): ispeech1_g723.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_g723.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are needed for G.723.

#include "ispeech1.h"
Include dependency graph for ispeech1_g723.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_G723_BitRate {
ISPEECH1_G723_BITRATE_5P3 = 0,
ISPEECH1_G723_BITRATE_6P3 = 1,
ISPEECH1_G723_BITRATE_DEFAULT = ISPEECH1_G723_BITRATE_6P3
}

Bit rate selection for G723.

More...
enum ISPEECH1_G723_NoisePreProc {
ISPEECH1_G723_NOISEPREPROC_OFF = 0,
ISPEECH1_G723_NOISEPREPROC_ON = 1,
ISPEECH1_G723_NOISEPREPROC_DEFAULT = ISPEECH1_G723_NOISEPREPROC_ON
}

Enable/disable high pass filter for G723.

More...


Codec Engine Application Programming Interface (API): ispeech1_g726.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_g726.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are needed for G.726.

#include "ispeech1.h"
Include dependency graph for ispeech1_g726.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_G726_BitRate {
ISPEECH1_G726_BITRATE_16 = 0,
ISPEECH1_G726_BITRATE_24 = 1,
ISPEECH1_G726_BITRATE_32 = 2,
ISPEECH1_G726_BITRATE_40 = 3,
ISPEECH1_G726_BITRATE_DEFAULT = ISPEECH1_G726_BITRATE_40
}

Bit rate selection for G726.

More...
enum ISPEECH1_G726_CompandingLaw {
ISPEECH1_G726_COMPAND_LINEAR = 0,
ISPEECH1_G726_COMPAND_ALAW = 1,
ISPEECH1_G726_COMPAND_ULAW = 2,
ISPEECH1_G726_COMPAND_DEFAULT = ISPEECH1_G726_COMPAND_LINEAR
}

Companding law of encoder input and decoder output samples.

More...
enum ISPEECH1_G726_PackingType {
ISPEECH1_G726_PACKTYPE_LINEAR = 0,
ISPEECH1_G726_PACKTYPE_RTPSPECIAL = 1,
ISPEECH1_G726_PACKTYPEFORMAT_DEFAULT = ISPEECH1_G726_PACKTYPE_LINEAR
}

Packing Type defintions for G.726.

More...


Codec Engine Application Programming Interface (API): ispeech1_ilbc.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_ilbc.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are needed for iLBC.

#include "ispeech1.h"
Include dependency graph for ispeech1_ilbc.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_ILBC_CodecSelect {
ISPEECH1_ILBC_CODECSELECT_20MS = 0,
ISPEECH1_ILBC_CODECSELECT_30MS = 1,
ISPEECH1_ILBC_CODECSELECT_DEFAULT = ISPEECH1_ILBC_CODECSELECT_20MS
}

Codec selection.

More...


Codec Engine Application Programming Interface (API): ispeech1_pcm.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_pcm.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are common across all G.711/PCM speech codecs.

#include "ispeech1.h"
Include dependency graph for ispeech1_pcm.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_PCM_CompandingLaw {
ISPEECH1_PCM_COMPAND_LINEAR = 0,
ISPEECH1_PCM_COMPAND_ALAW = 1,
ISPEECH1_PCM_COMPAND_ULAW = 2,
ISPEECH1_PCM_COMPAND_DEFAULT = ISPEECH1_PCM_COMPAND_LINEAR
}

Companding law of encoder input and decoder output samples.

More...


Codec Engine Application Programming Interface (API): ispeech1_smv.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_smv.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are common across all SMV speech codecs.

#include "ispeech1.h"
Include dependency graph for ispeech1_smv.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_SMV_NoisePreProc {
ISPEECH1_SMV_NOISEPREPROC_OFF = 0,
ISPEECH1_SMV_NOISEPREPROC_NSA = 1,
ISPEECH1_SMV_NOISEPREPROC_NSB = 2,
ISPEECH1_SMV_NOISEPREPROC_DEFAULT = ISPEECH1_SMV_NOISEPREPROC_NSA
}

Enabling/disabling noise suppression, and selection of noise suppression if the codec supports multiple noise supression modules.

More...
enum ISPEECH1_SMV_VADSelect {
ISPEECH1_SMV_VADSELECT_VADA = 1,
ISPEECH1_SMV_VADSELECT_VADB = 2,
ISPEECH1_SMV_VADSELECT_DEFAULT = ISPEECH1_SMV_VADSELECT_VADA
}

Voice activity detection (VAD) selection.

More...
enum ISPEECH1_SMV_TTYMode {
ISPEECH1_SMV_TTYMODE_OFF = 0,
ISPEECH1_SMV_TTYMODE_45P45BPS = 1,
ISPEECH1_SMV_TTYMODE_50BPS = 2,
ISPEECH1_SMV_TTYMODE_DEFAULT = ISPEECH1_SMV_TTYMODE_OFF
}

TTY/TDD mode selection.

More...
enum ISPEECH1_SMV_DTMFMode {
ISPEECH1_SMV_DTMFMODE_OFF = 0,
ISPEECH1_SMV_DTMFMODE_ON = 1,
ISPEECH1_SMV_DTMFMODE_DEFAULT = ISPEECH1_SMV_DTMFMODE_OFF
}

DTMF mode selection.

More...
enum ISPEECH1_SMV_DataMode {
ISPEECH1_SMV_DATAMODE_OFF = 0,
ISPEECH1_SMV_DATAMODE_HALFRATE = 1,
ISPEECH1_SMV_DATAMODE_FULLRATE = 1,
ISPEECH1_SMV_DATAMODE_DEFAULT = ISPEECH1_SMV_DATAMODE_OFF
}

Enable/disable in band data transmission and data rate selection.

More...
enum ISPEECH1_SMV_Mode {
ISPEECH1_SMV_MODE_PREMIUM = 0,
ISPEECH1_SMV_MODE_STANDARD = 1,
ISPEECH1_SMV_MODE_ECONOMY = 2,
ISPEECH1_SMV_MODE_CAPACITYSAVE = 3,
ISPEECH1_SMV_MODE_PREMIUM_HALFRATE_MAX = 4,
ISPEECH1_SMV_MODE_STANDARD_HALFRATE_MAX = 5,
ISPEECH1_SMV_MODE_DEFAULT = ISPEECH1_SMV_MODE_PREMIUM
}

Rate reduction mode selection.

More...


Codec Engine Application Programming Interface (API): ispeech1_wbamr.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Enumerations

ispeech1_wbamr.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are needed for WB-AMR.

#include "ispeech1.h"
Include dependency graph for ispeech1_wbamr.h:

Go to the source code of this file.

Enumerations

enum ISPEECH1_WBAMR_PackingType {
ISPEECH1_WBAMR_PACKTYPE_IF1_NOCRC = 0,
ISPEECH1_WBAMR_PACKTYPE_IF1_WITHCRC = 1,
ISPEECH1_WBAMR_PACKTYPE_IF2 = 2,
ISPEECH1_WBAMR_PACKTYPE_MIME = 3,
ISPEECH1_WBAMR_PACKTYPEFORMAT_DEFAULT = ISPEECH1_WBAMR_PACKTYPE_IF1_NOCRC
}

Packing Type defintions for AMR.

More...
enum ISPEECH1_WBAMR_BitRate {
ISPEECH1_WBAMR_BITRATE_6P60 = 0,
ISPEECH1_WBAMR_BITRATE_8P85 = 1,
ISPEECH1_WBAMR_BITRATE_12P65 = 2,
ISPEECH1_WBAMR_BITRATE_14P25 = 3,
ISPEECH1_WBAMR_BITRATE_15P85 = 4,
ISPEECH1_WBAMR_BITRATE_18P25 = 5,
ISPEECH1_WBAMR_BITRATE_19P85 = 6,
ISPEECH1_WBAMR_BITRATE_23P05 = 7,
ISPEECH1_WBAMR_BITRATE_23P85 = 8,
ISPEECH1_WBAMR_BITRATE_DEFAULT = ISPEECH1_WBAMR_BITRATE_23P85
}

Bitrate selection for AMR.

More...


Codec Engine Application Programming Interface (API): isphdec.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

isphdec.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the speech decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ispeech.h"
Include dependency graph for isphdec.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | ISPHDEC_Obj
This must be the first field of all ISPHDEC instance objects. More...
struct | ISPHDEC_Params
Defines the creation time parameters for all ISPHDEC instance objects. More...
struct | ISPHDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | ISPHDEC_InArgs
Defines the input arguments for all ISPHDEC instance process function. More...
struct | ISPHDEC_Status
Defines instance status parameters (read-only). More...
struct | ISPHDEC_OutArgs
Defines the run time output arguments for all ISPHDEC instance objects. More...
struct | ISPHDEC_Fxns
Defines all of the operations on ISPHDEC objects. More...

Defines

#define | ISPHDEC_CID "ti.xdais.dm.ISPHDEC"
#define | ISPHDEC_ERUNTIME XDM_ERUNTIME
#define | ISPHDEC_EOK XDM_EOK
#define | ISPHDEC_EFAIL XDM_EFAIL

Typedefs

typedef struct ISPHDEC_Obj | ISPHDEC_Obj
This must be the first field of all ISPHDEC instance objects.
typedef struct ISPHDEC_Obj * | ISPHDEC_Handle
Opaque handle to an ISPHDEC objects.
typedef struct ISPHDEC_Params | ISPHDEC_Params
Defines the creation time parameters for all ISPHDEC instance objects.
typedef struct
ISPHDEC_DynamicParams 		ISPHDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct ISPHDEC_InArgs | ISPHDEC_InArgs
Defines the input arguments for all ISPHDEC instance process function.
typedef struct ISPHDEC_Status | ISPHDEC_Status
Defines instance status parameters (read-only).
typedef struct ISPHDEC_OutArgs | ISPHDEC_OutArgs
Defines the run time output arguments for all ISPHDEC instance objects.
typedef IALG_Cmd | ISPHDEC_Cmd
Defines the control commands for the ISPHDEC module.
typedef struct ISPHDEC_Fxns | ISPHDEC_Fxns
Defines all of the operations on ISPHDEC objects.


Codec Engine Application Programming Interface (API): isphdec1.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs | Enumerations

isphdec1.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the speech decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ispeech1.h"
Include dependency graph for isphdec1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | ISPHDEC1_Obj
This must be the first field of all ISPHDEC1 instance objects. More...
struct | ISPHDEC1_Params
Defines the creation time parameters for all ISPHDEC1 instance objects. More...
struct | ISPHDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via ISPHDEC1_Fxns.control(). More...
struct | ISPHDEC1_InArgs
Defines the input arguments for all ISPHDEC1 instance process function. More...
struct | ISPHDEC1_Status
Defines instance status parameters. More...
struct | ISPHDEC1_OutArgs
Defines the run time output arguments for all ISPHDEC1 instance objects. More...
struct | ISPHDEC1_Fxns
Defines all of the operations on ISPHDEC1 objects. More...

Defines

#define | ISPHDEC1_EOK XDM_EOK
#define | ISPHDEC1_EFAIL XDM_EFAIL
#define | ISPHDEC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct ISPHDEC1_Obj | ISPHDEC1_Obj
This must be the first field of all ISPHDEC1 instance objects.
typedef struct ISPHDEC1_Obj * | ISPHDEC1_Handle
Opaque handle to an ISPHDEC1 objects.
typedef struct ISPHDEC1_Params | ISPHDEC1_Params
Defines the creation time parameters for all ISPHDEC1 instance objects.
typedef struct
ISPHDEC1_DynamicParams 		ISPHDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via ISPHDEC1_Fxns.control().
typedef struct ISPHDEC1_InArgs | ISPHDEC1_InArgs
Defines the input arguments for all ISPHDEC1 instance process function.
typedef struct ISPHDEC1_Status | ISPHDEC1_Status
Defines instance status parameters.
typedef struct ISPHDEC1_OutArgs | ISPHDEC1_OutArgs
Defines the run time output arguments for all ISPHDEC1 instance objects.
typedef IALG_Cmd | ISPHDEC1_Cmd
Defines the control commands for the ISPHDEC1 module.
typedef struct ISPHDEC1_Fxns | ISPHDEC1_Fxns
Defines all of the operations on ISPHDEC1 objects.

Enumerations

enum ISPHDEC1_FrameType {
ISPHDEC1_FTYPE_SPEECHGOOD = 0,
ISPHDEC1_FTYPE_SIDUPDATE = 1,
ISPHDEC1_FTYPE_NODATA = 2,
ISPHDEC1_FTYPE_SPEECHLOST = 3,
ISPHDEC1_FTYPE_DEGRADED = 4,
ISPHDEC1_FTYPE_BAD = 5,
ISPHDEC1_FTYPE_SIDFIRST = 6,
ISPHDEC1_FTYPE_SIDBAD = 7,
ISPHDEC1_FTYPE_ONSET = 8
}

Decoder frame types.

More...


Codec Engine Application Programming Interface (API): isphenc.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

isphenc.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the speech encoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ispeech.h"
Include dependency graph for isphenc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | ISPHENC_Obj
This must be the first field of all ISPHENC instance objects. More...
struct | ISPHENC_Params
Defines the creation time parameters for all ISPHENC instance objects. More...
struct | ISPHENC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | ISPHENC_InArgs
Defines the input arguments for all ISPHENC instance process function. More...
struct | ISPHENC_Status
Defines instance status parameters (read-only). More...
struct | ISPHENC_OutArgs
Defines the run time output arguments for all ISPHENC instance objects. More...
struct | ISPHENC_Fxns
Defines all of the operations on ISPHENC objects. More...

Defines

#define | ISPHENC_CID "ti.xdais.dm.ISPHENC"
#define | ISPHENC_ERUNTIME XDM_ERUNTIME
#define | ISPHENC_EOK XDM_EOK
#define | ISPHENC_EFAIL XDM_EFAIL

Typedefs

typedef struct ISPHENC_Obj | ISPHENC_Obj
This must be the first field of all ISPHENC instance objects.
typedef struct ISPHENC_Obj * | ISPHENC_Handle
Opaque handle to an ISPHENC objects.
typedef struct ISPHENC_Params | ISPHENC_Params
Defines the creation time parameters for all ISPHENC instance objects.
typedef struct
ISPHENC_DynamicParams 		ISPHENC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct ISPHENC_InArgs | ISPHENC_InArgs
Defines the input arguments for all ISPHENC instance process function.
typedef struct ISPHENC_Status | ISPHENC_Status
Defines instance status parameters (read-only).
typedef struct ISPHENC_OutArgs | ISPHENC_OutArgs
Defines the run time output arguments for all ISPHENC instance objects.
typedef IALG_Cmd | ISPHENC_Cmd
Defines the control commands for the ISPHENC module.
typedef struct ISPHENC_Fxns | ISPHENC_Fxns
Defines all of the operations on ISPHENC objects.


Codec Engine Application Programming Interface (API): isphenc1.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs | Enumerations

isphenc1.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the speech encoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ispeech1.h"
Include dependency graph for isphenc1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | ISPHENC1_Obj
This must be the first field of all ISPHENC1 instance objects. More...
struct | ISPHENC1_Params
Defines the creation time parameters for all ISPHENC1 instance objects. More...
struct | ISPHENC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via ISPHENC1_Fxns.control(). More...
struct | ISPHENC1_InArgs
Defines the input arguments for all ISPHENC1 instance process function. More...
struct | ISPHENC1_Status
Defines instance status parameters. More...
struct | ISPHENC1_OutArgs
Defines the run time output arguments for all ISPHENC1 instance objects. More...
struct | ISPHENC1_Fxns
Defines all of the operations on ISPHENC1 objects. More...

Defines

#define | ISPHENC1_EOK XDM_EOK
#define | ISPHENC1_EFAIL XDM_EFAIL
#define | ISPHENC1_EUNSUPPORTED XDM_EUNSUPPORTED
#define | ISPHENC1_ENOOUTPUT 1
This value signifies no output being available at encoder, for example in the case of intermediate calls in 10msec frame size execution.

Typedefs

typedef struct ISPHENC1_Obj | ISPHENC1_Obj
This must be the first field of all ISPHENC1 instance objects.
typedef struct ISPHENC1_Obj * | ISPHENC1_Handle
Opaque handle to an ISPHENC1 objects.
typedef struct ISPHENC1_Params | ISPHENC1_Params
Defines the creation time parameters for all ISPHENC1 instance objects.
typedef struct
ISPHENC1_DynamicParams 		ISPHENC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via ISPHENC1_Fxns.control().
typedef struct ISPHENC1_InArgs | ISPHENC1_InArgs
Defines the input arguments for all ISPHENC1 instance process function.
typedef struct ISPHENC1_Status | ISPHENC1_Status
Defines instance status parameters.
typedef struct ISPHENC1_OutArgs | ISPHENC1_OutArgs
Defines the run time output arguments for all ISPHENC1 instance objects.
typedef IALG_Cmd | ISPHENC1_Cmd
Defines the control commands for the ISPHENC1 module.
typedef struct ISPHENC1_Fxns | ISPHENC1_Fxns
Defines all of the operations on ISPHENC1 objects.

Enumerations

enum ISPHENC1_FrameType {
ISPHENC1_FTYPE_SPEECH = 0,
ISPHENC1_FTYPE_SIDFRAME = 1,
ISPHENC1_FTYPE_NODATA = 2
}

Encoder frame types.

More...


Codec Engine Application Programming Interface (API): iuniversal.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

iuniversal.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the "universal" XDM algorithm.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
Include dependency graph for iuniversal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IUNIVERSAL_Obj
This must be the first field of all IUNIVERSAL instance objects. More...
struct | IUNIVERSAL_Params
Defines the creation time parameters for all IUNIVERSAL instance objects. More...
struct | IUNIVERSAL_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IUNIVERSAL_InArgs
Defines the input arguments for all IUNIVERSAL instance process function. More...
struct | IUNIVERSAL_Status
Defines instance status parameters (read-only). More...
struct | IUNIVERSAL_OutArgs
Defines the run time output arguments for all IUNIVERSAL instance objects. More...
struct | IUNIVERSAL_Fxns
Defines all of the operations on IUNIVERSAL objects. More...

Defines

#define | IUNIVERSAL_EOK XDM_EOK
#define | IUNIVERSAL_EFAIL XDM_EFAIL
#define | IUNIVERSAL_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IUNIVERSAL_Obj | IUNIVERSAL_Obj
This must be the first field of all IUNIVERSAL instance objects.
typedef struct IUNIVERSAL_Obj * | IUNIVERSAL_Handle
Opaque handle to an IUNIVERSAL objects.
typedef struct IUNIVERSAL_Params | IUNIVERSAL_Params
Defines the creation time parameters for all IUNIVERSAL instance objects.
typedef struct
IUNIVERSAL_DynamicParams 		IUNIVERSAL_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IUNIVERSAL_InArgs | IUNIVERSAL_InArgs
Defines the input arguments for all IUNIVERSAL instance process function.
typedef struct IUNIVERSAL_Status | IUNIVERSAL_Status
Defines instance status parameters (read-only).
typedef struct IUNIVERSAL_OutArgs | IUNIVERSAL_OutArgs
Defines the run time output arguments for all IUNIVERSAL instance objects.
typedef IALG_Cmd | IUNIVERSAL_Cmd
Defines the control commands for the IUNIVERSAL module.
typedef struct IUNIVERSAL_Fxns | IUNIVERSAL_Fxns
Defines all of the operations on IUNIVERSAL objects.


Codec Engine Application Programming Interface (API): ividanalytics.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs | Enumerations

ividanalytics.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the video analytics algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
Include dependency graph for ividanalytics.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDANALYTICS_Grid
Access modes used to declare how the algorithm accessed buffers. More...
struct | IVIDANALYTICS_Rule
Analytics rule. More...
struct | IVIDANALYTICS_Obj
This must be the first field of all IVIDANALYTICS instance objects. More...
struct | IVIDANALYTICS_Params
Defines the creation time parameters for all IVIDANALYTICS instance objects. More...
struct | IVIDANALYTICS_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IVIDANALYTICS_InArgs
Defines the input arguments for all IVIDANALYTICS instance process function. More...
struct | IVIDANALYTICS_Status
Defines instance status parameters. More...
struct | IVIDANALYTICS_OutArgs
Defines the run time output arguments for all IVIDANALYTICS instance objects. More...
struct | IVIDANALYTICS_Fxns
Defines all of the operations on IVIDANALYTICS objects. More...

Defines

#define | IVIDANALYTICS_EOK XDM_EOK
#define | IVIDANALYTICS_EFAIL XDM_EFAIL
#define | IVIDANALYTICS_EUNSUPPORTED XDM_EUNSUPPORTED
#define | IVIDANALYTICS_SETRULE XDM_CLASSCMDBASE
Set a new rule.
#define | IVIDANALYTICS_CLEARRULE XDM_CLASSCMDBASE + 1
Clear a rule.
#define | IVIDANALYTICS_MAXTARGETS 128
Maximum targets that can be detected per process() call.
#define | IVIDANALYTICS_MAXEVENTS 128
Maximum number of events that can be detected per process() call.

Typedefs

typedef struct IVIDANALYTICS_Grid | IVIDANALYTICS_Grid
Access modes used to declare how the algorithm accessed buffers.
typedef struct IVIDANALYTICS_Rule | IVIDANALYTICS_Rule
Analytics rule.
typedef struct IVIDANALYTICS_Obj | IVIDANALYTICS_Obj
This must be the first field of all IVIDANALYTICS instance objects.
typedef struct IVIDANALYTICS_Obj * | IVIDANALYTICS_Handle
Opaque handle to an IVIDANALYTICS objects.
typedef struct IVIDANALYTICS_Params | IVIDANALYTICS_Params
Defines the creation time parameters for all IVIDANALYTICS instance objects.
typedef struct
IVIDANALYTICS_DynamicParams 		IVIDANALYTICS_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IVIDANALYTICS_InArgs | IVIDANALYTICS_InArgs
Defines the input arguments for all IVIDANALYTICS instance process function.
typedef struct IVIDANALYTICS_Status | IVIDANALYTICS_Status
Defines instance status parameters.
typedef struct
IVIDANALYTICS_OutArgs 		IVIDANALYTICS_OutArgs
Defines the run time output arguments for all IVIDANALYTICS instance objects.
typedef IALG_Cmd | IVIDANALYTICS_Cmd
Defines the control commands for the IVIDANALYTICS module.
typedef struct IVIDANALYTICS_Fxns | IVIDANALYTICS_Fxns
Defines all of the operations on IVIDANALYTICS objects.

Enumerations

enum IVIDANALYTICS_AnalysisMask {
IVIDANALYTICS_MOTIONDETECT = 0,
IVIDANALYTICS_OBJECTTRACKING = 1,
IVIDANALYTICS_USERBASE = 16
}

Access modes used to declare how the algorithm accessed buffers.

More...
enum IVIDANALYTICS_ObjectType {
IVIDANALYTICS_OBJECTTYPE_VEHICLE = 0,
IVIDANALYTICS_OBJECTTYPE_HUMAN = 1,
IVIDANALYTICS_OBJECTTYPE_USERBASE = 256
}

Types of objects.

More...
enum IVIDANALYTICS_ActionType {
IVIDANALYTICS_ACTIONTYPE_LOITER = 0,
IVIDANALYTICS_ACTIONTYPE_ENTER = 1,
IVIDANALYTICS_ACTIONTYPE_EXIT = 2,
IVIDANALYTICS_ACTIONTYPE_APPEAR = 3,
IVIDANALYTICS_ACTIONTYPE_DISAPPEAR = 4,
IVIDANALYTICS_ACTIONTYPE_CROSSL2R = 5,
IVIDANALYTICS_ACTIONTYPE_CROSSR2L = 6,
IVIDANALYTICS_ACTIONTYPE_CROSSU2D = 7,
IVIDANALYTICS_ACTIONTYPE_CROSSD2U = 8,
IVIDANALYTICS_ACTIONTYPE_USERBASE = 256
}

Types of objects.

More...
enum IVIDANALYTICS_ViewState {
IVIDANALYTICS_VIEWSTATE_BAD = 0,
IVIDANALYTICS_VIEWSTATE_GOOD = 1
}

View state of the analytics engine.

More...


Codec Engine Application Programming Interface (API): ividdec.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

ividdec.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ivideo.h"
Include dependency graph for ividdec.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDDEC_Obj
This must be the first field of all IVIDDEC instance objects. More...
struct | IVIDDEC_Params
Defines the creation time parameters for all IVIDDEC instance objects. More...
struct | IVIDDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDDEC_InArgs
Defines the input arguments for all IVIDDEC instance process function. More...
struct | IVIDDEC_Status
Defines instance status parameters. More...
struct | IVIDDEC_OutArgs
Defines the run time output arguments for all IVIDDEC instance objects. More...
struct | IVIDDEC_Fxns
Defines all of the operations on IVIDDEC objects. More...

Defines

#define | IVIDDEC_CID "ti.xdais.dm.IVIDDEC"
#define | IVIDDEC_ERUNTIME XDM_ERUNTIME
#define | IVIDDEC_EOK XDM_EOK
#define | IVIDDEC_EFAIL XDM_EFAIL

Typedefs

typedef struct IVIDDEC_Obj | IVIDDEC_Obj
This must be the first field of all IVIDDEC instance objects.
typedef struct IVIDDEC_Obj * | IVIDDEC_Handle
Opaque handle to an IVIDDEC objects.
typedef struct IVIDDEC_Params | IVIDDEC_Params
Defines the creation time parameters for all IVIDDEC instance objects.
typedef struct
IVIDDEC_DynamicParams 		IVIDDEC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDDEC_InArgs | IVIDDEC_InArgs
Defines the input arguments for all IVIDDEC instance process function.
typedef struct IVIDDEC_Status | IVIDDEC_Status
Defines instance status parameters.
typedef struct IVIDDEC_OutArgs | IVIDDEC_OutArgs
Defines the run time output arguments for all IVIDDEC instance objects.
typedef IALG_Cmd | IVIDDEC_Cmd
Defines the control commands for the IVIDDEC module.
typedef struct IVIDDEC_Fxns | IVIDDEC_Fxns
Defines all of the operations on IVIDDEC objects.


Codec Engine Application Programming Interface (API): ividdec1.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs | Enumerations

ividdec1.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ivideo.h"
Include dependency graph for ividdec1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDDEC1_Obj
This must be the first field of all IVIDDEC1 instance objects. More...
struct | IVIDDEC1_Params
Defines the creation time parameters for all IVIDDEC1 instance objects. More...
struct | IVIDDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDDEC1_InArgs
Defines the input arguments for all IVIDDEC1 instance process function. More...
struct | IVIDDEC1_Status
Defines instance status parameters. More...
struct | IVIDDEC1_OutArgs
Defines the run time output arguments for all IVIDDEC1 instance objects. More...
struct | IVIDDEC1_Fxns
Defines all of the operations on IVIDDEC1 objects. More...

Defines

#define | IVIDDEC1_EOK XDM_EOK
#define | IVIDDEC1_EFAIL XDM_EFAIL
#define | IVIDDEC1_EUNSUPPORTED XDM_EUNSUPPORTED
#define | IVIDDEC1_FREE_BUFF_SIZE 16

Typedefs

typedef struct IVIDDEC1_Obj | IVIDDEC1_Obj
This must be the first field of all IVIDDEC1 instance objects.
typedef struct IVIDDEC1_Obj * | IVIDDEC1_Handle
Opaque handle to an IVIDDEC1 objects.
typedef struct IVIDDEC1_Params | IVIDDEC1_Params
Defines the creation time parameters for all IVIDDEC1 instance objects.
typedef struct
IVIDDEC1_DynamicParams 		IVIDDEC1_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDDEC1_InArgs | IVIDDEC1_InArgs
Defines the input arguments for all IVIDDEC1 instance process function.
typedef struct IVIDDEC1_Status | IVIDDEC1_Status
Defines instance status parameters.
typedef struct IVIDDEC1_OutArgs | IVIDDEC1_OutArgs
Defines the run time output arguments for all IVIDDEC1 instance objects.
typedef IALG_Cmd | IVIDDEC1_Cmd
Defines the control commands for the IVIDDEC1 module.
typedef struct IVIDDEC1_Fxns | IVIDDEC1_Fxns
Defines all of the operations on IVIDDEC1 objects.

Enumerations

enum IVIDDEC1_FrameOrder {
IVIDDEC_DISPLAY_ORDER = 0,
IVIDDEC_DECODE_ORDER = 1,
IVIDDEC_FRAMEORDER_DEFAULT = IVIDDEC_DISPLAY_ORDER
}

Video decoder output frame order.

More...


Codec Engine Application Programming Interface (API): ividdec2.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs | Enumerations

ividdec2.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ivideo.h"
Include dependency graph for ividdec2.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDDEC2_Obj
This must be the first field of all IVIDDEC2 instance objects. More...
struct | IVIDDEC2_Params
Defines the creation time parameters for all IVIDDEC2 instance objects. More...
struct | IVIDDEC2_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDDEC2_InArgs
Defines the input arguments for all IVIDDEC2 instance process function. More...
struct | IVIDDEC2_Status
Defines instance status parameters. More...
struct | IVIDDEC2_OutArgs
Defines the run time output arguments for all IVIDDEC2 instance objects. More...
struct | IVIDDEC2_Fxns
Defines all of the operations on IVIDDEC2 objects. More...

Defines

#define | IVIDDEC2_MAX_IO_BUFFERS IVIDEO2_MAX_IO_BUFFERS
Maximum I/O Buffers.
#define | IVIDDEC2_EOK XDM_EOK
#define | IVIDDEC2_EFAIL XDM_EFAIL
#define | IVIDDEC2_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IVIDDEC2_Obj | IVIDDEC2_Obj
This must be the first field of all IVIDDEC2 instance objects.
typedef struct IVIDDEC2_Obj * | IVIDDEC2_Handle
Opaque handle to an IVIDDEC2 objects.
typedef struct IVIDDEC2_Params | IVIDDEC2_Params
Defines the creation time parameters for all IVIDDEC2 instance objects.
typedef struct
IVIDDEC2_DynamicParams 		IVIDDEC2_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDDEC2_InArgs | IVIDDEC2_InArgs
Defines the input arguments for all IVIDDEC2 instance process function.
typedef struct IVIDDEC2_Status | IVIDDEC2_Status
Defines instance status parameters.
typedef struct IVIDDEC2_OutArgs | IVIDDEC2_OutArgs
Defines the run time output arguments for all IVIDDEC2 instance objects.
typedef IALG_Cmd | IVIDDEC2_Cmd
Defines the control commands for the IVIDDEC2 module.
typedef struct IVIDDEC2_Fxns | IVIDDEC2_Fxns
Defines all of the operations on IVIDDEC2 objects.

Enumerations

enum IVIDDEC2_FrameOrder {
IVIDDEC2_DISPLAY_ORDER = 0,
IVIDDEC2_DECODE_ORDER = 1,
IVIDDEC2_FRAMEORDER_DEFAULT = IVIDDEC2_DISPLAY_ORDER
}

Video decoder output frame order.

More...


Codec Engine Application Programming Interface (API): ividdec2.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
  • split
Data Structures | Typedefs

split/ividdec2.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are common across all split IVIDDEC2-based codecs.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "../xdm.h"
#include "../ividdec2.h"
Include dependency graph for split/ividdec2.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDDEC2FRONT_Obj
This must be the first field of all IVIDDEC2FRONT instance objects. More...
struct | IVIDDEC2BACK_Obj
This must be the first field of all IVIDDEC2BACK instance objects. More...
struct | IVIDDEC2FRONT_Status
Defines instance status parameters. More...
struct | IVIDDEC2FRONT_OutArgs
Defines the run time output arguments for all IVIDDEC2FRONT instance objects. More...
struct | IVIDDEC2FRONT_Fxns
Defines all of the operations on IVIDDEC2FRONT objects. More...
struct | IVIDDEC2BACK_Fxns
Defines all of the operations on IVIDDEC2BACK objects. More...

Typedefs

typedef struct IVIDDEC2FRONT_Obj | IVIDDEC2FRONT_Obj
This must be the first field of all IVIDDEC2FRONT instance objects.
typedef struct IVIDDEC2FRONT_Obj * | IVIDDEC2FRONT_Handle
Opaque handle to an IVIDDEC2FRONT objects.
typedef struct IVIDDEC2BACK_Obj | IVIDDEC2BACK_Obj
This must be the first field of all IVIDDEC2BACK instance objects.
typedef struct IVIDDEC2BACK_Obj * | IVIDDEC2BACK_Handle
Opaque handle to an IVIDDEC2BACK objects.
typedef struct IVIDDEC2FRONT_Status | IVIDDEC2FRONT_Status
Defines instance status parameters.
typedef struct
IVIDDEC2FRONT_OutArgs 		IVIDDEC2FRONT_OutArgs
Defines the run time output arguments for all IVIDDEC2FRONT instance objects.
typedef struct IVIDDEC2FRONT_Fxns | IVIDDEC2FRONT_Fxns
Defines all of the operations on IVIDDEC2FRONT objects.
typedef struct IVIDDEC2BACK_Fxns | IVIDDEC2BACK_Fxns
Defines all of the operations on IVIDDEC2BACK objects.


Codec Engine Application Programming Interface (API): ividdec3.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs | Enumerations

ividdec3.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ivideo.h"
Include dependency graph for ividdec3.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDDEC3_Obj
This must be the first field of all IVIDDEC3 instance objects. More...
struct | IVIDDEC3_Params
Defines the creation time parameters for all IVIDDEC3 instance objects. More...
struct | IVIDDEC3_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls. More...
struct | IVIDDEC3_InArgs
Defines the input arguments for all IVIDDEC3 instance process function. More...
struct | IVIDDEC3_Status
Defines instance status parameters. More...
struct | IVIDDEC3_OutArgs
Defines the run time output arguments for all IVIDDEC3 instance objects. More...
struct | IVIDDEC3_Fxns
Defines all of the operations on IVIDDEC3 objects. More...

Defines

#define | IVIDDEC3_EOK XDM_EOK
#define | IVIDDEC3_EFAIL XDM_EFAIL
#define | IVIDDEC3_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IVIDDEC3_Obj | IVIDDEC3_Obj
This must be the first field of all IVIDDEC3 instance objects.
typedef struct IVIDDEC3_Obj * | IVIDDEC3_Handle
Opaque handle to an IVIDDEC3 objects.
typedef struct IVIDDEC3_Params | IVIDDEC3_Params
Defines the creation time parameters for all IVIDDEC3 instance objects.
typedef struct
IVIDDEC3_DynamicParams 		IVIDDEC3_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls.
typedef struct IVIDDEC3_InArgs | IVIDDEC3_InArgs
Defines the input arguments for all IVIDDEC3 instance process function.
typedef struct IVIDDEC3_Status | IVIDDEC3_Status
Defines instance status parameters.
typedef struct IVIDDEC3_OutArgs | IVIDDEC3_OutArgs
Defines the run time output arguments for all IVIDDEC3 instance objects.
typedef IALG_Cmd | IVIDDEC3_Cmd
Defines the control commands for the IVIDDEC3 module.
typedef struct IVIDDEC3_Fxns | IVIDDEC3_Fxns
Defines all of the operations on IVIDDEC3 objects.

Enumerations

enum IVIDDEC3_displayDelay {
IVIDDEC3_DISPLAY_DELAY_AUTO = -1,
IVIDDEC3_DECODE_ORDER = 0,
IVIDDEC3_DISPLAY_DELAY_1 = 1,
IVIDDEC3_DISPLAY_DELAY_2 = 2,
IVIDDEC3_DISPLAY_DELAY_3 = 3,
IVIDDEC3_DISPLAY_DELAY_4 = 4,
IVIDDEC3_DISPLAY_DELAY_5 = 5,
IVIDDEC3_DISPLAY_DELAY_6 = 6,
IVIDDEC3_DISPLAY_DELAY_7 = 7,
IVIDDEC3_DISPLAY_DELAY_8 = 8,
IVIDDEC3_DISPLAY_DELAY_9 = 9,
IVIDDEC3_DISPLAY_DELAY_10 = 10,
IVIDDEC3_DISPLAY_DELAY_11 = 11,
IVIDDEC3_DISPLAY_DELAY_12 = 12,
IVIDDEC3_DISPLAY_DELAY_13 = 13,
IVIDDEC3_DISPLAY_DELAY_14 = 14,
IVIDDEC3_DISPLAY_DELAY_15 = 15,
IVIDDEC3_DISPLAY_DELAY_16 = 16,
IVIDDEC3_DISPLAYDELAY_DEFAULT = IVIDDEC3_DISPLAY_DELAY_AUTO
}

Video decoder output frame order.

More...
enum IVIDDEC3_DisplayBufsMode {
IVIDDEC3_DISPLAYBUFS_EMBEDDED = 1,
IVIDDEC3_DISPLAYBUFS_PTRS = 2
}

Mode in which display buffers will be returned in IVIDDEC3_OutArgs.

More...


Codec Engine Application Programming Interface (API): ividenc.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

ividenc.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the video encoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ivideo.h"
Include dependency graph for ividenc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDENC_Obj
This must be the first field of all IVIDENC instance objects. More...
struct | IVIDENC_Params
Defines the creation time parameters for all IVIDENC instance objects. More...
struct | IVIDENC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDENC_InArgs
Defines the input arguments for all IVIDENC instance process function. More...
struct | IVIDENC_Status
Defines instance status parameters (read-only). More...
struct | IVIDENC_OutArgs
Defines the run time output arguments for all IVIDENC instance objects. More...
struct | IVIDENC_Fxns
Defines all of the operations on IVIDENC objects. More...

Defines

#define | IVIDENC_CID "ti.xdais.dm.IVIDENC"
#define | IVIDENC_ERUNTIME XDM_ERUNTIME
#define | IVIDENC_EOK XDM_EOK
#define | IVIDENC_EFAIL XDM_EFAIL

Typedefs

typedef struct IVIDENC_Obj | IVIDENC_Obj
This must be the first field of all IVIDENC instance objects.
typedef struct IVIDENC_Obj * | IVIDENC_Handle
Opaque handle to an IVIDENC objects.
typedef struct IVIDENC_Params | IVIDENC_Params
Defines the creation time parameters for all IVIDENC instance objects.
typedef struct
IVIDENC_DynamicParams 		IVIDENC_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDENC_InArgs | IVIDENC_InArgs
Defines the input arguments for all IVIDENC instance process function.
typedef struct IVIDENC_Status | IVIDENC_Status
Defines instance status parameters (read-only).
typedef struct IVIDENC_OutArgs | IVIDENC_OutArgs
Defines the run time output arguments for all IVIDENC instance objects.
typedef IALG_Cmd | IVIDENC_Cmd
Defines the control commands for the IVIDENC module.
typedef struct IVIDENC_Fxns | IVIDENC_Fxns
Defines all of the operations on IVIDENC objects.


Codec Engine Application Programming Interface (API): ividenc1.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

ividenc1.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the video encoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ivideo.h"
Include dependency graph for ividenc1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDENC1_Obj
This must be the first field of all IVIDENC1 instance objects. More...
struct | IVIDENC1_Params
Defines the creation time parameters for all IVIDENC1 instance objects. More...
struct | IVIDENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IVIDENC1_InArgs
Defines the input arguments for all IVIDENC1 instance process function. More...
struct | IVIDENC1_Status
Defines instance status parameters. More...
struct | IVIDENC1_OutArgs
Defines the run time output arguments for all IVIDENC1 instance objects. More...
struct | IVIDENC1_MbData
Defines the structure that contains macroblock related encoding parameter estimates. More...
struct | IVIDENC1_Fxns
Defines all of the operations on IVIDENC1 objects. More...

Defines

#define | IVIDENC1_EOK XDM_EOK
#define | IVIDENC1_EFAIL XDM_EFAIL
#define | IVIDENC1_EUNSUPPORTED XDM_EUNSUPPORTED

Typedefs

typedef struct IVIDENC1_Obj | IVIDENC1_Obj
This must be the first field of all IVIDENC1 instance objects.
typedef struct IVIDENC1_Obj * | IVIDENC1_Handle
Opaque handle to an IVIDENC1 objects.
typedef struct IVIDENC1_Params | IVIDENC1_Params
Defines the creation time parameters for all IVIDENC1 instance objects.
typedef struct
IVIDENC1_DynamicParams 		IVIDENC1_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IVIDENC1_InArgs | IVIDENC1_InArgs
Defines the input arguments for all IVIDENC1 instance process function.
typedef struct IVIDENC1_Status | IVIDENC1_Status
Defines instance status parameters.
typedef struct IVIDENC1_OutArgs | IVIDENC1_OutArgs
Defines the run time output arguments for all IVIDENC1 instance objects.
typedef IALG_Cmd | IVIDENC1_Cmd
Defines the control commands for the IVIDENC1 module.
typedef struct IVIDENC1_MbData | IVIDENC1_MbData
Defines the structure that contains macroblock related encoding parameter estimates.
typedef struct IVIDENC1_Fxns | IVIDENC1_Fxns
Defines all of the operations on IVIDENC1 objects.


Codec Engine Application Programming Interface (API): ividenc2.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs | Enumerations

ividenc2.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the video encoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ivideo.h"
Include dependency graph for ividenc2.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDENC2_Obj
This must be the first field of all IVIDENC2 instance objects. More...
struct | IVIDENC2_Params
Defines the creation time parameters for all IVIDENC2 instance objects. More...
struct | IVIDENC2_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls. More...
struct | IVIDENC2_InArgs
Defines the input arguments for all IVIDENC2 instance process function. More...
struct | IVIDENC2_Status
Defines instance status parameters. More...
struct | IVIDENC2_OutArgs
Defines the run time output arguments for all IVIDENC2 instance objects. More...
struct | IVIDENC2_Fxns
Defines all of the operations on IVIDENC2 objects. More...

Defines

#define | IVIDENC2_EOK XDM_EOK
#define | IVIDENC2_EFAIL XDM_EFAIL
#define | IVIDENC2_EUNSUPPORTED XDM_EUNSUPPORTED
#define | IVIDENC2_DEFAULTPROFILE (-1)
Default codec profile.
#define | IVIDENC2_DEFAULTLEVEL (-1)
Default codec level.

Typedefs

typedef struct IVIDENC2_Obj | IVIDENC2_Obj
This must be the first field of all IVIDENC2 instance objects.
typedef struct IVIDENC2_Obj * | IVIDENC2_Handle
Opaque handle to an IVIDENC2 objects.
typedef struct IVIDENC2_Params | IVIDENC2_Params
Defines the creation time parameters for all IVIDENC2 instance objects.
typedef struct
IVIDENC2_DynamicParams 		IVIDENC2_DynamicParams
This structure defines the algorithm parameters that can be modified after creation via control() calls.
typedef struct IVIDENC2_InArgs | IVIDENC2_InArgs
Defines the input arguments for all IVIDENC2 instance process function.
typedef struct IVIDENC2_Status | IVIDENC2_Status
Defines instance status parameters.
typedef struct IVIDENC2_OutArgs | IVIDENC2_OutArgs
Defines the run time output arguments for all IVIDENC2 instance objects.
typedef IALG_Cmd | IVIDENC2_Cmd
Defines the control commands for the IVIDENC2 module.
typedef struct IVIDENC2_Fxns | IVIDENC2_Fxns
Defines all of the operations on IVIDENC2 objects.

Enumerations

enum IVIDENC2_MotionVectorAccuracy {
IVIDENC2_MOTIONVECTOR_PIXEL = 0,
IVIDENC2_MOTIONVECTOR_HALFPEL = 1,
IVIDENC2_MOTIONVECTOR_QUARTERPEL = 2,
IVIDENC2_MOTIONVECTOR_EIGHTHPEL = 3,
IVIDENC2_MOTIONVECTOR_MAX = 4
}

Enumeration of possible motion vector (MV) accuracy.

More...
enum IVIDENC2_Control {
IVIDENC2_CTRL_NONE = 0,
IVIDENC2_CTRL_FORCESKIP = 1,
IVIDENC2_CTRL_DEFAULT = IVIDENC2_CTRL_NONE
}

Video frame control.

More...


Codec Engine Application Programming Interface (API): ivideo.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs | Enumerations

ivideo.h File Reference

Detailed Description

This header defines all types, constants, enums, and functions that are common across the various video codecs.

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDEO_BufDesc
Buffer descriptor for video buffers. More...
struct | IVIDEO1_BufDescIn
Buffer descriptor for input video buffers. More...
struct | IVIDEO1_BufDesc
Detailed buffer descriptor for video buffers. More...
struct | IVIDEO2_BufDesc
Detailed buffer descriptor for video buffers. More...

Defines

#define | IVIDEO2_MAX_IO_BUFFERS 20
Maximum I/O Buffers.
#define | IVIDEO_MAX_YUV_BUFFERS 3
Max YUV buffers - one each for 'Y', 'U', and 'V'.
#define | IVIDEO_MAX_NUM_PLANES 3
Max YUV buffers - one each for 'Y', 'U', and 'V'.
#define | IVIDEO_MAX_NUM_METADATA_PLANES 3

Typedefs

typedef struct IVIDEO_BufDesc | IVIDEO_BufDesc
Buffer descriptor for video buffers.
typedef struct IVIDEO1_BufDescIn | IVIDEO1_BufDescIn
Buffer descriptor for input video buffers.
typedef struct IVIDEO1_BufDesc | IVIDEO1_BufDesc
Detailed buffer descriptor for video buffers.
typedef struct IVIDEO2_BufDesc | IVIDEO2_BufDesc
Detailed buffer descriptor for video buffers.

Enumerations

enum IVIDEO_FrameSkip {
IVIDEO_NO_SKIP = 0,
IVIDEO_SKIP_P = 1,
IVIDEO_SKIP_B = 2,
IVIDEO_SKIP_I = 3,
IVIDEO_SKIP_IP = 4,
IVIDEO_SKIP_IB = 5,
IVIDEO_SKIP_PB = 6,
IVIDEO_SKIP_IPB = 7,
IVIDEO_SKIP_IDR = 8,
IVIDEO_SKIP_NONREFERENCE = 9,
IVIDEO_SKIP_DEFAULT = IVIDEO_NO_SKIP
}

Video frame skip features for video decoder.

More...
enum IVIDEO_FrameType {
IVIDEO_NA_FRAME = -1,
IVIDEO_I_FRAME = 0,
IVIDEO_P_FRAME = 1,
IVIDEO_B_FRAME = 2,
IVIDEO_IDR_FRAME = 3,
IVIDEO_II_FRAME = 4,
IVIDEO_IP_FRAME = 5,
IVIDEO_IB_FRAME = 6,
IVIDEO_PI_FRAME = 7,
IVIDEO_PP_FRAME = 8,
IVIDEO_PB_FRAME = 9,
IVIDEO_BI_FRAME = 10,
IVIDEO_BP_FRAME = 11,
IVIDEO_BB_FRAME = 12,
IVIDEO_MBAFF_I_FRAME = 13,
IVIDEO_MBAFF_P_FRAME = 14,
IVIDEO_MBAFF_B_FRAME = 15,
IVIDEO_MBAFF_IDR_FRAME = 16,
IVIDEO_FRAMETYPE_DEFAULT = IVIDEO_I_FRAME
}

Video frame types.

More...
enum IVIDEO_ContentType {
IVIDEO_CONTENTTYPE_NA = -1,
IVIDEO_PROGRESSIVE = 0,
IVIDEO_PROGRESSIVE_FRAME = IVIDEO_PROGRESSIVE,
IVIDEO_INTERLACED = 1,
IVIDEO_INTERLACED_FRAME = IVIDEO_INTERLACED,
IVIDEO_INTERLACED_TOPFIELD = 2,
IVIDEO_INTERLACED_BOTTOMFIELD = 3,
IVIDEO_CONTENTTYPE_DEFAULT = IVIDEO_PROGRESSIVE
}

Video content types.

More...
enum IVIDEO_RateControlPreset {
IVIDEO_LOW_DELAY = 1,
IVIDEO_STORAGE = 2,
IVIDEO_TWOPASS = 3,
IVIDEO_NONE = 4,
IVIDEO_USER_DEFINED = 5,
IVIDEO_RATECONTROLPRESET_DEFAULT = IVIDEO_LOW_DELAY
}

Video rate control presets.

More...
enum IVIDEO_SkipMode {
IVIDEO_FRAME_ENCODED = 0,
IVIDEO_FRAME_SKIPPED = 1,
IVIDEO_SKIPMODE_DEFAULT = IVIDEO_FRAME_ENCODED
}

Video frame skipping modes.

More...
enum IVIDEO_OutputFrameStatus {
IVIDEO_FRAME_NOERROR = 0,
IVIDEO_FRAME_NOTAVAILABLE = 1,
IVIDEO_FRAME_ERROR = 2,
IVIDEO_FRAME_OUTPUTSKIP = 3,
IVIDEO_OUTPUTFRAMESTATUS_DEFAULT = IVIDEO_FRAME_NOERROR
}

Video output buffer status.

More...
enum IVIDEO_PictureType {
IVIDEO_NA_PICTURE = -1,
IVIDEO_I_PICTURE = 0,
IVIDEO_P_PICTURE = 1,
IVIDEO_B_PICTURE = 2,
IVIDEO_PICTURE_TYPE_DEFAULT = IVIDEO_I_PICTURE
}

Video Picture types.

More...
enum IVIDEO_Format {
IVIDEO_MPEG1 = 1,
IVIDEO_MPEG2SP = 2,
IVIDEO_MPEG2MP = 3,
IVIDEO_MPEG2HP = 4,
IVIDEO_MPEG4SP = 5,
IVIDEO_MPEG4ASP = 6,
IVIDEO_H264BP = 7,
IVIDEO_H264MP = 8,
IVIDEO_H264HP = 9,
IVIDEO_VC1SP = 10,
IVIDEO_VC1MP = 11,
IVIDEO_VC1AP = 12,
IVIDEO_H264RCDO = 13,
IVIDEO_RV8 = 14,
IVIDEO_RV9 = 15,
IVIDEO_RV10 = IVIDEO_RV9,
IVIDEO_ON2VP6 = 16,
IVIDEO_ON2VP7 = 17,
IVIDEO_AVS10 = 18,
IVIDEO_SORENSONSPARK = 19,
IVIDEO_H263_PROFILE0 = 20,
IVIDEO_H263_PROFILE3 = 21,
IVIDEO_H264SVC = 22,
IVIDEO_MULTIVIEW = 23,
IVIDEO_MJPEG = 24
}

Video Format types.

More...
enum IVIDEO_VideoLayout {
IVIDEO_FIELD_INTERLEAVED = 0,
IVIDEO_FIELD_SEPARATED = 1,
IVIDEO_TOP_ONLY = 2,
IVIDEO_BOTTOM_ONLY = 3
}

Video buffer layout.

More...
enum IVIDEO_OperatingMode {
IVIDEO_DECODE_ONLY = 0,
IVIDEO_ENCODE_ONLY = 1,
IVIDEO_TRANSCODE_FRAMELEVEL = 2,
IVIDEO_TRANSCODE_MBLEVEL = 3,
IVIDEO_TRANSRATE_FRAMELEVEL = 4,
IVIDEO_TRANSRATE_MBLEVEL = 5
}

Video coding mode of operation.

More...
enum IVIDEO_BitRange {
IVIDEO_YUVRANGE_FULL = 0,
IVIDEO_YUVRANGE_ITU = 1
}

Video bit range.

More...
enum IVIDEO_DataMode {
IVIDEO_FIXEDLENGTH = 0,
IVIDEO_SLICEMODE = 1,
IVIDEO_NUMROWS = 2,
IVIDEO_ENTIREFRAME = 3
}

input/output data mode

More...
enum IVIDEO_ErrorInfoMode {
IVIDEO_ERRORINFO_OFF = 0,
IVIDEO_ERRORINFO_ON_INPUT = 1,
IVIDEO_ERRORINFO_ON_OUTPUT = 2,
IVIDEO_ERRORINFO_ON_BOTH = 3,
IVIDEO_ERRORINFO_MODE_DEFAULT = IVIDEO_ERRORINFO_OFF
}

Configuration for providing/receiving packet error information.

More...
enum IVIDEO_MetadataType {
IVIDEO_METADATAPLANE_NONE = -1,
IVIDEO_METADATAPLANE_MBINFO = 0,
IVIDEO_METADATAPLANE_EINFO = 1,
IVIDEO_METADATAPLANE_ALPHA = 2
}


Codec Engine Application Programming Interface (API): ividtranscode.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs

ividtranscode.h File Reference

Detailed Description

This header defines all types, constants, and functions shared by all implementations of the video transcoder algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
#include "xdm.h"
#include "ivideo.h"
Include dependency graph for ividtranscode.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDTRANSCODE_Obj
This must be the first field of all IVIDTRANSCODE instance objects. More...
struct | IVIDTRANSCODE_Params
Defines the creation time parameters for all IVIDTRANSCODE instance objects. More...
struct | IVIDTRANSCODE_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls. More...
struct | IVIDTRANSCODE_InArgs
Defines the input arguments for all IVIDTRANSCODE instance process function. More...
struct | IVIDTRANSCODE_Status
Defines instance status parameters. More...
struct | IVIDTRANSCODE_OutArgs
Defines the run time output arguments for all IVIDTRANSCODE instance objects. More...
struct | IVIDTRANSCODE_Fxns
Defines all of the operations on IVIDTRANSCODE objects. More...

Defines

#define | IVIDTRANSCODE_EOK XDM_EOK
#define | IVIDTRANSCODE_EFAIL XDM_EFAIL
#define | IVIDTRANSCODE_EUNSUPPORTED XDM_EUNSUPPORTED
#define | IVIDTRANSCODE_MAXOUTSTREAMS 2

Typedefs

typedef struct IVIDTRANSCODE_Obj | IVIDTRANSCODE_Obj
This must be the first field of all IVIDTRANSCODE instance objects.
typedef struct IVIDTRANSCODE_Obj * | IVIDTRANSCODE_Handle
Opaque handle to an IVIDTRANSCODE objects.
typedef struct IVIDTRANSCODE_Params | IVIDTRANSCODE_Params
Defines the creation time parameters for all IVIDTRANSCODE instance objects.
typedef struct
IVIDTRANSCODE_DynamicParams 		IVIDTRANSCODE_DynamicParams
This structure defines the codec parameters that can be modified after creation via control() calls.
typedef struct IVIDTRANSCODE_InArgs | IVIDTRANSCODE_InArgs
Defines the input arguments for all IVIDTRANSCODE instance process function.
typedef struct IVIDTRANSCODE_Status | IVIDTRANSCODE_Status
Defines instance status parameters.
typedef struct
IVIDTRANSCODE_OutArgs 		IVIDTRANSCODE_OutArgs
Defines the run time output arguments for all IVIDTRANSCODE instance objects.
typedef IALG_Cmd | IVIDTRANSCODE_Cmd
Defines the control commands for the IVIDTRANSCODE module.
typedef struct IVIDTRANSCODE_Fxns | IVIDTRANSCODE_Fxns
Defines all of the operations on IVIDTRANSCODE objects.


Codec Engine Application Programming Interface (API): Memory.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • osal
Data Structures | Defines | Typedefs | Enumerations | Functions | Variables

Memory.h File Reference

Detailed Description

The Codec Engine OSAL Memory interface. Provides the user an OS-independent Memory abstraction.

Go to the source code of this file.

Data Structures

struct | ti_sdo_ce_osal_Memory_AllocParams
Parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free() More...

Defines

#define | ti_sdo_ce_osal_Memory_DEFAULTALIGNMENT ((UInt)(-1))
Default Alignment.
#define | Memory_MODNAME "ti.sdo.ce.osal.Memory"
Name to pass to Diags_setMask() to enable logging for Memory functions. For example, Diags_setMask(Memory_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.
#define | ti_sdo_ce_osal_Memory_GTNAME "OM"
GT name containing the trace mask for this module.
#define | ti_sdo_ce_osal_Memory_CACHED 0x00000000
Cached allocation.
#define | ti_sdo_ce_osal_Memory_NONCACHED 0x00000001
Non-cached allocation.
#define | ti_sdo_ce_osal_Memory_CACHEDMASK 0x00000001
Mask to isolate cache flag.

Typedefs

typedef struct
ti_sdo_ce_osal_Memory_AllocParams 		ti_sdo_ce_osal_Memory_AllocParams
Parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free()

Enumerations

enum ti_sdo_ce_osal_Memory_type {
ti_sdo_ce_osal_Memory_MALLOC = 0,
ti_sdo_ce_osal_Memory_SEG = 1,
ti_sdo_ce_osal_Memory_CONTIGPOOL = 2,
ti_sdo_ce_osal_Memory_CONTIGHEAP = 3
}

Enum values for ti_sdo_ce_osal_Memory_AllocParams.type.

More...

Functions

Ptr | ti_sdo_ce_osal_Memory_alloc (UInt size, ti_sdo_ce_osal_Memory_AllocParams *params)
General memory allocation.
Void | ti_sdo_ce_osal_Memory_cacheInv (Ptr addr, Int sizeInBytes)
Invalidate a range of cache.
Void | ti_sdo_ce_osal_Memory_cacheWb (Ptr addr, Int sizeInBytes)
Write back cache.
Void | ti_sdo_ce_osal_Memory_cacheWbInv (Ptr addr, Int sizeInBytes)
Write back and invalidate cache.
Void | ti_sdo_ce_osal_Memory_cacheWbInvAll ()
Write back and invalidate the entire cache. Not supported yet on all OS's.
Ptr | ti_sdo_ce_osal_Memory_contigAlloc (UInt size, UInt align)
Allocate physically contiguous blocks of memory.
Bool | ti_sdo_ce_osal_Memory_contigFree (Ptr addr, UInt size)
Free memory allocated by ti_sdo_ce_osal_Memory_contigAlloc()
Bool | ti_sdo_ce_osal_Memory_free (Ptr addr, UInt size, ti_sdo_ce_osal_Memory_AllocParams *params)
Free memory allocated with ti_sdo_ce_osal_Memory_alloc().
UInt32 | ti_sdo_ce_osal_Memory_getBufferPhysicalAddress (Ptr virtualAddress, Int sizeInBytes, Bool *isContiguous)
Converts application virtual address to a physical address.
Ptr | ti_sdo_ce_osal_Memory_getBufferVirtualAddress (UInt32 physicalAddress, Int sizeInBytes)
Obtains the virtual address of a physically contiguous buffer.

Variables

ti_sdo_ce_osal_Memory_AllocParams ti_sdo_ce_osal_Memory_DEFAULTPARAMS
Default parameters for ti_sdo_ce_osal_Memory_alloc() & ti_sdo_ce_osal_Memory_free()


Codec Engine Application Programming Interface (API): Server.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
Data Structures | Defines | Typedefs | Enumerations | Functions

Server.h File Reference

Detailed Description

The Codec Engine Server Interface. Provides the user an inteface to open and manipulate a Server which contains remote algorithms.

#include <stdio.h>
Include dependency graph for Server.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | Server_MemStat
Information for a memory heap of a remote DSP server. More...

Defines

#define | Server_MODNAME "ti.sdo.ce.Server"
Name to pass to Diags_setMask() to enable logging for Server functions. For example, Diags_setMask(Server_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.
#define | Server_MAXSEGNAMELENGTH 32
Maximum number of characters used in memory segment names.

Typedefs

typedef struct Server_Obj * | Server_Handle
Opaque handle to the server for an engine.
typedef enum Server_Status | Server_Status
Server error code.
typedef struct Server_MemStat | Server_MemStat
Information for a memory heap of a remote DSP server.

Enumerations

enum Server_Status {
Server_EOK = 0,
Server_ENOSERVER = 1,
Server_ENOMEM = 2,
Server_ERUNTIME = 3,
Server_EINVAL = 4,
Server_EWRONGSTATE = 5,
Server_EINUSE = 6,
Server_ENOTFOUND = 7,
Server_EFAIL = 8
}

Server error code.

More...

Functions

Server_Status | Server_connectTrace (Server_Handle server, Int *token)
Connect to server for purposes of collecting trace and/or LOG data.
Server_Status | Server_disconnectTrace (Server_Handle server, Int token)
Disconnect from server when finished collecting trace and/or LOG data.
Int | Server_fwriteTrace (Server_Handle server, String prefix, FILE *out)
Write Server's trace buffer to specifed file stream.
Int | Server_getCpuLoad (Server_Handle server)
Get Server's CPU usage in percent.
Server_Status | Server_getMemStat (Server_Handle server, Int segNum, Server_MemStat *memStat)
Get information on a memory heap segment of a remote DSP server.
Server_Status | Server_getNumMemSegs (Server_Handle server, Int *numSegs)
Get the number of memory heap segments of a remote DSP server.
Server_Status | Server_redefineHeap (Server_Handle server, String name, Uint32 base, Uint32 size)
Set the base address and size of a remote DSP server heap.
Server_Status | Server_restoreHeap (Server_Handle server, String name)
Set the base address and size of a remote DSP server heap back to their original values.
Int | Server_setTrace (Server_Handle server, String mask)
Set Server's trace mask.


Codec Engine Application Programming Interface (API): sphdec.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • speech
Defines | Typedefs | Functions

sphdec.h File Reference

Detailed Description

The SPHDEC speech decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined ISPHDEC speech decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/isphdec.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for sphdec.h:

Go to the source code of this file.

Defines

#define | SPHDEC_EOK ISPHDEC_EOK
#define | SPHDEC_EFAIL ISPHDEC_EFAIL
#define | SPHDEC_ERUNTIME ISPHDEC_ERUNTIME
#define | SPHDEC_ETIMEOUT VISA_ETIMEOUT
#define | SPHDEC_FOREVER VISA_FOREVER

Typedefs

typedef ISPHDEC_Status | SPHDEC_Status
typedef VISA_Handle | SPHDEC_Handle
Opaque handle to a SPHDEC codec.
typedef struct ISPHDEC_Params | SPHDEC_Params
This structure defines the parameters necessary to create an instance of a speech decoder object.
typedef ISPHDEC_InArgs | SPHDEC_InArgs
typedef ISPHDEC_OutArgs | SPHDEC_OutArgs
typedef ISPHDEC_Cmd | SPHDEC_Cmd
typedef ISPHDEC_DynamicParams | SPHDEC_DynamicParams

Functions

SPHDEC_Handle | SPHDEC_create (Engine_Handle e, String name, SPHDEC_Params *params)
Create an instance of a speech decoder algorithm.
Int32 | SPHDEC_process (SPHDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, SPHDEC_InArgs *inArgs, SPHDEC_OutArgs *outArgs)
Execute the process() method in this instance of a speech decoder algorithm.
Int32 | SPHDEC_control (SPHDEC_Handle handle, SPHDEC_Cmd id, SPHDEC_DynamicParams *params, SPHDEC_Status *status)
Execute the control method in this instance of a speech decoder algorithm.
Void | SPHDEC_delete (SPHDEC_Handle handle)
Delete the instance of a speech/voice decoder algorithm.
XDAS_Int32 | SPHDEC_processAsync (SPHDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, SPHDEC_InArgs *inArgs, SPHDEC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a speech decoder algorithm.
XDAS_Int32 | SPHDEC_processWait (SPHDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, SPHDEC_InArgs *inArgs, SPHDEC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of SPHDEC_processAsync() in this instance of an speech decoder algorithm.


Codec Engine Application Programming Interface (API): sphdec1.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • speech1
Defines | Typedefs | Functions

sphdec1.h File Reference

Detailed Description

The SPHDEC1 speech decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined ISPHDEC1 speech decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/isphdec1.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for sphdec1.h:

Go to the source code of this file.

Defines

#define | SPHDEC1_EOK ISPHDEC1_EOK
#define | SPHDEC1_EFAIL ISPHDEC1_EFAIL
#define | SPHDEC1_EUNSUPPORTED ISPHDEC1_EUNSUPPORTED
#define | SPHDEC1_ETIMEOUT VISA_ETIMEOUT
#define | SPHDEC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | SPHDEC1_Handle
Opaque handle to a SPHDEC1 codec.
typedef ISPHDEC1_Params | SPHDEC1_Params
typedef ISPHDEC1_InArgs | SPHDEC1_InArgs
typedef ISPHDEC1_OutArgs | SPHDEC1_OutArgs
typedef ISPHDEC1_Cmd | SPHDEC1_Cmd
typedef ISPHDEC1_DynamicParams | SPHDEC1_DynamicParams
typedef ISPHDEC1_Status | SPHDEC1_Status

Functions

Int32 | SPHDEC1_control (SPHDEC1_Handle handle, SPHDEC1_Cmd id, SPHDEC1_DynamicParams *params, SPHDEC1_Status *status)
Execute the control() method in this instance of a speech decoder algorithm.
SPHDEC1_Handle | SPHDEC1_create (Engine_Handle e, String name, SPHDEC1_Params *params)
Create an instance of a speech decoder algorithm.
Void | SPHDEC1_delete (SPHDEC1_Handle handle)
Delete the instance of a speech decoder algorithm.
Int32 | SPHDEC1_process (SPHDEC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHDEC1_InArgs *inArgs, SPHDEC1_OutArgs *outArgs)
Execute the process() method in this instance of a speech decoder algorithm.
XDAS_Int32 | SPHDEC1_processAsync (SPHDEC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHDEC1_InArgs *inArgs, SPHDEC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a speech decoder algorithm.
XDAS_Int32 | SPHDEC1_processWait (SPHDEC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHDEC1_InArgs *inArgs, SPHDEC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of SPHDEC1_processAsync() in this instance of an speech decoder algorithm.


Codec Engine Application Programming Interface (API): sphenc.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • speech
Defines | Typedefs | Functions

sphenc.h File Reference

Detailed Description

The SPHENC speech encoder codec interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM ISPHENC speech encoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/isphenc.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for sphenc.h:

Go to the source code of this file.

Defines

#define | SPHENC_EOK ISPHENC_EOK
#define | SPHENC_EFAIL ISPHENC_EFAIL
#define | SPHENC_ERUNTIME ISPHENC_ERUNTIME
#define | SPHENC_ETIMEOUT VISA_ETIMEOUT
#define | SPHENC_FOREVER VISA_FOREVER

Typedefs

typedef ISPHENC_Status | SPHENC_Status
typedef VISA_Handle | SPHENC_Handle
Opaque handle to a SPHENC codec.
typedef struct ISPHENC_Params | SPHENC_Params
This structure defines the parameters necessary to create an instance of a Speech/Voice Encoder object.
typedef ISPHENC_InArgs | SPHENC_InArgs
typedef ISPHENC_OutArgs | SPHENC_OutArgs
typedef ISPHENC_Cmd | SPHENC_Cmd
typedef ISPHENC_DynamicParams | SPHENC_DynamicParams

Functions

SPHENC_Handle | SPHENC_create (Engine_Handle e, String name, SPHENC_Params *params)
Create an instance of a speech encoder algorithm.
Int32 | SPHENC_process (SPHENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, SPHENC_InArgs *inArgs, SPHENC_OutArgs *outArgs)
Execute the process() method in this instance of a speech encoder algorithm.
Int32 | SPHENC_control (SPHENC_Handle handle, SPHENC_Cmd id, SPHENC_DynamicParams *params, SPHENC_Status *status)
Execute the control method in this instance of a speech encoder algorithm.
Void | SPHENC_delete (SPHENC_Handle handle)
Delete the instance of a speech/voice encoder algorithm.
XDAS_Int32 | SPHENC_processAsync (SPHENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, ISPHENC_InArgs *inArgs, ISPHENC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a speech decoder algorithm.
XDAS_Int32 | SPHENC_processWait (SPHENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, ISPHENC_InArgs *inArgs, ISPHENC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of SPHENC_processAsync() in this instance of an speech decoder algorithm.


Codec Engine Application Programming Interface (API): sphenc1.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • speech1
Defines | Typedefs | Functions

sphenc1.h File Reference

Detailed Description

The SPHENC1 speech encoder codec interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined ISPHENC1 speech encoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/isphenc1.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for sphenc1.h:

Go to the source code of this file.

Defines

#define | SPHENC1_EOK ISPHENC1_EOK
#define | SPHENC1_EFAIL ISPHENC1_EFAIL
#define | SPHENC1_EUNSUPPORTED ISPHENC1_EUNSUPPORTED
#define | SPHENC1_ETIMEOUT VISA_ETIMEOUT
#define | SPHENC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | SPHENC1_Handle
Opaque handle to a SPHENC1 codec.
typedef ISPHENC1_Params | SPHENC1_Params
typedef ISPHENC1_InArgs | SPHENC1_InArgs
typedef ISPHENC1_OutArgs | SPHENC1_OutArgs
typedef ISPHENC1_Cmd | SPHENC1_Cmd
typedef ISPHENC1_DynamicParams | SPHENC1_DynamicParams
typedef ISPHENC1_Status | SPHENC1_Status

Functions

Int32 | SPHENC1_control (SPHENC1_Handle handle, SPHENC1_Cmd id, SPHENC1_DynamicParams *params, SPHENC1_Status *status)
Execute the control() method in this instance of a speech encoder algorithm.
SPHENC1_Handle | SPHENC1_create (Engine_Handle e, String name, SPHENC1_Params *params)
Create an instance of a speech encoder algorithm.
Void | SPHENC1_delete (SPHENC1_Handle handle)
Delete the instance of a speech encoder algorithm.
Int32 | SPHENC1_process (SPHENC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHENC1_InArgs *inArgs, SPHENC1_OutArgs *outArgs)
Execute the process() method in this instance of a speech encoder algorithm.
XDAS_Int32 | SPHENC1_processAsync (SPHENC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHENC1_InArgs *inArgs, SPHENC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a speech encoder algorithm.
XDAS_Int32 | SPHENC1_processWait (SPHENC1_Handle handle, XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf, SPHENC1_InArgs *inArgs, SPHENC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of SPHENC1_processAsync() in this instance of an speech encoder algorithm.


Codec Engine Application Programming Interface (API): universal.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • universal
Defines | Typedefs | Functions

universal.h File Reference

Detailed Description

The "universal" algorithm interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM IUNIVERSAL interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/iuniversal.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for universal.h:

Go to the source code of this file.

Defines

#define | UNIVERSAL_EOK IUNIVERSAL_EOK
#define | UNIVERSAL_EFAIL IUNIVERSAL_EFAIL
#define | UNIVERSAL_EUNSUPPORTED IUNIVERSAL_EUNSUPPORTED
#define | UNIVERSAL_ETIMEOUT VISA_ETIMEOUT
#define | UNIVERSAL_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | UNIVERSAL_Handle
Opaque handle to a UNIVERSAL codec.
typedef struct IUNIVERSAL_Params | UNIVERSAL_Params
This structure defines the parameters necessary to create an instance of a "universal" algorithm.
typedef IUNIVERSAL_InArgs | UNIVERSAL_InArgs
typedef IUNIVERSAL_OutArgs | UNIVERSAL_OutArgs
typedef IUNIVERSAL_Cmd | UNIVERSAL_Cmd
typedef IUNIVERSAL_Status | UNIVERSAL_Status
typedef IUNIVERSAL_DynamicParams | UNIVERSAL_DynamicParams

Functions

Int32 | UNIVERSAL_control (UNIVERSAL_Handle handle, UNIVERSAL_Cmd id, UNIVERSAL_DynamicParams *params, UNIVERSAL_Status *status)
Execute the control() method in this instance of a "universal" algorithm.
UNIVERSAL_Handle | UNIVERSAL_create (Engine_Handle e, String name, UNIVERSAL_Params *params)
Create an instance of a universal algorithm.
Void | UNIVERSAL_delete (UNIVERSAL_Handle handle)
Delete the instance of a universal algorithm.
Int32 | UNIVERSAL_process (UNIVERSAL_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs, UNIVERSAL_InArgs *inArgs, UNIVERSAL_OutArgs *outArgs)
Execute the process() method in this instance of a universal algorithm.
XDAS_Int32 | UNIVERSAL_processAsync (UNIVERSAL_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs, IUNIVERSAL_InArgs *inArgs, IUNIVERSAL_OutArgs *outArgs)
Perform asynchronous submission to this instance of a universal algorithm.
XDAS_Int32 | UNIVERSAL_processWait (UNIVERSAL_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs, IUNIVERSAL_InArgs *inArgs, IUNIVERSAL_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of UNIVERSAL_processAsync() in this instance of a universal algorithm.


Codec Engine Application Programming Interface (API): vidanalytics.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • vidanalytics
Defines | Typedefs | Functions

vidanalytics.h File Reference

Detailed Description

The VIDANALYTICS video analytics interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDANALYTICS video analytics interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/ividanalytics.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for vidanalytics.h:

Go to the source code of this file.

Defines

#define | VIDANALYTICS_EOK IVIDANALYTICS_EOK
#define | VIDANALYTICS_EFAIL IVIDANALYTICS_EFAIL
#define | VIDANALYTICS_EUNSUPPORTED IVIDANALYTICS_EUNSUPPORTED
#define | VIDANALYTICS_ETIMEOUT VISA_ETIMEOUT
#define | VIDANALYTICS_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDANALYTICS_Handle
Opaque handle to a VIDANALYTICS codec.
typedef IVIDANALYTICS_Params | VIDANALYTICS_Params
typedef IVIDANALYTICS_InArgs | VIDANALYTICS_InArgs
typedef IVIDANALYTICS_OutArgs | VIDANALYTICS_OutArgs
typedef IVIDANALYTICS_Cmd | VIDANALYTICS_Cmd
typedef IVIDANALYTICS_DynamicParams | VIDANALYTICS_DynamicParams
typedef IVIDANALYTICS_Status | VIDANALYTICS_Status

Functions

Int32 | VIDANALYTICS_control (VIDANALYTICS_Handle handle, VIDANALYTICS_Cmd id, VIDANALYTICS_DynamicParams *params, VIDANALYTICS_Status *status)
Execute the control() method in this instance of a video analytics algorithm.
VIDANALYTICS_Handle | VIDANALYTICS_create (Engine_Handle e, String name, VIDANALYTICS_Params *params)
Create an instance of a video analytics algorithm.
Void | VIDANALYTICS_delete (VIDANALYTICS_Handle handle)
Delete the instance of a video analytics algorithm.
Int32 | VIDANALYTICS_process (VIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, VIDANALYTICS_InArgs *inArgs, VIDANALYTICS_OutArgs *outArgs)
Execute the process() method in this instance of a video analytics algorithm.
XDAS_Int32 | VIDANALYTICS_processAsync (VIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs, IVIDANALYTICS_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video analytics algorithm.
XDAS_Int32 | VIDANALYTICS_processWait (VIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs, IVIDANALYTICS_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDANALYTICS_processAsync() in this instance of an video analytics algorithm.


Codec Engine Application Programming Interface (API): viddec.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video
Data Structures | Defines | Typedefs | Functions

viddec.h File Reference

Detailed Description

The VIDDEC video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC video decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/ividdec.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for viddec.h:

Go to the source code of this file.

Data Structures

struct | IVIDDEC_CodecClassConfig
Definition of VIDDEC codec class configurable parameters. More...

Defines

#define | VIDDEC_EOK IVIDDEC_EOK
#define | VIDDEC_EFAIL IVIDDEC_EFAIL
#define | VIDDEC_ERUNTIME IVIDDEC_ERUNTIME
#define | VIDDEC_ETIMEOUT VISA_ETIMEOUT
#define | VIDDEC_FOREVER VISA_FOREVER

Typedefs

typedef IVIDDEC_Status | VIDDEC_Status
typedef VISA_Handle | VIDDEC_Handle
Opaque handle to a VIDDEC codec.
typedef struct IVIDDEC_Params | VIDDEC_Params
This structure defines the parameters necessary to create an instance of a video decoder object.
typedef IVIDDEC_InArgs | VIDDEC_InArgs
typedef IVIDDEC_OutArgs | VIDDEC_OutArgs
typedef IVIDDEC_Cmd | VIDDEC_Cmd
typedef IVIDDEC_DynamicParams | VIDDEC_DynamicParams
typedef struct
IVIDDEC_CodecClassConfig 		IVIDDEC_CodecClassConfig
Definition of VIDDEC codec class configurable parameters.

Functions

VIDDEC_Handle | VIDDEC_create (Engine_Handle e, String name, VIDDEC_Params *params)
Create an instance of a video decoder algorithm.
Int32 | VIDDEC_process (VIDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC_InArgs *inArgs, VIDDEC_OutArgs *outArgs)
Execute the process() method in this instance of a video decoder algorithm.
Int32 | VIDDEC_control (VIDDEC_Handle handle, VIDDEC_Cmd id, VIDDEC_DynamicParams *params, VIDDEC_Status *status)
Execute the "control" method in this instance of a video decoder algorithm.
Void | VIDDEC_delete (VIDDEC_Handle handle)
Delete the instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC_processAsync (VIDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC_InArgs *inArgs, VIDDEC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC_processWait (VIDDEC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC_InArgs *inArgs, VIDDEC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDDEC_processAsync() in this instance of an video decoder algorithm.


Codec Engine Application Programming Interface (API): viddec1.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video1
Data Structures | Defines | Typedefs | Functions

viddec1.h File Reference

Detailed Description

The VIDDEC1 video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC1 video decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/ividdec1.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for viddec1.h:

Go to the source code of this file.

Data Structures

struct | IVIDDEC1_CodecClassConfig
Definition of IVIDDEC1 codec class configurable parameters. More...

Defines

#define | VIDDEC1_EOK IVIDDEC1_EOK
#define | VIDDEC1_EFAIL IVIDDEC1_EFAIL
#define | VIDDEC1_EUNSUPPORTED IVIDDEC1_EUNSUPPORTED
#define | VIDDEC1_ETIMEOUT VISA_ETIMEOUT
#define | VIDDEC1_FOREVER VISA_FOREVER

Typedefs

typedef IVIDDEC1_Status | VIDDEC1_Status
typedef VISA_Handle | VIDDEC1_Handle
Opaque handle to a VIDDEC1 codec.
typedef struct IVIDDEC1_Params | VIDDEC1_Params
This structure defines the parameters necessary to create an instance of a Video Decoder object.
typedef IVIDDEC1_InArgs | VIDDEC1_InArgs
typedef IVIDDEC1_OutArgs | VIDDEC1_OutArgs
typedef IVIDDEC1_Cmd | VIDDEC1_Cmd
typedef IVIDDEC1_DynamicParams | VIDDEC1_DynamicParams
typedef struct
IVIDDEC1_CodecClassConfig 		IVIDDEC1_CodecClassConfig
Definition of IVIDDEC1 codec class configurable parameters.

Functions

VIDDEC1_Handle | VIDDEC1_create (Engine_Handle e, String name, VIDDEC1_Params *params)
Create an instance of a video decoder algorithm.
Int32 | VIDDEC1_process (VIDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC1_InArgs *inArgs, VIDDEC1_OutArgs *outArgs)
Execute the process() method in this instance of a video decoder algorithm.
Int32 | VIDDEC1_control (VIDDEC1_Handle handle, VIDDEC1_Cmd id, VIDDEC1_DynamicParams *params, VIDDEC1_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
Void | VIDDEC1_delete (VIDDEC1_Handle handle)
Delete the instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC1_processAsync (VIDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC1_InArgs *inArgs, VIDDEC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC1_processWait (VIDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC1_InArgs *inArgs, VIDDEC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDDEC1_processAsync() in this instance of an video decoder algorithm.


Codec Engine Application Programming Interface (API): viddec2.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video2
  • split
Data Structures | Typedefs | Functions

split/viddec2.h File Reference

Detailed Description

The VIDDEC2 split video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC2FRONT or IVIDDEC2BACK video decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/split/ividdec2.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
#include <ti/sdo/ce/video2/viddec2.h>
Include dependency graph for split/viddec2.h:

Go to the source code of this file.

Data Structures

struct | IVIDDEC2BACK_CodecClassConfig
Definition of IVIDDEC2BACK codec class configurable parameters. More...

Typedefs

typedef IVIDDEC2FRONT_Status | VIDDEC2FRONT_Status
typedef VISA_Handle | VIDDEC2FRONT_Handle
Opaque handle to a VIDDEC2FRONT codec.
typedef VISA_Handle | VIDDEC2BACK_Handle
Opaque handle to a VIDDEC2BACK codec.
typedef IVIDDEC2FRONT_OutArgs | VIDDEC2FRONT_OutArgs
typedef struct
IVIDDEC2BACK_CodecClassConfig 		IVIDDEC2BACK_CodecClassConfig
Definition of IVIDDEC2BACK codec class configurable parameters.

Functions

VIDDEC2BACK_Handle | VIDDEC2BACK_create (Engine_Handle e, String name, VIDDEC2_Params *params)
Create an instance of the BACK end of a split video decoder algorithm.
Int32 | VIDDEC2BACK_process (VIDDEC2BACK_Handle handle, XDM_Context *context, VIDDEC2_OutArgs *outArgs)
Execute the process() method in this instance of a BACK side split video decoder algorithm.
Int32 | VIDDEC2BACK_control (VIDDEC2BACK_Handle handle, XDM_Context *context, VIDDEC2_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
Void | VIDDEC2BACK_delete (VIDDEC2BACK_Handle handle)
Delete the instance of a video decoder algorithm.
VIDDEC2FRONT_Handle | VIDDEC2FRONT_create (Engine_Handle e, String name, VIDDEC2_Params *params)
Create an instance of the FRONT end of a split video decoder algorithm.
Int32 | VIDDEC2FRONT_process (VIDDEC2FRONT_Handle handle, VIDDEC2_InArgs *inArgs, XDM_Context *context, VIDDEC2FRONT_OutArgs *outArgs)
Execute the process() method in this instance of a FRONT side split video decoder algorithm.
Int32 | VIDDEC2FRONT_control (VIDDEC2FRONT_Handle handle, VIDDEC2_Cmd id, VIDDEC2_DynamicParams *params, XDM_Context *context, VIDDEC2FRONT_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
Void | VIDDEC2FRONT_delete (VIDDEC2FRONT_Handle handle)
Delete the instance of a video decoder algorithm.


Codec Engine Application Programming Interface (API): viddec2.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video2
Data Structures | Defines | Typedefs | Functions

viddec2.h File Reference

Detailed Description

The VIDDEC2 video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC2 video decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/ividdec2.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for viddec2.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | IVIDDEC2_CodecClassConfig
Definition of IVIDDEC2 codec class configurable parameters. More...

Defines

#define | VIDDEC2_EOK IVIDDEC2_EOK
#define | VIDDEC2_EFAIL IVIDDEC2_EFAIL
#define | VIDDEC2_EUNSUPPORTED IVIDDEC2_EUNSUPPORTED
#define | VIDDEC2_ETIMEOUT VISA_ETIMEOUT
#define | VIDDEC2_FOREVER VISA_FOREVER

Typedefs

typedef IVIDDEC2_Status | VIDDEC2_Status
typedef VISA_Handle | VIDDEC2_Handle
Opaque handle to a VIDDEC2 codec.
typedef struct IVIDDEC2_Params | VIDDEC2_Params
This structure defines the parameters necessary to create an instance of a video decoder object.
typedef IVIDDEC2_InArgs | VIDDEC2_InArgs
typedef IVIDDEC2_OutArgs | VIDDEC2_OutArgs
typedef IVIDDEC2_Cmd | VIDDEC2_Cmd
typedef IVIDDEC2_DynamicParams | VIDDEC2_DynamicParams
typedef struct
IVIDDEC2_CodecClassConfig 		IVIDDEC2_CodecClassConfig
Definition of IVIDDEC2 codec class configurable parameters.

Functions

VIDDEC2_Handle | VIDDEC2_create (Engine_Handle e, String name, VIDDEC2_Params *params)
Create an instance of a video decoder algorithm.
Int32 | VIDDEC2_process (VIDDEC2_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC2_InArgs *inArgs, VIDDEC2_OutArgs *outArgs)
Execute the process() method in this instance of a video decoder algorithm.
Int32 | VIDDEC2_control (VIDDEC2_Handle handle, VIDDEC2_Cmd id, VIDDEC2_DynamicParams *params, VIDDEC2_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
Void | VIDDEC2_delete (VIDDEC2_Handle handle)
Delete the instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC2_processAsync (VIDDEC2_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC2_InArgs *inArgs, VIDDEC2_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDDEC2_processWait (VIDDEC2_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDDEC2_InArgs *inArgs, VIDDEC2_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDDEC2_processAsync() in this instance of an video decoder algorithm.


Codec Engine Application Programming Interface (API): viddec3.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video3
Data Structures | Defines | Typedefs | Functions

viddec3.h File Reference

Detailed Description

The VIDDEC3 video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC3 video decoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/ividdec3.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for viddec3.h:

Go to the source code of this file.

Data Structures

struct | IVIDDEC3_CodecClassConfig
Definition of IVIDDEC3 codec class configurable parameters. More...

Defines

#define | VIDDEC3_EOK IVIDDEC3_EOK
#define | VIDDEC3_EFAIL IVIDDEC3_EFAIL
#define | VIDDEC3_EUNSUPPORTED IVIDDEC3_EUNSUPPORTED
#define | VIDDEC3_ETIMEOUT VISA_ETIMEOUT
#define | VIDDEC3_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDDEC3_Handle
Opaque handle to a VIDDEC3 codec.
typedef struct IVIDDEC3_Params | VIDDEC3_Params
typedef IVIDDEC3_InArgs | VIDDEC3_InArgs
typedef IVIDDEC3_OutArgs | VIDDEC3_OutArgs
typedef IVIDDEC3_Cmd | VIDDEC3_Cmd
typedef IVIDDEC3_DynamicParams | VIDDEC3_DynamicParams
typedef IVIDDEC3_Status | VIDDEC3_Status
typedef struct
IVIDDEC3_CodecClassConfig 		IVIDDEC3_CodecClassConfig
Definition of IVIDDEC3 codec class configurable parameters.

Functions

Int32 | VIDDEC3_control (VIDDEC3_Handle handle, VIDDEC3_Cmd id, VIDDEC3_DynamicParams *params, VIDDEC3_Status *status)
Execute the control() method in this instance of a video decoder algorithm.
VIDDEC3_Handle | VIDDEC3_create (Engine_Handle e, String name, VIDDEC3_Params *params)
Create an instance of a video decoder algorithm.
Void | VIDDEC3_delete (VIDDEC3_Handle handle)
Delete the instance of a video decoder algorithm.
Int32 | VIDDEC3_process (VIDDEC3_Handle handle, XDM2_BufDesc *inBufs, XDM2_BufDesc *outBufs, VIDDEC3_InArgs *inArgs, VIDDEC3_OutArgs *outArgs)
Execute the process() method in this instance of a video decoder algorithm.


Codec Engine Application Programming Interface (API): videnc.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video
Data Structures | Defines | Typedefs | Functions

videnc.h File Reference

Detailed Description

The VIDENC video encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDENC video encoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/ividenc.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for videnc.h:

Go to the source code of this file.

Data Structures

struct | IVIDENC_CodecClassConfig
Definition of IVIDENC codec class configurable parameters. More...

Defines

#define | VIDENC_EOK IVIDENC_EOK
#define | VIDENC_EFAIL IVIDENC_EFAIL
#define | VIDENC_ERUNTIME IVIDENC_ERUNTIME
#define | VIDENC_ETIMEOUT VISA_ETIMEOUT
#define | VIDENC_FOREVER VISA_FOREVER

Typedefs

typedef IVIDENC_Status | VIDENC_Status
typedef VISA_Handle | VIDENC_Handle
Opaque handle to a VIDENC codec.
typedef struct IVIDENC_Params | VIDENC_Params
This structure defines the parameters necessary to create an instance of a video encoder object.
typedef IVIDENC_InArgs | VIDENC_InArgs
typedef IVIDENC_OutArgs | VIDENC_OutArgs
typedef IVIDENC_Cmd | VIDENC_Cmd
typedef IVIDENC_DynamicParams | VIDENC_DynamicParams
typedef struct
IVIDENC_CodecClassConfig 		IVIDENC_CodecClassConfig
Definition of IVIDENC codec class configurable parameters.

Functions

VIDENC_Handle | VIDENC_create (Engine_Handle e, String name, VIDENC_Params *params)
Create an instance of a video encoder algorithm.
Int32 | VIDENC_process (VIDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDENC_InArgs *inArgs, VIDENC_OutArgs *outArgs)
Execute the process() method in this instance of a video encoder algorithm.
Int32 | VIDENC_control (VIDENC_Handle handle, VIDENC_Cmd id, VIDENC_DynamicParams *params, VIDENC_Status *status)
Execute the control() method in this instance of a video encoder algorithm.
Void | VIDENC_delete (VIDENC_Handle handle)
Delete the instance of a video encoder algorithm.
XDAS_Int32 | VIDENC_processAsync (VIDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDENC_InArgs *inArgs, IVIDENC_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDENC_processWait (VIDENC_Handle handle, XDM_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDENC_InArgs *inArgs, IVIDENC_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDENC_processAsync() in this instance of an video decoder algorithm.


Codec Engine Application Programming Interface (API): videnc1.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video1
Data Structures | Defines | Typedefs | Functions

videnc1.h File Reference

Detailed Description

The VIDENC1 video encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDENC1 video encoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/ividenc1.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for videnc1.h:

Go to the source code of this file.

Data Structures

struct | IVIDENC1_CodecClassConfig
Definition of IVIDENC1 codec class configurable parameters. More...

Defines

#define | VIDENC1_EOK IVIDENC1_EOK
#define | VIDENC1_EFAIL IVIDENC1_EFAIL
#define | VIDENC1_EUNSUPPORTED IVIDENC1_EUNSUPPORTED
#define | VIDENC1_ETIMEOUT VISA_ETIMEOUT
#define | VIDENC1_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDENC1_Handle
Opaque handle to a VIDENC1 codec.
typedef struct IVIDENC1_Params | VIDENC1_Params
typedef IVIDENC1_InArgs | VIDENC1_InArgs
typedef IVIDENC1_OutArgs | VIDENC1_OutArgs
typedef IVIDENC1_Cmd | VIDENC1_Cmd
typedef IVIDENC1_DynamicParams | VIDENC1_DynamicParams
typedef IVIDENC1_Status | VIDENC1_Status
typedef struct
IVIDENC1_CodecClassConfig 		IVIDENC1_CodecClassConfig
Definition of IVIDENC1 codec class configurable parameters.

Functions

Int32 | VIDENC1_control (VIDENC1_Handle handle, VIDENC1_Cmd id, VIDENC1_DynamicParams *params, VIDENC1_Status *status)
Execute the control() method in this instance of a video encoder algorithm.
VIDENC1_Handle | VIDENC1_create (Engine_Handle e, String name, VIDENC1_Params *params)
Create an instance of a video encoder algorithm.
Void | VIDENC1_delete (VIDENC1_Handle handle)
Delete the instance of a video encoder algorithm.
Int32 | VIDENC1_process (VIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs, VIDENC1_InArgs *inArgs, VIDENC1_OutArgs *outArgs)
Execute the process() method in this instance of a video encoder algorithm.
XDAS_Int32 | VIDENC1_processAsync (VIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs, IVIDENC1_InArgs *inArgs, IVIDENC1_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDENC1_processWait (VIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs, IVIDENC1_InArgs *inArgs, IVIDENC1_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDENC1_processAsync() in this instance of an video decoder algorithm.


Codec Engine Application Programming Interface (API): videnc2.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video2
Data Structures | Defines | Typedefs | Functions

videnc2.h File Reference

Detailed Description

The VIDENC2 video encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDENC2 video encoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/ividenc2.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for videnc2.h:

Go to the source code of this file.

Data Structures

struct | IVIDENC2_CodecClassConfig
Definition of IVIDENC2 codec class configurable parameters. More...

Defines

#define | VIDENC2_EOK IVIDENC2_EOK
#define | VIDENC2_EFAIL IVIDENC2_EFAIL
#define | VIDENC2_EUNSUPPORTED IVIDENC2_EUNSUPPORTED
#define | VIDENC2_ETIMEOUT VISA_ETIMEOUT
#define | VIDENC2_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDENC2_Handle
Opaque handle to a VIDENC2 codec.
typedef struct IVIDENC2_Params | VIDENC2_Params
typedef IVIDENC2_InArgs | VIDENC2_InArgs
typedef IVIDENC2_OutArgs | VIDENC2_OutArgs
typedef IVIDENC2_Cmd | VIDENC2_Cmd
typedef IVIDENC2_DynamicParams | VIDENC2_DynamicParams
typedef IVIDENC2_Status | VIDENC2_Status
typedef struct
IVIDENC2_CodecClassConfig 		IVIDENC2_CodecClassConfig
Definition of IVIDENC2 codec class configurable parameters.

Functions

Int32 | VIDENC2_control (VIDENC2_Handle handle, VIDENC2_Cmd id, VIDENC2_DynamicParams *params, VIDENC2_Status *status)
Execute the control() method in this instance of a video encoder algorithm.
VIDENC2_Handle | VIDENC2_create (Engine_Handle e, String name, VIDENC2_Params *params)
Create an instance of a video encoder algorithm.
Void | VIDENC2_delete (VIDENC2_Handle handle)
Delete the instance of a video encoder algorithm.
Int32 | VIDENC2_process (VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, VIDENC2_InArgs *inArgs, VIDENC2_OutArgs *outArgs)
Execute the process() method in this instance of a video encoder algorithm.
XDAS_Int32 | VIDENC2_processAsync (VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video decoder algorithm.
XDAS_Int32 | VIDENC2_processWait (VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDENC2_processAsync() in this instance of an video decoder algorithm.


Codec Engine Application Programming Interface (API): vidtranscode.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • vidtranscode
Defines | Typedefs | Functions

vidtranscode.h File Reference

Detailed Description

The VIDTRANSCODE video transcoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDTRANSCODE video transcoder interface.

#include <ti/xdais/dm/xdm.h>
#include <ti/xdais/dm/ividtranscode.h>
#include <ti/sdo/ce/Engine.h>
#include <ti/sdo/ce/visa.h>
#include <ti/sdo/ce/skel.h>
Include dependency graph for vidtranscode.h:

Go to the source code of this file.

Defines

#define | VIDTRANSCODE_EOK IVIDTRANSCODE_EOK
#define | VIDTRANSCODE_EFAIL IVIDTRANSCODE_EFAIL
#define | VIDTRANSCODE_EUNSUPPORTED IVIDTRANSCODE_EUNSUPPORTED
#define | VIDTRANSCODE_ETIMEOUT VISA_ETIMEOUT
#define | VIDTRANSCODE_FOREVER VISA_FOREVER

Typedefs

typedef VISA_Handle | VIDTRANSCODE_Handle
Opaque handle to a VIDTRANSCODE codec.
typedef struct IVIDTRANSCODE_Params | VIDTRANSCODE_Params
typedef IVIDTRANSCODE_InArgs | VIDTRANSCODE_InArgs
typedef IVIDTRANSCODE_OutArgs | VIDTRANSCODE_OutArgs
typedef IVIDTRANSCODE_Cmd | VIDTRANSCODE_Cmd
typedef IVIDTRANSCODE_DynamicParams | VIDTRANSCODE_DynamicParams
typedef IVIDTRANSCODE_Status | VIDTRANSCODE_Status

Functions

Int32 | VIDTRANSCODE_control (VIDTRANSCODE_Handle handle, VIDTRANSCODE_Cmd id, VIDTRANSCODE_DynamicParams *params, VIDTRANSCODE_Status *status)
Execute the control() method in this instance of a video transcoder algorithm.
VIDTRANSCODE_Handle | VIDTRANSCODE_create (Engine_Handle e, String name, VIDTRANSCODE_Params *params)
Create an instance of a video transcoder algorithm.
Void | VIDTRANSCODE_delete (VIDTRANSCODE_Handle handle)
Delete the instance of a video transcoder algorithm.
Int32 | VIDTRANSCODE_process (VIDTRANSCODE_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDTRANSCODE_InArgs *inArgs, VIDTRANSCODE_OutArgs *outArgs)
Execute the process() method in this instance of a video transcoder algorithm.
XDAS_Int32 | VIDTRANSCODE_processAsync (VIDTRANSCODE_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDTRANSCODE_InArgs *inArgs, IVIDTRANSCODE_OutArgs *outArgs)
Perform asynchronous submission to this instance of a video transcoder algorithm.
XDAS_Int32 | VIDTRANSCODE_processWait (VIDTRANSCODE_Handle handle, XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDTRANSCODE_InArgs *inArgs, IVIDTRANSCODE_OutArgs *outArgs, UInt timeout)
Wait for a return message from a previous invocation of VIDTRANSCODE_processAsync() in this instance of an video transcoder algorithm.


Codec Engine Application Programming Interface (API): visa.h File Reference

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
Data Structures | Defines | Typedefs | Functions

visa.h File Reference

Detailed Description

The Codec Engine System Programming Interface. Provides system developers with services necessary to implement stubs and skeletons.

#include <stddef.h>
#include <ti/sdo/ce/node/node.h>
#include <ti/xdais/ialg.h>
#include <ti/sdo/ce/Engine.h>
Include dependency graph for visa.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | VISA_MsgHeader
VISA message header. More...

Defines

#define | VISA_EOK 0
Success.
#define | VISA_ERUNTIME -1
Internal runtime error.
#define | VISA_EFAIL -2
General system error.
#define | VISA_ETIMEOUT -100
Timeout occurred.
#define | VISA_FOREVER Engine_FOREVER
Special value for timeout parameter indicating never timeout.
#define | VISA_MODNAME "ti.sdo.ce.VISA"
Name to pass to Diags_setMask() to enable logging for VISA functions. For example, Diags_setMask(VISA_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.

Typedefs

typedef Int | VISA_Status
VISA result data type.
typedef struct VISA_Obj * | VISA_Handle
Opaque handle to a node.
typedef struct VISA_MsgHeader | VISA_MsgHeader
VISA message header.
typedef VISA_MsgHeader * | VISA_Msg

Functions

VISA_Msg | VISA_allocMsg (VISA_Handle visa)
Obtain an algorithm instance's message.
VISA_Status | VISA_call (VISA_Handle visa, VISA_Msg *msg)
Invoke the operation specified in the message and wait for it to complete.
VISA_Status | VISA_callAsync (VISA_Handle visa, VISA_Msg *msg)
Invoke the operation specified in the message and return without waiting for it to complete.
VISA_Status | VISA_wait (VISA_Handle visa, VISA_Msg *msg, UInt timeout)
Wait for the oldest operation from a command specified with VISA_callAsync() to complete.
Void | VISA_freeMsg (VISA_Handle visa, VISA_Msg msg)
Release an algorithm instance's message.
VISA_Status | VISA_getAlgMemRecs (VISA_Handle visa, IALG_MemRec *memTab, Int size, Int *numRecs)
Get the IALG_MemRec memory assigned to an algorithm instance.
VISA_Status | VISA_getAlgNumRecs (VISA_Handle visa, Int *numRecs)
Get the number of IALG_MemRecs assigned to an algorithm.
Void | VISA_getContext (VISA_Handle visa, UInt32 *pContext)
Get optional context parameter.
Ptr | VISA_getCodecClassConfig (VISA_Handle visa)
Get codec-specific values for the VISA class-specific (or codec-specific if the codec doesn't extend VISA) stub-and/ or-skeleton configuration data (that some classes have)
UInt | VISA_getMaxMsgSize (VISA_Handle visa)
Returns max size of messages allocated by VISA_allocMsg()
Void | VISA_setContext (VISA_Handle visa, UInt32 context)
Set optional context parameter.
Bool | VISA_isLocal (VISA_Handle visa)
Indicates whether VISA codecs run on a remote or local CPU.
VISA_Handle | VISA_create (Engine_Handle engine, String name, IALG_Params *params, size_t msgSize, String type)
Create a new instance of an algorithm.
Void | VISA_delete (VISA_Handle visa)
Delete an instance of an algorithm.
VISA_Handle | VISA_create2 (Engine_Handle engine, String name, IALG_Params *params, Int paramsSize, size_t msgSize, String type)
Create a new instance of an algorithm.
Void | VISA_enter (VISA_Handle visa)
Enter an algorithm's critical section. This must be called before any of the algorithm's IALG_Fxns are invoked.
Void | VISA_exit (VISA_Handle visa)
Leave an algorithm's critical section. This must be called after the API has completed calling an algorithm's IALG_Fxns.
Ptr | VISA_getAlgHandle (VISA_Handle visa)
Obtains an algorithm's handle. This is the handle required to be passed to the algorithm's IALG_Fxns.
Ptr | VISA_getAlgorithmHandle (VISA_Handle visa)
Obtains an algorithm's handle. If the algorithm is local, this is the handle that can be passed to Algorithm APIs, not to the IALG_Fxns.
IALG_Fxns * | VISA_getAlgFxns (VISA_Handle visa)
Get implementation functions for this algorithm.

Define Documentation

#define VISA_MODNAME "ti.sdo.ce.VISA"

Name to pass to Diags_setMask() to enable logging for VISA functions. For example, Diags_setMask(VISA_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.

Typedef Documentation

typedef struct VISA_Obj* VISA_Handle

Opaque handle to a node.

typedef VISA_MsgHeader* VISA_Msg


Codec Engine Application Programming Interface (API): xdas.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
Defines | Typedefs

xdas.h File Reference

Detailed Description

This header defines all types and constants used in the XDAS interfaces.

Remarks:
The types are mapped to the types defined in std.h.
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define | XDAS_TRUE 1
#define | XDAS_FALSE 0

Typedefs

typedef Void | XDAS_Void
typedef Uint8 | XDAS_Bool
typedef Int8 | XDAS_Int8
typedef Uint8 | XDAS_UInt8
typedef Int16 | XDAS_Int16
typedef Uint16 | XDAS_UInt16
typedef Int32 | XDAS_Int32
typedef Uint32 | XDAS_UInt32


Codec Engine Application Programming Interface (API): xdm.h File Reference

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
Data Structures | Defines | Typedefs | Enumerations

xdm.h File Reference

Detailed Description

This header defines all types, constants, and functions shared across the various XDM classes of algorithms.

#include <ti/xdais/ialg.h>
#include <ti/xdais/xdas.h>
Include dependency graph for xdm.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct | XDM_BufDesc
Buffer descriptor for multiple buffers. More...
struct | XDM_SingleBufDesc
Single buffer descriptor. More...
struct | XDM1_SingleBufDesc
Single buffer descriptor. More...
union | XDM2_BufSize
Union describing a buffer size. More...
struct | XDM2_SingleBufDesc
Single buffer descriptor. More...
struct | XDM1_BufDesc
Buffer descriptor. More...
struct | XDM2_BufDesc
Buffer descriptor. More...
struct | XDM1_AlgBufInfo
Buffer information descriptor for input and output buffers. More...
struct | XDM_AlgBufInfo
Buffer information descriptor for input and output buffers. More...
struct | XDM_Date
Date and time. More...
struct | XDM_Point
2-dimensional point More...
struct | XDM_Rect
Rectangle. More...
struct | XDM_ContextInfo
Buffer information descriptor for input and output buffers. More...
struct | XDM_Context
Context used by split codecs. More...
struct | XDM_DataSyncDesc
Descriptor for the chunk of data being transferred in one call to putData or getData. More...

Defines

#define | XDM_EOK IALG_EOK
#define | XDM_EFAIL IALG_EFAIL
#define | XDM_EUNSUPPORTED -3
#define | XDM_ERUNTIME -2
General runtime failure.
#define | XDM_MAX_IO_BUFFERS 16
#define | XDM_ISACCESSMODE_READ(x) (((x) >> XDM_ACCESSMODE_READ) & 0x1)
Check an access mask for CPU read access.
#define | XDM_ISACCESSMODE_WRITE(x) (((x) >> XDM_ACCESSMODE_WRITE) & 0x1)
Check an access mask for CPU write access.
#define | XDM_CLEARACCESSMODE_READ(x) ((x) &= (~(0x1 << XDM_ACCESSMODE_READ)))
Clear the "CPU read access" bit in an access mask.
#define | XDM_CLEARACCESSMODE_WRITE(x) ((x) &= (~(0x1 << XDM_ACCESSMODE_WRITE)))
Clear the "CPU write access" bit in an access mask.
#define | XDM_SETACCESSMODE_READ(x) ((x) |= (0x1 << XDM_ACCESSMODE_READ))
Set the bit to indicate CPU read access in an access mask.
#define | XDM_SETACCESSMODE_WRITE(x) ((x) |= (0x1 << XDM_ACCESSMODE_WRITE))
Set the bit to indicate CPU write access in an access mask.
#define | XDM_CUSTOMENUMBASE 0x100
Base of algorithm-specific enum values.
#define | XDM_CUSTOMCMDBASE 0x100
Base of algorithm-specific commands.
#define | XDM_ISFATALERROR(x) (((x) >> XDM_FATALERROR) & 0x1)
#define | XDM_ISUNSUPPORTEDPARAM(x) (((x) >> XDM_UNSUPPORTEDPARAM) & 0x1)
#define | XDM_ISUNSUPPORTEDINPUT(x) (((x) >> XDM_UNSUPPORTEDINPUT) & 0x1)
#define | XDM_ISCORRUPTEDHEADER(x) (((x) >> XDM_CORRUPTEDHEADER) & 0x1)
#define | XDM_ISCORRUPTEDDATA(x) (((x) >> XDM_CORRUPTEDDATA) & 0x1)
#define | XDM_ISINSUFFICIENTDATA(x) (((x) >> XDM_INSUFFICIENTDATA) & 0x1)
#define | XDM_ISAPPLIEDCONCEALMENT(x) (((x) >> XDM_APPLIEDCONCEALMENT) & 0x1)
#define | XDM_SETFATALERROR(x) ((x) |= (0x1 << XDM_FATALERROR))
#define | XDM_SETUNSUPPORTEDPARAM(x) ((x) |= (0x1 << XDM_UNSUPPORTEDPARAM))
#define | XDM_SETUNSUPPORTEDINPUT(x) ((x) |= (0x1 << XDM_UNSUPPORTEDINPUT))
#define | XDM_SETCORRUPTEDHEADER(x) ((x) |= (0x1 << XDM_CORRUPTEDHEADER))
#define | XDM_SETCORRUPTEDDATA(x) ((x) |= (0x1 << XDM_CORRUPTEDDATA))
#define | XDM_SETINSUFFICIENTDATA(x) ((x) |= (0x1 << XDM_INSUFFICIENTDATA))
#define | XDM_SETAPPLIEDCONCEALMENT(x) ((x) |= (0x1 << XDM_APPLIEDCONCEALMENT))
#define | XDM_MAX_CONTEXT_BUFFERS 32
Maximum number of context buffers.

Typedefs

typedef struct XDM_BufDesc | XDM_BufDesc
Buffer descriptor for multiple buffers.
typedef struct XDM_SingleBufDesc | XDM_SingleBufDesc
Single buffer descriptor.
typedef struct XDM1_SingleBufDesc | XDM1_SingleBufDesc
Single buffer descriptor.
typedef struct XDM2_SingleBufDesc | XDM2_SingleBufDesc
Single buffer descriptor.
typedef struct XDM1_BufDesc | XDM1_BufDesc
Buffer descriptor.
typedef struct XDM2_BufDesc | XDM2_BufDesc
Buffer descriptor.
typedef struct XDM1_AlgBufInfo | XDM1_AlgBufInfo
Buffer information descriptor for input and output buffers.
typedef struct XDM_AlgBufInfo | XDM_AlgBufInfo
Buffer information descriptor for input and output buffers.
typedef struct XDM_Date | XDM_Date
Date and time.
typedef struct XDM_Point | XDM_Point
2-dimensional point
typedef struct XDM_Rect | XDM_Rect
Rectangle.
typedef struct XDM_ContextInfo | XDM_ContextInfo
Buffer information descriptor for input and output buffers.
typedef struct XDM_Context | XDM_Context
Context used by split codecs.
typedef struct XDM_DataSyncDesc | XDM_DataSyncDesc
Descriptor for the chunk of data being transferred in one call to putData or getData.
typedef Void * | XDM_DataSyncHandle
Handle that identifies the DataSync FIFO.
typedef Void(* | XDM_DataSyncPutFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
Non-blocking API to signal "data ready" to one or more consumers.
typedef XDAS_Int32(* | XDM_DataSyncGetFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
API to obtain data information from a consumer.
typedef XDAS_Int32(* | XDM_DataSyncGetBufferFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
API to obtain empty bitstream buffers from an allocator to be filled by the algorithm.
typedef XDAS_Int32(* | XDM_DataSyncPutBufferFxn )(XDM_DataSyncHandle dataSyncHandle, XDM_DataSyncDesc *dataSyncDesc)
API to return consumed bitstream buffers to the original provider.

Enumerations

enum XDM_AccessMode {
XDM_ACCESSMODE_READ = 0,
XDM_ACCESSMODE_WRITE = 1
}

Access modes used to declare how the algorithm accessed buffers.

More...
enum XDM_CmdId {
XDM_GETSTATUS = 0,
XDM_SETPARAMS = 1,
XDM_RESET = 2,
XDM_SETDEFAULT = 3,
XDM_FLUSH = 4,
XDM_GETBUFINFO = 5,
XDM_GETVERSION = 6,
XDM_GETCONTEXTINFO = 7,
XDM_GETDYNPARAMSDEFAULT = 8,
XDM_SETLATEACQUIREARG = 9
}

Standard control commands that must be implemented by XDM compliant multimedia algorithms.

More...
enum XDM_ErrorBit {
XDM_PARAMSCHANGE = 8,
XDM_APPLIEDCONCEALMENT = 9,
XDM_INSUFFICIENTDATA = 10,
XDM_CORRUPTEDDATA = 11,
XDM_CORRUPTEDHEADER = 12,
XDM_UNSUPPORTEDINPUT = 13,
XDM_UNSUPPORTEDPARAM = 14,
XDM_FATALERROR = 15
}

Extended error information.

More...
enum XDM_DataFormat {
XDM_BYTE = 1,
XDM_LE_16 = 2,
XDM_LE_32 = 3,
XDM_LE_64 = 4,
XDM_BE_16 = 5,
XDM_BE_32 = 6,
XDM_BE_64 = 7
}

Endianness of data.

More...
enum XDM_EncodingPreset {
XDM_DEFAULT = 0,
XDM_HIGH_QUALITY = 1,
XDM_HIGH_SPEED = 2,
XDM_USER_DEFINED = 3,
XDM_HIGH_SPEED_MED_QUALITY = 4,
XDM_MED_SPEED_MED_QUALITY = 5,
XDM_MED_SPEED_HIGH_QUALITY = 6,
XDM_ENCODING_PRESET_MAX = 7,
XDM_PRESET_DEFAULT = XDM_MED_SPEED_MED_QUALITY
}

Encoding presets.

More...
enum XDM_DecMode {
XDM_DECODE_AU = 0,
XDM_PARSE_HEADER = 1
}

Decode entire access unit or only header.

More...
enum XDM_EncMode {
XDM_ENCODE_AU = 0,
XDM_GENERATE_HEADER = 1
}

Encode entire access unit or only header.

More...
enum XDM_ChromaFormat {
XDM_CHROMA_NA = -1,
XDM_YUV_420P = 1,
XDM_YUV_422P = 2,
XDM_YUV_422IBE = 3,
XDM_YUV_422ILE = 4,
XDM_YUV_444P = 5,
XDM_YUV_411P = 6,
XDM_GRAY = 7,
XDM_RGB = 8,
XDM_YUV_420SP = 9,
XDM_ARGB8888 = 10,
XDM_RGB555 = 11,
XDM_RGB565 = 12,
XDM_YUV_444ILE = 13,
XDM_CHROMAFORMAT_DEFAULT = XDM_YUV_422ILE
}

Chroma formats.

More...
enum XDM_MemoryType {
XDM_MEMTYPE_ROW = 0,
XDM_MEMTYPE_RAW = 0,
XDM_MEMTYPE_TILED8 = 1,
XDM_MEMTYPE_TILED16 = 2,
XDM_MEMTYPE_TILED32 = 3,
XDM_MEMTYPE_TILEDPAGE = 4
}

Memory space attributes.

More...
enum | XDM_MemoryUsageMode { XDM_MEMUSAGE_DATASYNC = 0 }

Memory space attributes.

More...


Codec Engine Application Programming Interface (API): Directory Hierarchy

Directories

This directory hierarchy is sorted roughly, but not completely, alphabetically:
  • cetools
    • packages
      • ti
        • xdais
          • dm
            • split
  • packages
    • ti
      • sdo
        • ce
          • audio
          • audio1
          • image
          • image1
          • osal
          • speech
          • speech1
          • universal
          • vidanalytics
          • video
          • video1
          • video2
            • split
          • video3
          • vidtranscode


Codec Engine Application Programming Interface (API): cetools/ Directory Reference

  • cetools

cetools Directory Reference

Directory dependency graph for cetools/:

Directories

directory packages


Codec Engine Application Programming Interface (API): cetools/packages/ Directory Reference

  • cetools
  • packages

packages Directory Reference

Directory dependency graph for cetools/packages/:

Directories

directory ti


Codec Engine Application Programming Interface (API): cetools/packages/ti/ Directory Reference

  • cetools
  • packages
  • ti

ti Directory Reference

Directory dependency graph for cetools/packages/ti/:

Directories

directory xdais


Codec Engine Application Programming Interface (API): cetools/packages/ti/xdais/ Directory Reference

  • cetools
  • packages
  • ti
  • xdais

xdais Directory Reference

Directory dependency graph for cetools/packages/ti/xdais/:

Directories

directory | dm

Files

file | ialg.h [code]

This header defines all types, constants, and functions defined by XDAIS for algorithms.

file | xdas.h [code]

This header defines all types and constants used in the XDAS interfaces.


Codec Engine Application Programming Interface (API): cetools/packages/ti/xdais/dm/ Directory Reference

  • cetools
  • packages
  • ti
  • xdais
  • dm

dm Directory Reference

Directory dependency graph for cetools/packages/ti/xdais/dm/:

Directories

directory | split

Files

file | iauddec.h [code]

This header defines all types, constants, and functions shared by all implementations of the audio decoder algorithms.

file | iauddec1.h [code]

This header defines all types, constants, and functions shared by all implementations of the audio decoder algorithms.

file | iaudenc.h [code]

This header defines all types, constants, and functions shared by all implementations of the audio encoder algorithms.

file | iaudenc1.h [code]

This header defines all types, constants, and functions shared by all implementations of the audio encoder algorithms.

file | iaudio.h [code]

This header defines all types, constants, enums, and functions that are common across the various audio codecs.

file | iimgdec.h [code]

This header defines all types, constants, and functions shared by all implementations of the image decoder algorithms.

file | iimgdec1.h [code]

This header defines all types, constants, and functions shared by all implementations of the image decoder algorithms.

file | iimgenc.h [code]

This header defines all types, constants, and functions shared by all implementations of the image encoder algorithms.

file | iimgenc1.h [code]

This header defines all types, constants, and functions shared by all implementations of the image encoder algorithms.

file | ispeech.h [code]

This header defines all types, constants, enums, and functions that are common across the various speech codecs.

file | ispeech1.h [code]

This header defines all types, constants, enums, and functions that are common across the various speech codecs.

file | ispeech1_amr.h [code]

This header defines all types, constants, enums, and functions that are needed for AMR.

file | ispeech1_evrc.h [code]

This header defines all types, constants, enums, and functions that are needed for EVRC.

file | ispeech1_g722.h [code]

This header defines all types, constants, enums, and functions that are needed for G.722.

file | ispeech1_g7221.h [code]

This header defines all types, constants, enums, and functions that are needed for G.7221.

file | ispeech1_g723.h [code]

This header defines all types, constants, enums, and functions that are needed for G.723.

file | ispeech1_g726.h [code]

This header defines all types, constants, enums, and functions that are needed for G.726.

file | ispeech1_ilbc.h [code]

This header defines all types, constants, enums, and functions that are needed for iLBC.

file | ispeech1_pcm.h [code]

This header defines all types, constants, enums, and functions that are common across all G.711/PCM speech codecs.

file | ispeech1_smv.h [code]

This header defines all types, constants, enums, and functions that are common across all SMV speech codecs.

file | ispeech1_wbamr.h [code]

This header defines all types, constants, enums, and functions that are needed for WB-AMR.

file | isphdec.h [code]

This header defines all types, constants, and functions shared by all implementations of the speech decoder algorithms.

file | isphdec1.h [code]

This header defines all types, constants, and functions shared by all implementations of the speech decoder algorithms.

file | isphenc.h [code]

This header defines all types, constants, and functions shared by all implementations of the speech encoder algorithms.

file | isphenc1.h [code]

This header defines all types, constants, and functions shared by all implementations of the speech encoder algorithms.

file | iuniversal.h [code]

This header defines all types, constants, and functions shared by all implementations of the "universal" XDM algorithm.

file | ividanalytics.h [code]

This header defines all types, constants, and functions shared by all implementations of the video analytics algorithms.

file | ividdec.h [code]

This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms.

file | ividdec1.h [code]

This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms.

file | ividdec2.h [code]

This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms.

file | ividdec3.h [code]

This header defines all types, constants, and functions shared by all implementations of the video decoder algorithms.

file | ividenc.h [code]

This header defines all types, constants, and functions shared by all implementations of the video encoder algorithms.

file | ividenc1.h [code]

This header defines all types, constants, and functions shared by all implementations of the video encoder algorithms.

file | ividenc2.h [code]

This header defines all types, constants, and functions shared by all implementations of the video encoder algorithms.

file | ivideo.h [code]

This header defines all types, constants, enums, and functions that are common across the various video codecs.

file | ividtranscode.h [code]

This header defines all types, constants, and functions shared by all implementations of the video transcoder algorithms.

file | xdm.h [code]

This header defines all types, constants, and functions shared across the various XDM classes of algorithms.


Codec Engine Application Programming Interface (API): cetools/packages/ti/xdais/dm/split/ Directory Reference

  • cetools
  • packages
  • ti
  • xdais
  • dm
  • split

split Directory Reference

Directory dependency graph for cetools/packages/ti/xdais/dm/split/:

Files

file split/ividdec2.h [code]

This header defines all types, constants, enums, and functions that are common across all split IVIDDEC2-based codecs.


Codec Engine Application Programming Interface (API): packages/ Directory Reference

  • packages

packages Directory Reference

Directory dependency graph for packages/:

Directories

directory ti


Codec Engine Application Programming Interface (API): packages/ti/ Directory Reference

  • packages
  • ti

ti Directory Reference

Directory dependency graph for packages/ti/:

Directories

directory sdo


Codec Engine Application Programming Interface (API): packages/ti/sdo/ Directory Reference

  • packages
  • ti
  • sdo

sdo Directory Reference

Directory dependency graph for packages/ti/sdo/:

Directories

directory ce


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/ Directory Reference

  • packages
  • ti
  • sdo
  • ce

ce Directory Reference

Directory dependency graph for packages/ti/sdo/ce/:

Directories

directory | audio
directory | audio1
directory | image
directory | image1
directory | osal
directory | speech
directory | speech1
directory | universal
directory | vidanalytics
directory | video
directory | video1
directory | video2
directory | video3
directory | vidtranscode

Files

file | CERuntime.h [code]

The Codec Engine Runtime init module. Provides system wide initialization of the Codec Engine Runtime.

file | Engine.h [code]

The Codec Engine Runtime. Provides the user an inteface to open and manipulate an Engine which can instantiate and communicate with XDAIS algorithms that run either on the local CPU or on a "remote" Server.

file | Server.h [code]

The Codec Engine Server Interface. Provides the user an inteface to open and manipulate a Server which contains remote algorithms.

file | visa.h [code]

The Codec Engine System Programming Interface. Provides system developers with services necessary to implement stubs and skeletons.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/audio/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • audio

audio Directory Reference

Directory dependency graph for packages/ti/sdo/ce/audio/:

Files

file | auddec.h [code]

The AUDDEC audio decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDDEC audio decoder interface.

file | audenc.h [code]

The AUDENC audio encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDENC audio encoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/audio1/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • audio1

audio1 Directory Reference

Directory dependency graph for packages/ti/sdo/ce/audio1/:

Files

file | auddec1.h [code]

The AUDDEC1 audio decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDDEC1 audio decoder interface.

file | audenc1.h [code]

The AUDENC1 audio encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IAUDENC1 audio encoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/image/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • image

image Directory Reference

Directory dependency graph for packages/ti/sdo/ce/image/:

Files

file | imgdec.h [code]

The IMGDEC image decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGDEC image decoder interface.

file | imgenc.h [code]

The IMGENC image encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGENC image encoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/image1/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • image1

image1 Directory Reference

Directory dependency graph for packages/ti/sdo/ce/image1/:

Files

file | imgdec1.h [code]

The IMGDEC1 image decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGDEC1 image decoder interface.

file | imgenc1.h [code]

The IMGENC1 image encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IIMGENC1 image encoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/osal/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • osal

osal Directory Reference

Directory dependency graph for packages/ti/sdo/ce/osal/:

Files

file Memory.h [code]

The Codec Engine OSAL Memory interface. Provides the user an OS-independent Memory abstraction.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/speech/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • speech

speech Directory Reference

Directory dependency graph for packages/ti/sdo/ce/speech/:

Files

file | sphdec.h [code]

The SPHDEC speech decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined ISPHDEC speech decoder interface.

file | sphenc.h [code]

The SPHENC speech encoder codec interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM ISPHENC speech encoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/speech1/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • speech1

speech1 Directory Reference

Directory dependency graph for packages/ti/sdo/ce/speech1/:

Files

file | sphdec1.h [code]

The SPHDEC1 speech decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined ISPHDEC1 speech decoder interface.

file | sphenc1.h [code]

The SPHENC1 speech encoder codec interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined ISPHENC1 speech encoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/universal/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • universal

universal Directory Reference

Directory dependency graph for packages/ti/sdo/ce/universal/:

Files

file universal.h [code]

The "universal" algorithm interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM IUNIVERSAL interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/vidanalytics/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • vidanalytics

vidanalytics Directory Reference

Directory dependency graph for packages/ti/sdo/ce/vidanalytics/:

Files

file vidanalytics.h [code]

The VIDANALYTICS video analytics interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDANALYTICS video analytics interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • video

video Directory Reference

Directory dependency graph for packages/ti/sdo/ce/video/:

Files

file | viddec.h [code]

The VIDDEC video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC video decoder interface.

file | videnc.h [code]

The VIDENC video encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDENC video encoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video1/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • video1

video1 Directory Reference

Directory dependency graph for packages/ti/sdo/ce/video1/:

Files

file | viddec1.h [code]

The VIDDEC1 video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC1 video decoder interface.

file | videnc1.h [code]

The VIDENC1 video encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDENC1 video encoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video2/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • video2

video2 Directory Reference

Directory dependency graph for packages/ti/sdo/ce/video2/:

Directories

directory | split

Files

file | viddec2.h [code]

The VIDDEC2 video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC2 video decoder interface.

file | videnc2.h [code]

The VIDENC2 video encoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDENC2 video encoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video2/split/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • video2
  • split

split Directory Reference

Directory dependency graph for packages/ti/sdo/ce/video2/split/:

Files

file split/viddec2.h [code]

The VIDDEC2 split video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC2FRONT or IVIDDEC2BACK video decoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video3/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • video3

video3 Directory Reference

Directory dependency graph for packages/ti/sdo/ce/video3/:

Files

file viddec3.h [code]

The VIDDEC3 video decoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDDEC3 video decoder interface.


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/vidtranscode/ Directory Reference

  • packages
  • ti
  • sdo
  • ce
  • vidtranscode

vidtranscode Directory Reference

Directory dependency graph for packages/ti/sdo/ce/vidtranscode/:

Files

file vidtranscode.h [code]

The VIDTRANSCODE video transcoder interface. Provides the user an interface to create and interact with XDAIS algorithms that are compliant with the XDM-defined IVIDTRANSCODE video transcoder interface.


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- a -

  • AUDDEC1_Cmd : auddec1.h
  • AUDDEC1_control() : auddec1.h
  • AUDDEC1_create() : auddec1.h
  • AUDDEC1_delete() : auddec1.h
  • AUDDEC1_DynamicParams : auddec1.h
  • AUDDEC1_EFAIL : auddec1.h
  • AUDDEC1_EOK : auddec1.h
  • AUDDEC1_ETIMEOUT : auddec1.h
  • AUDDEC1_EUNSUPPORTED : auddec1.h
  • AUDDEC1_FOREVER : auddec1.h
  • AUDDEC1_Handle : auddec1.h
  • AUDDEC1_InArgs : auddec1.h
  • AUDDEC1_OutArgs : auddec1.h
  • AUDDEC1_Params : auddec1.h
  • AUDDEC1_process() : auddec1.h
  • AUDDEC1_processAsync() : auddec1.h
  • AUDDEC1_processWait() : auddec1.h
  • AUDDEC1_Status : auddec1.h
  • AUDDEC_Cmd : auddec.h
  • AUDDEC_control() : auddec.h
  • AUDDEC_create() : auddec.h
  • AUDDEC_delete() : auddec.h
  • AUDDEC_DynamicParams : auddec.h
  • AUDDEC_EFAIL : auddec.h
  • AUDDEC_EOK : auddec.h
  • AUDDEC_ERUNTIME : auddec.h
  • AUDDEC_ETIMEOUT : auddec.h
  • AUDDEC_FOREVER : auddec.h
  • AUDDEC_Handle : auddec.h
  • AUDDEC_InArgs : auddec.h
  • AUDDEC_OutArgs : auddec.h
  • AUDDEC_Params : auddec.h
  • AUDDEC_process() : auddec.h
  • AUDDEC_processAsync() : auddec.h
  • AUDDEC_processWait() : auddec.h
  • AUDDEC_Status : auddec.h
  • AUDENC1_Cmd : audenc1.h
  • AUDENC1_control() : audenc1.h
  • AUDENC1_create() : audenc1.h
  • AUDENC1_delete() : audenc1.h
  • AUDENC1_DynamicParams : audenc1.h
  • AUDENC1_EFAIL : audenc1.h
  • AUDENC1_EOK : audenc1.h
  • AUDENC1_ETIMEOUT : audenc1.h
  • AUDENC1_EUNSUPPORTED : audenc1.h
  • AUDENC1_FOREVER : audenc1.h
  • AUDENC1_Handle : audenc1.h
  • AUDENC1_InArgs : audenc1.h
  • AUDENC1_OutArgs : audenc1.h
  • AUDENC1_Params : audenc1.h
  • AUDENC1_process() : audenc1.h
  • AUDENC1_processAsync() : audenc1.h
  • AUDENC1_processWait() : audenc1.h
  • AUDENC1_Status : audenc1.h
  • AUDENC_Cmd : audenc.h
  • AUDENC_control() : audenc.h
  • AUDENC_create() : audenc.h
  • AUDENC_delete() : audenc.h
  • AUDENC_DynamicParams : audenc.h
  • AUDENC_EFAIL : audenc.h
  • AUDENC_EOK : audenc.h
  • AUDENC_ERUNTIME : audenc.h
  • AUDENC_ETIMEOUT : audenc.h
  • AUDENC_FOREVER : audenc.h
  • AUDENC_Handle : audenc.h
  • AUDENC_InArgs : audenc.h
  • AUDENC_OutArgs : audenc.h
  • AUDENC_Params : audenc.h
  • AUDENC_process() : audenc.h
  • AUDENC_processAsync() : audenc.h
  • AUDENC_processWait() : audenc.h
  • AUDENC_Status : audenc.h


Codec Engine Application Programming Interface (API): CERuntime.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce

CERuntime.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== ti/sdo/ce/CERuntime.h ========
00035  */
00036
00047 #ifndef CERuntime_
00048 #define CERuntime_
00049
00050 #ifdef __cplusplus
00051 extern "C" {
00052 #endif
00053
00056
00057 /*
00058  *  ======== CERuntime_exit ========
00059  */
00068 extern Void CERuntime_exit(Void);
00069
00070
00071 /*
00072  *  ======== CERuntime_init ========
00073  */
00083 extern Void CERuntime_init(Void);
00084
00087 #ifdef __cplusplus
00088 }
00089 #endif
00090
00091 #endif
00092 /*
00093  *  @(#) ti.sdo.ce; 1, 0, 6,433; 2-9-2011 08:54:23; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00094
00095  */
00096


Codec Engine Application Programming Interface (API): Engine.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce

Engine.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== Engine.h ========
00035  */
00036
00049 #ifndef Engine_
00050 #define Engine_
00051
00052 #ifdef __cplusplus
00053 extern "C" {
00054 #endif
00055
00056
00057 #include <ti/sdo/ce/Server.h>
00058 #include <ti/sdo/ce/ipc/Comm.h>
00059 #include <ti/xdais/ialg.h>
00060 #include <ti/sdo/ce/node/node.h>
00061
00062 #include <stddef.h> /* def of size_t */
00063 #include <stdio.h>  /* def of FILE * */
00064
00067
00076 #define Engine_MODNAME "ti.sdo.ce.Engine"
00077
00081 typedef struct Engine_Obj *Engine_Handle;
00082
00086 typedef Int Engine_Error;
00087
00088 #define Engine_EOK          0
00089 #define Engine_EEXIST       1
00090 #define Engine_ENOMEM       2
00091 #define Engine_EDSPLOAD     3
00092 #define Engine_ENOCOMM      4
00095 #define Engine_ENOSERVER    5
00096 #define Engine_ECOMALLOC    6
00097 #define Engine_ERUNTIME     7
00098 #define Engine_ECODECCREATE 8
00099 #define Engine_ECODECSTART  9
00104 #define Engine_EINVAL       10
00105 #define Engine_EBADSERVER   11
00106 #define Engine_ENOTAVAIL    12
00107 #define Engine_EWRONGSTATE  13
00108 #define Engine_EINUSE       14
00111 #define Engine_ENOTFOUND    15
00112 #define Engine_ETIMEOUT     16
00119 typedef struct Engine_NodeObj *Engine_Node;
00120
00124 #define Engine_FOREVER Comm_FOREVER
00125
00133 typedef struct Engine_Attrs {
00134     String procId;
00138 } Engine_Attrs;
00139
00145 typedef struct Engine_AlgInfo {
00146     Int         algInfoSize;
00147     String      name;
00148     String      *typeTab;
00149     Bool        isLocal;
00150 } Engine_AlgInfo;
00151
00155 extern Engine_Attrs Engine_ATTRS;
00159 typedef Int Engine_Ctrl;
00160
00161 #define Engine_CEXIT    0
00162 #define Engine_MAXSEGNAMELENGTH 32
00163
00169 typedef enum Engine_CachedMemType {
00170     Engine_USECACHEDMEM_DEFAULT = -1,
00171     Engine_USECACHEDMEM_NONCACHED = 0,
00172     Engine_USECACHEDMEM_CACHED = 1
00173 } Engine_CachedMemType;
00174
00175
00176 /*
00177  *  ======== Engine_AlgDesc ========
00178  */
00179 typedef struct Engine_AlgDesc {
00180     String      name;
00181     NODE_Uuid   uuid;
00182     IALG_Fxns   *fxns;
00183     Ptr         idmaFxns;
00184     String      *typeTab;
00185     Bool        isLocal;
00186     Int         groupId;
00187     Int         rpcProtocolVersion;
00188     Ptr         iresFxns;
00189     Void        *codecClassConfig;
00190     Engine_CachedMemType memType;
00191 } Engine_AlgDesc;
00192
00198 #define Engine_GETALGDESCFXN  "GetEngineAlgDesc"
00199
00200 /*
00201  *  ======== Engine_DllAlgDesc ========
00202  *  An alg that will be dynamically loaded must have a descriptor of this type.
00203  */
00211 typedef struct Engine_DllAlgDesc {
00215     NODE_Uuid   uuid;
00216
00220     IALG_Fxns   *fxns;
00221
00226     Ptr         idmaFxns;
00227
00239     String      *typeTab;
00240
00245     Ptr         iresFxns;
00246
00252     Void        *codecClassConfig;
00253 } Engine_DllAlgDesc;
00254
00255
00256 /*
00257  *  ======== Engine_GetAlgDescFxn ========
00258  *  A dynamically loaded codec library must supply a function of this type to
00259  *  get properties of the library's algorithm.
00260  */
00270 typedef Int (*Engine_GetAlgDescFxn)(Engine_DllAlgDesc *dllAlgDesc);
00271
00272 /*
00273  *  ======== Engine_DllAlgParams ========
00274  *  Dynamically loaded algorithm parameters to pass to Engine_addAlg().
00275  */
00282 typedef struct Engine_DllAlgParams {
00283     String      name;
00284     Bool        isLocal;
00285     Int         groupId;
00286 } Engine_DllAlgParams;
00287
00288
00291 /*
00292  *  ======== Engine_AlgCreateAttrs ========
00293  */
00294 typedef struct Engine_AlgCreateAttrs {
00295     Bool            useExtHeap;
00300     Int             priority;
00302 } Engine_AlgCreateAttrs;
00303
00304 /*
00305  *  ======== Engine_Desc ========
00306  */
00307 typedef struct Engine_Desc {
00308     String          name;
00309     Engine_AlgDesc  *algTab;
00310     String          remoteName;
00311     String          linkCfg;
00312     Int             numAlgs;
00313     Int             heapId;
00314 } Engine_Desc;
00315
00316 /*
00317  *  ======== Engine_Config ========
00318  */
00319 typedef struct Engine_Config {
00320     Engine_Desc *engineTab;
00321     String      localEngine;
00322 } Engine_Config;
00323
00324 /*
00325  *  ======== Engine_MemStat ========
00326  *  This structure must match Server_MemStat.
00327  */
00328 typedef struct Engine_MemStat {
00329     Char   name[Engine_MAXSEGNAMELENGTH + 1]; /* Name of memory segment */
00330     Uint32 base;           /* Base address of memory segment */
00331     Uint32 size;           /* Original size of the memory segment. */
00332     Uint32 used;           /* Number of bytes used. */
00333     Uint32 maxBlockLen;    /* Size of the largest contiguous free block. */
00334 } Engine_MemStat;
00335
00336 /* Default alg create attributes */
00337 extern Engine_AlgCreateAttrs Engine_ALGCREATEATTRS;
00338
00339 /*
00340  *  ======== Engine_config ========
00341  */
00342 extern Engine_Config Engine_config;
00343
00347 /*
00348  *  ======== Engine_add ========
00349  *  TODO: Engine_Desc has a heapId for engine allocs. Should we add this?
00350  */
00372 extern Engine_Error Engine_add(String engineName, String remoteName);
00373
00374 /*
00375  *  ======== Engine_addAlg ========
00376  */
00403 extern Engine_Error Engine_addAlg(Engine_Handle engine,
00404         String location, Engine_DllAlgParams *pAlgParams);
00405
00406 /*
00407  *  ======== Engine_removeAlg ========
00408  */
00424 extern Engine_Error Engine_removeAlg(Engine_Handle engine, String name);
00425
00428 /*
00429  *  ======== Engine_call ========
00430  */
00431 extern Int Engine_call(Engine_Node node, Comm_Msg *msg);
00432
00433 /*
00434  *  ======== Engine_callAsync ========
00435  */
00436 extern Int Engine_callAsync(Engine_Node node, Comm_Msg *msg);
00437
00438 /*
00439  *  ======== Engine_callWait ========
00440  */
00441 extern Int Engine_callWait(Engine_Node node, Comm_Msg *msg, UInt timeout);
00442
00443 /*
00444  *  ======== Engine_ctrlNode ========
00445  */
00446 extern Int Engine_ctrlNode(Engine_Node node, Comm_Msg *msg, Engine_Ctrl code);
00447
00450 /*
00451  *  ======== Engine_close ========
00452  */
00467 extern Void Engine_close(Engine_Handle engine);
00468
00470 /*
00471  *  ======== Engine_createNode ========
00472  */
00498 extern Engine_Node Engine_createNode(Engine_Handle engine, String name,
00499     size_t msgSize, IALG_Params *nodeAttrs, Engine_AlgCreateAttrs *attrs);
00500
00501
00502 /*
00503  *  ======== Engine_createNode2 ========
00504  */
00535 extern Engine_Node Engine_createNode2(Engine_Handle engine, String name,
00536     size_t msgSize, IALG_Params *nodeAttrs, Int nodeAttrsSize,
00537     Engine_AlgCreateAttrs *attrs);
00538
00539
00540 /*
00541  *  ======== Engine_deleteNode ========
00542  */
00543 extern Void Engine_deleteNode(Engine_Node node);
00544
00545 /*
00546  *  ======== Engine_getAlgMemRecs ========
00547  */
00561 extern Engine_Error Engine_getAlgMemRecs(Engine_Node node, IALG_MemRec *memTab, Int size,
00562         Int *numRecs);
00563
00564 /*
00565  *  ======== Engine_getAlgNumRecs ========
00566  */
00578 extern Engine_Error Engine_getAlgNumRecs(Engine_Node node, Int *numRecs);
00579
00580 /*
00581  *  ======== Engine_getConstName ========
00582  */
00583 extern String Engine_getConstName(Engine_Handle engine, String name,
00584     String type);
00585
00586 /*
00587  *  ======== Engine_getFxns ========
00588  */
00589 extern IALG_Fxns *Engine_getFxns(Engine_Handle svr, String name, String type,
00590         Bool *isLocal, Ptr *idmaFxns, Ptr *iresFxns, Int *groupId,
00591         Engine_CachedMemType *memType);
00592
00593 /*
00594  *  ======== Engine_getMemId ========
00595  */
00596 extern Int Engine_getMemId(Engine_Handle engine);
00597
00598 /*
00599  *  ======== Engine_getLocalEngine ========
00600  */
00601 extern Engine_Handle Engine_getLocalEngine(Void);
00602
00603 /*
00604  *  ======== Engine_getEngine ========
00605  */
00606 extern Engine_Handle Engine_getEngine(Engine_Node node);
00607
00608 /*
00609  *  ======== Engine_getMemStat ========
00610  */
00611 extern Engine_Error Engine_getMemStat(Server_Handle server, Int segNum,
00612     Engine_MemStat *stat);
00613
00614 /*
00615  *  ======== Engine_getNumMemSegs ========
00616  */
00617 extern Engine_Error Engine_getNumMemSegs(Server_Handle server, Int *numSegs);
00618
00619 /*
00620  *  ======== Engine_getProcId ========
00621  */
00622 extern String Engine_getProcId(Engine_Handle engine);
00623
00624 /*
00625  *  ======== Engine_hasServer ========
00626  */
00627 extern Bool Engine_hasServer(Engine_Handle engine);
00628
00629 /*
00630  *  ======== Engine_init ========
00631  */
00632 extern Void Engine_init(Void);
00633
00634 /*
00635  *  ======== Engine_getRemoteVisa ========
00636  */
00637 extern UInt32 Engine_getRemoteVisa(Engine_Node node);
00638
00639 /*
00640  *  ======== Engine_getCodecClassConfig ========
00641  */
00642 extern Ptr Engine_getCodecClassConfig(Engine_Handle engine, String name,
00643     String type);
00644
00645 /*
00646  *  ======== Engine_getNodeQueues ========
00647  */
00648 extern Void Engine_getNodeQueues(Engine_Node node, Comm_Id *stdIn, Comm_Handle *stdOut);
00649
00650 /*
00651  *  ======== Engine_redefineHeap ========
00652  */
00653 extern Engine_Error Engine_redefineHeap(Server_Handle server, String name,
00654         Uint32 base, Uint32 size);
00655
00656 /*
00657  *  ======== Engine_releaseTraceToken ========
00658  */
00659 extern Bool Engine_releaseTraceToken(Server_Handle server);
00660
00661 /*
00662  *  ======== Engine_requestTraceToken ========
00663  */
00664 extern Engine_Error Engine_requestTraceToken(Server_Handle server);
00665
00666 /*
00667  *  ======== Engine_restoreHeap ========
00668  */
00669 extern Engine_Error Engine_restoreHeap(Server_Handle server, String name);
00670
00673 /*
00674  *  ======== Engine_open ========
00675  */
00718 extern Engine_Handle Engine_open(String name, Engine_Attrs *attrs,
00719     Engine_Error *ec);
00720
00721 /*
00722  *  ======== Engine_fwriteTrace ========
00723  */
00749 extern Int Engine_fwriteTrace(Engine_Handle engine, String prefix, FILE *out);
00750
00751 /*
00752  *  ======== Engine_getAlgInfo ========
00753  */
00788 extern Engine_Error Engine_getAlgInfo(String name, Engine_AlgInfo *algInfo,
00789         Int index);
00790
00791 /*
00792  *  ======== Engine_getCpuLoad ========
00793  */
00822 extern Int Engine_getCpuLoad(Engine_Handle engine);
00823
00824 /*
00825  *  ======== Engine_getLastError ========
00826  */
00838 extern Engine_Error Engine_getLastError(Engine_Handle engine);
00839
00840 /*
00841  *  ======== Engine_getName ========
00842  */
00851 extern String Engine_getName(Engine_Handle engine);
00852
00853
00854 /*
00855  *  ======== Engine_getNumAlgs ========
00856  */
00880 extern Engine_Error Engine_getNumAlgs(String name, Int *numAlgs);
00881
00882 /*
00883  *  ======== Engine_getServer ========
00884  */
00899 extern Server_Handle Engine_getServer(Engine_Handle engine);
00900
00901
00902 /*
00903  *  ======== Engine_getUsedMem ========
00904  */
00931 extern UInt32 Engine_getUsedMem(Engine_Handle engine);
00932
00933
00934 /*
00935  *  ======== Engine_remove ========
00936  */
00951 extern Engine_Error Engine_remove(String engineName);
00952
00953
00954 /*
00955  *  ======== Engine_setTrace ========
00956  */
00976 extern Int Engine_setTrace(Engine_Handle engine, String mask);
00977
00980 #ifdef __cplusplus
00981 }
00982 #endif
00983
00984 #endif
00985 /*
00986  *  @(#) ti.sdo.ce; 1, 0, 6,433; 2-9-2011 08:54:24; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00987
00988  */
00989


Codec Engine Application Programming Interface (API): Memory.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • osal

Memory.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== Memory.h ========
00035  */
00051 #ifndef ti_sdo_ce_osal_Memory_
00052 #define ti_sdo_ce_osal_Memory_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00060
00068 #define ti_sdo_ce_osal_Memory_DEFAULTALIGNMENT ((UInt)(-1))
00069
00078 #define Memory_MODNAME "ti.sdo.ce.osal.Memory"
00079
00085 #define ti_sdo_ce_osal_Memory_GTNAME "OM"
00086
00096 typedef struct ti_sdo_ce_osal_Memory_Stat {
00097     String name;
00098     Uint32 base;
00099     UInt size;
00100     UInt used;
00101     UInt length;
00102 } ti_sdo_ce_osal_Memory_Stat;
00103
00113 typedef enum {
00114     ti_sdo_ce_osal_Memory_MALLOC = 0,
00118     ti_sdo_ce_osal_Memory_SEG = 1,
00122     ti_sdo_ce_osal_Memory_CONTIGPOOL = 2,
00126     ti_sdo_ce_osal_Memory_CONTIGHEAP =3
00130 } ti_sdo_ce_osal_Memory_type;
00131
00140 typedef struct ti_sdo_ce_osal_Memory_AllocParams {
00141     ti_sdo_ce_osal_Memory_type type;
00145     UInt flags;
00161     UInt align;
00162     UInt seg;
00163 } ti_sdo_ce_osal_Memory_AllocParams;
00164
00165
00173 #define ti_sdo_ce_osal_Memory_CACHED    0x00000000
00174
00182 #define ti_sdo_ce_osal_Memory_NONCACHED 0x00000001
00183
00191 #define ti_sdo_ce_osal_Memory_CACHEDMASK 0x00000001
00192
00217 extern ti_sdo_ce_osal_Memory_AllocParams ti_sdo_ce_osal_Memory_DEFAULTPARAMS;
00218
00219 /*
00220  *  ======== Memory_alloc ========
00221  */
00237 extern Ptr ti_sdo_ce_osal_Memory_alloc(UInt size,
00238         ti_sdo_ce_osal_Memory_AllocParams *params);
00239
00240 /*
00241  *  ======== Memory_cacheInv ========
00242  */
00261 extern Void ti_sdo_ce_osal_Memory_cacheInv(Ptr addr, Int sizeInBytes);
00262
00263
00264 /*
00265  *  ======== Memory_cacheWb ========
00266  */
00279 extern Void ti_sdo_ce_osal_Memory_cacheWb(Ptr addr, Int sizeInBytes);
00280
00281
00282 /*
00283  *  ======== Memory_cacheWbInv ========
00284  */
00297 extern Void ti_sdo_ce_osal_Memory_cacheWbInv(Ptr addr, Int sizeInBytes);
00298
00299
00300 /*
00301  *  ======== Memory_cacheWbInvAll ========
00302  */
00313 extern Void ti_sdo_ce_osal_Memory_cacheWbInvAll();
00314
00315
00316 /*
00317  *  ======== Memory_contigAlloc ========
00318  */
00353 extern Ptr ti_sdo_ce_osal_Memory_contigAlloc(UInt size, UInt align);
00354
00355
00356 /*
00357  *  ======== Memory_contigFree ========
00358  */
00380 extern Bool ti_sdo_ce_osal_Memory_contigFree(Ptr addr, UInt size);
00381
00382
00383
00384 /*
00385  *  ======== Memory_free ========
00386  */
00412 extern Bool ti_sdo_ce_osal_Memory_free(Ptr addr, UInt size,
00413         ti_sdo_ce_osal_Memory_AllocParams *params);
00414
00415
00416 /*
00417  *  ======== Memory_getBufferPhysicalAddress ========
00418  */
00457 extern UInt32 ti_sdo_ce_osal_Memory_getBufferPhysicalAddress(Ptr virtualAddress,
00458     Int sizeInBytes, Bool *isContiguous);
00459
00460 /*
00461  *  ======== Memory_getBufferVirtualAddress ========
00462  */
00498 extern Ptr ti_sdo_ce_osal_Memory_getBufferVirtualAddress(UInt32 physicalAddress,
00499     Int sizeInBytes);
00500
00503 /*
00504  *  ======== Memory_init ========
00505  */
00506 extern Bool ti_sdo_ce_osal_Memory_init(Void);
00507
00508
00509 /*
00510  *  ======== Memory_exit ========
00511  */
00512 extern Void ti_sdo_ce_osal_Memory_exit(Void);
00513
00519 /*
00520  *  ======== Memory_segAlloc ========
00521  */
00542 extern Ptr ti_sdo_ce_osal_Memory_segAlloc(Int segId, UInt size, UInt align);
00543
00544
00545 /*
00546  *  ======== Memory_segFree ========
00547  */
00576 extern Bool ti_sdo_ce_osal_Memory_segFree(Int segId, Ptr addr, UInt size);
00577
00578
00579 /*
00580  *  ======== Memory_segStat ========
00581  */
00603 extern Bool ti_sdo_ce_osal_Memory_segStat(Int segId,
00604         ti_sdo_ce_osal_Memory_Stat *statbuf);
00605
00610 /*
00611  * ======== PREFIX ALIASES ========
00612  * Same strategy as XDC uses
00613  */
00614 #if !defined(__nested__) && !defined(ti_sdo_ce_osal_Memory__nolocalnames)
00615
00616 /* module prefix */
00617 #define Memory_DEFAULTALIGNMENT ti_sdo_ce_osal_Memory_DEFAULTALIGNMENT
00618 #define Memory_GTNAME ti_sdo_ce_osal_Memory_GTNAME
00619 #define Memory_Stat ti_sdo_ce_osal_Memory_Stat
00620 #define Memory_type ti_sdo_ce_osal_Memory_type
00621 #define Memory_MALLOC ti_sdo_ce_osal_Memory_MALLOC
00622 #define Memory_SEG ti_sdo_ce_osal_Memory_SEG
00623 #define Memory_CONTIGPOOL ti_sdo_ce_osal_Memory_CONTIGPOOL
00624 #define Memory_CONTIGHEAP ti_sdo_ce_osal_Memory_CONTIGHEAP
00625 #define Memory_AllocParams ti_sdo_ce_osal_Memory_AllocParams
00626 #define Memory_CACHED ti_sdo_ce_osal_Memory_CACHED
00627 #define Memory_NONCACHED ti_sdo_ce_osal_Memory_NONCACHED
00628 #define Memory_CACHEDMASK ti_sdo_ce_osal_Memory_CACHEDMASK
00629 #define Memory_DEFAULTPARAMS ti_sdo_ce_osal_Memory_DEFAULTPARAMS
00630
00631 #define Memory_alloc ti_sdo_ce_osal_Memory_alloc
00632 #define Memory_cacheInv ti_sdo_ce_osal_Memory_cacheInv
00633 #define Memory_cacheWb ti_sdo_ce_osal_Memory_cacheWb
00634 #define Memory_cacheWbInv ti_sdo_ce_osal_Memory_cacheWbInv
00635 #define Memory_cacheWbInvAll ti_sdo_ce_osal_Memory_cacheWbInvAll
00636 #define Memory_contigAlloc ti_sdo_ce_osal_Memory_contigAlloc
00637 #define Memory_contigFree ti_sdo_ce_osal_Memory_contigFree
00638 #define Memory_free ti_sdo_ce_osal_Memory_free
00639 #define Memory_getBufferPhysicalAddress ti_sdo_ce_osal_Memory_getBufferPhysicalAddress
00640 #define Memory_getBufferVirtualAddress ti_sdo_ce_osal_Memory_getBufferVirtualAddress
00641 #define Memory_init ti_sdo_ce_osal_Memory_init
00642 #define Memory_exit ti_sdo_ce_osal_Memory_exit
00643 #define Memory_segAlloc ti_sdo_ce_osal_Memory_segAlloc
00644 #define Memory_segFree ti_sdo_ce_osal_Memory_segFree
00645 #define Memory_segStat ti_sdo_ce_osal_Memory_segStat
00646 #endif
00647
00651
00652 #ifdef __cplusplus
00653 }
00654 #endif
00655
00656 #endif
00657 /*
00658  *  @(#) ti.sdo.ce.osal; 2, 0, 2,425; 2-9-2011 08:56:47; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00659
00660  */
00661


Codec Engine Application Programming Interface (API): Server.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce

Server.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== Server.h ========
00035  *  DSP Server module
00036  *
00037  *  APIs for accessing information from remote server.
00038  */
00039
00050 #ifndef ti_sdo_ce_Server_
00051 #define ti_sdo_ce_Server_
00052
00053 #ifdef __cplusplus
00054 extern "C" {
00055 #endif
00056
00057 #include <stdio.h>  /* def of FILE * */
00058
00061
00070 #define Server_MODNAME "ti.sdo.ce.Server"
00071
00075 #define Server_MAXSEGNAMELENGTH 32
00076
00077
00081 typedef struct Server_Obj *Server_Handle;
00082
00086 typedef enum Server_Status {
00087     Server_EOK       = 0,
00088     Server_ENOSERVER = 1,
00089     Server_ENOMEM    = 2,
00090     Server_ERUNTIME  = 3,
00091     Server_EINVAL    = 4,
00092     Server_EWRONGSTATE =5,
00094     Server_EINUSE   = 6,
00096     Server_ENOTFOUND = 7,
00097     Server_EFAIL = 8
00098 } Server_Status;
00099
00107 typedef struct Server_MemStat {
00108     Char   name[Server_MAXSEGNAMELENGTH + 1];
00109     Uint32 base;
00110     Uint32 size;
00111     Uint32 used;
00112     Uint32 maxBlockLen;
00113 } Server_MemStat;
00114
00115 /*
00116  *  ======== Server_connectTrace ========
00117  */
00139 extern Server_Status Server_connectTrace(Server_Handle server, Int * token);
00140
00141 /*
00142  *  ======== Server_disconnectTrace ========
00143  */
00161 extern Server_Status Server_disconnectTrace(Server_Handle server, Int token);
00162
00163 /*
00164  *  ======== Server_fwriteTrace ========
00165  */
00190 extern Int Server_fwriteTrace(Server_Handle server, String prefix, FILE *out);
00191
00192 /*
00193  *  ======== Server_getCpuLoad ========
00194  */
00216 extern Int Server_getCpuLoad(Server_Handle server);
00217
00218 /*
00219  *  ======== Server_getMemStat ========
00220  */
00242 extern Server_Status Server_getMemStat(Server_Handle server, Int segNum,
00243         Server_MemStat *memStat);
00244
00245 /*
00246  *  ======== Server_getNumMemSegs ========
00247  */
00267 extern Server_Status Server_getNumMemSegs(Server_Handle server, Int *numSegs);
00268
00270 /*
00271  *  ======== Server_init ========
00272  */
00273 extern Void Server_init(Void);
00276 /*
00277  *  ======== Server_redefineHeap ========
00278  */
00331 extern Server_Status Server_redefineHeap(Server_Handle server, String name,
00332         Uint32 base, Uint32 size);
00333
00334 /*
00335  *  ======== Server_restoreHeap ========
00336  */
00370 extern Server_Status Server_restoreHeap(Server_Handle server, String name);
00371
00372 /*
00373  *  ======== Server_setTrace ========
00374  */
00396 extern Int Server_setTrace(Server_Handle server, String mask);
00397   /* ingroup */
00399
00400 #ifdef __cplusplus
00401 }
00402 #endif
00403
00404 #endif
00405 /*
00406  *  @(#) ti.sdo.ce; 1, 0, 6,433; 2-9-2011 08:54:25; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00407
00408  */
00409


Codec Engine Application Programming Interface (API): auddec1.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • audio1

auddec1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== auddec1.h ========
00035  */
00057 #ifndef ti_sdo_ce_audio1_AUDDEC1_
00058 #define ti_sdo_ce_audio1_AUDDEC1_
00059
00060 #ifdef __cplusplus
00061 extern "C" {
00062 #endif
00063
00064 #include <ti/xdais/dm/xdm.h>
00065 #include <ti/xdais/dm/iauddec1.h>
00066
00067 #include <ti/sdo/ce/Engine.h>
00068 #include <ti/sdo/ce/visa.h>
00069 #include <ti/sdo/ce/skel.h>
00070
00073
00074 #define AUDDEC1_EOK      IAUDDEC1_EOK
00075 #define AUDDEC1_EFAIL    IAUDDEC1_EFAIL
00078 #define AUDDEC1_EUNSUPPORTED IAUDDEC1_EUNSUPPORTED
00079
00080 #define AUDDEC1_ETIMEOUT VISA_ETIMEOUT
00081 #define AUDDEC1_FOREVER  VISA_FOREVER
00087 typedef VISA_Handle AUDDEC1_Handle;
00088
00090 typedef IAUDDEC1_Params AUDDEC1_Params;
00091
00093 typedef IAUDDEC1_InArgs AUDDEC1_InArgs;
00094
00096 typedef IAUDDEC1_OutArgs AUDDEC1_OutArgs;
00097
00099 typedef IAUDDEC1_Cmd AUDDEC1_Cmd;
00100
00102 typedef IAUDDEC1_DynamicParams AUDDEC1_DynamicParams;
00103
00105 typedef IAUDDEC1_Status AUDDEC1_Status;
00106
00107
00114 extern SKEL_Fxns AUDDEC1_SKEL;
00115
00119 extern IAUDDEC1_Fxns AUDDEC1_STUBS;
00120
00124 /*
00125  *  ======== AUDDEC1_control ========
00126  */
00150 extern Int32 AUDDEC1_control(AUDDEC1_Handle handle, AUDDEC1_Cmd id,
00151     AUDDEC1_DynamicParams *params, AUDDEC1_Status *status);
00152
00153
00154 /*
00155  *  ======== AUDDEC1_create ========
00156  */
00189 extern AUDDEC1_Handle AUDDEC1_create(Engine_Handle e, String name,
00190     AUDDEC1_Params *params);
00191
00192
00193 /*
00194  *  ======== AUDDEC1_delete ========
00195  */
00213 extern Void AUDDEC1_delete(AUDDEC1_Handle handle);
00214
00215
00216 /*
00217  *  ======== AUDDEC1_process ========
00218  */
00261 extern Int32 AUDDEC1_process(AUDDEC1_Handle handle, XDM1_BufDesc *inBufs,
00262     XDM1_BufDesc *outBufs, AUDDEC1_InArgs *inArgs, AUDDEC1_OutArgs *outArgs);
00263
00264
00265 /*
00266  *  ======== AUDDEC1_processAsync ========
00267  */
00304 extern Int32 AUDDEC1_processAsync(AUDDEC1_Handle handle, XDM1_BufDesc *inBufs,
00305     XDM1_BufDesc *outBufs, AUDDEC1_InArgs *inArgs, AUDDEC1_OutArgs *outArgs);
00306
00307
00308 /*
00309  *  ======== AUDDEC1_processWait ========
00310  */
00353 extern Int32 AUDDEC1_processWait(AUDDEC1_Handle handle, XDM1_BufDesc *inBufs,
00354     XDM1_BufDesc *outBufs, AUDDEC1_InArgs *inArgs, AUDDEC1_OutArgs *outArgs,
00355     UInt timeout);
00356
00357
00360 #ifdef __cplusplus
00361 }
00362 #endif
00363
00364 #endif
00365 /*
00366  *  @(#) ti.sdo.ce.audio1; 1, 0, 1,283; 2-9-2011 08:54:23; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00367
00368  */
00369


Codec Engine Application Programming Interface (API): auddec.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • audio

auddec.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== auddec.h ========
00035  */
00051 #ifndef ti_sdo_ce_audio_AUDDEC_
00052 #define ti_sdo_ce_audio_AUDDEC_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 /*
00059  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00060  * define XDM_INCLUDE_DOT9_SUPPORT
00061  */
00062 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00063 #define XDM_INCLUDE_DOT9_SUPPORT
00064 #endif
00065 #include <ti/xdais/dm/xdm.h>
00066 #include <ti/xdais/dm/iauddec.h>
00067
00068 #include <ti/sdo/ce/Engine.h>
00069 #include <ti/sdo/ce/visa.h>
00070 #include <ti/sdo/ce/skel.h>
00071
00074
00075 #define AUDDEC_EOK      IAUDDEC_EOK
00076 #define AUDDEC_EFAIL    IAUDDEC_EFAIL
00077 #define AUDDEC_ERUNTIME IAUDDEC_ERUNTIME
00078 #define AUDDEC_ETIMEOUT VISA_ETIMEOUT
00079 #define AUDDEC_FOREVER  VISA_FOREVER
00085 typedef VISA_Handle AUDDEC_Handle;
00086
00087 typedef IAUDDEC_Params AUDDEC_Params;
00089 typedef IAUDDEC_InArgs AUDDEC_InArgs;
00090 typedef IAUDDEC_OutArgs AUDDEC_OutArgs;
00091 typedef IAUDDEC_Cmd AUDDEC_Cmd;
00092 typedef IAUDDEC_Status AUDDEC_Status;
00095 typedef IAUDDEC_DynamicParams   AUDDEC_DynamicParams;
00096
00097
00104 extern SKEL_Fxns AUDDEC_SKEL;
00105
00109 extern IAUDDEC_Fxns AUDDEC_STUBS;
00110
00114 /*
00115  *  ======== AUDDEC_control ========
00116  */
00140 extern Int32 AUDDEC_control(AUDDEC_Handle handle, AUDDEC_Cmd id,
00141         AUDDEC_DynamicParams *params, AUDDEC_Status *status);
00142
00143
00144 /*
00145  *  ======== AUDDEC_create ========
00146  */
00175 extern AUDDEC_Handle AUDDEC_create(Engine_Handle e, String name,
00176     AUDDEC_Params *params);
00177
00178
00179 /*
00180  *  ======== AUDDEC_delete ========
00181  */
00199 extern Void AUDDEC_delete(AUDDEC_Handle handle);
00200
00201
00202 /*
00203  *  ======== AUDDEC_process ========
00204  */
00249 extern Int32 AUDDEC_process(AUDDEC_Handle handle,
00250         XDM_BufDesc *inBufs, XDM_BufDesc *outBufs,
00251         AUDDEC_InArgs *inArgs, AUDDEC_OutArgs *outArgs);
00252
00253
00254 /*
00255  *  ======== AUDDEC_processAsync ========
00256  */
00296 extern Int32 AUDDEC_processAsync(AUDDEC_Handle handle, XDM_BufDesc *inBufs,
00297     XDM_BufDesc *outBufs, AUDDEC_InArgs *inArgs, AUDDEC_OutArgs *outArgs);
00298
00299
00300 /*
00301  *  ======== AUDDEC_processWait ========
00302  */
00345 extern Int32 AUDDEC_processWait(AUDDEC_Handle handle, XDM_BufDesc *inBufs,
00346     XDM_BufDesc *outBufs, AUDDEC_InArgs *inArgs, AUDDEC_OutArgs *outArgs,
00347     UInt timeout);
00348
00349
00352 #ifdef __cplusplus
00353 }
00354 #endif
00355
00356 #endif
00357 /*
00358  *  @(#) ti.sdo.ce.audio; 1, 0, 2,409; 2-9-2011 08:54:22; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00359
00360  */
00361


Codec Engine Application Programming Interface (API): audenc1.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • audio1

audenc1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== audenc1.h ========
00035  */
00051 #ifndef ti_sdo_ce_audio1_AUDENC1_
00052 #define ti_sdo_ce_audio1_AUDENC1_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 #include <ti/xdais/dm/xdm.h>
00059 #include <ti/xdais/dm/iaudenc1.h>
00060
00061 #include <ti/sdo/ce/Engine.h>
00062 #include <ti/sdo/ce/visa.h>
00063 #include <ti/sdo/ce/skel.h>
00064
00067
00069 #define AUDENC1_EOK IAUDENC1_EOK
00070
00071 #define AUDENC1_EFAIL IAUDENC1_EFAIL
00072
00074 #define AUDENC1_EUNSUPPORTED IAUDENC1_EUNSUPPORTED
00075
00076 #define AUDENC1_ETIMEOUT VISA_ETIMEOUT
00077 #define AUDENC1_FOREVER  VISA_FOREVER
00083 typedef VISA_Handle AUDENC1_Handle;
00084
00086 typedef IAUDENC1_Params AUDENC1_Params;
00087
00089 typedef IAUDENC1_InArgs AUDENC1_InArgs;
00090
00092 typedef IAUDENC1_OutArgs AUDENC1_OutArgs;
00093
00095 typedef IAUDENC1_Cmd AUDENC1_Cmd;
00096
00098 typedef IAUDENC1_DynamicParams AUDENC1_DynamicParams;
00099
00101 typedef IAUDENC1_Status AUDENC1_Status;
00102
00103
00110 extern SKEL_Fxns AUDENC1_SKEL;
00111
00115 extern IAUDENC1_Fxns AUDENC1_STUBS;
00116
00120 /*
00121  *  ======== AUDENC1_control ========
00122  */
00146 extern Int32 AUDENC1_control(AUDENC1_Handle handle, AUDENC1_Cmd id,
00147     AUDENC1_DynamicParams *params, AUDENC1_Status *status);
00148
00149
00150 /*
00151  *  ======== AUDENC1_create ========
00152  */
00181 extern AUDENC1_Handle AUDENC1_create(Engine_Handle e, String name,
00182     AUDENC1_Params *params);
00183
00184
00185 /*
00186  *  ======== AUDENC1_delete ========
00187  */
00205 extern Void AUDENC1_delete(AUDENC1_Handle handle);
00206
00207
00208 /*
00209  *  ======== AUDENC1_process ========
00210  */
00253 extern Int32 AUDENC1_process(AUDENC1_Handle handle, XDM1_BufDesc *inBufs,
00254     XDM1_BufDesc *outBufs, AUDENC1_InArgs *inArgs, AUDENC1_OutArgs *outArgs);
00255
00256
00257 /*
00258  *  ======== AUDENC1_processAsync ========
00259  */
00296 extern Int32 AUDENC1_processAsync(AUDENC1_Handle handle, XDM1_BufDesc *inBufs,
00297     XDM1_BufDesc *outBufs, AUDENC1_InArgs *inArgs, AUDENC1_OutArgs *outArgs);
00298
00299
00300 /*
00301  *  ======== AUDENC1_processWait ========
00302  */
00345 extern Int32 AUDENC1_processWait(AUDENC1_Handle handle, XDM1_BufDesc *inBufs,
00346     XDM1_BufDesc *outBufs, AUDENC1_InArgs *inArgs, AUDENC1_OutArgs *outArgs,
00347     UInt timeout);
00348
00349
00352 #ifdef __cplusplus
00353 }
00354 #endif
00355
00356 #endif
00357 /*
00358  *  @(#) ti.sdo.ce.audio1; 1, 0, 1,283; 2-9-2011 08:54:23; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00359
00360  */
00361


Codec Engine Application Programming Interface (API): audenc.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • audio

audenc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== audenc.h ========
00035  */
00051 #ifndef ti_sdo_ce_audio_AUDENC_
00052 #define ti_sdo_ce_audio_AUDENC_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 /*
00059  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00060  * define XDM_INCLUDE_DOT9_SUPPORT
00061  */
00062 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00063 #define XDM_INCLUDE_DOT9_SUPPORT
00064 #endif
00065 #include <ti/xdais/dm/xdm.h>
00066 #include <ti/xdais/dm/iaudenc.h>
00067
00068 #include <ti/sdo/ce/Engine.h>
00069 #include <ti/sdo/ce/visa.h>
00070 #include <ti/sdo/ce/skel.h>
00071
00074
00075 #define AUDENC_EOK      IAUDENC_EOK
00076 #define AUDENC_EFAIL    IAUDENC_EFAIL
00077 #define AUDENC_ERUNTIME IAUDENC_ERUNTIME
00078 #define AUDENC_ETIMEOUT VISA_ETIMEOUT
00079 #define AUDENC_FOREVER  VISA_FOREVER
00085 typedef VISA_Handle AUDENC_Handle;
00086
00087 typedef IAUDENC_Params AUDENC_Params;
00089 typedef IAUDENC_InArgs AUDENC_InArgs;
00090 typedef IAUDENC_OutArgs AUDENC_OutArgs;
00091 typedef IAUDENC_Cmd AUDENC_Cmd;
00092 typedef IAUDENC_Status AUDENC_Status;
00095 typedef IAUDENC_DynamicParams   AUDENC_DynamicParams;
00096
00097
00104 extern SKEL_Fxns AUDENC_SKEL;
00105
00109 extern IAUDENC_Fxns AUDENC_STUBS;
00110
00114 /*
00115  *  ======== AUDENC_control ========
00116  */
00146 extern Int32 AUDENC_control(AUDENC_Handle handle, AUDENC_Cmd id,
00147         AUDENC_DynamicParams *params, AUDENC_Status *status);
00148
00149
00150 /*
00151  *  ======== AUDENC_create ========
00152  */
00181 extern AUDENC_Handle AUDENC_create(Engine_Handle e, String name,
00182         AUDENC_Params *params);
00183
00184
00185 /*
00186  *  ======== AUDENC_delete ========
00187  */
00205 extern Void AUDENC_delete(AUDENC_Handle handle);
00206
00207
00208 /*
00209  *  ======== AUDENC_process ========
00210  */
00255 extern Int32 AUDENC_process(AUDENC_Handle handle,
00256         XDM_BufDesc *inBufs, XDM_BufDesc *outBufs,
00257         AUDENC_InArgs *inArgs, AUDENC_OutArgs *outArgs);
00258
00259
00260 /*
00261  *  ======== AUDENC_processAsync ========
00262  */
00302 extern XDAS_Int32 AUDENC_processAsync(AUDENC_Handle handle, XDM_BufDesc *inBufs,
00303     XDM_BufDesc *outBufs, IAUDENC_InArgs *inArgs, IAUDENC_OutArgs *outArgs);
00304
00305
00306 /*
00307  *  ======== AUDENC_processWait ========
00308  */
00351 extern XDAS_Int32 AUDENC_processWait(AUDENC_Handle handle, XDM_BufDesc *inBufs,
00352     XDM_BufDesc *outBufs, IAUDENC_InArgs *inArgs, IAUDENC_OutArgs *outArgs,
00353     UInt timeout);
00354
00355
00358 #ifdef __cplusplus
00359 }
00360 #endif
00361
00362 #endif
00363 /*
00364  *  @(#) ti.sdo.ce.audio; 1, 0, 2,409; 2-9-2011 08:54:22; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00365
00366  */
00367


Codec Engine Application Programming Interface (API): doxygen.txt File Reference

  • File List
  • Globals

doxygen.txt File Reference

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): Alphabetical List

  • Data Structures
  • Data Structure Index
  • Data Fields

Data Structure Index

E | I | S | T | V | X
E
IIMGDEC1_Obj ISPHENC1_Fxns IVIDDEC2_OutArgs IVIDENC2_Status
Engine_AlgInfo IIMGDEC1_OutArgs ISPHENC1_InArgs IVIDDEC2_Params IVIDENC_CodecClassConfig
Engine_Attrs IIMGDEC1_Params ISPHENC1_Obj IVIDDEC2_Status IVIDENC_DynamicParams
Engine_DllAlgDesc IIMGDEC1_Status ISPHENC1_OutArgs IVIDDEC2BACK_CodecClassConfig IVIDENC_Fxns
Engine_DllAlgParams IIMGDEC_CodecClassConfig ISPHENC1_Params IVIDDEC2BACK_Fxns IVIDENC_InArgs
I
IIMGDEC_DynamicParams ISPHENC1_Status IVIDDEC2BACK_Obj IVIDENC_Obj
IALG_Fxns IIMGDEC_Fxns ISPHENC_DynamicParams IVIDDEC2FRONT_Fxns IVIDENC_OutArgs
IALG_MemRec IIMGDEC_InArgs ISPHENC_Fxns IVIDDEC2FRONT_Obj IVIDENC_Params
IALG_Obj IIMGDEC_Obj ISPHENC_InArgs IVIDDEC2FRONT_OutArgs IVIDENC_Status
IALG_Params IIMGDEC_OutArgs ISPHENC_Obj IVIDDEC2FRONT_Status IVIDEO1_BufDesc
IALG_Status IIMGDEC_Params ISPHENC_OutArgs IVIDDEC3_CodecClassConfig IVIDEO1_BufDescIn
IAUDDEC1_DynamicParams IIMGDEC_Status ISPHENC_Params IVIDDEC3_DynamicParams IVIDEO2_BufDesc
IAUDDEC1_Fxns IIMGENC1_CodecClassConfig ISPHENC_Status IVIDDEC3_Fxns IVIDEO_BufDesc
IAUDDEC1_InArgs IIMGENC1_DynamicParams IUNIVERSAL_DynamicParams IVIDDEC3_InArgs IVIDTRANSCODE_DynamicParams
IAUDDEC1_Obj IIMGENC1_Fxns IUNIVERSAL_Fxns IVIDDEC3_Obj IVIDTRANSCODE_Fxns
IAUDDEC1_OutArgs IIMGENC1_InArgs IUNIVERSAL_InArgs IVIDDEC3_OutArgs IVIDTRANSCODE_InArgs
IAUDDEC1_Params IIMGENC1_Obj IUNIVERSAL_Obj IVIDDEC3_Params IVIDTRANSCODE_Obj
IAUDDEC1_Status IIMGENC1_OutArgs IUNIVERSAL_OutArgs IVIDDEC3_Status IVIDTRANSCODE_OutArgs
IAUDDEC_DynamicParams IIMGENC1_Params IUNIVERSAL_Params IVIDDEC_CodecClassConfig IVIDTRANSCODE_Params
IAUDDEC_Fxns IIMGENC1_Status IUNIVERSAL_Status IVIDDEC_DynamicParams IVIDTRANSCODE_Status
IAUDDEC_InArgs IIMGENC_CodecClassConfig IVIDANALYTICS_DynamicParams IVIDDEC_Fxns
S
IAUDDEC_Obj IIMGENC_DynamicParams IVIDANALYTICS_Fxns IVIDDEC_InArgs Server_MemStat
IAUDDEC_OutArgs IIMGENC_Fxns IVIDANALYTICS_Grid IVIDDEC_Obj
T
IAUDDEC_Params IIMGENC_InArgs IVIDANALYTICS_InArgs IVIDDEC_OutArgs ti_sdo_ce_osal_Memory_AllocParams
IAUDDEC_Status IIMGENC_Obj IVIDANALYTICS_Obj IVIDDEC_Params
V
IAUDENC1_DynamicParams IIMGENC_OutArgs IVIDANALYTICS_OutArgs IVIDDEC_Status VISA_MsgHeader
IAUDENC1_Fxns IIMGENC_Params IVIDANALYTICS_Params IVIDENC1_CodecClassConfig
X
IAUDENC1_InArgs IIMGENC_Status IVIDANALYTICS_Rule IVIDENC1_DynamicParams XDM1_AlgBufInfo
IAUDENC1_Obj ISPHDEC1_DynamicParams IVIDANALYTICS_Status IVIDENC1_Fxns XDM1_BufDesc
IAUDENC1_OutArgs ISPHDEC1_Fxns IVIDDEC1_CodecClassConfig IVIDENC1_InArgs XDM1_SingleBufDesc
IAUDENC1_Params ISPHDEC1_InArgs IVIDDEC1_DynamicParams IVIDENC1_MbData XDM2_BufDesc
IAUDENC1_Status ISPHDEC1_Obj IVIDDEC1_Fxns IVIDENC1_Obj XDM2_BufSize
IAUDENC_DynamicParams ISPHDEC1_OutArgs IVIDDEC1_InArgs IVIDENC1_OutArgs XDM2_SingleBufDesc
IAUDENC_Fxns ISPHDEC1_Params IVIDDEC1_Obj IVIDENC1_Params XDM_AlgBufInfo
IAUDENC_InArgs ISPHDEC1_Status IVIDDEC1_OutArgs IVIDENC1_Status XDM_BufDesc
IAUDENC_Obj ISPHDEC_DynamicParams IVIDDEC1_Params IVIDENC2_CodecClassConfig XDM_Context
IAUDENC_OutArgs ISPHDEC_Fxns IVIDDEC1_Status IVIDENC2_DynamicParams XDM_ContextInfo
IAUDENC_Params ISPHDEC_InArgs IVIDDEC2_CodecClassConfig IVIDENC2_Fxns XDM_DataSyncDesc
IAUDENC_Status ISPHDEC_Obj IVIDDEC2_DynamicParams IVIDENC2_InArgs XDM_Date
IIMGDEC1_CodecClassConfig ISPHDEC_OutArgs IVIDDEC2_Fxns IVIDENC2_Obj XDM_Point
IIMGDEC1_DynamicParams ISPHDEC_Params IVIDDEC2_InArgs IVIDENC2_OutArgs XDM_Rect
IIMGDEC1_Fxns ISPHDEC_Status IVIDDEC2_Obj IVIDENC2_Params XDM_SingleBufDesc
IIMGDEC1_InArgs ISPHENC1_DynamicParams
E | I | S | T | V | X
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/ -> cetools Relation

  • packages
  • ti

ti → cetools Relation

File in packages/ti | Includes file in cetools
sdo / ce / audio / auddec.h | packages / ti / xdais / dm / iauddec.h
sdo / ce / audio / auddec.h | packages / ti / xdais / dm / xdm.h
sdo / ce / audio1 / auddec1.h | packages / ti / xdais / dm / iauddec1.h
sdo / ce / audio1 / auddec1.h | packages / ti / xdais / dm / xdm.h
sdo / ce / audio / audenc.h | packages / ti / xdais / dm / iaudenc.h
sdo / ce / audio / audenc.h | packages / ti / xdais / dm / xdm.h
sdo / ce / audio1 / audenc1.h | packages / ti / xdais / dm / iaudenc1.h
sdo / ce / audio1 / audenc1.h | packages / ti / xdais / dm / xdm.h
sdo / ce / Engine.h | packages / ti / xdais / ialg.h
sdo / ce / image / imgdec.h | packages / ti / xdais / dm / iimgdec.h
sdo / ce / image / imgdec.h | packages / ti / xdais / dm / xdm.h
sdo / ce / image1 / imgdec1.h | packages / ti / xdais / dm / iimgdec1.h
sdo / ce / image1 / imgdec1.h | packages / ti / xdais / dm / xdm.h
sdo / ce / image / imgenc.h | packages / ti / xdais / dm / iimgenc.h
sdo / ce / image / imgenc.h | packages / ti / xdais / dm / xdm.h
sdo / ce / image1 / imgenc1.h | packages / ti / xdais / dm / iimgenc1.h
sdo / ce / image1 / imgenc1.h | packages / ti / xdais / dm / xdm.h
sdo / ce / speech / sphdec.h | packages / ti / xdais / dm / isphdec.h
sdo / ce / speech / sphdec.h | packages / ti / xdais / dm / xdm.h
sdo / ce / speech1 / sphdec1.h | packages / ti / xdais / dm / isphdec1.h
sdo / ce / speech1 / sphdec1.h | packages / ti / xdais / dm / xdm.h
sdo / ce / speech / sphenc.h | packages / ti / xdais / dm / isphenc.h
sdo / ce / speech / sphenc.h | packages / ti / xdais / dm / xdm.h
sdo / ce / speech1 / sphenc1.h | packages / ti / xdais / dm / isphenc1.h
sdo / ce / speech1 / sphenc1.h | packages / ti / xdais / dm / xdm.h
sdo / ce / video2 / split / split/viddec2.h | packages / ti / xdais / dm / split / split/ividdec2.h
sdo / ce / video2 / split / split/viddec2.h | packages / ti / xdais / dm / xdm.h
sdo / ce / universal / universal.h | packages / ti / xdais / dm / iuniversal.h
sdo / ce / universal / universal.h | packages / ti / xdais / dm / xdm.h
sdo / ce / vidanalytics / vidanalytics.h | packages / ti / xdais / dm / ividanalytics.h
sdo / ce / vidanalytics / vidanalytics.h | packages / ti / xdais / dm / xdm.h
sdo / ce / video / viddec.h | packages / ti / xdais / dm / ividdec.h
sdo / ce / video / viddec.h | packages / ti / xdais / dm / xdm.h
sdo / ce / video1 / viddec1.h | packages / ti / xdais / dm / ividdec1.h
sdo / ce / video1 / viddec1.h | packages / ti / xdais / dm / xdm.h
sdo / ce / video2 / viddec2.h | packages / ti / xdais / dm / ividdec2.h
sdo / ce / video2 / viddec2.h | packages / ti / xdais / dm / xdm.h
sdo / ce / video3 / viddec3.h | packages / ti / xdais / dm / ividdec3.h
sdo / ce / video3 / viddec3.h | packages / ti / xdais / dm / xdm.h
sdo / ce / video / videnc.h | packages / ti / xdais / dm / ividenc.h
sdo / ce / video / videnc.h | packages / ti / xdais / dm / xdm.h
sdo / ce / video1 / videnc1.h | packages / ti / xdais / dm / ividenc1.h
sdo / ce / video1 / videnc1.h | packages / ti / xdais / dm / xdm.h
sdo / ce / video2 / videnc2.h | packages / ti / xdais / dm / ividenc2.h
sdo / ce / video2 / videnc2.h | packages / ti / xdais / dm / xdm.h
sdo / ce / vidtranscode / vidtranscode.h | packages / ti / xdais / dm / ividtranscode.h
sdo / ce / vidtranscode / vidtranscode.h | packages / ti / xdais / dm / xdm.h
sdo / ce / visa.h | packages / ti / xdais / ialg.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ -> cetools Relation

  • packages
  • ti
  • sdo

sdo → cetools Relation

File in packages/ti/sdo | Includes file in cetools
ce / audio / auddec.h | packages / ti / xdais / dm / iauddec.h
ce / audio / auddec.h | packages / ti / xdais / dm / xdm.h
ce / audio1 / auddec1.h | packages / ti / xdais / dm / iauddec1.h
ce / audio1 / auddec1.h | packages / ti / xdais / dm / xdm.h
ce / audio / audenc.h | packages / ti / xdais / dm / iaudenc.h
ce / audio / audenc.h | packages / ti / xdais / dm / xdm.h
ce / audio1 / audenc1.h | packages / ti / xdais / dm / iaudenc1.h
ce / audio1 / audenc1.h | packages / ti / xdais / dm / xdm.h
ce / Engine.h | packages / ti / xdais / ialg.h
ce / image / imgdec.h | packages / ti / xdais / dm / iimgdec.h
ce / image / imgdec.h | packages / ti / xdais / dm / xdm.h
ce / image1 / imgdec1.h | packages / ti / xdais / dm / iimgdec1.h
ce / image1 / imgdec1.h | packages / ti / xdais / dm / xdm.h
ce / image / imgenc.h | packages / ti / xdais / dm / iimgenc.h
ce / image / imgenc.h | packages / ti / xdais / dm / xdm.h
ce / image1 / imgenc1.h | packages / ti / xdais / dm / iimgenc1.h
ce / image1 / imgenc1.h | packages / ti / xdais / dm / xdm.h
ce / speech / sphdec.h | packages / ti / xdais / dm / isphdec.h
ce / speech / sphdec.h | packages / ti / xdais / dm / xdm.h
ce / speech1 / sphdec1.h | packages / ti / xdais / dm / isphdec1.h
ce / speech1 / sphdec1.h | packages / ti / xdais / dm / xdm.h
ce / speech / sphenc.h | packages / ti / xdais / dm / isphenc.h
ce / speech / sphenc.h | packages / ti / xdais / dm / xdm.h
ce / speech1 / sphenc1.h | packages / ti / xdais / dm / isphenc1.h
ce / speech1 / sphenc1.h | packages / ti / xdais / dm / xdm.h
ce / video2 / split / split/viddec2.h | packages / ti / xdais / dm / split / split/ividdec2.h
ce / video2 / split / split/viddec2.h | packages / ti / xdais / dm / xdm.h
ce / universal / universal.h | packages / ti / xdais / dm / iuniversal.h
ce / universal / universal.h | packages / ti / xdais / dm / xdm.h
ce / vidanalytics / vidanalytics.h | packages / ti / xdais / dm / ividanalytics.h
ce / vidanalytics / vidanalytics.h | packages / ti / xdais / dm / xdm.h
ce / video / viddec.h | packages / ti / xdais / dm / ividdec.h
ce / video / viddec.h | packages / ti / xdais / dm / xdm.h
ce / video1 / viddec1.h | packages / ti / xdais / dm / ividdec1.h
ce / video1 / viddec1.h | packages / ti / xdais / dm / xdm.h
ce / video2 / viddec2.h | packages / ti / xdais / dm / ividdec2.h
ce / video2 / viddec2.h | packages / ti / xdais / dm / xdm.h
ce / video3 / viddec3.h | packages / ti / xdais / dm / ividdec3.h
ce / video3 / viddec3.h | packages / ti / xdais / dm / xdm.h
ce / video / videnc.h | packages / ti / xdais / dm / ividenc.h
ce / video / videnc.h | packages / ti / xdais / dm / xdm.h
ce / video1 / videnc1.h | packages / ti / xdais / dm / ividenc1.h
ce / video1 / videnc1.h | packages / ti / xdais / dm / xdm.h
ce / video2 / videnc2.h | packages / ti / xdais / dm / ividenc2.h
ce / video2 / videnc2.h | packages / ti / xdais / dm / xdm.h
ce / vidtranscode / vidtranscode.h | packages / ti / xdais / dm / ividtranscode.h
ce / vidtranscode / vidtranscode.h | packages / ti / xdais / dm / xdm.h
ce / visa.h | packages / ti / xdais / ialg.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce

ce → cetools Relation

File in packages/ti/sdo/ce | Includes file in cetools
audio / auddec.h | packages / ti / xdais / dm / iauddec.h
audio / auddec.h | packages / ti / xdais / dm / xdm.h
audio1 / auddec1.h | packages / ti / xdais / dm / iauddec1.h
audio1 / auddec1.h | packages / ti / xdais / dm / xdm.h
audio / audenc.h | packages / ti / xdais / dm / iaudenc.h
audio / audenc.h | packages / ti / xdais / dm / xdm.h
audio1 / audenc1.h | packages / ti / xdais / dm / iaudenc1.h
audio1 / audenc1.h | packages / ti / xdais / dm / xdm.h
Engine.h | packages / ti / xdais / ialg.h
image / imgdec.h | packages / ti / xdais / dm / iimgdec.h
image / imgdec.h | packages / ti / xdais / dm / xdm.h
image1 / imgdec1.h | packages / ti / xdais / dm / iimgdec1.h
image1 / imgdec1.h | packages / ti / xdais / dm / xdm.h
image / imgenc.h | packages / ti / xdais / dm / iimgenc.h
image / imgenc.h | packages / ti / xdais / dm / xdm.h
image1 / imgenc1.h | packages / ti / xdais / dm / iimgenc1.h
image1 / imgenc1.h | packages / ti / xdais / dm / xdm.h
speech / sphdec.h | packages / ti / xdais / dm / isphdec.h
speech / sphdec.h | packages / ti / xdais / dm / xdm.h
speech1 / sphdec1.h | packages / ti / xdais / dm / isphdec1.h
speech1 / sphdec1.h | packages / ti / xdais / dm / xdm.h
speech / sphenc.h | packages / ti / xdais / dm / isphenc.h
speech / sphenc.h | packages / ti / xdais / dm / xdm.h
speech1 / sphenc1.h | packages / ti / xdais / dm / isphenc1.h
speech1 / sphenc1.h | packages / ti / xdais / dm / xdm.h
video2 / split / split/viddec2.h | packages / ti / xdais / dm / split / split/ividdec2.h
video2 / split / split/viddec2.h | packages / ti / xdais / dm / xdm.h
universal / universal.h | packages / ti / xdais / dm / iuniversal.h
universal / universal.h | packages / ti / xdais / dm / xdm.h
vidanalytics / vidanalytics.h | packages / ti / xdais / dm / ividanalytics.h
vidanalytics / vidanalytics.h | packages / ti / xdais / dm / xdm.h
video / viddec.h | packages / ti / xdais / dm / ividdec.h
video / viddec.h | packages / ti / xdais / dm / xdm.h
video1 / viddec1.h | packages / ti / xdais / dm / ividdec1.h
video1 / viddec1.h | packages / ti / xdais / dm / xdm.h
video2 / viddec2.h | packages / ti / xdais / dm / ividdec2.h
video2 / viddec2.h | packages / ti / xdais / dm / xdm.h
video3 / viddec3.h | packages / ti / xdais / dm / ividdec3.h
video3 / viddec3.h | packages / ti / xdais / dm / xdm.h
video / videnc.h | packages / ti / xdais / dm / ividenc.h
video / videnc.h | packages / ti / xdais / dm / xdm.h
video1 / videnc1.h | packages / ti / xdais / dm / ividenc1.h
video1 / videnc1.h | packages / ti / xdais / dm / xdm.h
video2 / videnc2.h | packages / ti / xdais / dm / ividenc2.h
video2 / videnc2.h | packages / ti / xdais / dm / xdm.h
vidtranscode / vidtranscode.h | packages / ti / xdais / dm / ividtranscode.h
vidtranscode / vidtranscode.h | packages / ti / xdais / dm / xdm.h
visa.h | packages / ti / xdais / ialg.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/audio/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • audio

audio → cetools Relation

File in packages/ti/sdo/ce/audio | Includes file in cetools
auddec.h | packages / ti / xdais / dm / iauddec.h
auddec.h | packages / ti / xdais / dm / xdm.h
audenc.h | packages / ti / xdais / dm / iaudenc.h
audenc.h | packages / ti / xdais / dm / xdm.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/audio1/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • audio1

audio1 → cetools Relation

File in packages/ti/sdo/ce/audio1 | Includes file in cetools
auddec1.h | packages / ti / xdais / dm / iauddec1.h
auddec1.h | packages / ti / xdais / dm / xdm.h
audenc1.h | packages / ti / xdais / dm / iaudenc1.h
audenc1.h | packages / ti / xdais / dm / xdm.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/image/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • image

image → cetools Relation

File in packages/ti/sdo/ce/image | Includes file in cetools
imgdec.h | packages / ti / xdais / dm / iimgdec.h
imgdec.h | packages / ti / xdais / dm / xdm.h
imgenc.h | packages / ti / xdais / dm / iimgenc.h
imgenc.h | packages / ti / xdais / dm / xdm.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/image1/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • image1

image1 → cetools Relation

File in packages/ti/sdo/ce/image1 | Includes file in cetools
imgdec1.h | packages / ti / xdais / dm / iimgdec1.h
imgdec1.h | packages / ti / xdais / dm / xdm.h
imgenc1.h | packages / ti / xdais / dm / iimgenc1.h
imgenc1.h | packages / ti / xdais / dm / xdm.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/speech/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • speech

speech → cetools Relation

File in packages/ti/sdo/ce/speech | Includes file in cetools
sphdec.h | packages / ti / xdais / dm / isphdec.h
sphdec.h | packages / ti / xdais / dm / xdm.h
sphenc.h | packages / ti / xdais / dm / isphenc.h
sphenc.h | packages / ti / xdais / dm / xdm.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/speech1/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • speech1

speech1 → cetools Relation

File in packages/ti/sdo/ce/speech1 | Includes file in cetools
sphdec1.h | packages / ti / xdais / dm / isphdec1.h
sphdec1.h | packages / ti / xdais / dm / xdm.h
sphenc1.h | packages / ti / xdais / dm / isphenc1.h
sphenc1.h | packages / ti / xdais / dm / xdm.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/universal/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • universal

universal → cetools Relation

File in packages/ti/sdo/ce/universal Includes file in cetools


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/vidanalytics/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • vidanalytics

vidanalytics → cetools Relation

File in packages/ti/sdo/ce/vidanalytics Includes file in cetools


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • video

video → cetools Relation

File in packages/ti/sdo/ce/video | Includes file in cetools
viddec.h | packages / ti / xdais / dm / ividdec.h
viddec.h | packages / ti / xdais / dm / xdm.h
videnc.h | packages / ti / xdais / dm / ividenc.h
videnc.h | packages / ti / xdais / dm / xdm.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video1/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • video1

video1 → cetools Relation

File in packages/ti/sdo/ce/video1 | Includes file in cetools
viddec1.h | packages / ti / xdais / dm / ividdec1.h
viddec1.h | packages / ti / xdais / dm / xdm.h
videnc1.h | packages / ti / xdais / dm / ividenc1.h
videnc1.h | packages / ti / xdais / dm / xdm.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video2/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • video2

video2 → cetools Relation

File in packages/ti/sdo/ce/video2 | Includes file in cetools
split / split/viddec2.h | packages / ti / xdais / dm / split / split/ividdec2.h
split / split/viddec2.h | packages / ti / xdais / dm / xdm.h
viddec2.h | packages / ti / xdais / dm / ividdec2.h
viddec2.h | packages / ti / xdais / dm / xdm.h
videnc2.h | packages / ti / xdais / dm / ividenc2.h
videnc2.h | packages / ti / xdais / dm / xdm.h
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video2/split/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • video2
  • split

split → cetools Relation

File in packages/ti/sdo/ce/video2/split Includes file in cetools


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/video3/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • video3

video3 → cetools Relation

File in packages/ti/sdo/ce/video3 Includes file in cetools


Codec Engine Application Programming Interface (API): packages/ti/sdo/ce/vidtranscode/ -> cetools Relation

  • packages
  • ti
  • sdo
  • ce
  • vidtranscode

vidtranscode → cetools Relation

File in packages/ti/sdo/ce/vidtranscode Includes file in cetools


Codec Engine Application Programming Interface (API): disclaimer.dox File Reference

  • File List
  • Globals

disclaimer.dox File Reference

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- k -

  • keepInputFrameRateFlag : IVIDTRANSCODE_DynamicParams
  • keepInputGOPFlag : IVIDTRANSCODE_DynamicParams
  • keepInputResolutionFlag : IVIDTRANSCODE_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- l -

  • lateAcquireArg : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams
  • level : IVIDENC2_Status , IVIDENC2_Params
  • lfeFlag : IAUDDEC1_OutArgs , IAUDDEC1_Status , IAUDDEC1_InArgs , IAUDENC1_Status , IAUDENC1_Params , IAUDENC1_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- m -

  • manageDisplayBufsCache : IVIDDEC_CodecClassConfig
  • manageInBufsCache : IIMGDEC_CodecClassConfig , IIMGDEC1_CodecClassConfig , IVIDDEC1_CodecClassConfig , IVIDENC1_CodecClassConfig , IIMGENC1_CodecClassConfig , IVIDDEC2BACK_CodecClassConfig , IVIDDEC2_CodecClassConfig , IIMGENC_CodecClassConfig , IVIDDEC_CodecClassConfig , IVIDDEC3_CodecClassConfig , IVIDENC_CodecClassConfig
  • manageInBufsMetaPlaneDescCache : IVIDENC2_CodecClassConfig
  • manageInBufsPlaneDescCache : IVIDENC2_CodecClassConfig
  • manageIntermediateBufsCache : IVIDDEC2BACK_CodecClassConfig
  • manageOutBufsCache : IIMGDEC_CodecClassConfig , IIMGENC_CodecClassConfig , IIMGDEC1_CodecClassConfig , IIMGENC1_CodecClassConfig , IVIDDEC_CodecClassConfig , IVIDENC_CodecClassConfig , IVIDDEC1_CodecClassConfig , IVIDENC1_CodecClassConfig , IVIDDEC2BACK_CodecClassConfig , IVIDDEC2_CodecClassConfig , IVIDENC2_CodecClassConfig , IVIDDEC3_CodecClassConfig
  • manageReconBufsCache : IVIDENC_CodecClassConfig
  • maxBitRate : IVIDDEC2_Params , IVIDDEC3_Params , IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params
  • maxBitrate : IAUDDEC_Params , IAUDENC_Params
  • maxBitRate : IAUDENC1_Params , IVIDDEC_Params , IVIDDEC1_Params
  • maxBitRateInput : IVIDTRANSCODE_Params
  • maxBitRateOutput : IVIDTRANSCODE_Params
  • maxBlockLen : Server_MemStat
  • maxFrameRate : IVIDANALYTICS_Params , IVIDDEC_Params , IVIDDEC1_Params , IVIDDEC2_Params , IVIDDEC3_Params , IVIDENC_Params , IVIDENC1_Params
  • maxFrameRateInput : IVIDTRANSCODE_Params
  • maxFrameRateOutput : IVIDTRANSCODE_Params
  • maxHeight : IIMGDEC_Params , IIMGDEC1_Params , IIMGENC_Params , IIMGENC1_Params , IVIDANALYTICS_Params , IVIDDEC_Params , IVIDDEC1_Params , IVIDDEC2_Params , IVIDDEC3_Params , IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params
  • maxHeightInput : IVIDTRANSCODE_Params
  • maxHeightOutput : IVIDTRANSCODE_Params
  • maxInterFrameInterval : IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params , IVIDENC2_Status
  • maxNoOfCh : IAUDDEC_Params , IAUDENC_Params
  • maxNumDisplayBufs : IVIDDEC3_Status , IVIDDEC2_Status
  • maxOutArgsDisplayBufs : IVIDDEC3_Status
  • maxRules : IVIDANALYTICS_Params
  • maxSampleRate : IAUDENC_Params , IAUDDEC_Params
  • maxScans : IIMGDEC_Params , IIMGDEC1_Params , IIMGENC1_Params , IIMGENC_Params
  • maxWidth : IIMGENC_Params , IVIDDEC3_Params , IVIDDEC1_Params , IVIDENC2_Params , IIMGDEC_Params , IIMGDEC1_Params , IIMGENC1_Params , IVIDANALYTICS_Params , IVIDENC1_Params , IVIDDEC2_Params , IVIDENC_Params , IVIDDEC_Params
  • maxWidthInput : IVIDTRANSCODE_Params
  • maxWidthOutput : IVIDTRANSCODE_Params
  • mbDataBuf : IVIDDEC2_OutArgs , IVIDDEC1_OutArgs
  • mbDataFlag : IVIDENC1_DynamicParams , IVIDDEC1_DynamicParams , IVIDDEC2_DynamicParams
  • mbMode : IVIDENC1_MbData
  • memType : XDM2_SingleBufDesc
  • metadataPlaneDesc : IVIDEO2_BufDesc
  • metadataType : IVIDDEC3_Status , IVIDENC2_Params , IVIDENC2_Status , IVIDDEC3_Params
  • minBitRate : IVIDENC2_Params
  • minContextSize : XDM_ContextInfo
  • minInBufSize : XDM_AlgBufInfo , XDM1_AlgBufInfo
  • minIntermediateBufSizes : XDM_ContextInfo
  • minNumBufSets : XDM1_AlgBufInfo
  • minNumInBufs : XDM_AlgBufInfo , XDM1_AlgBufInfo
  • minNumOutBufs : XDM1_AlgBufInfo , XDM_AlgBufInfo
  • minOutBufSize : XDM_AlgBufInfo , XDM1_AlgBufInfo
  • mode : ISPHENC1_Status , ISPHENC_Status , ISPHENC_DynamicParams , ISPHENC1_DynamicParams , ISPHDEC_OutArgs
  • month : XDM_Date
  • msecsOfDay : XDM_Date
  • mvAccuracy : IVIDENC2_DynamicParams
  • mvBwdXY : IVIDENC1_MbData
  • mvFwdXY : IVIDENC1_MbData


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- n -

  • name : Engine_AlgInfo , Engine_DllAlgParams , Server_MemStat
  • newFrameFlag : IVIDDEC1_DynamicParams , IVIDDEC2_DynamicParams , IVIDDEC3_DynamicParams
  • nextPartRequiredFlag : IVIDDEC2FRONT_Status
  • noiseSuppressionMode : ISPHENC_DynamicParams , ISPHENC_Status , ISPHENC1_DynamicParams , ISPHENC1_Status
  • nullTrafficChannel : ISPHENC_InArgs , ISPHENC1_InArgs
  • numAU : IIMGENC_DynamicParams , IIMGENC1_DynamicParams , IIMGDEC_DynamicParams , IIMGDEC1_DynamicParams
  • numBlockHorizontal : IVIDANALYTICS_Grid
  • numBlocks : XDM_DataSyncDesc
  • numBlockVertical : IVIDANALYTICS_Grid
  • numBufs : IVIDEO_BufDesc , IVIDEO1_BufDescIn , IVIDEO1_BufDesc , XDM_BufDesc , XDM1_BufDesc , XDM2_BufDesc
  • numBytes : IVIDDEC1_InArgs , IVIDDEC2_InArgs , IVIDDEC3_InArgs , IVIDTRANSCODE_InArgs , IVIDDEC_InArgs , IAUDDEC_InArgs , IAUDDEC1_InArgs , IIMGDEC_InArgs , IIMGDEC1_InArgs
  • numChannels : IAUDDEC_Status , IAUDENC_DynamicParams
  • numEvents : IVIDANALYTICS_OutArgs
  • numInBufs : XDM_Context
  • numInOutBufs : XDM_Context
  • numInputDataUnits : IVIDENC2_Status , IVIDENC2_Params , IVIDDEC3_Status , IVIDDEC3_Params
  • numInSamples : IAUDENC1_InArgs , IAUDENC1_OutArgs
  • numLFEChannels : IAUDENC_DynamicParams , IAUDDEC_Status
  • numMetaPlanes : IVIDEO2_BufDesc
  • numOutBufs : XDM_Context
  • numOutputDataUnits : IVIDDEC3_Params , IVIDENC2_Params , IVIDENC2_Status , IVIDDEC3_Status
  • numOutputStreams : IVIDTRANSCODE_Params
  • numPlanes : IVIDEO2_BufDesc
  • numSamples : IAUDDEC1_OutArgs , IAUDDEC1_Status
  • numTargets : IVIDANALYTICS_OutArgs
  • numZeroesPadded : IAUDENC1_OutArgs


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- o -

  • objectType : IVIDANALYTICS_Rule
  • operatingMode : IVIDDEC3_Params , IVIDENC2_Params , IVIDENC2_Status , IVIDDEC3_Status
  • outbufferSize : ISPHENC_OutArgs
  • outBufMemoryType : XDM1_AlgBufInfo
  • outBufs : XDM_Context
  • outBufsInUseFlag : IVIDDEC1_OutArgs , IVIDDEC2_OutArgs , IVIDDEC3_OutArgs , IVIDTRANSCODE_OutArgs
  • outChromaformat : IIMGDEC_Status
  • outputBitsPerSample : IAUDDEC_Status , IAUDDEC1_Status
  • outputChromaFormat : IIMGDEC1_Status , IVIDDEC_Status , IVIDDEC1_Status , IVIDDEC2_Status
  • outputDataMode : IVIDDEC3_Params , IVIDDEC3_Status , IVIDENC2_Params , IVIDENC2_Status
  • outputFormat : IAUDDEC_DynamicParams , IAUDDEC_Status
  • outputFrameRate : IVIDTRANSCODE_DynamicParams
  • outputHeight : IVIDDEC3_Status , IVIDTRANSCODE_DynamicParams , IVIDDEC2_Status , IIMGDEC_Status , IIMGDEC1_Status , IVIDDEC_Status , IVIDDEC1_Status
  • outputID : IVIDDEC_OutArgs , IVIDDEC2_OutArgs , IVIDDEC1_OutArgs , IVIDENC1_OutArgs , IVIDDEC3_OutArgs , IVIDTRANSCODE_OutArgs
  • outputMbDataID : IVIDDEC1_OutArgs , IVIDDEC2_OutArgs
  • outputPCMWidth : IAUDDEC1_Params
  • outputWidth : IVIDDEC1_Status , IVIDDEC2_Status , IIMGDEC_Status , IVIDTRANSCODE_DynamicParams , IVIDDEC3_Status , IIMGDEC1_Status , IVIDDEC_Status


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- b -

  • base : IALG_MemRec , Server_MemStat
  • baseAddr : XDM_DataSyncDesc
  • bfiFlag : ISPHDEC_InArgs
  • bitRange : IVIDDEC3_Status
  • bitRate : IAUDENC_DynamicParams , ISPHENC1_Params , ISPHENC1_DynamicParams , IAUDENC1_Params , ISPHENC1_Status , IVIDDEC_Status , IAUDENC1_DynamicParams , IVIDDEC1_Status , IVIDDEC2_Status , IAUDENC1_Status , IVIDDEC3_Status , IAUDDEC_Status , ISPHDEC1_Params , ISPHDEC1_Status , IAUDDEC1_Status , ISPHENC_DynamicParams , ISPHENC_Status
  • bitsConsumed : IVIDTRANSCODE_OutArgs
  • bitsGenerated : IVIDTRANSCODE_OutArgs
  • blockHeight : IVIDANALYTICS_Grid
  • blockSizes : XDM_DataSyncDesc
  • blockWidth : IVIDANALYTICS_Grid
  • bottomRight : XDM_Rect
  • buf : XDM_SingleBufDesc , XDM1_SingleBufDesc , XDM2_SingleBufDesc
  • bufDesc : IVIDDEC3_OutArgs , IVIDEO1_BufDescIn , IVIDEO1_BufDesc
  • bufInfo : IVIDANALYTICS_Status , IAUDDEC_Status , IAUDDEC1_Status , ISPHDEC_Status , IAUDENC_Status , IAUDENC1_Status , IIMGDEC_Status , IIMGDEC1_Status , IIMGENC_Status , IIMGENC1_Status , ISPHDEC1_Status , ISPHENC_Status , ISPHENC1_Status , IVIDTRANSCODE_Status , IVIDDEC_Status , IVIDDEC1_Status , IVIDDEC2_Status , IVIDENC_Status , IVIDENC1_Status , IVIDENC2_Status , IVIDDEC3_Status
  • bufs : IVIDEO_BufDesc , XDM_BufDesc
  • bufSize : XDM1_SingleBufDesc , XDM_SingleBufDesc , XDM2_SingleBufDesc
  • bufSizes : IVIDEO_BufDesc , XDM_BufDesc
  • bytes : XDM2_BufSize
  • bytesConsumed : IVIDDEC2_OutArgs , IVIDDEC_OutArgs , IVIDDEC1_OutArgs , IVIDDEC2FRONT_OutArgs , IVIDDEC3_OutArgs , IAUDDEC1_OutArgs
  • bytesconsumed : IIMGDEC_OutArgs
  • bytesConsumed : IAUDDEC_OutArgs , IIMGDEC1_OutArgs
  • bytesGenerated : IIMGENC_OutArgs , IVIDENC1_OutArgs , IIMGENC1_OutArgs , IAUDENC1_OutArgs , IVIDENC2_OutArgs , IAUDENC_OutArgs , IVIDENC_OutArgs


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- c -

  • captureWidth : IIMGENC_DynamicParams , IIMGENC1_DynamicParams , IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams
  • channelMode : IAUDENC1_Params , IAUDENC1_DynamicParams , IAUDENC1_Status , IAUDDEC1_Status , IAUDDEC1_OutArgs
  • chromaFormat : IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • cmd : VISA_MsgHeader
  • codecClassConfig : Engine_DllAlgDesc
  • codecSelection : ISPHDEC1_Status , ISPHENC1_Params , ISPHENC1_Status , ISPHDEC1_Params
  • compandingLaw : ISPHDEC_Params , ISPHDEC1_Params , ISPHDEC1_Status , ISPHENC_Params , ISPHENC1_Params , ISPHENC1_Status
  • configurationID : IVIDDEC3_Status , IVIDENC2_Status
  • contentType : IVIDEO2_BufDesc , IVIDDEC_Status , IVIDDEC1_Status , IVIDDEC2_Status , IVIDDEC3_Status , IVIDEO1_BufDesc
  • contextInfo : IVIDDEC2FRONT_Status
  • control : IVIDDEC2_Fxns , IVIDTRANSCODE_Fxns , IIMGDEC_Fxns , IVIDENC2_InArgs , IVIDENC1_Fxns , IAUDDEC_Fxns , ISPHDEC1_Fxns , IVIDDEC3_Fxns , IVIDENC2_Fxns , IAUDENC_Fxns , IVIDANALYTICS_Fxns , ISPHENC_Fxns , ISPHDEC_Fxns , IIMGENC1_Fxns , IVIDENC_Fxns , ISPHENC1_Fxns , IIMGENC_Fxns , IUNIVERSAL_Fxns , IAUDENC1_Fxns , IVIDDEC2BACK_Fxns , IVIDDEC2FRONT_Fxns , IVIDDEC_Fxns , IAUDDEC1_Fxns , IVIDDEC1_Fxns , IIMGDEC1_Fxns
  • crcFlag : IAUDENC1_Params
  • currentAU : IIMGENC1_OutArgs , IIMGDEC_OutArgs , IIMGDEC1_OutArgs , IIMGENC_OutArgs
  • currentScan : IIMGDEC_OutArgs , IIMGDEC1_OutArgs


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- d -

  • data : IAUDDEC1_Status , IAUDENC1_Status , IIMGENC1_Status , ISPHENC1_Status , IVIDTRANSCODE_Status , IUNIVERSAL_Status , ISPHDEC1_InArgs , IVIDANALYTICS_Status , IVIDDEC1_Status , IIMGDEC1_Status , ISPHDEC1_Status , IVIDDEC2_Status , IVIDDEC3_Status , ISPHENC1_InArgs , IVIDENC1_Status , IVIDENC2_Status
  • dataEnable : ISPHDEC_Params
  • dataEndianness : IVIDENC1_Params , IVIDENC2_Params , IVIDTRANSCODE_Params , IAUDDEC_Params , IAUDDEC1_Params , IAUDENC_Params , IAUDENC1_Params , IIMGDEC_Params , IIMGDEC1_Params , IIMGENC_Params , IIMGENC1_Params , IVIDANALYTICS_Params , IVIDDEC_Params , IVIDDEC1_Params , IVIDDEC2_Params , IVIDDEC3_Params , IVIDENC_Params
  • dataLayout : IVIDEO2_BufDesc
  • dataMode : ISPHDEC_Status
  • dataSize : ISPHDEC1_OutArgs
  • dataTransmit : ISPHENC_DynamicParams , ISPHENC_Status , ISPHENC1_DynamicParams , ISPHENC1_Status
  • date : IVIDANALYTICS_DynamicParams , IVIDANALYTICS_InArgs , IVIDANALYTICS_OutArgs
  • dayOfMonth : XDM_Date
  • dayOfWeek : XDM_Date
  • decDynamicParams : IVIDDEC3_Status
  • decodedBufs : IVIDDEC1_OutArgs , IVIDDEC2_OutArgs , IVIDDEC3_OutArgs
  • decodedFrameType : IVIDDEC_OutArgs
  • decodedHeight : IVIDTRANSCODE_OutArgs
  • decodedPictureStructure : IVIDTRANSCODE_OutArgs
  • decodedPictureType : IVIDTRANSCODE_OutArgs
  • decodedWidth : IVIDTRANSCODE_OutArgs
  • decodeHeader : IVIDDEC3_DynamicParams , IVIDDEC1_DynamicParams , IIMGDEC1_DynamicParams , IIMGDEC_DynamicParams , IVIDDEC_DynamicParams , IVIDDEC2_DynamicParams
  • descs : XDM1_BufDesc , XDM2_BufDesc
  • desiredChannelMode : IAUDDEC1_InArgs
  • displayBufs : IVIDDEC_OutArgs , IVIDDEC3_OutArgs , IVIDDEC2_OutArgs , IVIDDEC1_OutArgs
  • displayBufsMode : IVIDDEC3_Params , IVIDDEC3_OutArgs
  • displayDelay : IVIDDEC3_Params
  • displayWidth : IVIDDEC_DynamicParams , IIMGDEC_DynamicParams , IVIDDEC2_DynamicParams , IVIDDEC3_DynamicParams , IIMGDEC1_DynamicParams , IVIDDEC1_DynamicParams
  • downSampleSbrFlag : IAUDDEC1_DynamicParams
  • dtmfMode : ISPHENC1_DynamicParams , ISPHENC_Status , ISPHENC_DynamicParams
  • dualMonoMode : IAUDENC1_DynamicParams , IAUDDEC1_OutArgs , IAUDDEC1_Status , IAUDENC1_Params


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- e -

  • enableMaskArray : IVIDANALYTICS_Grid
  • enableRangeReductionFlag : IVIDEO2_BufDesc
  • encDynamicParams : IVIDENC2_Status
  • encMode : IAUDENC1_Params , IAUDENC1_Status
  • encodedBuf : IVIDENC1_OutArgs , IVIDTRANSCODE_OutArgs
  • encodedFrameType : IVIDENC_OutArgs , IVIDENC1_OutArgs , IVIDENC2_OutArgs
  • encodedPictureStructure : IVIDTRANSCODE_OutArgs
  • encodedPictureType : IVIDTRANSCODE_OutArgs
  • encodingPreset : IVIDENC2_Params , IVIDENC2_Status , IAUDENC_Params , IVIDENC_Params , IVIDENC1_Params
  • errorInfoMode : IVIDDEC3_Params
  • eventId : IVIDANALYTICS_OutArgs
  • extendedError : IVIDANALYTICS_Status , IUNIVERSAL_OutArgs , IUNIVERSAL_Status , ISPHENC1_OutArgs , ISPHENC1_Status , ISPHENC_Status , ISPHDEC1_OutArgs , ISPHDEC1_Status , ISPHDEC_Status , IIMGENC1_OutArgs , IIMGENC1_Status , IIMGENC_OutArgs , IIMGENC_Status , IIMGDEC1_OutArgs , IIMGDEC1_Status , IIMGDEC_OutArgs , IIMGDEC_Status , IAUDENC1_OutArgs , IAUDENC1_Status , IAUDENC_OutArgs , IAUDENC_Status , IAUDDEC1_OutArgs , IAUDDEC1_Status , IAUDDEC_OutArgs , IAUDDEC_Status , IVIDDEC3_OutArgs , IVIDEO2_BufDesc , IVIDENC2_Status , IVIDDEC2FRONT_OutArgs , IVIDDEC2_Status , IVIDEO1_BufDesc , IVIDENC2_OutArgs , IVIDTRANSCODE_OutArgs , IVIDENC1_OutArgs , IVIDTRANSCODE_Status , IVIDDEC3_Status , IVIDENC_OutArgs , IVIDDEC1_Status , IVIDENC_Status , IVIDENC1_Status , IVIDDEC_Status , IVIDDEC_OutArgs , IVIDANALYTICS_OutArgs


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- f -

  • fastFwdLen : IAUDDEC_Status
  • flags : ti_sdo_ce_osal_Memory_AllocParams
  • forceChromaFormat : IIMGDEC1_Params , IVIDDEC1_Params , IVIDDEC2_Params , IIMGENC_Params , IVIDDEC3_Params , IVIDDEC3_Status , IIMGDEC_Params , IIMGENC1_Params , IVIDDEC_Params
  • forceFrame : IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDTRANSCODE_DynamicParams
  • forceIFrame : IVIDENC_DynamicParams
  • formatInput : IVIDTRANSCODE_Params
  • formatOutput : IVIDTRANSCODE_Params
  • frameHeight : IVIDEO1_BufDescIn , IVIDEO1_BufDesc
  • frameLen : IAUDDEC_Status , IAUDENC_Status
  • frameOrder : IVIDDEC1_DynamicParams , IVIDDEC2_DynamicParams , IVIDDEC3_Status
  • framePitch : IVIDEO1_BufDescIn , IVIDEO1_BufDesc
  • frameRate : IVIDDEC_Status , IVIDDEC1_Status , IVIDDEC2_Status , IVIDDEC3_Status
  • frameSize : ISPHENC_DynamicParams , ISPHENC_Status , ISPHENC1_Params , ISPHENC1_DynamicParams , ISPHENC1_Status , ISPHENC_Params
  • frameSkipMode : IVIDDEC_DynamicParams , IVIDDEC1_DynamicParams , IVIDDEC2_DynamicParams , IVIDDEC3_DynamicParams
  • frameSkipTranscodeFlag : IVIDTRANSCODE_DynamicParams
  • frameStatus : IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • frameType : ISPHENC1_OutArgs , ISPHDEC_InArgs , ISPHDEC1_InArgs , ISPHENC_OutArgs , IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • frameWidth : IVIDEO1_BufDesc , IVIDEO1_BufDescIn
  • freeBufID : IVIDDEC1_OutArgs , IVIDDEC2_OutArgs , IVIDDEC3_OutArgs , IVIDENC2_OutArgs
  • fullStatus : IVIDDEC2FRONT_Status
  • fxns : IVIDENC1_Obj , IIMGDEC_Obj , IVIDENC_Obj , IAUDDEC1_Obj , IVIDDEC2FRONT_Obj , IVIDENC2_Obj , IVIDTRANSCODE_Obj , IIMGDEC1_Obj , IUNIVERSAL_Obj , IIMGENC1_Obj , IAUDENC_Obj , ISPHDEC1_Obj , IAUDENC1_Obj , IVIDDEC_Obj , Engine_DllAlgDesc , IALG_Obj , IVIDDEC1_Obj , IIMGENC_Obj , ISPHDEC_Obj , IVIDDEC2_Obj , IVIDANALYTICS_Obj , IVIDDEC3_Obj , ISPHENC1_Obj , ISPHENC_Obj , IAUDDEC_Obj , IVIDDEC2BACK_Obj


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- g -

  • generateHeader : IIMGENC_DynamicParams , IIMGENC1_DynamicParams , IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams
  • getBufferFxn : IVIDENC2_DynamicParams
  • getBufferHandle : IVIDENC2_DynamicParams
  • getDataFxn : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams
  • getDataHandle : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams
  • grid : IVIDANALYTICS_DynamicParams
  • groupId : Engine_DllAlgParams


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- h -

  • header : VISA_MsgHeader
  • height : XDM2_BufSize
  • homingMode : ISPHENC_DynamicParams , ISPHENC_Status


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- i -

  • ialg : IAUDDEC_Fxns , IAUDDEC1_Fxns , IAUDENC1_Fxns , IIMGENC1_Fxns , IVIDDEC1_Fxns , IVIDDEC2_Fxns , ISPHDEC_Fxns , IVIDDEC3_Fxns , IVIDENC_Fxns , IIMGDEC_Fxns , ISPHDEC1_Fxns , IVIDENC1_Fxns , IVIDENC2_Fxns , ISPHENC_Fxns , IVIDTRANSCODE_Fxns , IVIDDEC2FRONT_Fxns , IAUDENC_Fxns , IIMGDEC1_Fxns , ISPHENC1_Fxns , IVIDDEC2BACK_Fxns , IUNIVERSAL_Fxns , IIMGENC_Fxns , IVIDANALYTICS_Fxns , IVIDDEC_Fxns
  • id : IVIDANALYTICS_Rule
  • idmaFxns : Engine_DllAlgDesc
  • ignoreOutbufSizeFlag : IVIDENC2_DynamicParams
  • imagePitch : IVIDEO2_BufDesc
  • imageRegion : IVIDEO2_BufDesc
  • imageWidth : IIMGDEC_Status , IIMGDEC1_Status
  • implementationId : IALG_Fxns
  • inBufferSize : ISPHDEC_InArgs
  • inBufMemoryType : XDM1_AlgBufInfo
  • inBufs : XDM_Context
  • inOutBufs : XDM_Context
  • inputBitsPerSample : IAUDENC_DynamicParams , IAUDENC1_Params , IAUDENC1_DynamicParams
  • inputChromaFormat : IIMGENC_DynamicParams , IIMGENC1_DynamicParams , IVIDANALYTICS_Params , IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params , IVIDENC2_Status
  • inputContentType : IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params , IVIDENC2_Status
  • inputDataMode : IVIDDEC3_Params , IVIDDEC3_Status , IVIDENC2_Params , IVIDENC2_Status
  • inputFormat : IAUDENC_DynamicParams , IAUDENC1_Params
  • inputFrameRate : IVIDTRANSCODE_DynamicParams
  • inputFrameSkip : IVIDENC1_OutArgs , IVIDENC_OutArgs , IVIDENC2_OutArgs
  • inputFrameSkipTranscodeFlag : IVIDTRANSCODE_OutArgs
  • inputHeight : IVIDENC_DynamicParams , IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IIMGENC_DynamicParams , IIMGENC1_DynamicParams
  • inputID : IVIDDEC1_InArgs , IVIDENC2_InArgs , IVIDDEC_InArgs , IVIDTRANSCODE_InArgs , IVIDDEC2_InArgs , IVIDENC1_InArgs , IVIDDEC3_InArgs
  • inputWidth : IVIDENC2_DynamicParams , IIMGENC_DynamicParams , IVIDENC1_DynamicParams , IVIDENC_DynamicParams , IIMGENC1_DynamicParams
  • interFrameInterval : IVIDENC2_DynamicParams , IVIDENC1_DynamicParams , IVIDTRANSCODE_DynamicParams
  • intermediateBufs : XDM_Context
  • intraFrameInterval : IVIDENC1_DynamicParams , IVIDENC_DynamicParams , IVIDTRANSCODE_DynamicParams , IVIDENC2_DynamicParams
  • iresFxns : Engine_DllAlgDesc
  • isLocal : Engine_AlgInfo , Engine_DllAlgParams


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- p -

  • packingType : ISPHDEC_Params , ISPHDEC1_Params , ISPHENC_Params , ISPHENC1_Params , ISPHDEC1_Status , ISPHENC1_Status
  • partialExtendedError : IVIDDEC2FRONT_Status
  • pBufDesc : IVIDDEC3_OutArgs
  • pcmFormat : IAUDDEC1_Params , IAUDDEC1_Status
  • planeDesc : IVIDEO2_BufDesc
  • postFilter : ISPHDEC_DynamicParams , ISPHDEC_Status , ISPHDEC1_DynamicParams , ISPHDEC1_Status
  • process : IVIDENC_Fxns , IVIDDEC2BACK_Fxns , IAUDDEC_Fxns , IVIDDEC1_Fxns , IVIDDEC_Fxns , IVIDDEC2_Fxns , IVIDDEC3_Fxns , ISPHENC1_Fxns , IAUDDEC1_Fxns , ISPHDEC1_Fxns , IAUDENC_Fxns , IIMGENC1_Fxns , IVIDENC2_Fxns , IAUDENC1_Fxns , IIMGDEC_Fxns , IIMGDEC1_Fxns , IIMGENC_Fxns , IVIDENC1_Fxns , IVIDDEC2FRONT_Fxns , IVIDTRANSCODE_Fxns , IVIDANALYTICS_Fxns , ISPHDEC_Fxns , ISPHENC_Fxns , IUNIVERSAL_Fxns
  • procId : Engine_Attrs
  • profile : IVIDENC2_Params , IVIDENC2_Status
  • putBufferFxn : IVIDDEC3_DynamicParams
  • putBufferHandle : IVIDDEC3_DynamicParams
  • putDataFxn : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams
  • putDataHandle : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- q -

  • QP : IVIDENC1_MbData
  • qValue : IIMGENC1_DynamicParams , IIMGENC_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- r -

  • rangeMappingChroma : IVIDEO2_BufDesc
  • rangeMappingLuma : IVIDEO2_BufDesc
  • rate : ISPHENC_OutArgs
  • rateControl : IVIDTRANSCODE_DynamicParams
  • rateControlPreset : IVIDENC2_Status , IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params
  • readHeaderOnlyFlag : IVIDTRANSCODE_DynamicParams
  • reconBufs : IVIDENC_OutArgs , IVIDENC1_OutArgs , IVIDENC2_OutArgs
  • reconChromaFormat : IVIDENC1_Params
  • refFrameRate : IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams
  • repeatFirstFieldFlag : IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • repeatFrame : IVIDEO2_BufDesc , IVIDEO1_BufDesc
  • reserved : ISPHENC1_DynamicParams , ISPHDEC1_Params , ISPHENC1_Params
  • rule : IVIDANALYTICS_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- s -

  • sampleAspectRatioHeight : IVIDDEC3_Status , IVIDENC2_DynamicParams
  • sampleAspectRatioWidth : IVIDENC2_DynamicParams , IVIDDEC3_Status
  • sampleRate : IAUDENC_DynamicParams , IAUDENC1_Params , IAUDDEC_Status , IAUDENC1_DynamicParams , IAUDENC1_Status , IAUDDEC1_Status , IAUDDEC1_OutArgs
  • scalingHeight : IVIDEO2_BufDesc
  • scalingWidth : IVIDEO2_BufDesc
  • scatteredBlocksFlag : XDM_DataSyncDesc
  • secondFieldOffsetHeight : IVIDEO2_BufDesc
  • secondFieldOffsetWidth : IVIDEO2_BufDesc
  • seg : ti_sdo_ce_osal_Memory_AllocParams
  • size : IVIDENC2_DynamicParams , IVIDENC2_Params , IVIDENC1_OutArgs , IVIDENC1_Status , IVIDENC1_InArgs , IVIDENC1_DynamicParams , IVIDENC1_Params , IVIDENC_OutArgs , IVIDENC2_InArgs , IVIDENC_InArgs , IVIDENC_DynamicParams , IVIDENC_Params , IVIDDEC3_OutArgs , IVIDDEC3_Status , IVIDDEC3_InArgs , IVIDDEC3_DynamicParams , IVIDDEC3_Params , IVIDDEC2_OutArgs , IVIDDEC2_Status , IVIDDEC2_InArgs , IVIDDEC2_DynamicParams , IVIDDEC2_Params , IVIDDEC1_OutArgs , IVIDDEC1_Status , IVIDDEC1_InArgs , IVIDDEC1_DynamicParams , IVIDDEC1_Params , IVIDDEC_OutArgs , IVIDDEC_Status , IVIDDEC_InArgs , IVIDDEC_DynamicParams , IVIDDEC_Params , IVIDANALYTICS_OutArgs , IVIDANALYTICS_Status , IVIDANALYTICS_InArgs , IVIDANALYTICS_DynamicParams , IVIDANALYTICS_Params , IVIDANALYTICS_Rule , IUNIVERSAL_OutArgs , IUNIVERSAL_Status , IUNIVERSAL_InArgs , IUNIVERSAL_DynamicParams , IUNIVERSAL_Params , ISPHENC1_OutArgs , ISPHENC1_Status , ISPHENC1_InArgs , ISPHENC1_DynamicParams , ISPHENC1_Params , IVIDENC2_Status , ISPHENC_Status , ISPHENC_InArgs , ISPHENC_DynamicParams , ISPHENC_Params , ISPHDEC1_OutArgs , ISPHDEC1_Status , IVIDDEC2FRONT_OutArgs , IAUDENC_OutArgs , ISPHDEC1_Params , ISPHDEC_OutArgs , ISPHDEC_Status , ISPHDEC_InArgs , ISPHDEC_DynamicParams , ISPHDEC_Params , IIMGENC1_OutArgs , IVIDENC_Status , IIMGENC1_InArgs , IIMGENC1_DynamicParams , IIMGENC1_Params , IIMGENC_OutArgs , IIMGENC_Status , IIMGENC_InArgs , IIMGENC_DynamicParams , IIMGENC_Params , IIMGDEC1_OutArgs , IIMGDEC1_Status , IIMGDEC1_InArgs , IIMGDEC1_DynamicParams , IIMGDEC1_Params , IIMGDEC_OutArgs , IIMGDEC_Status , IIMGDEC_InArgs , IIMGDEC_DynamicParams , IIMGDEC_Params , IAUDENC1_OutArgs , ISPHENC_OutArgs , IAUDENC1_InArgs , IAUDENC1_DynamicParams , ISPHDEC1_DynamicParams , IVIDTRANSCODE_OutArgs , IAUDENC_Status , IAUDENC_InArgs , IAUDENC_DynamicParams , IIMGENC1_Status , IAUDDEC1_OutArgs , IAUDDEC1_Status , IAUDDEC1_InArgs , IAUDDEC1_DynamicParams , IAUDDEC1_Params , IAUDDEC_OutArgs , IAUDDEC_Status , IAUDDEC_InArgs , IAUDDEC_DynamicParams , IAUDENC1_Status , ISPHDEC1_InArgs , IAUDENC1_Params , IVIDTRANSCODE_DynamicParams , IAUDENC_Params , IVIDTRANSCODE_Status , Server_MemStat , IALG_MemRec , IALG_Params , IALG_Status , IAUDDEC_Params , IVIDTRANSCODE_Params , IVIDTRANSCODE_InArgs , XDM_DataSyncDesc , IVIDENC2_OutArgs
  • space : IALG_MemRec
  • status : VISA_MsgHeader


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- t -

  • tablesPtr : ISPHDEC1_Params , ISPHENC1_Params
  • targetBitRate : IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams , IVIDTRANSCODE_DynamicParams
  • targetFrameRate : IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams
  • targets : IVIDANALYTICS_OutArgs
  • tileMem : XDM2_BufSize
  • topFieldFirstFlag : IVIDENC1_InArgs , IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • topLeft : XDM_Rect
  • totalAU : IIMGENC1_Status , IIMGDEC_Status , IIMGDEC1_Status , IIMGENC_Status
  • totalScan : IIMGDEC_Status , IIMGDEC1_Status
  • ttyTddMode : ISPHENC1_Status , ISPHENC1_DynamicParams , ISPHENC_DynamicParams , ISPHENC_Status
  • type : ti_sdo_ce_osal_Memory_AllocParams
  • typeTab : Engine_DllAlgDesc , Engine_AlgInfo


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- u -

  • usageMode : XDM2_SingleBufDesc
  • used : Server_MemStat
  • uuid : Engine_DllAlgDesc


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- v -

  • vadFlag : ISPHENC_DynamicParams , ISPHENC_Status , ISPHENC1_Status , ISPHENC1_DynamicParams
  • vadSelection : ISPHENC_Params , ISPHENC1_Status , ISPHENC1_Params
  • validFlag : IAUDDEC1_Status , IAUDENC1_Status
  • varBlockSizesFlag : XDM_DataSyncDesc
  • viewState : IVIDANALYTICS_Status


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- w -

  • width : IVIDEO_BufDesc , XDM2_BufSize


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- x -

  • x : XDM_Point


Codec Engine Application Programming Interface (API): Data Fields

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
Here is a list of all struct and union fields with links to the structures/unions they belong to:

- y -

  • y : XDM_Point
  • year : XDM_Date


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- a -

  • accessMask : XDM1_SingleBufDesc , XDM2_SingleBufDesc
  • actionType : IVIDANALYTICS_Rule
  • activeFrameRegion : IVIDEO2_BufDesc
  • algActivate : IALG_Fxns
  • algAlloc : IALG_Fxns
  • algContext : XDM_Context
  • algControl : IALG_Fxns
  • algDeactivate : IALG_Fxns
  • algFree : IALG_Fxns
  • algInfoSize : Engine_AlgInfo
  • algInit : IALG_Fxns
  • algMoved : IALG_Fxns
  • algNumAlloc : IALG_Fxns
  • align : ti_sdo_ce_osal_Memory_AllocParams
  • alignment : IALG_MemRec
  • ancData : IAUDENC1_InArgs
  • ancFlag : IAUDENC1_Params
  • attrs : IALG_MemRec
  • autoPosition : IAUDDEC_Status


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- k -

  • keepInputFrameRateFlag : IVIDTRANSCODE_DynamicParams
  • keepInputGOPFlag : IVIDTRANSCODE_DynamicParams
  • keepInputResolutionFlag : IVIDTRANSCODE_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- l -

  • lateAcquireArg : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams
  • level : IVIDENC2_Status , IVIDENC2_Params
  • lfeFlag : IAUDDEC1_OutArgs , IAUDDEC1_Status , IAUDDEC1_InArgs , IAUDENC1_Status , IAUDENC1_Params , IAUDENC1_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- m -

  • manageDisplayBufsCache : IVIDDEC_CodecClassConfig
  • manageInBufsCache : IIMGDEC_CodecClassConfig , IIMGDEC1_CodecClassConfig , IVIDDEC1_CodecClassConfig , IVIDENC1_CodecClassConfig , IIMGENC1_CodecClassConfig , IVIDDEC2BACK_CodecClassConfig , IVIDDEC2_CodecClassConfig , IIMGENC_CodecClassConfig , IVIDDEC_CodecClassConfig , IVIDDEC3_CodecClassConfig , IVIDENC_CodecClassConfig
  • manageInBufsMetaPlaneDescCache : IVIDENC2_CodecClassConfig
  • manageInBufsPlaneDescCache : IVIDENC2_CodecClassConfig
  • manageIntermediateBufsCache : IVIDDEC2BACK_CodecClassConfig
  • manageOutBufsCache : IIMGDEC_CodecClassConfig , IIMGENC_CodecClassConfig , IIMGDEC1_CodecClassConfig , IIMGENC1_CodecClassConfig , IVIDDEC_CodecClassConfig , IVIDENC_CodecClassConfig , IVIDDEC1_CodecClassConfig , IVIDENC1_CodecClassConfig , IVIDDEC2BACK_CodecClassConfig , IVIDDEC2_CodecClassConfig , IVIDENC2_CodecClassConfig , IVIDDEC3_CodecClassConfig
  • manageReconBufsCache : IVIDENC_CodecClassConfig
  • maxBitRate : IVIDDEC2_Params , IVIDDEC3_Params , IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params
  • maxBitrate : IAUDDEC_Params , IAUDENC_Params
  • maxBitRate : IAUDENC1_Params , IVIDDEC_Params , IVIDDEC1_Params
  • maxBitRateInput : IVIDTRANSCODE_Params
  • maxBitRateOutput : IVIDTRANSCODE_Params
  • maxBlockLen : Server_MemStat
  • maxFrameRate : IVIDANALYTICS_Params , IVIDDEC_Params , IVIDDEC1_Params , IVIDDEC2_Params , IVIDDEC3_Params , IVIDENC_Params , IVIDENC1_Params
  • maxFrameRateInput : IVIDTRANSCODE_Params
  • maxFrameRateOutput : IVIDTRANSCODE_Params
  • maxHeight : IIMGDEC_Params , IIMGDEC1_Params , IIMGENC_Params , IIMGENC1_Params , IVIDANALYTICS_Params , IVIDDEC_Params , IVIDDEC1_Params , IVIDDEC2_Params , IVIDDEC3_Params , IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params
  • maxHeightInput : IVIDTRANSCODE_Params
  • maxHeightOutput : IVIDTRANSCODE_Params
  • maxInterFrameInterval : IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params , IVIDENC2_Status
  • maxNoOfCh : IAUDDEC_Params , IAUDENC_Params
  • maxNumDisplayBufs : IVIDDEC3_Status , IVIDDEC2_Status
  • maxOutArgsDisplayBufs : IVIDDEC3_Status
  • maxRules : IVIDANALYTICS_Params
  • maxSampleRate : IAUDENC_Params , IAUDDEC_Params
  • maxScans : IIMGDEC_Params , IIMGDEC1_Params , IIMGENC1_Params , IIMGENC_Params
  • maxWidth : IIMGENC_Params , IVIDDEC3_Params , IVIDDEC1_Params , IVIDENC2_Params , IIMGDEC_Params , IIMGDEC1_Params , IIMGENC1_Params , IVIDANALYTICS_Params , IVIDENC1_Params , IVIDDEC2_Params , IVIDENC_Params , IVIDDEC_Params
  • maxWidthInput : IVIDTRANSCODE_Params
  • maxWidthOutput : IVIDTRANSCODE_Params
  • mbDataBuf : IVIDDEC2_OutArgs , IVIDDEC1_OutArgs
  • mbDataFlag : IVIDENC1_DynamicParams , IVIDDEC1_DynamicParams , IVIDDEC2_DynamicParams
  • mbMode : IVIDENC1_MbData
  • memType : XDM2_SingleBufDesc
  • metadataPlaneDesc : IVIDEO2_BufDesc
  • metadataType : IVIDDEC3_Status , IVIDENC2_Params , IVIDENC2_Status , IVIDDEC3_Params
  • minBitRate : IVIDENC2_Params
  • minContextSize : XDM_ContextInfo
  • minInBufSize : XDM_AlgBufInfo , XDM1_AlgBufInfo
  • minIntermediateBufSizes : XDM_ContextInfo
  • minNumBufSets : XDM1_AlgBufInfo
  • minNumInBufs : XDM_AlgBufInfo , XDM1_AlgBufInfo
  • minNumOutBufs : XDM1_AlgBufInfo , XDM_AlgBufInfo
  • minOutBufSize : XDM_AlgBufInfo , XDM1_AlgBufInfo
  • mode : ISPHENC1_Status , ISPHENC_Status , ISPHENC_DynamicParams , ISPHENC1_DynamicParams , ISPHDEC_OutArgs
  • month : XDM_Date
  • msecsOfDay : XDM_Date
  • mvAccuracy : IVIDENC2_DynamicParams
  • mvBwdXY : IVIDENC1_MbData
  • mvFwdXY : IVIDENC1_MbData


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- n -

  • name : Engine_AlgInfo , Engine_DllAlgParams , Server_MemStat
  • newFrameFlag : IVIDDEC1_DynamicParams , IVIDDEC2_DynamicParams , IVIDDEC3_DynamicParams
  • nextPartRequiredFlag : IVIDDEC2FRONT_Status
  • noiseSuppressionMode : ISPHENC_DynamicParams , ISPHENC_Status , ISPHENC1_DynamicParams , ISPHENC1_Status
  • nullTrafficChannel : ISPHENC_InArgs , ISPHENC1_InArgs
  • numAU : IIMGENC_DynamicParams , IIMGENC1_DynamicParams , IIMGDEC_DynamicParams , IIMGDEC1_DynamicParams
  • numBlockHorizontal : IVIDANALYTICS_Grid
  • numBlocks : XDM_DataSyncDesc
  • numBlockVertical : IVIDANALYTICS_Grid
  • numBufs : IVIDEO_BufDesc , IVIDEO1_BufDescIn , IVIDEO1_BufDesc , XDM_BufDesc , XDM1_BufDesc , XDM2_BufDesc
  • numBytes : IVIDDEC1_InArgs , IVIDDEC2_InArgs , IVIDDEC3_InArgs , IVIDTRANSCODE_InArgs , IVIDDEC_InArgs , IAUDDEC_InArgs , IAUDDEC1_InArgs , IIMGDEC_InArgs , IIMGDEC1_InArgs
  • numChannels : IAUDDEC_Status , IAUDENC_DynamicParams
  • numEvents : IVIDANALYTICS_OutArgs
  • numInBufs : XDM_Context
  • numInOutBufs : XDM_Context
  • numInputDataUnits : IVIDENC2_Status , IVIDENC2_Params , IVIDDEC3_Status , IVIDDEC3_Params
  • numInSamples : IAUDENC1_InArgs , IAUDENC1_OutArgs
  • numLFEChannels : IAUDENC_DynamicParams , IAUDDEC_Status
  • numMetaPlanes : IVIDEO2_BufDesc
  • numOutBufs : XDM_Context
  • numOutputDataUnits : IVIDDEC3_Params , IVIDENC2_Params , IVIDENC2_Status , IVIDDEC3_Status
  • numOutputStreams : IVIDTRANSCODE_Params
  • numPlanes : IVIDEO2_BufDesc
  • numSamples : IAUDDEC1_OutArgs , IAUDDEC1_Status
  • numTargets : IVIDANALYTICS_OutArgs
  • numZeroesPadded : IAUDENC1_OutArgs


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- o -

  • objectType : IVIDANALYTICS_Rule
  • operatingMode : IVIDDEC3_Params , IVIDENC2_Params , IVIDENC2_Status , IVIDDEC3_Status
  • outbufferSize : ISPHENC_OutArgs
  • outBufMemoryType : XDM1_AlgBufInfo
  • outBufs : XDM_Context
  • outBufsInUseFlag : IVIDDEC1_OutArgs , IVIDDEC2_OutArgs , IVIDDEC3_OutArgs , IVIDTRANSCODE_OutArgs
  • outChromaformat : IIMGDEC_Status
  • outputBitsPerSample : IAUDDEC_Status , IAUDDEC1_Status
  • outputChromaFormat : IIMGDEC1_Status , IVIDDEC_Status , IVIDDEC1_Status , IVIDDEC2_Status
  • outputDataMode : IVIDDEC3_Params , IVIDDEC3_Status , IVIDENC2_Params , IVIDENC2_Status
  • outputFormat : IAUDDEC_DynamicParams , IAUDDEC_Status
  • outputFrameRate : IVIDTRANSCODE_DynamicParams
  • outputHeight : IVIDDEC3_Status , IVIDTRANSCODE_DynamicParams , IVIDDEC2_Status , IIMGDEC_Status , IIMGDEC1_Status , IVIDDEC_Status , IVIDDEC1_Status
  • outputID : IVIDDEC_OutArgs , IVIDDEC2_OutArgs , IVIDDEC1_OutArgs , IVIDENC1_OutArgs , IVIDDEC3_OutArgs , IVIDTRANSCODE_OutArgs
  • outputMbDataID : IVIDDEC1_OutArgs , IVIDDEC2_OutArgs
  • outputPCMWidth : IAUDDEC1_Params
  • outputWidth : IVIDDEC1_Status , IVIDDEC2_Status , IIMGDEC_Status , IVIDTRANSCODE_DynamicParams , IVIDDEC3_Status , IIMGDEC1_Status , IVIDDEC_Status


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- b -

  • base : IALG_MemRec , Server_MemStat
  • baseAddr : XDM_DataSyncDesc
  • bfiFlag : ISPHDEC_InArgs
  • bitRange : IVIDDEC3_Status
  • bitRate : IAUDENC_DynamicParams , ISPHENC1_Params , ISPHENC1_DynamicParams , IAUDENC1_Params , ISPHENC1_Status , IVIDDEC_Status , IAUDENC1_DynamicParams , IVIDDEC1_Status , IVIDDEC2_Status , IAUDENC1_Status , IVIDDEC3_Status , IAUDDEC_Status , ISPHDEC1_Params , ISPHDEC1_Status , IAUDDEC1_Status , ISPHENC_DynamicParams , ISPHENC_Status
  • bitsConsumed : IVIDTRANSCODE_OutArgs
  • bitsGenerated : IVIDTRANSCODE_OutArgs
  • blockHeight : IVIDANALYTICS_Grid
  • blockSizes : XDM_DataSyncDesc
  • blockWidth : IVIDANALYTICS_Grid
  • bottomRight : XDM_Rect
  • buf : XDM_SingleBufDesc , XDM1_SingleBufDesc , XDM2_SingleBufDesc
  • bufDesc : IVIDDEC3_OutArgs , IVIDEO1_BufDescIn , IVIDEO1_BufDesc
  • bufInfo : IVIDANALYTICS_Status , IAUDDEC_Status , IAUDDEC1_Status , ISPHDEC_Status , IAUDENC_Status , IAUDENC1_Status , IIMGDEC_Status , IIMGDEC1_Status , IIMGENC_Status , IIMGENC1_Status , ISPHDEC1_Status , ISPHENC_Status , ISPHENC1_Status , IVIDTRANSCODE_Status , IVIDDEC_Status , IVIDDEC1_Status , IVIDDEC2_Status , IVIDENC_Status , IVIDENC1_Status , IVIDENC2_Status , IVIDDEC3_Status
  • bufs : IVIDEO_BufDesc , XDM_BufDesc
  • bufSize : XDM1_SingleBufDesc , XDM_SingleBufDesc , XDM2_SingleBufDesc
  • bufSizes : IVIDEO_BufDesc , XDM_BufDesc
  • bytes : XDM2_BufSize
  • bytesConsumed : IVIDDEC2_OutArgs , IVIDDEC_OutArgs , IVIDDEC1_OutArgs , IVIDDEC2FRONT_OutArgs , IVIDDEC3_OutArgs , IAUDDEC1_OutArgs
  • bytesconsumed : IIMGDEC_OutArgs
  • bytesConsumed : IAUDDEC_OutArgs , IIMGDEC1_OutArgs
  • bytesGenerated : IIMGENC_OutArgs , IVIDENC1_OutArgs , IIMGENC1_OutArgs , IAUDENC1_OutArgs , IVIDENC2_OutArgs , IAUDENC_OutArgs , IVIDENC_OutArgs


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- c -

  • captureWidth : IIMGENC_DynamicParams , IIMGENC1_DynamicParams , IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams
  • channelMode : IAUDENC1_Params , IAUDENC1_DynamicParams , IAUDENC1_Status , IAUDDEC1_Status , IAUDDEC1_OutArgs
  • chromaFormat : IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • cmd : VISA_MsgHeader
  • codecClassConfig : Engine_DllAlgDesc
  • codecSelection : ISPHDEC1_Status , ISPHENC1_Params , ISPHENC1_Status , ISPHDEC1_Params
  • compandingLaw : ISPHDEC_Params , ISPHDEC1_Params , ISPHDEC1_Status , ISPHENC_Params , ISPHENC1_Params , ISPHENC1_Status
  • configurationID : IVIDDEC3_Status , IVIDENC2_Status
  • contentType : IVIDEO2_BufDesc , IVIDDEC_Status , IVIDDEC1_Status , IVIDDEC2_Status , IVIDDEC3_Status , IVIDEO1_BufDesc
  • contextInfo : IVIDDEC2FRONT_Status
  • control : IVIDDEC2_Fxns , IVIDTRANSCODE_Fxns , IIMGDEC_Fxns , IVIDENC2_InArgs , IVIDENC1_Fxns , IAUDDEC_Fxns , ISPHDEC1_Fxns , IVIDDEC3_Fxns , IVIDENC2_Fxns , IAUDENC_Fxns , IVIDANALYTICS_Fxns , ISPHENC_Fxns , ISPHDEC_Fxns , IIMGENC1_Fxns , IVIDENC_Fxns , ISPHENC1_Fxns , IIMGENC_Fxns , IUNIVERSAL_Fxns , IAUDENC1_Fxns , IVIDDEC2BACK_Fxns , IVIDDEC2FRONT_Fxns , IVIDDEC_Fxns , IAUDDEC1_Fxns , IVIDDEC1_Fxns , IIMGDEC1_Fxns
  • crcFlag : IAUDENC1_Params
  • currentAU : IIMGENC1_OutArgs , IIMGDEC_OutArgs , IIMGDEC1_OutArgs , IIMGENC_OutArgs
  • currentScan : IIMGDEC_OutArgs , IIMGDEC1_OutArgs


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- d -

  • data : IAUDDEC1_Status , IAUDENC1_Status , IIMGENC1_Status , ISPHENC1_Status , IVIDTRANSCODE_Status , IUNIVERSAL_Status , ISPHDEC1_InArgs , IVIDANALYTICS_Status , IVIDDEC1_Status , IIMGDEC1_Status , ISPHDEC1_Status , IVIDDEC2_Status , IVIDDEC3_Status , ISPHENC1_InArgs , IVIDENC1_Status , IVIDENC2_Status
  • dataEnable : ISPHDEC_Params
  • dataEndianness : IVIDENC1_Params , IVIDENC2_Params , IVIDTRANSCODE_Params , IAUDDEC_Params , IAUDDEC1_Params , IAUDENC_Params , IAUDENC1_Params , IIMGDEC_Params , IIMGDEC1_Params , IIMGENC_Params , IIMGENC1_Params , IVIDANALYTICS_Params , IVIDDEC_Params , IVIDDEC1_Params , IVIDDEC2_Params , IVIDDEC3_Params , IVIDENC_Params
  • dataLayout : IVIDEO2_BufDesc
  • dataMode : ISPHDEC_Status
  • dataSize : ISPHDEC1_OutArgs
  • dataTransmit : ISPHENC_DynamicParams , ISPHENC_Status , ISPHENC1_DynamicParams , ISPHENC1_Status
  • date : IVIDANALYTICS_DynamicParams , IVIDANALYTICS_InArgs , IVIDANALYTICS_OutArgs
  • dayOfMonth : XDM_Date
  • dayOfWeek : XDM_Date
  • decDynamicParams : IVIDDEC3_Status
  • decodedBufs : IVIDDEC1_OutArgs , IVIDDEC2_OutArgs , IVIDDEC3_OutArgs
  • decodedFrameType : IVIDDEC_OutArgs
  • decodedHeight : IVIDTRANSCODE_OutArgs
  • decodedPictureStructure : IVIDTRANSCODE_OutArgs
  • decodedPictureType : IVIDTRANSCODE_OutArgs
  • decodedWidth : IVIDTRANSCODE_OutArgs
  • decodeHeader : IVIDDEC3_DynamicParams , IVIDDEC1_DynamicParams , IIMGDEC1_DynamicParams , IIMGDEC_DynamicParams , IVIDDEC_DynamicParams , IVIDDEC2_DynamicParams
  • descs : XDM1_BufDesc , XDM2_BufDesc
  • desiredChannelMode : IAUDDEC1_InArgs
  • displayBufs : IVIDDEC_OutArgs , IVIDDEC3_OutArgs , IVIDDEC2_OutArgs , IVIDDEC1_OutArgs
  • displayBufsMode : IVIDDEC3_Params , IVIDDEC3_OutArgs
  • displayDelay : IVIDDEC3_Params
  • displayWidth : IVIDDEC_DynamicParams , IIMGDEC_DynamicParams , IVIDDEC2_DynamicParams , IVIDDEC3_DynamicParams , IIMGDEC1_DynamicParams , IVIDDEC1_DynamicParams
  • downSampleSbrFlag : IAUDDEC1_DynamicParams
  • dtmfMode : ISPHENC1_DynamicParams , ISPHENC_Status , ISPHENC_DynamicParams
  • dualMonoMode : IAUDENC1_DynamicParams , IAUDDEC1_OutArgs , IAUDDEC1_Status , IAUDENC1_Params


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- e -

  • enableMaskArray : IVIDANALYTICS_Grid
  • enableRangeReductionFlag : IVIDEO2_BufDesc
  • encDynamicParams : IVIDENC2_Status
  • encMode : IAUDENC1_Params , IAUDENC1_Status
  • encodedBuf : IVIDENC1_OutArgs , IVIDTRANSCODE_OutArgs
  • encodedFrameType : IVIDENC_OutArgs , IVIDENC1_OutArgs , IVIDENC2_OutArgs
  • encodedPictureStructure : IVIDTRANSCODE_OutArgs
  • encodedPictureType : IVIDTRANSCODE_OutArgs
  • encodingPreset : IVIDENC2_Params , IVIDENC2_Status , IAUDENC_Params , IVIDENC_Params , IVIDENC1_Params
  • errorInfoMode : IVIDDEC3_Params
  • eventId : IVIDANALYTICS_OutArgs
  • extendedError : IVIDANALYTICS_Status , IUNIVERSAL_OutArgs , IUNIVERSAL_Status , ISPHENC1_OutArgs , ISPHENC1_Status , ISPHENC_Status , ISPHDEC1_OutArgs , ISPHDEC1_Status , ISPHDEC_Status , IIMGENC1_OutArgs , IIMGENC1_Status , IIMGENC_OutArgs , IIMGENC_Status , IIMGDEC1_OutArgs , IIMGDEC1_Status , IIMGDEC_OutArgs , IIMGDEC_Status , IAUDENC1_OutArgs , IAUDENC1_Status , IAUDENC_OutArgs , IAUDENC_Status , IAUDDEC1_OutArgs , IAUDDEC1_Status , IAUDDEC_OutArgs , IAUDDEC_Status , IVIDDEC3_OutArgs , IVIDEO2_BufDesc , IVIDENC2_Status , IVIDDEC2FRONT_OutArgs , IVIDDEC2_Status , IVIDEO1_BufDesc , IVIDENC2_OutArgs , IVIDTRANSCODE_OutArgs , IVIDENC1_OutArgs , IVIDTRANSCODE_Status , IVIDDEC3_Status , IVIDENC_OutArgs , IVIDDEC1_Status , IVIDENC_Status , IVIDENC1_Status , IVIDDEC_Status , IVIDDEC_OutArgs , IVIDANALYTICS_OutArgs


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- f -

  • fastFwdLen : IAUDDEC_Status
  • flags : ti_sdo_ce_osal_Memory_AllocParams
  • forceChromaFormat : IIMGDEC1_Params , IVIDDEC1_Params , IVIDDEC2_Params , IIMGENC_Params , IVIDDEC3_Params , IVIDDEC3_Status , IIMGDEC_Params , IIMGENC1_Params , IVIDDEC_Params
  • forceFrame : IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDTRANSCODE_DynamicParams
  • forceIFrame : IVIDENC_DynamicParams
  • formatInput : IVIDTRANSCODE_Params
  • formatOutput : IVIDTRANSCODE_Params
  • frameHeight : IVIDEO1_BufDescIn , IVIDEO1_BufDesc
  • frameLen : IAUDDEC_Status , IAUDENC_Status
  • frameOrder : IVIDDEC1_DynamicParams , IVIDDEC2_DynamicParams , IVIDDEC3_Status
  • framePitch : IVIDEO1_BufDescIn , IVIDEO1_BufDesc
  • frameRate : IVIDDEC_Status , IVIDDEC1_Status , IVIDDEC2_Status , IVIDDEC3_Status
  • frameSize : ISPHENC_DynamicParams , ISPHENC_Status , ISPHENC1_Params , ISPHENC1_DynamicParams , ISPHENC1_Status , ISPHENC_Params
  • frameSkipMode : IVIDDEC_DynamicParams , IVIDDEC1_DynamicParams , IVIDDEC2_DynamicParams , IVIDDEC3_DynamicParams
  • frameSkipTranscodeFlag : IVIDTRANSCODE_DynamicParams
  • frameStatus : IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • frameType : ISPHENC1_OutArgs , ISPHDEC_InArgs , ISPHDEC1_InArgs , ISPHENC_OutArgs , IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • frameWidth : IVIDEO1_BufDesc , IVIDEO1_BufDescIn
  • freeBufID : IVIDDEC1_OutArgs , IVIDDEC2_OutArgs , IVIDDEC3_OutArgs , IVIDENC2_OutArgs
  • fullStatus : IVIDDEC2FRONT_Status
  • fxns : IVIDENC1_Obj , IIMGDEC_Obj , IVIDENC_Obj , IAUDDEC1_Obj , IVIDDEC2FRONT_Obj , IVIDENC2_Obj , IVIDTRANSCODE_Obj , IIMGDEC1_Obj , IUNIVERSAL_Obj , IIMGENC1_Obj , IAUDENC_Obj , ISPHDEC1_Obj , IAUDENC1_Obj , IVIDDEC_Obj , Engine_DllAlgDesc , IALG_Obj , IVIDDEC1_Obj , IIMGENC_Obj , ISPHDEC_Obj , IVIDDEC2_Obj , IVIDANALYTICS_Obj , IVIDDEC3_Obj , ISPHENC1_Obj , ISPHENC_Obj , IAUDDEC_Obj , IVIDDEC2BACK_Obj


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- g -

  • generateHeader : IIMGENC_DynamicParams , IIMGENC1_DynamicParams , IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams
  • getBufferFxn : IVIDENC2_DynamicParams
  • getBufferHandle : IVIDENC2_DynamicParams
  • getDataFxn : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams
  • getDataHandle : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams
  • grid : IVIDANALYTICS_DynamicParams
  • groupId : Engine_DllAlgParams


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- h -

  • header : VISA_MsgHeader
  • height : XDM2_BufSize
  • homingMode : ISPHENC_DynamicParams , ISPHENC_Status


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- i -

  • ialg : IAUDDEC_Fxns , IAUDDEC1_Fxns , IAUDENC1_Fxns , IIMGENC1_Fxns , IVIDDEC1_Fxns , IVIDDEC2_Fxns , ISPHDEC_Fxns , IVIDDEC3_Fxns , IVIDENC_Fxns , IIMGDEC_Fxns , ISPHDEC1_Fxns , IVIDENC1_Fxns , IVIDENC2_Fxns , ISPHENC_Fxns , IVIDTRANSCODE_Fxns , IVIDDEC2FRONT_Fxns , IAUDENC_Fxns , IIMGDEC1_Fxns , ISPHENC1_Fxns , IVIDDEC2BACK_Fxns , IUNIVERSAL_Fxns , IIMGENC_Fxns , IVIDANALYTICS_Fxns , IVIDDEC_Fxns
  • id : IVIDANALYTICS_Rule
  • idmaFxns : Engine_DllAlgDesc
  • ignoreOutbufSizeFlag : IVIDENC2_DynamicParams
  • imagePitch : IVIDEO2_BufDesc
  • imageRegion : IVIDEO2_BufDesc
  • imageWidth : IIMGDEC_Status , IIMGDEC1_Status
  • implementationId : IALG_Fxns
  • inBufferSize : ISPHDEC_InArgs
  • inBufMemoryType : XDM1_AlgBufInfo
  • inBufs : XDM_Context
  • inOutBufs : XDM_Context
  • inputBitsPerSample : IAUDENC_DynamicParams , IAUDENC1_Params , IAUDENC1_DynamicParams
  • inputChromaFormat : IIMGENC_DynamicParams , IIMGENC1_DynamicParams , IVIDANALYTICS_Params , IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params , IVIDENC2_Status
  • inputContentType : IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params , IVIDENC2_Status
  • inputDataMode : IVIDDEC3_Params , IVIDDEC3_Status , IVIDENC2_Params , IVIDENC2_Status
  • inputFormat : IAUDENC_DynamicParams , IAUDENC1_Params
  • inputFrameRate : IVIDTRANSCODE_DynamicParams
  • inputFrameSkip : IVIDENC1_OutArgs , IVIDENC_OutArgs , IVIDENC2_OutArgs
  • inputFrameSkipTranscodeFlag : IVIDTRANSCODE_OutArgs
  • inputHeight : IVIDENC_DynamicParams , IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IIMGENC_DynamicParams , IIMGENC1_DynamicParams
  • inputID : IVIDDEC1_InArgs , IVIDENC2_InArgs , IVIDDEC_InArgs , IVIDTRANSCODE_InArgs , IVIDDEC2_InArgs , IVIDENC1_InArgs , IVIDDEC3_InArgs
  • inputWidth : IVIDENC2_DynamicParams , IIMGENC_DynamicParams , IVIDENC1_DynamicParams , IVIDENC_DynamicParams , IIMGENC1_DynamicParams
  • interFrameInterval : IVIDENC2_DynamicParams , IVIDENC1_DynamicParams , IVIDTRANSCODE_DynamicParams
  • intermediateBufs : XDM_Context
  • intraFrameInterval : IVIDENC1_DynamicParams , IVIDENC_DynamicParams , IVIDTRANSCODE_DynamicParams , IVIDENC2_DynamicParams
  • iresFxns : Engine_DllAlgDesc
  • isLocal : Engine_AlgInfo , Engine_DllAlgParams


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- p -

  • packingType : ISPHDEC_Params , ISPHDEC1_Params , ISPHENC_Params , ISPHENC1_Params , ISPHDEC1_Status , ISPHENC1_Status
  • partialExtendedError : IVIDDEC2FRONT_Status
  • pBufDesc : IVIDDEC3_OutArgs
  • pcmFormat : IAUDDEC1_Params , IAUDDEC1_Status
  • planeDesc : IVIDEO2_BufDesc
  • postFilter : ISPHDEC_DynamicParams , ISPHDEC_Status , ISPHDEC1_DynamicParams , ISPHDEC1_Status
  • process : IVIDENC_Fxns , IVIDDEC2BACK_Fxns , IAUDDEC_Fxns , IVIDDEC1_Fxns , IVIDDEC_Fxns , IVIDDEC2_Fxns , IVIDDEC3_Fxns , ISPHENC1_Fxns , IAUDDEC1_Fxns , ISPHDEC1_Fxns , IAUDENC_Fxns , IIMGENC1_Fxns , IVIDENC2_Fxns , IAUDENC1_Fxns , IIMGDEC_Fxns , IIMGDEC1_Fxns , IIMGENC_Fxns , IVIDENC1_Fxns , IVIDDEC2FRONT_Fxns , IVIDTRANSCODE_Fxns , IVIDANALYTICS_Fxns , ISPHDEC_Fxns , ISPHENC_Fxns , IUNIVERSAL_Fxns
  • procId : Engine_Attrs
  • profile : IVIDENC2_Params , IVIDENC2_Status
  • putBufferFxn : IVIDDEC3_DynamicParams
  • putBufferHandle : IVIDDEC3_DynamicParams
  • putDataFxn : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams
  • putDataHandle : IVIDDEC3_DynamicParams , IVIDENC2_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- q -

  • QP : IVIDENC1_MbData
  • qValue : IIMGENC1_DynamicParams , IIMGENC_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- r -

  • rangeMappingChroma : IVIDEO2_BufDesc
  • rangeMappingLuma : IVIDEO2_BufDesc
  • rate : ISPHENC_OutArgs
  • rateControl : IVIDTRANSCODE_DynamicParams
  • rateControlPreset : IVIDENC2_Status , IVIDENC_Params , IVIDENC1_Params , IVIDENC2_Params
  • readHeaderOnlyFlag : IVIDTRANSCODE_DynamicParams
  • reconBufs : IVIDENC_OutArgs , IVIDENC1_OutArgs , IVIDENC2_OutArgs
  • reconChromaFormat : IVIDENC1_Params
  • refFrameRate : IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams
  • repeatFirstFieldFlag : IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • repeatFrame : IVIDEO2_BufDesc , IVIDEO1_BufDesc
  • reserved : ISPHENC1_DynamicParams , ISPHDEC1_Params , ISPHENC1_Params
  • rule : IVIDANALYTICS_DynamicParams


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- s -

  • sampleAspectRatioHeight : IVIDDEC3_Status , IVIDENC2_DynamicParams
  • sampleAspectRatioWidth : IVIDENC2_DynamicParams , IVIDDEC3_Status
  • sampleRate : IAUDENC_DynamicParams , IAUDENC1_Params , IAUDDEC_Status , IAUDENC1_DynamicParams , IAUDENC1_Status , IAUDDEC1_Status , IAUDDEC1_OutArgs
  • scalingHeight : IVIDEO2_BufDesc
  • scalingWidth : IVIDEO2_BufDesc
  • scatteredBlocksFlag : XDM_DataSyncDesc
  • secondFieldOffsetHeight : IVIDEO2_BufDesc
  • secondFieldOffsetWidth : IVIDEO2_BufDesc
  • seg : ti_sdo_ce_osal_Memory_AllocParams
  • size : IVIDENC2_DynamicParams , IVIDENC2_Params , IVIDENC1_OutArgs , IVIDENC1_Status , IVIDENC1_InArgs , IVIDENC1_DynamicParams , IVIDENC1_Params , IVIDENC_OutArgs , IVIDENC2_InArgs , IVIDENC_InArgs , IVIDENC_DynamicParams , IVIDENC_Params , IVIDDEC3_OutArgs , IVIDDEC3_Status , IVIDDEC3_InArgs , IVIDDEC3_DynamicParams , IVIDDEC3_Params , IVIDDEC2_OutArgs , IVIDDEC2_Status , IVIDDEC2_InArgs , IVIDDEC2_DynamicParams , IVIDDEC2_Params , IVIDDEC1_OutArgs , IVIDDEC1_Status , IVIDDEC1_InArgs , IVIDDEC1_DynamicParams , IVIDDEC1_Params , IVIDDEC_OutArgs , IVIDDEC_Status , IVIDDEC_InArgs , IVIDDEC_DynamicParams , IVIDDEC_Params , IVIDANALYTICS_OutArgs , IVIDANALYTICS_Status , IVIDANALYTICS_InArgs , IVIDANALYTICS_DynamicParams , IVIDANALYTICS_Params , IVIDANALYTICS_Rule , IUNIVERSAL_OutArgs , IUNIVERSAL_Status , IUNIVERSAL_InArgs , IUNIVERSAL_DynamicParams , IUNIVERSAL_Params , ISPHENC1_OutArgs , ISPHENC1_Status , ISPHENC1_InArgs , ISPHENC1_DynamicParams , ISPHENC1_Params , IVIDENC2_Status , ISPHENC_Status , ISPHENC_InArgs , ISPHENC_DynamicParams , ISPHENC_Params , ISPHDEC1_OutArgs , ISPHDEC1_Status , IVIDDEC2FRONT_OutArgs , IAUDENC_OutArgs , ISPHDEC1_Params , ISPHDEC_OutArgs , ISPHDEC_Status , ISPHDEC_InArgs , ISPHDEC_DynamicParams , ISPHDEC_Params , IIMGENC1_OutArgs , IVIDENC_Status , IIMGENC1_InArgs , IIMGENC1_DynamicParams , IIMGENC1_Params , IIMGENC_OutArgs , IIMGENC_Status , IIMGENC_InArgs , IIMGENC_DynamicParams , IIMGENC_Params , IIMGDEC1_OutArgs , IIMGDEC1_Status , IIMGDEC1_InArgs , IIMGDEC1_DynamicParams , IIMGDEC1_Params , IIMGDEC_OutArgs , IIMGDEC_Status , IIMGDEC_InArgs , IIMGDEC_DynamicParams , IIMGDEC_Params , IAUDENC1_OutArgs , ISPHENC_OutArgs , IAUDENC1_InArgs , IAUDENC1_DynamicParams , ISPHDEC1_DynamicParams , IVIDTRANSCODE_OutArgs , IAUDENC_Status , IAUDENC_InArgs , IAUDENC_DynamicParams , IIMGENC1_Status , IAUDDEC1_OutArgs , IAUDDEC1_Status , IAUDDEC1_InArgs , IAUDDEC1_DynamicParams , IAUDDEC1_Params , IAUDDEC_OutArgs , IAUDDEC_Status , IAUDDEC_InArgs , IAUDDEC_DynamicParams , IAUDENC1_Status , ISPHDEC1_InArgs , IAUDENC1_Params , IVIDTRANSCODE_DynamicParams , IAUDENC_Params , IVIDTRANSCODE_Status , Server_MemStat , IALG_MemRec , IALG_Params , IALG_Status , IAUDDEC_Params , IVIDTRANSCODE_Params , IVIDTRANSCODE_InArgs , XDM_DataSyncDesc , IVIDENC2_OutArgs
  • space : IALG_MemRec
  • status : VISA_MsgHeader


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- t -

  • tablesPtr : ISPHDEC1_Params , ISPHENC1_Params
  • targetBitRate : IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams , IVIDTRANSCODE_DynamicParams
  • targetFrameRate : IVIDENC1_DynamicParams , IVIDENC2_DynamicParams , IVIDENC_DynamicParams
  • targets : IVIDANALYTICS_OutArgs
  • tileMem : XDM2_BufSize
  • topFieldFirstFlag : IVIDENC1_InArgs , IVIDEO1_BufDesc , IVIDEO2_BufDesc
  • topLeft : XDM_Rect
  • totalAU : IIMGENC1_Status , IIMGDEC_Status , IIMGDEC1_Status , IIMGENC_Status
  • totalScan : IIMGDEC_Status , IIMGDEC1_Status
  • ttyTddMode : ISPHENC1_Status , ISPHENC1_DynamicParams , ISPHENC_DynamicParams , ISPHENC_Status
  • type : ti_sdo_ce_osal_Memory_AllocParams
  • typeTab : Engine_DllAlgDesc , Engine_AlgInfo


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- u -

  • usageMode : XDM2_SingleBufDesc
  • used : Server_MemStat
  • uuid : Engine_DllAlgDesc


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- v -

  • vadFlag : ISPHENC_DynamicParams , ISPHENC_Status , ISPHENC1_Status , ISPHENC1_DynamicParams
  • vadSelection : ISPHENC_Params , ISPHENC1_Status , ISPHENC1_Params
  • validFlag : IAUDDEC1_Status , IAUDENC1_Status
  • varBlockSizesFlag : XDM_DataSyncDesc
  • viewState : IVIDANALYTICS_Status


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- w -

  • width : IVIDEO_BufDesc , XDM2_BufSize


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- x -

  • x : XDM_Point


Codec Engine Application Programming Interface (API): Data Fields - Variables

  • Data Structures
  • Data Structure Index
  • Data Fields
  • All
  • Variables
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y

- y -

  • y : XDM_Point
  • year : XDM_Date


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- m -

  • Memory_MODNAME : Memory.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- c -

  • CERuntime_exit() : CERuntime.h
  • CERuntime_init() : CERuntime.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- e -

  • Engine_add() : Engine.h
  • Engine_addAlg() : Engine.h
  • Engine_AlgInfo : Engine.h
  • Engine_ATTRS : Engine.h
  • Engine_Attrs : Engine.h
  • Engine_close() : Engine.h
  • Engine_DllAlgDesc : Engine.h
  • Engine_DllAlgParams : Engine.h
  • Engine_EBADSERVER : Engine.h
  • Engine_ECODECCREATE : Engine.h
  • Engine_ECODECSTART : Engine.h
  • Engine_ECOMALLOC : Engine.h
  • Engine_EDSPLOAD : Engine.h
  • Engine_EEXIST : Engine.h
  • Engine_EINUSE : Engine.h
  • Engine_EINVAL : Engine.h
  • Engine_ENOCOMM : Engine.h
  • Engine_ENOMEM : Engine.h
  • Engine_ENOSERVER : Engine.h
  • Engine_ENOTAVAIL : Engine.h
  • Engine_ENOTFOUND : Engine.h
  • Engine_EOK : Engine.h
  • Engine_Error : Engine.h
  • Engine_ERUNTIME : Engine.h
  • Engine_ETIMEOUT : Engine.h
  • Engine_EWRONGSTATE : Engine.h
  • Engine_fwriteTrace() : Engine.h
  • Engine_GetAlgDescFxn : Engine.h
  • Engine_GETALGDESCFXN : Engine.h
  • Engine_getAlgInfo() : Engine.h
  • Engine_getCpuLoad() : Engine.h
  • Engine_getLastError() : Engine.h
  • Engine_getName() : Engine.h
  • Engine_getNumAlgs() : Engine.h
  • Engine_getServer() : Engine.h
  • Engine_getUsedMem() : Engine.h
  • Engine_Handle : Engine.h
  • Engine_MODNAME : Engine.h
  • Engine_open() : Engine.h
  • Engine_remove() : Engine.h
  • Engine_removeAlg() : Engine.h
  • Engine_setTrace() : Engine.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- i -

  • IALG_Cmd : ialg.h
  • IALG_CUSTOMFAILBASE : ialg.h
  • IALG_CUSTOMFAILEND : ialg.h
  • IALG_DARAM0 : ialg.h
  • IALG_DARAM1 : ialg.h
  • IALG_DARAM2 : ialg.h
  • IALG_DEFMEMRECS : ialg.h
  • IALG_EFAIL : ialg.h
  • IALG_EOK : ialg.h
  • IALG_EPROG : ialg.h
  • IALG_ESDATA : ialg.h
  • IALG_EXTERNAL : ialg.h
  • IALG_Fxns : ialg.h
  • IALG_Handle : ialg.h
  • IALG_IPROG : ialg.h
  • IALG_isOffChip : ialg.h
  • IALG_isProg : ialg.h
  • IALG_MemAttrs : ialg.h
  • IALG_MemRec : ialg.h
  • IALG_MemSpace : ialg.h
  • IALG_MPROG : ialg.h
  • IALG_MXTRN : ialg.h
  • IALG_Obj : ialg.h
  • IALG_OBJMEMREC : ialg.h
  • IALG_Params : ialg.h
  • IALG_PERSIST : ialg.h
  • IALG_SARAM : ialg.h
  • IALG_SARAM0 : ialg.h
  • IALG_SARAM1 : ialg.h
  • IALG_SARAM2 : ialg.h
  • IALG_SCRATCH : ialg.h
  • IALG_Status : ialg.h
  • IALG_SYSCMD : ialg.h
  • IALG_WRITEONCE : ialg.h
  • IAUDDEC1_Cmd : iauddec1.h
  • IAUDDEC1_DynamicParams : iauddec1.h
  • IAUDDEC1_EFAIL : iauddec1.h
  • IAUDDEC1_EOK : iauddec1.h
  • IAUDDEC1_EUNSUPPORTED : iauddec1.h
  • IAUDDEC1_Fxns : iauddec1.h
  • IAUDDEC1_Handle : iauddec1.h
  • IAUDDEC1_InArgs : iauddec1.h
  • IAUDDEC1_Obj : iauddec1.h
  • IAUDDEC1_OutArgs : iauddec1.h
  • IAUDDEC1_Params : iauddec1.h
  • IAUDDEC1_Status : iauddec1.h
  • IAUDDEC_CID : iauddec.h
  • IAUDDEC_Cmd : iauddec.h
  • IAUDDEC_DynamicParams : iauddec.h
  • IAUDDEC_EFAIL : iauddec.h
  • IAUDDEC_EOK : iauddec.h
  • IAUDDEC_ERUNTIME : iauddec.h
  • IAUDDEC_Fxns : iauddec.h
  • IAUDDEC_Handle : iauddec.h
  • IAUDDEC_InArgs : iauddec.h
  • IAUDDEC_Obj : iauddec.h
  • IAUDDEC_OutArgs : iauddec.h
  • IAUDDEC_Params : iauddec.h
  • IAUDDEC_Status : iauddec.h
  • IAUDENC1_Cmd : iaudenc1.h
  • IAUDENC1_DynamicParams : iaudenc1.h
  • IAUDENC1_EFAIL : iaudenc1.h
  • IAUDENC1_EOK : iaudenc1.h
  • IAUDENC1_EUNSUPPORTED : iaudenc1.h
  • IAUDENC1_Fxns : iaudenc1.h
  • IAUDENC1_Handle : iaudenc1.h
  • IAUDENC1_InArgs : iaudenc1.h
  • IAUDENC1_Obj : iaudenc1.h
  • IAUDENC1_OutArgs : iaudenc1.h
  • IAUDENC1_Params : iaudenc1.h
  • IAUDENC1_Status : iaudenc1.h
  • IAUDENC_CID : iaudenc.h
  • IAUDENC_Cmd : iaudenc.h
  • IAUDENC_DynamicParams : iaudenc.h
  • IAUDENC_EFAIL : iaudenc.h
  • IAUDENC_EOK : iaudenc.h
  • IAUDENC_ERUNTIME : iaudenc.h
  • IAUDENC_Fxns : iaudenc.h
  • IAUDENC_Handle : iaudenc.h
  • IAUDENC_InArgs : iaudenc.h
  • IAUDENC_Obj : iaudenc.h
  • IAUDENC_OutArgs : iaudenc.h
  • IAUDENC_Params : iaudenc.h
  • IAUDENC_Status : iaudenc.h
  • IAUDIO_11_0 : iaudio.h
  • IAUDIO_1_0 : iaudio.h
  • IAUDIO_2_0 : iaudio.h
  • IAUDIO_2_1 : iaudio.h
  • IAUDIO_2_2 : iaudio.h
  • IAUDIO_2_3 : iaudio.h
  • IAUDIO_3_0 : iaudio.h
  • IAUDIO_3_1 : iaudio.h
  • IAUDIO_3_2 : iaudio.h
  • IAUDIO_3_3 : iaudio.h
  • IAUDIO_3_4 : iaudio.h
  • IAUDIO_BLOCK : iaudio.h
  • IAUDIO_CBR : iaudio.h
  • IAUDIO_ChannelId : iaudio.h
  • IAUDIO_ChannelMode : iaudio.h
  • IAUDIO_DUALMONO_LEFT : iaudio.h
  • IAUDIO_DUALMONO_LR : iaudio.h
  • IAUDIO_DUALMONO_LR_MIX : iaudio.h
  • IAUDIO_DUALMONO_RIGHT : iaudio.h
  • IAUDIO_DualMonoMode : iaudio.h
  • IAUDIO_EncMode : iaudio.h
  • IAUDIO_FIVE_ONE : iaudio.h
  • IAUDIO_FIVE_ZERO : iaudio.h
  • IAUDIO_INTERLEAVED : iaudio.h
  • IAUDIO_MONO : iaudio.h
  • IAUDIO_PcmFormat : iaudio.h
  • IAUDIO_SEVEN_ONE : iaudio.h
  • IAUDIO_STEREO : iaudio.h
  • IAUDIO_THREE_ZERO : iaudio.h
  • IAUDIO_VBR : iaudio.h
  • IIMGDEC1_Cmd : iimgdec1.h
  • IIMGDEC1_CodecClassConfig : imgdec1.h
  • IIMGDEC1_DynamicParams : iimgdec1.h
  • IIMGDEC1_EFAIL : iimgdec1.h
  • IIMGDEC1_EOK : iimgdec1.h
  • IIMGDEC1_EUNSUPPORTED : iimgdec1.h
  • IIMGDEC1_Fxns : iimgdec1.h
  • IIMGDEC1_Handle : iimgdec1.h
  • IIMGDEC1_InArgs : iimgdec1.h
  • IIMGDEC1_Obj : iimgdec1.h
  • IIMGDEC1_OutArgs : iimgdec1.h
  • IIMGDEC1_Params : iimgdec1.h
  • IIMGDEC1_Status : iimgdec1.h
  • IIMGDEC_CID : iimgdec.h
  • IIMGDEC_Cmd : iimgdec.h
  • IIMGDEC_CodecClassConfig : imgdec.h
  • IIMGDEC_DynamicParams : iimgdec.h
  • IIMGDEC_EFAIL : iimgdec.h
  • IIMGDEC_EOK : iimgdec.h
  • IIMGDEC_ERUNTIME : iimgdec.h
  • IIMGDEC_Fxns : iimgdec.h
  • IIMGDEC_Handle : iimgdec.h
  • IIMGDEC_InArgs : iimgdec.h
  • IIMGDEC_Obj : iimgdec.h
  • IIMGDEC_OutArgs : iimgdec.h
  • IIMGDEC_Params : iimgdec.h
  • IIMGDEC_Status : iimgdec.h
  • IIMGENC1_Cmd : iimgenc1.h
  • IIMGENC1_CodecClassConfig : imgenc1.h
  • IIMGENC1_DynamicParams : iimgenc1.h
  • IIMGENC1_EFAIL : iimgenc1.h
  • IIMGENC1_EOK : iimgenc1.h
  • IIMGENC1_EUNSUPPORTED : iimgenc1.h
  • IIMGENC1_Fxns : iimgenc1.h
  • IIMGENC1_Handle : iimgenc1.h
  • IIMGENC1_InArgs : iimgenc1.h
  • IIMGENC1_Obj : iimgenc1.h
  • IIMGENC1_OutArgs : iimgenc1.h
  • IIMGENC1_Params : iimgenc1.h
  • IIMGENC1_Status : iimgenc1.h
  • IIMGENC_CID : iimgenc.h
  • IIMGENC_Cmd : iimgenc.h
  • IIMGENC_CodecClassConfig : imgenc.h
  • IIMGENC_DynamicParams : iimgenc.h
  • IIMGENC_EFAIL : iimgenc.h
  • IIMGENC_EOK : iimgenc.h
  • IIMGENC_ERUNTIME : iimgenc.h
  • IIMGENC_Fxns : iimgenc.h
  • IIMGENC_Handle : iimgenc.h
  • IIMGENC_InArgs : iimgenc.h
  • IIMGENC_Obj : iimgenc.h
  • IIMGENC_OutArgs : iimgenc.h
  • IIMGENC_Params : iimgenc.h
  • IIMGENC_Status : iimgenc.h
  • IMGDEC1_Cmd : imgdec1.h
  • IMGDEC1_control() : imgdec1.h
  • IMGDEC1_create() : imgdec1.h
  • IMGDEC1_delete() : imgdec1.h
  • IMGDEC1_DynamicParams : imgdec1.h
  • IMGDEC1_EFAIL : imgdec1.h
  • IMGDEC1_EOK : imgdec1.h
  • IMGDEC1_ETIMEOUT : imgdec1.h
  • IMGDEC1_EUNSUPPORTED : imgdec1.h
  • IMGDEC1_FOREVER : imgdec1.h
  • IMGDEC1_Handle : imgdec1.h
  • IMGDEC1_InArgs : imgdec1.h
  • IMGDEC1_OutArgs : imgdec1.h
  • IMGDEC1_Params : imgdec1.h
  • IMGDEC1_process() : imgdec1.h
  • IMGDEC1_processAsync() : imgdec1.h
  • IMGDEC1_processWait() : imgdec1.h
  • IMGDEC1_Status : imgdec1.h
  • IMGDEC_Cmd : imgdec.h
  • IMGDEC_control() : imgdec.h
  • IMGDEC_create() : imgdec.h
  • IMGDEC_delete() : imgdec.h
  • IMGDEC_DynamicParams : imgdec.h
  • IMGDEC_EFAIL : imgdec.h
  • IMGDEC_EOK : imgdec.h
  • IMGDEC_ERUNTIME : imgdec.h
  • IMGDEC_ETIMEOUT : imgdec.h
  • IMGDEC_FOREVER : imgdec.h
  • IMGDEC_Handle : imgdec.h
  • IMGDEC_InArgs : imgdec.h
  • IMGDEC_OutArgs : imgdec.h
  • IMGDEC_Params : imgdec.h
  • IMGDEC_process() : imgdec.h
  • IMGDEC_processAsync() : imgdec.h
  • IMGDEC_processWait() : imgdec.h
  • IMGDEC_Status : imgdec.h
  • IMGENC1_Cmd : imgenc1.h
  • IMGENC1_control() : imgenc1.h
  • IMGENC1_create() : imgenc1.h
  • IMGENC1_delete() : imgenc1.h
  • IMGENC1_DynamicParams : imgenc1.h
  • IMGENC1_EFAIL : imgenc1.h
  • IMGENC1_EOK : imgenc1.h
  • IMGENC1_ETIMEOUT : imgenc1.h
  • IMGENC1_EUNSUPPORTED : imgenc1.h
  • IMGENC1_FOREVER : imgenc1.h
  • IMGENC1_Handle : imgenc1.h
  • IMGENC1_InArgs : imgenc1.h
  • IMGENC1_OutArgs : imgenc1.h
  • IMGENC1_Params : imgenc1.h
  • IMGENC1_process() : imgenc1.h
  • IMGENC1_processAsync() : imgenc1.h
  • IMGENC1_processWait() : imgenc1.h
  • IMGENC1_Status : imgenc1.h
  • IMGENC_Cmd : imgenc.h
  • IMGENC_control() : imgenc.h
  • IMGENC_create() : imgenc.h
  • IMGENC_delete() : imgenc.h
  • IMGENC_DynamicParams : imgenc.h
  • IMGENC_EFAIL : imgenc.h
  • IMGENC_EOK : imgenc.h
  • IMGENC_ERUNTIME : imgenc.h
  • IMGENC_ETIMEOUT : imgenc.h
  • IMGENC_FOREVER : imgenc.h
  • IMGENC_Handle : imgenc.h
  • IMGENC_InArgs : imgenc.h
  • IMGENC_OutArgs : imgenc.h
  • IMGENC_Params : imgenc.h
  • IMGENC_process() : imgenc.h
  • IMGENC_processAsync() : imgenc.h
  • IMGENC_processWait() : imgenc.h
  • IMGENC_Status : imgenc.h
  • ISPEECH1_AMR_BitRate : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_10P2 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_12P2 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_4P75 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_5P15 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_5P9 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_6P7 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_7P4 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_7P95 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_DEFAULT : ispeech1_amr.h
  • ISPEECH1_AMR_CodecSelect : ispeech1_amr.h
  • ISPEECH1_AMR_CODECSELECT_DEFAULT : ispeech1_amr.h
  • ISPEECH1_AMR_CODECSELECT_PRIMARY : ispeech1_amr.h
  • ISPEECH1_AMR_CODECSELECT_SECONDARY : ispeech1_amr.h
  • ISPEECH1_AMR_PackingType : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPE_IF1_NOCRC : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPE_IF1_WITHCRC : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPE_IF2 : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPE_MIME : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPEFORMAT_DEFAULT : ispeech1_amr.h
  • ISPEECH1_AMR_VADSelect : ispeech1_amr.h
  • ISPEECH1_AMR_VADSELECT_DEFAULT : ispeech1_amr.h
  • ISPEECH1_AMR_VADSELECT_VAD1 : ispeech1_amr.h
  • ISPEECH1_AMR_VADSELECT_VAD2 : ispeech1_amr.h
  • ISPEECH1_EVRC_Mode : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_CAPACITYSAVE : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_DEFAULT : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_ECONOMY : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_HALFRATE_MAX : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_PREMIUM : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_STANDARD : ispeech1_evrc.h
  • ISPEECH1_EVRC_NoisePreProc : ispeech1_evrc.h
  • ISPEECH1_EVRC_NOISEPREPROC_DEFAULT : ispeech1_evrc.h
  • ISPEECH1_EVRC_NOISEPREPROC_OFF : ispeech1_evrc.h
  • ISPEECH1_EVRC_NOISEPREPROC_ON : ispeech1_evrc.h
  • ISPEECH1_EVRC_NullTrafficMode : ispeech1_evrc.h
  • ISPEECH1_EVRC_NULLTRAFFICMODE_DEFAULT : ispeech1_evrc.h
  • ISPEECH1_EVRC_NULLTRAFFICMODE_OFF : ispeech1_evrc.h
  • ISPEECH1_EVRC_NULLTRAFFICMODE_ON : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMode : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMODE_45P45BPS : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMODE_50BPS : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMODE_DEFAULT : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMODE_OFF : ispeech1_evrc.h
  • ISPEECH1_G7221_BitRate : ispeech1_g7221.h
  • ISPEECH1_G7221_BITRATE_24 : ispeech1_g7221.h
  • ISPEECH1_G7221_BITRATE_32 : ispeech1_g7221.h
  • ISPEECH1_G7221_BITRATE_48 : ispeech1_g7221.h
  • ISPEECH1_G7221_BITRATE_DEFAULT : ispeech1_g7221.h
  • ISPEECH1_G722_BitRate : ispeech1_g722.h
  • ISPEECH1_G722_BITRATE_DEFAULT : ispeech1_g722.h
  • ISPEECH1_G722_BITRATE_RATE0 : ispeech1_g722.h
  • ISPEECH1_G722_BITRATE_RATE1 : ispeech1_g722.h
  • ISPEECH1_G722_BITRATE_RATE2 : ispeech1_g722.h
  • ISPEECH1_G722_BITRATE_RATE3 : ispeech1_g722.h
  • ISPEECH1_G722_CodecSelect : ispeech1_g722.h
  • ISPEECH1_G722_CODECSELECT_DEFAULT : ispeech1_g722.h
  • ISPEECH1_G722_CODECSELECT_ITUMODE : ispeech1_g722.h
  • ISPEECH1_G722_CODECSELECT_NONITUMODE : ispeech1_g722.h
  • ISPEECH1_G723_BitRate : ispeech1_g723.h
  • ISPEECH1_G723_BITRATE_5P3 : ispeech1_g723.h
  • ISPEECH1_G723_BITRATE_6P3 : ispeech1_g723.h
  • ISPEECH1_G723_BITRATE_DEFAULT : ispeech1_g723.h
  • ISPEECH1_G723_NoisePreProc : ispeech1_g723.h
  • ISPEECH1_G723_NOISEPREPROC_DEFAULT : ispeech1_g723.h
  • ISPEECH1_G723_NOISEPREPROC_OFF : ispeech1_g723.h
  • ISPEECH1_G723_NOISEPREPROC_ON : ispeech1_g723.h
  • ISPEECH1_G726_BitRate : ispeech1_g726.h
  • ISPEECH1_G726_BITRATE_16 : ispeech1_g726.h
  • ISPEECH1_G726_BITRATE_24 : ispeech1_g726.h
  • ISPEECH1_G726_BITRATE_32 : ispeech1_g726.h
  • ISPEECH1_G726_BITRATE_40 : ispeech1_g726.h
  • ISPEECH1_G726_BITRATE_DEFAULT : ispeech1_g726.h
  • ISPEECH1_G726_COMPAND_ALAW : ispeech1_g726.h
  • ISPEECH1_G726_COMPAND_DEFAULT : ispeech1_g726.h
  • ISPEECH1_G726_COMPAND_LINEAR : ispeech1_g726.h
  • ISPEECH1_G726_COMPAND_ULAW : ispeech1_g726.h
  • ISPEECH1_G726_CompandingLaw : ispeech1_g726.h
  • ISPEECH1_G726_PackingType : ispeech1_g726.h
  • ISPEECH1_G726_PACKTYPE_LINEAR : ispeech1_g726.h
  • ISPEECH1_G726_PACKTYPE_RTPSPECIAL : ispeech1_g726.h
  • ISPEECH1_G726_PACKTYPEFORMAT_DEFAULT : ispeech1_g726.h
  • ISPEECH1_ILBC_CodecSelect : ispeech1_ilbc.h
  • ISPEECH1_ILBC_CODECSELECT_20MS : ispeech1_ilbc.h
  • ISPEECH1_ILBC_CODECSELECT_30MS : ispeech1_ilbc.h
  • ISPEECH1_ILBC_CODECSELECT_DEFAULT : ispeech1_ilbc.h
  • ISPEECH1_NullTrafficMode : ispeech1.h
  • ISPEECH1_NULLTRAFFICMODE_DEFAULT : ispeech1.h
  • ISPEECH1_NULLTRAFFICMODE_OFF : ispeech1.h
  • ISPEECH1_NULLTRAFFICMODE_ON : ispeech1.h
  • ISPEECH1_PCM_COMPAND_ALAW : ispeech1_pcm.h
  • ISPEECH1_PCM_COMPAND_DEFAULT : ispeech1_pcm.h
  • ISPEECH1_PCM_COMPAND_LINEAR : ispeech1_pcm.h
  • ISPEECH1_PCM_COMPAND_ULAW : ispeech1_pcm.h
  • ISPEECH1_PCM_CompandingLaw : ispeech1_pcm.h
  • ISPEECH1_PostFilter : ispeech1.h
  • ISPEECH1_POSTFILTER_DEFAULT : ispeech1.h
  • ISPEECH1_POSTFILTER_OFF : ispeech1.h
  • ISPEECH1_POSTFILTER_ON : ispeech1.h
  • ISPEECH1_SMV_DataMode : ispeech1_smv.h
  • ISPEECH1_SMV_DATAMODE_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_DATAMODE_FULLRATE : ispeech1_smv.h
  • ISPEECH1_SMV_DATAMODE_HALFRATE : ispeech1_smv.h
  • ISPEECH1_SMV_DATAMODE_OFF : ispeech1_smv.h
  • ISPEECH1_SMV_DTMFMode : ispeech1_smv.h
  • ISPEECH1_SMV_DTMFMODE_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_DTMFMODE_OFF : ispeech1_smv.h
  • ISPEECH1_SMV_DTMFMODE_ON : ispeech1_smv.h
  • ISPEECH1_SMV_Mode : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_CAPACITYSAVE : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_ECONOMY : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_PREMIUM : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_PREMIUM_HALFRATE_MAX : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_STANDARD : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_STANDARD_HALFRATE_MAX : ispeech1_smv.h
  • ISPEECH1_SMV_NoisePreProc : ispeech1_smv.h
  • ISPEECH1_SMV_NOISEPREPROC_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_NOISEPREPROC_NSA : ispeech1_smv.h
  • ISPEECH1_SMV_NOISEPREPROC_NSB : ispeech1_smv.h
  • ISPEECH1_SMV_NOISEPREPROC_OFF : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMode : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMODE_45P45BPS : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMODE_50BPS : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMODE_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMODE_OFF : ispeech1_smv.h
  • ISPEECH1_SMV_VADSelect : ispeech1_smv.h
  • ISPEECH1_SMV_VADSELECT_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_VADSELECT_VADA : ispeech1_smv.h
  • ISPEECH1_SMV_VADSELECT_VADB : ispeech1_smv.h
  • ISPEECH1_VADFlag : ispeech1.h
  • ISPEECH1_VADFLAG_DEFAULT : ispeech1.h
  • ISPEECH1_VADFLAG_OFF : ispeech1.h
  • ISPEECH1_VADFLAG_ON : ispeech1.h
  • ISPEECH1_WBAMR_BitRate : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_12P65 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_14P25 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_15P85 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_18P25 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_19P85 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_23P05 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_23P85 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_6P60 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_8P85 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_DEFAULT : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PackingType : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPE_IF1_NOCRC : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPE_IF1_WITHCRC : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPE_IF2 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPE_MIME : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPEFORMAT_DEFAULT : ispeech1_wbamr.h
  • ISPEECH2_G7221_SamplingRate : ispeech1_g7221.h
  • ISPEECH2_G7221_SAMPLINGRATE_DEFAULT : ispeech1_g7221.h
  • ISPEECH2_G7221_SAMPLINGRATE_SUPEWIDEBAND : ispeech1_g7221.h
  • ISPEECH2_G7221_SAMPLINGRATE_WIDEBAND : ispeech1_g7221.h
  • ISPEECH_ALAW : ispeech.h
  • ISPEECH_CompoundLaw : ispeech.h
  • ISPEECH_LINEAR : ispeech.h
  • ISPEECH_ULAW : ispeech.h
  • ISPEECH_UNVOICED : ispeech.h
  • ISPEECH_VOICED : ispeech.h
  • ISPEECH_VoiceMode : ispeech.h
  • ISPHDEC1_Cmd : isphdec1.h
  • ISPHDEC1_DynamicParams : isphdec1.h
  • ISPHDEC1_EFAIL : isphdec1.h
  • ISPHDEC1_EOK : isphdec1.h
  • ISPHDEC1_EUNSUPPORTED : isphdec1.h
  • ISPHDEC1_FrameType : isphdec1.h
  • ISPHDEC1_FTYPE_BAD : isphdec1.h
  • ISPHDEC1_FTYPE_DEGRADED : isphdec1.h
  • ISPHDEC1_FTYPE_NODATA : isphdec1.h
  • ISPHDEC1_FTYPE_ONSET : isphdec1.h
  • ISPHDEC1_FTYPE_SIDBAD : isphdec1.h
  • ISPHDEC1_FTYPE_SIDFIRST : isphdec1.h
  • ISPHDEC1_FTYPE_SIDUPDATE : isphdec1.h
  • ISPHDEC1_FTYPE_SPEECHGOOD : isphdec1.h
  • ISPHDEC1_FTYPE_SPEECHLOST : isphdec1.h
  • ISPHDEC1_Fxns : isphdec1.h
  • ISPHDEC1_Handle : isphdec1.h
  • ISPHDEC1_InArgs : isphdec1.h
  • ISPHDEC1_Obj : isphdec1.h
  • ISPHDEC1_OutArgs : isphdec1.h
  • ISPHDEC1_Params : isphdec1.h
  • ISPHDEC1_Status : isphdec1.h
  • ISPHDEC_CID : isphdec.h
  • ISPHDEC_Cmd : isphdec.h
  • ISPHDEC_DynamicParams : isphdec.h
  • ISPHDEC_EFAIL : isphdec.h
  • ISPHDEC_EOK : isphdec.h
  • ISPHDEC_ERUNTIME : isphdec.h
  • ISPHDEC_Fxns : isphdec.h
  • ISPHDEC_Handle : isphdec.h
  • ISPHDEC_InArgs : isphdec.h
  • ISPHDEC_Obj : isphdec.h
  • ISPHDEC_OutArgs : isphdec.h
  • ISPHDEC_Params : isphdec.h
  • ISPHDEC_Status : isphdec.h
  • ISPHENC1_Cmd : isphenc1.h
  • ISPHENC1_DynamicParams : isphenc1.h
  • ISPHENC1_EFAIL : isphenc1.h
  • ISPHENC1_ENOOUTPUT : isphenc1.h
  • ISPHENC1_EOK : isphenc1.h
  • ISPHENC1_EUNSUPPORTED : isphenc1.h
  • ISPHENC1_FrameType : isphenc1.h
  • ISPHENC1_FTYPE_NODATA : isphenc1.h
  • ISPHENC1_FTYPE_SIDFRAME : isphenc1.h
  • ISPHENC1_FTYPE_SPEECH : isphenc1.h
  • ISPHENC1_Fxns : isphenc1.h
  • ISPHENC1_Handle : isphenc1.h
  • ISPHENC1_InArgs : isphenc1.h
  • ISPHENC1_Obj : isphenc1.h
  • ISPHENC1_OutArgs : isphenc1.h
  • ISPHENC1_Params : isphenc1.h
  • ISPHENC1_Status : isphenc1.h
  • ISPHENC_CID : isphenc.h
  • ISPHENC_Cmd : isphenc.h
  • ISPHENC_DynamicParams : isphenc.h
  • ISPHENC_EFAIL : isphenc.h
  • ISPHENC_EOK : isphenc.h
  • ISPHENC_ERUNTIME : isphenc.h
  • ISPHENC_Fxns : isphenc.h
  • ISPHENC_Handle : isphenc.h
  • ISPHENC_InArgs : isphenc.h
  • ISPHENC_Obj : isphenc.h
  • ISPHENC_OutArgs : isphenc.h
  • ISPHENC_Params : isphenc.h
  • ISPHENC_Status : isphenc.h
  • IUNIVERSAL_Cmd : iuniversal.h
  • IUNIVERSAL_DynamicParams : iuniversal.h
  • IUNIVERSAL_EFAIL : iuniversal.h
  • IUNIVERSAL_EOK : iuniversal.h
  • IUNIVERSAL_EUNSUPPORTED : iuniversal.h
  • IUNIVERSAL_Fxns : iuniversal.h
  • IUNIVERSAL_Handle : iuniversal.h
  • IUNIVERSAL_InArgs : iuniversal.h
  • IUNIVERSAL_Obj : iuniversal.h
  • IUNIVERSAL_OutArgs : iuniversal.h
  • IUNIVERSAL_Params : iuniversal.h
  • IUNIVERSAL_Status : iuniversal.h
  • IVIDANALYTICS_ActionType : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_APPEAR : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_CROSSD2U : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_CROSSL2R : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_CROSSR2L : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_CROSSU2D : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_DISAPPEAR : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_ENTER : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_EXIT : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_LOITER : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_USERBASE : ividanalytics.h
  • IVIDANALYTICS_AnalysisMask : ividanalytics.h
  • IVIDANALYTICS_CLEARRULE : ividanalytics.h
  • IVIDANALYTICS_Cmd : ividanalytics.h
  • IVIDANALYTICS_DynamicParams : ividanalytics.h
  • IVIDANALYTICS_EFAIL : ividanalytics.h
  • IVIDANALYTICS_EOK : ividanalytics.h
  • IVIDANALYTICS_EUNSUPPORTED : ividanalytics.h
  • IVIDANALYTICS_Fxns : ividanalytics.h
  • IVIDANALYTICS_Grid : ividanalytics.h
  • IVIDANALYTICS_Handle : ividanalytics.h
  • IVIDANALYTICS_InArgs : ividanalytics.h
  • IVIDANALYTICS_MAXEVENTS : ividanalytics.h
  • IVIDANALYTICS_MAXTARGETS : ividanalytics.h
  • IVIDANALYTICS_MOTIONDETECT : ividanalytics.h
  • IVIDANALYTICS_Obj : ividanalytics.h
  • IVIDANALYTICS_OBJECTTRACKING : ividanalytics.h
  • IVIDANALYTICS_ObjectType : ividanalytics.h
  • IVIDANALYTICS_OBJECTTYPE_HUMAN : ividanalytics.h
  • IVIDANALYTICS_OBJECTTYPE_USERBASE : ividanalytics.h
  • IVIDANALYTICS_OBJECTTYPE_VEHICLE : ividanalytics.h
  • IVIDANALYTICS_OutArgs : ividanalytics.h
  • IVIDANALYTICS_Params : ividanalytics.h
  • IVIDANALYTICS_Rule : ividanalytics.h
  • IVIDANALYTICS_SETRULE : ividanalytics.h
  • IVIDANALYTICS_Status : ividanalytics.h
  • IVIDANALYTICS_USERBASE : ividanalytics.h
  • IVIDANALYTICS_ViewState : ividanalytics.h
  • IVIDANALYTICS_VIEWSTATE_BAD : ividanalytics.h
  • IVIDANALYTICS_VIEWSTATE_GOOD : ividanalytics.h
  • IVIDDEC1_Cmd : ividdec1.h
  • IVIDDEC1_CodecClassConfig : viddec1.h
  • IVIDDEC1_DynamicParams : ividdec1.h
  • IVIDDEC1_EFAIL : ividdec1.h
  • IVIDDEC1_EOK : ividdec1.h
  • IVIDDEC1_EUNSUPPORTED : ividdec1.h
  • IVIDDEC1_FrameOrder : ividdec1.h
  • IVIDDEC1_FREE_BUFF_SIZE : ividdec1.h
  • IVIDDEC1_Fxns : ividdec1.h
  • IVIDDEC1_Handle : ividdec1.h
  • IVIDDEC1_InArgs : ividdec1.h
  • IVIDDEC1_Obj : ividdec1.h
  • IVIDDEC1_OutArgs : ividdec1.h
  • IVIDDEC1_Params : ividdec1.h
  • IVIDDEC1_Status : ividdec1.h
  • IVIDDEC2_Cmd : ividdec2.h
  • IVIDDEC2_CodecClassConfig : viddec2.h
  • IVIDDEC2_DECODE_ORDER : ividdec2.h
  • IVIDDEC2_DISPLAY_ORDER : ividdec2.h
  • IVIDDEC2_DynamicParams : ividdec2.h
  • IVIDDEC2_EFAIL : ividdec2.h
  • IVIDDEC2_EOK : ividdec2.h
  • IVIDDEC2_EUNSUPPORTED : ividdec2.h
  • IVIDDEC2_FrameOrder : ividdec2.h
  • IVIDDEC2_FRAMEORDER_DEFAULT : ividdec2.h
  • IVIDDEC2_Fxns : ividdec2.h
  • IVIDDEC2_Handle : ividdec2.h
  • IVIDDEC2_InArgs : ividdec2.h
  • IVIDDEC2_MAX_IO_BUFFERS : ividdec2.h
  • IVIDDEC2_Obj : ividdec2.h
  • IVIDDEC2_OutArgs : ividdec2.h
  • IVIDDEC2_Params : ividdec2.h
  • IVIDDEC2_Status : ividdec2.h
  • IVIDDEC2BACK_CodecClassConfig : split/viddec2.h
  • IVIDDEC2BACK_Fxns : split/ividdec2.h
  • IVIDDEC2BACK_Handle : split/ividdec2.h
  • IVIDDEC2BACK_Obj : split/ividdec2.h
  • IVIDDEC2FRONT_Fxns : split/ividdec2.h
  • IVIDDEC2FRONT_Handle : split/ividdec2.h
  • IVIDDEC2FRONT_Obj : split/ividdec2.h
  • IVIDDEC2FRONT_OutArgs : split/ividdec2.h
  • IVIDDEC2FRONT_Status : split/ividdec2.h
  • IVIDDEC3_Cmd : ividdec3.h
  • IVIDDEC3_CodecClassConfig : viddec3.h
  • IVIDDEC3_DECODE_ORDER : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_1 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_10 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_11 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_12 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_13 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_14 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_15 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_16 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_2 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_3 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_4 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_5 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_6 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_7 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_8 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_9 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_AUTO : ividdec3.h
  • IVIDDEC3_DISPLAYBUFS_EMBEDDED : ividdec3.h
  • IVIDDEC3_DISPLAYBUFS_PTRS : ividdec3.h
  • IVIDDEC3_DisplayBufsMode : ividdec3.h
  • IVIDDEC3_displayDelay : ividdec3.h
  • IVIDDEC3_DISPLAYDELAY_DEFAULT : ividdec3.h
  • IVIDDEC3_DynamicParams : ividdec3.h
  • IVIDDEC3_EFAIL : ividdec3.h
  • IVIDDEC3_EOK : ividdec3.h
  • IVIDDEC3_EUNSUPPORTED : ividdec3.h
  • IVIDDEC3_Fxns : ividdec3.h
  • IVIDDEC3_Handle : ividdec3.h
  • IVIDDEC3_InArgs : ividdec3.h
  • IVIDDEC3_Obj : ividdec3.h
  • IVIDDEC3_OutArgs : ividdec3.h
  • IVIDDEC3_Params : ividdec3.h
  • IVIDDEC3_Status : ividdec3.h
  • IVIDDEC_CID : ividdec.h
  • IVIDDEC_Cmd : ividdec.h
  • IVIDDEC_CodecClassConfig : viddec.h
  • IVIDDEC_DECODE_ORDER : ividdec1.h
  • IVIDDEC_DISPLAY_ORDER : ividdec1.h
  • IVIDDEC_DynamicParams : ividdec.h
  • IVIDDEC_EFAIL : ividdec.h
  • IVIDDEC_EOK : ividdec.h
  • IVIDDEC_ERUNTIME : ividdec.h
  • IVIDDEC_FRAMEORDER_DEFAULT : ividdec1.h
  • IVIDDEC_Fxns : ividdec.h
  • IVIDDEC_Handle : ividdec.h
  • IVIDDEC_InArgs : ividdec.h
  • IVIDDEC_Obj : ividdec.h
  • IVIDDEC_OutArgs : ividdec.h
  • IVIDDEC_Params : ividdec.h
  • IVIDDEC_Status : ividdec.h
  • IVIDENC1_Cmd : ividenc1.h
  • IVIDENC1_CodecClassConfig : videnc1.h
  • IVIDENC1_DynamicParams : ividenc1.h
  • IVIDENC1_EFAIL : ividenc1.h
  • IVIDENC1_EOK : ividenc1.h
  • IVIDENC1_EUNSUPPORTED : ividenc1.h
  • IVIDENC1_Fxns : ividenc1.h
  • IVIDENC1_Handle : ividenc1.h
  • IVIDENC1_InArgs : ividenc1.h
  • IVIDENC1_MbData : ividenc1.h
  • IVIDENC1_Obj : ividenc1.h
  • IVIDENC1_OutArgs : ividenc1.h
  • IVIDENC1_Params : ividenc1.h
  • IVIDENC1_Status : ividenc1.h
  • IVIDENC2_Cmd : ividenc2.h
  • IVIDENC2_CodecClassConfig : videnc2.h
  • IVIDENC2_Control : ividenc2.h
  • IVIDENC2_CTRL_DEFAULT : ividenc2.h
  • IVIDENC2_CTRL_FORCESKIP : ividenc2.h
  • IVIDENC2_CTRL_NONE : ividenc2.h
  • IVIDENC2_DEFAULTLEVEL : ividenc2.h
  • IVIDENC2_DEFAULTPROFILE : ividenc2.h
  • IVIDENC2_DynamicParams : ividenc2.h
  • IVIDENC2_EFAIL : ividenc2.h
  • IVIDENC2_EOK : ividenc2.h
  • IVIDENC2_EUNSUPPORTED : ividenc2.h
  • IVIDENC2_Fxns : ividenc2.h
  • IVIDENC2_Handle : ividenc2.h
  • IVIDENC2_InArgs : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_EIGHTHPEL : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_HALFPEL : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_MAX : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_PIXEL : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_QUARTERPEL : ividenc2.h
  • IVIDENC2_MotionVectorAccuracy : ividenc2.h
  • IVIDENC2_Obj : ividenc2.h
  • IVIDENC2_OutArgs : ividenc2.h
  • IVIDENC2_Params : ividenc2.h
  • IVIDENC2_Status : ividenc2.h
  • IVIDENC_CID : ividenc.h
  • IVIDENC_Cmd : ividenc.h
  • IVIDENC_CodecClassConfig : videnc.h
  • IVIDENC_DynamicParams : ividenc.h
  • IVIDENC_EFAIL : ividenc.h
  • IVIDENC_EOK : ividenc.h
  • IVIDENC_ERUNTIME : ividenc.h
  • IVIDENC_Fxns : ividenc.h
  • IVIDENC_Handle : ividenc.h
  • IVIDENC_InArgs : ividenc.h
  • IVIDENC_Obj : ividenc.h
  • IVIDENC_OutArgs : ividenc.h
  • IVIDENC_Params : ividenc.h
  • IVIDENC_Status : ividenc.h
  • IVIDEO1_BufDesc : ivideo.h
  • IVIDEO1_BufDescIn : ivideo.h
  • IVIDEO2_BufDesc : ivideo.h
  • IVIDEO2_MAX_IO_BUFFERS : ivideo.h
  • IVIDEO_AVS10 : ivideo.h
  • IVIDEO_B_FRAME : ivideo.h
  • IVIDEO_B_PICTURE : ivideo.h
  • IVIDEO_BB_FRAME : ivideo.h
  • IVIDEO_BI_FRAME : ivideo.h
  • IVIDEO_BitRange : ivideo.h
  • IVIDEO_BOTTOM_ONLY : ivideo.h
  • IVIDEO_BP_FRAME : ivideo.h
  • IVIDEO_BufDesc : ivideo.h
  • IVIDEO_ContentType : ivideo.h
  • IVIDEO_CONTENTTYPE_DEFAULT : ivideo.h
  • IVIDEO_CONTENTTYPE_NA : ivideo.h
  • IVIDEO_DataMode : ivideo.h
  • IVIDEO_DECODE_ONLY : ivideo.h
  • IVIDEO_ENCODE_ONLY : ivideo.h
  • IVIDEO_ENTIREFRAME : ivideo.h
  • IVIDEO_ERRORINFO_MODE_DEFAULT : ivideo.h
  • IVIDEO_ERRORINFO_OFF : ivideo.h
  • IVIDEO_ERRORINFO_ON_BOTH : ivideo.h
  • IVIDEO_ERRORINFO_ON_INPUT : ivideo.h
  • IVIDEO_ERRORINFO_ON_OUTPUT : ivideo.h
  • IVIDEO_ErrorInfoMode : ivideo.h
  • IVIDEO_FIELD_INTERLEAVED : ivideo.h
  • IVIDEO_FIELD_SEPARATED : ivideo.h
  • IVIDEO_FIXEDLENGTH : ivideo.h
  • IVIDEO_Format : ivideo.h
  • IVIDEO_FRAME_ENCODED : ivideo.h
  • IVIDEO_FRAME_ERROR : ivideo.h
  • IVIDEO_FRAME_NOERROR : ivideo.h
  • IVIDEO_FRAME_NOTAVAILABLE : ivideo.h
  • IVIDEO_FRAME_OUTPUTSKIP : ivideo.h
  • IVIDEO_FRAME_SKIPPED : ivideo.h
  • IVIDEO_FrameSkip : ivideo.h
  • IVIDEO_FrameType : ivideo.h
  • IVIDEO_FRAMETYPE_DEFAULT : ivideo.h
  • IVIDEO_H263_PROFILE0 : ivideo.h
  • IVIDEO_H263_PROFILE3 : ivideo.h
  • IVIDEO_H264BP : ivideo.h
  • IVIDEO_H264HP : ivideo.h
  • IVIDEO_H264MP : ivideo.h
  • IVIDEO_H264RCDO : ivideo.h
  • IVIDEO_H264SVC : ivideo.h
  • IVIDEO_I_FRAME : ivideo.h
  • IVIDEO_I_PICTURE : ivideo.h
  • IVIDEO_IB_FRAME : ivideo.h
  • IVIDEO_IDR_FRAME : ivideo.h
  • IVIDEO_II_FRAME : ivideo.h
  • IVIDEO_INTERLACED : ivideo.h
  • IVIDEO_INTERLACED_BOTTOMFIELD : ivideo.h
  • IVIDEO_INTERLACED_FRAME : ivideo.h
  • IVIDEO_INTERLACED_TOPFIELD : ivideo.h
  • IVIDEO_IP_FRAME : ivideo.h
  • IVIDEO_LOW_DELAY : ivideo.h
  • IVIDEO_MAX_NUM_METADATA_PLANES : ivideo.h
  • IVIDEO_MAX_NUM_PLANES : ivideo.h
  • IVIDEO_MAX_YUV_BUFFERS : ivideo.h
  • IVIDEO_MBAFF_B_FRAME : ivideo.h
  • IVIDEO_MBAFF_I_FRAME : ivideo.h
  • IVIDEO_MBAFF_IDR_FRAME : ivideo.h
  • IVIDEO_MBAFF_P_FRAME : ivideo.h
  • IVIDEO_METADATAPLANE_ALPHA : ivideo.h
  • IVIDEO_METADATAPLANE_EINFO : ivideo.h
  • IVIDEO_METADATAPLANE_MBINFO : ivideo.h
  • IVIDEO_METADATAPLANE_NONE : ivideo.h
  • IVIDEO_MetadataType : ivideo.h
  • IVIDEO_MJPEG : ivideo.h
  • IVIDEO_MPEG1 : ivideo.h
  • IVIDEO_MPEG2HP : ivideo.h
  • IVIDEO_MPEG2MP : ivideo.h
  • IVIDEO_MPEG2SP : ivideo.h
  • IVIDEO_MPEG4ASP : ivideo.h
  • IVIDEO_MPEG4SP : ivideo.h
  • IVIDEO_MULTIVIEW : ivideo.h
  • IVIDEO_NA_FRAME : ivideo.h
  • IVIDEO_NA_PICTURE : ivideo.h
  • IVIDEO_NO_SKIP : ivideo.h
  • IVIDEO_NONE : ivideo.h
  • IVIDEO_NUMROWS : ivideo.h
  • IVIDEO_ON2VP6 : ivideo.h
  • IVIDEO_ON2VP7 : ivideo.h
  • IVIDEO_OperatingMode : ivideo.h
  • IVIDEO_OutputFrameStatus : ivideo.h
  • IVIDEO_OUTPUTFRAMESTATUS_DEFAULT : ivideo.h
  • IVIDEO_P_FRAME : ivideo.h
  • IVIDEO_P_PICTURE : ivideo.h
  • IVIDEO_PB_FRAME : ivideo.h
  • IVIDEO_PI_FRAME : ivideo.h
  • IVIDEO_PICTURE_TYPE_DEFAULT : ivideo.h
  • IVIDEO_PictureType : ivideo.h
  • IVIDEO_PP_FRAME : ivideo.h
  • IVIDEO_PROGRESSIVE : ivideo.h
  • IVIDEO_PROGRESSIVE_FRAME : ivideo.h
  • IVIDEO_RateControlPreset : ivideo.h
  • IVIDEO_RATECONTROLPRESET_DEFAULT : ivideo.h
  • IVIDEO_RV10 : ivideo.h
  • IVIDEO_RV8 : ivideo.h
  • IVIDEO_RV9 : ivideo.h
  • IVIDEO_SKIP_B : ivideo.h
  • IVIDEO_SKIP_DEFAULT : ivideo.h
  • IVIDEO_SKIP_I : ivideo.h
  • IVIDEO_SKIP_IB : ivideo.h
  • IVIDEO_SKIP_IDR : ivideo.h
  • IVIDEO_SKIP_IP : ivideo.h
  • IVIDEO_SKIP_IPB : ivideo.h
  • IVIDEO_SKIP_NONREFERENCE : ivideo.h
  • IVIDEO_SKIP_P : ivideo.h
  • IVIDEO_SKIP_PB : ivideo.h
  • IVIDEO_SkipMode : ivideo.h
  • IVIDEO_SKIPMODE_DEFAULT : ivideo.h
  • IVIDEO_SLICEMODE : ivideo.h
  • IVIDEO_SORENSONSPARK : ivideo.h
  • IVIDEO_STORAGE : ivideo.h
  • IVIDEO_TOP_ONLY : ivideo.h
  • IVIDEO_TRANSCODE_FRAMELEVEL : ivideo.h
  • IVIDEO_TRANSCODE_MBLEVEL : ivideo.h
  • IVIDEO_TRANSRATE_FRAMELEVEL : ivideo.h
  • IVIDEO_TRANSRATE_MBLEVEL : ivideo.h
  • IVIDEO_TWOPASS : ivideo.h
  • IVIDEO_USER_DEFINED : ivideo.h
  • IVIDEO_VC1AP : ivideo.h
  • IVIDEO_VC1MP : ivideo.h
  • IVIDEO_VC1SP : ivideo.h
  • IVIDEO_VideoLayout : ivideo.h
  • IVIDEO_YUVRANGE_FULL : ivideo.h
  • IVIDEO_YUVRANGE_ITU : ivideo.h
  • IVIDTRANSCODE_Cmd : ividtranscode.h
  • IVIDTRANSCODE_DynamicParams : ividtranscode.h
  • IVIDTRANSCODE_EFAIL : ividtranscode.h
  • IVIDTRANSCODE_EOK : ividtranscode.h
  • IVIDTRANSCODE_EUNSUPPORTED : ividtranscode.h
  • IVIDTRANSCODE_Fxns : ividtranscode.h
  • IVIDTRANSCODE_Handle : ividtranscode.h
  • IVIDTRANSCODE_InArgs : ividtranscode.h
  • IVIDTRANSCODE_MAXOUTSTREAMS : ividtranscode.h
  • IVIDTRANSCODE_Obj : ividtranscode.h
  • IVIDTRANSCODE_OutArgs : ividtranscode.h
  • IVIDTRANSCODE_Params : ividtranscode.h
  • IVIDTRANSCODE_Status : ividtranscode.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- s -

  • Server_connectTrace() : Server.h
  • Server_disconnectTrace() : Server.h
  • Server_EFAIL : Server.h
  • Server_EINUSE : Server.h
  • Server_EINVAL : Server.h
  • Server_ENOMEM : Server.h
  • Server_ENOSERVER : Server.h
  • Server_ENOTFOUND : Server.h
  • Server_EOK : Server.h
  • Server_ERUNTIME : Server.h
  • Server_EWRONGSTATE : Server.h
  • Server_fwriteTrace() : Server.h
  • Server_getCpuLoad() : Server.h
  • Server_getMemStat() : Server.h
  • Server_getNumMemSegs() : Server.h
  • Server_Handle : Server.h
  • Server_MAXSEGNAMELENGTH : Server.h
  • Server_MemStat : Server.h
  • Server_MODNAME : Server.h
  • Server_redefineHeap() : Server.h
  • Server_restoreHeap() : Server.h
  • Server_setTrace() : Server.h
  • Server_Status : Server.h
  • SPHDEC1_Cmd : sphdec1.h
  • SPHDEC1_control() : sphdec1.h
  • SPHDEC1_create() : sphdec1.h
  • SPHDEC1_delete() : sphdec1.h
  • SPHDEC1_DynamicParams : sphdec1.h
  • SPHDEC1_EFAIL : sphdec1.h
  • SPHDEC1_EOK : sphdec1.h
  • SPHDEC1_ETIMEOUT : sphdec1.h
  • SPHDEC1_EUNSUPPORTED : sphdec1.h
  • SPHDEC1_FOREVER : sphdec1.h
  • SPHDEC1_Handle : sphdec1.h
  • SPHDEC1_InArgs : sphdec1.h
  • SPHDEC1_OutArgs : sphdec1.h
  • SPHDEC1_Params : sphdec1.h
  • SPHDEC1_process() : sphdec1.h
  • SPHDEC1_processAsync() : sphdec1.h
  • SPHDEC1_processWait() : sphdec1.h
  • SPHDEC1_Status : sphdec1.h
  • SPHDEC_Cmd : sphdec.h
  • SPHDEC_control() : sphdec.h
  • SPHDEC_create() : sphdec.h
  • SPHDEC_delete() : sphdec.h
  • SPHDEC_DynamicParams : sphdec.h
  • SPHDEC_EFAIL : sphdec.h
  • SPHDEC_EOK : sphdec.h
  • SPHDEC_ERUNTIME : sphdec.h
  • SPHDEC_ETIMEOUT : sphdec.h
  • SPHDEC_FOREVER : sphdec.h
  • SPHDEC_Handle : sphdec.h
  • SPHDEC_InArgs : sphdec.h
  • SPHDEC_OutArgs : sphdec.h
  • SPHDEC_Params : sphdec.h
  • SPHDEC_process() : sphdec.h
  • SPHDEC_processAsync() : sphdec.h
  • SPHDEC_processWait() : sphdec.h
  • SPHDEC_Status : sphdec.h
  • SPHENC1_Cmd : sphenc1.h
  • SPHENC1_control() : sphenc1.h
  • SPHENC1_create() : sphenc1.h
  • SPHENC1_delete() : sphenc1.h
  • SPHENC1_DynamicParams : sphenc1.h
  • SPHENC1_EFAIL : sphenc1.h
  • SPHENC1_EOK : sphenc1.h
  • SPHENC1_ETIMEOUT : sphenc1.h
  • SPHENC1_EUNSUPPORTED : sphenc1.h
  • SPHENC1_FOREVER : sphenc1.h
  • SPHENC1_Handle : sphenc1.h
  • SPHENC1_InArgs : sphenc1.h
  • SPHENC1_OutArgs : sphenc1.h
  • SPHENC1_Params : sphenc1.h
  • SPHENC1_process() : sphenc1.h
  • SPHENC1_processAsync() : sphenc1.h
  • SPHENC1_processWait() : sphenc1.h
  • SPHENC1_Status : sphenc1.h
  • SPHENC_Cmd : sphenc.h
  • SPHENC_control() : sphenc.h
  • SPHENC_create() : sphenc.h
  • SPHENC_delete() : sphenc.h
  • SPHENC_DynamicParams : sphenc.h
  • SPHENC_EFAIL : sphenc.h
  • SPHENC_EOK : sphenc.h
  • SPHENC_ERUNTIME : sphenc.h
  • SPHENC_ETIMEOUT : sphenc.h
  • SPHENC_FOREVER : sphenc.h
  • SPHENC_Handle : sphenc.h
  • SPHENC_InArgs : sphenc.h
  • SPHENC_OutArgs : sphenc.h
  • SPHENC_Params : sphenc.h
  • SPHENC_process() : sphenc.h
  • SPHENC_processAsync() : sphenc.h
  • SPHENC_processWait() : sphenc.h
  • SPHENC_Status : sphenc.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- t -

  • ti_sdo_ce_osal_Memory_alloc() : Memory.h
  • ti_sdo_ce_osal_Memory_AllocParams : Memory.h
  • ti_sdo_ce_osal_Memory_CACHED : Memory.h
  • ti_sdo_ce_osal_Memory_CACHEDMASK : Memory.h
  • ti_sdo_ce_osal_Memory_cacheInv() : Memory.h
  • ti_sdo_ce_osal_Memory_cacheWb() : Memory.h
  • ti_sdo_ce_osal_Memory_cacheWbInv() : Memory.h
  • ti_sdo_ce_osal_Memory_cacheWbInvAll() : Memory.h
  • ti_sdo_ce_osal_Memory_contigAlloc() : Memory.h
  • ti_sdo_ce_osal_Memory_contigFree() : Memory.h
  • ti_sdo_ce_osal_Memory_CONTIGHEAP : Memory.h
  • ti_sdo_ce_osal_Memory_CONTIGPOOL : Memory.h
  • ti_sdo_ce_osal_Memory_DEFAULTALIGNMENT : Memory.h
  • ti_sdo_ce_osal_Memory_DEFAULTPARAMS : Memory.h
  • ti_sdo_ce_osal_Memory_free() : Memory.h
  • ti_sdo_ce_osal_Memory_getBufferPhysicalAddress() : Memory.h
  • ti_sdo_ce_osal_Memory_getBufferVirtualAddress() : Memory.h
  • ti_sdo_ce_osal_Memory_GTNAME : Memory.h
  • ti_sdo_ce_osal_Memory_MALLOC : Memory.h
  • ti_sdo_ce_osal_Memory_NONCACHED : Memory.h
  • ti_sdo_ce_osal_Memory_SEG : Memory.h
  • ti_sdo_ce_osal_Memory_type : Memory.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- u -

  • UNIVERSAL_Cmd : universal.h
  • UNIVERSAL_control() : universal.h
  • UNIVERSAL_create() : universal.h
  • UNIVERSAL_delete() : universal.h
  • UNIVERSAL_DynamicParams : universal.h
  • UNIVERSAL_EFAIL : universal.h
  • UNIVERSAL_EOK : universal.h
  • UNIVERSAL_ETIMEOUT : universal.h
  • UNIVERSAL_EUNSUPPORTED : universal.h
  • UNIVERSAL_FOREVER : universal.h
  • UNIVERSAL_Handle : universal.h
  • UNIVERSAL_InArgs : universal.h
  • UNIVERSAL_OutArgs : universal.h
  • UNIVERSAL_Params : universal.h
  • UNIVERSAL_process() : universal.h
  • UNIVERSAL_processAsync() : universal.h
  • UNIVERSAL_processWait() : universal.h
  • UNIVERSAL_Status : universal.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- v -

  • VIDANALYTICS_Cmd : vidanalytics.h
  • VIDANALYTICS_control() : vidanalytics.h
  • VIDANALYTICS_create() : vidanalytics.h
  • VIDANALYTICS_delete() : vidanalytics.h
  • VIDANALYTICS_DynamicParams : vidanalytics.h
  • VIDANALYTICS_EFAIL : vidanalytics.h
  • VIDANALYTICS_EOK : vidanalytics.h
  • VIDANALYTICS_ETIMEOUT : vidanalytics.h
  • VIDANALYTICS_EUNSUPPORTED : vidanalytics.h
  • VIDANALYTICS_FOREVER : vidanalytics.h
  • VIDANALYTICS_Handle : vidanalytics.h
  • VIDANALYTICS_InArgs : vidanalytics.h
  • VIDANALYTICS_OutArgs : vidanalytics.h
  • VIDANALYTICS_Params : vidanalytics.h
  • VIDANALYTICS_process() : vidanalytics.h
  • VIDANALYTICS_processAsync() : vidanalytics.h
  • VIDANALYTICS_processWait() : vidanalytics.h
  • VIDANALYTICS_Status : vidanalytics.h
  • VIDDEC1_Cmd : viddec1.h
  • VIDDEC1_control() : viddec1.h
  • VIDDEC1_create() : viddec1.h
  • VIDDEC1_delete() : viddec1.h
  • VIDDEC1_DynamicParams : viddec1.h
  • VIDDEC1_EFAIL : viddec1.h
  • VIDDEC1_EOK : viddec1.h
  • VIDDEC1_ETIMEOUT : viddec1.h
  • VIDDEC1_EUNSUPPORTED : viddec1.h
  • VIDDEC1_FOREVER : viddec1.h
  • VIDDEC1_Handle : viddec1.h
  • VIDDEC1_InArgs : viddec1.h
  • VIDDEC1_OutArgs : viddec1.h
  • VIDDEC1_Params : viddec1.h
  • VIDDEC1_process() : viddec1.h
  • VIDDEC1_processAsync() : viddec1.h
  • VIDDEC1_processWait() : viddec1.h
  • VIDDEC1_Status : viddec1.h
  • VIDDEC2_Cmd : viddec2.h
  • VIDDEC2_control() : viddec2.h
  • VIDDEC2_create() : viddec2.h
  • VIDDEC2_delete() : viddec2.h
  • VIDDEC2_DynamicParams : viddec2.h
  • VIDDEC2_EFAIL : viddec2.h
  • VIDDEC2_EOK : viddec2.h
  • VIDDEC2_ETIMEOUT : viddec2.h
  • VIDDEC2_EUNSUPPORTED : viddec2.h
  • VIDDEC2_FOREVER : viddec2.h
  • VIDDEC2_Handle : viddec2.h
  • VIDDEC2_InArgs : viddec2.h
  • VIDDEC2_OutArgs : viddec2.h
  • VIDDEC2_Params : viddec2.h
  • VIDDEC2_process() : viddec2.h
  • VIDDEC2_processAsync() : viddec2.h
  • VIDDEC2_processWait() : viddec2.h
  • VIDDEC2_Status : viddec2.h
  • VIDDEC2BACK_control() : split/viddec2.h
  • VIDDEC2BACK_create() : split/viddec2.h
  • VIDDEC2BACK_delete() : split/viddec2.h
  • VIDDEC2BACK_Handle : split/viddec2.h
  • VIDDEC2BACK_process() : split/viddec2.h
  • VIDDEC2FRONT_control() : split/viddec2.h
  • VIDDEC2FRONT_create() : split/viddec2.h
  • VIDDEC2FRONT_delete() : split/viddec2.h
  • VIDDEC2FRONT_Handle : split/viddec2.h
  • VIDDEC2FRONT_OutArgs : split/viddec2.h
  • VIDDEC2FRONT_process() : split/viddec2.h
  • VIDDEC2FRONT_Status : split/viddec2.h
  • VIDDEC3_Cmd : viddec3.h
  • VIDDEC3_control() : viddec3.h
  • VIDDEC3_create() : viddec3.h
  • VIDDEC3_delete() : viddec3.h
  • VIDDEC3_DynamicParams : viddec3.h
  • VIDDEC3_EFAIL : viddec3.h
  • VIDDEC3_EOK : viddec3.h
  • VIDDEC3_ETIMEOUT : viddec3.h
  • VIDDEC3_EUNSUPPORTED : viddec3.h
  • VIDDEC3_FOREVER : viddec3.h
  • VIDDEC3_Handle : viddec3.h
  • VIDDEC3_InArgs : viddec3.h
  • VIDDEC3_OutArgs : viddec3.h
  • VIDDEC3_Params : viddec3.h
  • VIDDEC3_process() : viddec3.h
  • VIDDEC3_Status : viddec3.h
  • VIDDEC_Cmd : viddec.h
  • VIDDEC_control() : viddec.h
  • VIDDEC_create() : viddec.h
  • VIDDEC_delete() : viddec.h
  • VIDDEC_DynamicParams : viddec.h
  • VIDDEC_EFAIL : viddec.h
  • VIDDEC_EOK : viddec.h
  • VIDDEC_ERUNTIME : viddec.h
  • VIDDEC_ETIMEOUT : viddec.h
  • VIDDEC_FOREVER : viddec.h
  • VIDDEC_Handle : viddec.h
  • VIDDEC_InArgs : viddec.h
  • VIDDEC_OutArgs : viddec.h
  • VIDDEC_Params : viddec.h
  • VIDDEC_process() : viddec.h
  • VIDDEC_processAsync() : viddec.h
  • VIDDEC_processWait() : viddec.h
  • VIDDEC_Status : viddec.h
  • VIDENC1_Cmd : videnc1.h
  • VIDENC1_control() : videnc1.h
  • VIDENC1_create() : videnc1.h
  • VIDENC1_delete() : videnc1.h
  • VIDENC1_DynamicParams : videnc1.h
  • VIDENC1_EFAIL : videnc1.h
  • VIDENC1_EOK : videnc1.h
  • VIDENC1_ETIMEOUT : videnc1.h
  • VIDENC1_EUNSUPPORTED : videnc1.h
  • VIDENC1_FOREVER : videnc1.h
  • VIDENC1_Handle : videnc1.h
  • VIDENC1_InArgs : videnc1.h
  • VIDENC1_OutArgs : videnc1.h
  • VIDENC1_Params : videnc1.h
  • VIDENC1_process() : videnc1.h
  • VIDENC1_processAsync() : videnc1.h
  • VIDENC1_processWait() : videnc1.h
  • VIDENC1_Status : videnc1.h
  • VIDENC2_Cmd : videnc2.h
  • VIDENC2_control() : videnc2.h
  • VIDENC2_create() : videnc2.h
  • VIDENC2_delete() : videnc2.h
  • VIDENC2_DynamicParams : videnc2.h
  • VIDENC2_EFAIL : videnc2.h
  • VIDENC2_EOK : videnc2.h
  • VIDENC2_ETIMEOUT : videnc2.h
  • VIDENC2_EUNSUPPORTED : videnc2.h
  • VIDENC2_FOREVER : videnc2.h
  • VIDENC2_Handle : videnc2.h
  • VIDENC2_InArgs : videnc2.h
  • VIDENC2_OutArgs : videnc2.h
  • VIDENC2_Params : videnc2.h
  • VIDENC2_process() : videnc2.h
  • VIDENC2_processAsync() : videnc2.h
  • VIDENC2_processWait() : videnc2.h
  • VIDENC2_Status : videnc2.h
  • VIDENC_Cmd : videnc.h
  • VIDENC_control() : videnc.h
  • VIDENC_create() : videnc.h
  • VIDENC_delete() : videnc.h
  • VIDENC_DynamicParams : videnc.h
  • VIDENC_EFAIL : videnc.h
  • VIDENC_EOK : videnc.h
  • VIDENC_ERUNTIME : videnc.h
  • VIDENC_ETIMEOUT : videnc.h
  • VIDENC_FOREVER : videnc.h
  • VIDENC_Handle : videnc.h
  • VIDENC_InArgs : videnc.h
  • VIDENC_OutArgs : videnc.h
  • VIDENC_Params : videnc.h
  • VIDENC_process() : videnc.h
  • VIDENC_processAsync() : videnc.h
  • VIDENC_processWait() : videnc.h
  • VIDENC_Status : videnc.h
  • VIDTRANSCODE_Cmd : vidtranscode.h
  • VIDTRANSCODE_control() : vidtranscode.h
  • VIDTRANSCODE_create() : vidtranscode.h
  • VIDTRANSCODE_delete() : vidtranscode.h
  • VIDTRANSCODE_DynamicParams : vidtranscode.h
  • VIDTRANSCODE_EFAIL : vidtranscode.h
  • VIDTRANSCODE_EOK : vidtranscode.h
  • VIDTRANSCODE_ETIMEOUT : vidtranscode.h
  • VIDTRANSCODE_EUNSUPPORTED : vidtranscode.h
  • VIDTRANSCODE_FOREVER : vidtranscode.h
  • VIDTRANSCODE_Handle : vidtranscode.h
  • VIDTRANSCODE_InArgs : vidtranscode.h
  • VIDTRANSCODE_OutArgs : vidtranscode.h
  • VIDTRANSCODE_Params : vidtranscode.h
  • VIDTRANSCODE_process() : vidtranscode.h
  • VIDTRANSCODE_processAsync() : vidtranscode.h
  • VIDTRANSCODE_processWait() : vidtranscode.h
  • VIDTRANSCODE_Status : vidtranscode.h
  • VISA_allocMsg() : visa.h
  • VISA_call() : visa.h
  • VISA_callAsync() : visa.h
  • VISA_create() : visa.h
  • VISA_create2() : visa.h
  • VISA_delete() : visa.h
  • VISA_EFAIL : visa.h
  • VISA_enter() : visa.h
  • VISA_EOK : visa.h
  • VISA_ERUNTIME : visa.h
  • VISA_ETIMEOUT : visa.h
  • VISA_exit() : visa.h
  • VISA_FOREVER : visa.h
  • VISA_freeMsg() : visa.h
  • VISA_getAlgFxns() : visa.h
  • VISA_getAlgHandle() : visa.h
  • VISA_getAlgMemRecs() : visa.h
  • VISA_getAlgNumRecs() : visa.h
  • VISA_getAlgorithmHandle() : visa.h
  • VISA_getCodecClassConfig() : visa.h
  • VISA_getContext() : visa.h
  • VISA_getMaxMsgSize() : visa.h
  • VISA_Handle : visa.h
  • VISA_isLocal() : visa.h
  • VISA_MODNAME : visa.h
  • VISA_Msg : visa.h
  • VISA_MsgHeader : visa.h
  • VISA_setContext() : visa.h
  • VISA_Status : visa.h
  • VISA_wait() : visa.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- x -

  • XDAS_Bool : xdas.h
  • XDAS_FALSE : xdas.h
  • XDAS_Int16 : xdas.h
  • XDAS_Int32 : xdas.h
  • XDAS_Int8 : xdas.h
  • XDAS_TRUE : xdas.h
  • XDAS_UInt16 : xdas.h
  • XDAS_UInt32 : xdas.h
  • XDAS_UInt8 : xdas.h
  • XDAS_Void : xdas.h
  • XDM1_AlgBufInfo : xdm.h
  • XDM1_BufDesc : xdm.h
  • XDM1_SingleBufDesc : xdm.h
  • XDM2_BufDesc : xdm.h
  • XDM2_SingleBufDesc : xdm.h
  • XDM_AccessMode : xdm.h
  • XDM_ACCESSMODE_READ : xdm.h
  • XDM_ACCESSMODE_WRITE : xdm.h
  • XDM_AlgBufInfo : xdm.h
  • XDM_APPLIEDCONCEALMENT : xdm.h
  • XDM_ARGB8888 : xdm.h
  • XDM_BE_16 : xdm.h
  • XDM_BE_32 : xdm.h
  • XDM_BE_64 : xdm.h
  • XDM_BufDesc : xdm.h
  • XDM_BYTE : xdm.h
  • XDM_CHROMA_NA : xdm.h
  • XDM_ChromaFormat : xdm.h
  • XDM_CHROMAFORMAT_DEFAULT : xdm.h
  • XDM_CLEARACCESSMODE_READ : xdm.h
  • XDM_CLEARACCESSMODE_WRITE : xdm.h
  • XDM_CmdId : xdm.h
  • XDM_Context : xdm.h
  • XDM_ContextInfo : xdm.h
  • XDM_CORRUPTEDDATA : xdm.h
  • XDM_CORRUPTEDHEADER : xdm.h
  • XDM_CUSTOMCMDBASE : xdm.h
  • XDM_CUSTOMENUMBASE : xdm.h
  • XDM_DataFormat : xdm.h
  • XDM_DataSyncDesc : xdm.h
  • XDM_DataSyncGetBufferFxn : xdm.h
  • XDM_DataSyncGetFxn : xdm.h
  • XDM_DataSyncHandle : xdm.h
  • XDM_DataSyncPutBufferFxn : xdm.h
  • XDM_DataSyncPutFxn : xdm.h
  • XDM_Date : xdm.h
  • XDM_DecMode : xdm.h
  • XDM_DECODE_AU : xdm.h
  • XDM_DEFAULT : xdm.h
  • XDM_EFAIL : xdm.h
  • XDM_EncMode : xdm.h
  • XDM_ENCODE_AU : xdm.h
  • XDM_ENCODING_PRESET_MAX : xdm.h
  • XDM_EncodingPreset : xdm.h
  • XDM_EOK : xdm.h
  • XDM_ErrorBit : xdm.h
  • XDM_ERUNTIME : xdm.h
  • XDM_EUNSUPPORTED : xdm.h
  • XDM_FATALERROR : xdm.h
  • XDM_FLUSH : xdm.h
  • XDM_GENERATE_HEADER : xdm.h
  • XDM_GETBUFINFO : xdm.h
  • XDM_GETCONTEXTINFO : xdm.h
  • XDM_GETDYNPARAMSDEFAULT : xdm.h
  • XDM_GETSTATUS : xdm.h
  • XDM_GETVERSION : xdm.h
  • XDM_GRAY : xdm.h
  • XDM_HIGH_QUALITY : xdm.h
  • XDM_HIGH_SPEED : xdm.h
  • XDM_HIGH_SPEED_MED_QUALITY : xdm.h
  • XDM_INSUFFICIENTDATA : xdm.h
  • XDM_ISACCESSMODE_READ : xdm.h
  • XDM_ISACCESSMODE_WRITE : xdm.h
  • XDM_ISAPPLIEDCONCEALMENT : xdm.h
  • XDM_ISCORRUPTEDDATA : xdm.h
  • XDM_ISCORRUPTEDHEADER : xdm.h
  • XDM_ISFATALERROR : xdm.h
  • XDM_ISINSUFFICIENTDATA : xdm.h
  • XDM_ISUNSUPPORTEDINPUT : xdm.h
  • XDM_ISUNSUPPORTEDPARAM : xdm.h
  • XDM_LE_16 : xdm.h
  • XDM_LE_32 : xdm.h
  • XDM_LE_64 : xdm.h
  • XDM_MAX_CONTEXT_BUFFERS : xdm.h
  • XDM_MAX_IO_BUFFERS : xdm.h
  • XDM_MED_SPEED_HIGH_QUALITY : xdm.h
  • XDM_MED_SPEED_MED_QUALITY : xdm.h
  • XDM_MemoryType : xdm.h
  • XDM_MemoryUsageMode : xdm.h
  • XDM_MEMTYPE_RAW : xdm.h
  • XDM_MEMTYPE_ROW : xdm.h
  • XDM_MEMTYPE_TILED16 : xdm.h
  • XDM_MEMTYPE_TILED32 : xdm.h
  • XDM_MEMTYPE_TILED8 : xdm.h
  • XDM_MEMTYPE_TILEDPAGE : xdm.h
  • XDM_MEMUSAGE_DATASYNC : xdm.h
  • XDM_PARAMSCHANGE : xdm.h
  • XDM_PARSE_HEADER : xdm.h
  • XDM_Point : xdm.h
  • XDM_PRESET_DEFAULT : xdm.h
  • XDM_Rect : xdm.h
  • XDM_RESET : xdm.h
  • XDM_RGB : xdm.h
  • XDM_RGB555 : xdm.h
  • XDM_RGB565 : xdm.h
  • XDM_SETACCESSMODE_READ : xdm.h
  • XDM_SETACCESSMODE_WRITE : xdm.h
  • XDM_SETAPPLIEDCONCEALMENT : xdm.h
  • XDM_SETCORRUPTEDDATA : xdm.h
  • XDM_SETCORRUPTEDHEADER : xdm.h
  • XDM_SETDEFAULT : xdm.h
  • XDM_SETFATALERROR : xdm.h
  • XDM_SETINSUFFICIENTDATA : xdm.h
  • XDM_SETLATEACQUIREARG : xdm.h
  • XDM_SETPARAMS : xdm.h
  • XDM_SETUNSUPPORTEDINPUT : xdm.h
  • XDM_SETUNSUPPORTEDPARAM : xdm.h
  • XDM_SingleBufDesc : xdm.h
  • XDM_UNSUPPORTEDINPUT : xdm.h
  • XDM_UNSUPPORTEDPARAM : xdm.h
  • XDM_USER_DEFINED : xdm.h
  • XDM_YUV_411P : xdm.h
  • XDM_YUV_420P : xdm.h
  • XDM_YUV_420SP : xdm.h
  • XDM_YUV_422IBE : xdm.h
  • XDM_YUV_422ILE : xdm.h
  • XDM_YUV_422P : xdm.h
  • XDM_YUV_444ILE : xdm.h
  • XDM_YUV_444P : xdm.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x

- a -

  • AUDDEC1_EFAIL : auddec1.h
  • AUDDEC1_EOK : auddec1.h
  • AUDDEC1_ETIMEOUT : auddec1.h
  • AUDDEC1_EUNSUPPORTED : auddec1.h
  • AUDDEC1_FOREVER : auddec1.h
  • AUDDEC_EFAIL : auddec.h
  • AUDDEC_EOK : auddec.h
  • AUDDEC_ERUNTIME : auddec.h
  • AUDDEC_ETIMEOUT : auddec.h
  • AUDDEC_FOREVER : auddec.h
  • AUDENC1_EFAIL : audenc1.h
  • AUDENC1_EOK : audenc1.h
  • AUDENC1_ETIMEOUT : audenc1.h
  • AUDENC1_EUNSUPPORTED : audenc1.h
  • AUDENC1_FOREVER : audenc1.h
  • AUDENC_EFAIL : audenc.h
  • AUDENC_EOK : audenc.h
  • AUDENC_ERUNTIME : audenc.h
  • AUDENC_ETIMEOUT : audenc.h
  • AUDENC_FOREVER : audenc.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x

- m -

  • Memory_MODNAME : Memory.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x

- e -

  • Engine_EBADSERVER : Engine.h
  • Engine_ECODECCREATE : Engine.h
  • Engine_ECODECSTART : Engine.h
  • Engine_ECOMALLOC : Engine.h
  • Engine_EDSPLOAD : Engine.h
  • Engine_EEXIST : Engine.h
  • Engine_EINUSE : Engine.h
  • Engine_EINVAL : Engine.h
  • Engine_ENOCOMM : Engine.h
  • Engine_ENOMEM : Engine.h
  • Engine_ENOSERVER : Engine.h
  • Engine_ENOTAVAIL : Engine.h
  • Engine_ENOTFOUND : Engine.h
  • Engine_EOK : Engine.h
  • Engine_ERUNTIME : Engine.h
  • Engine_ETIMEOUT : Engine.h
  • Engine_EWRONGSTATE : Engine.h
  • Engine_GETALGDESCFXN : Engine.h
  • Engine_MODNAME : Engine.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x

- i -

  • IALG_CUSTOMFAILBASE : ialg.h
  • IALG_CUSTOMFAILEND : ialg.h
  • IALG_DEFMEMRECS : ialg.h
  • IALG_EFAIL : ialg.h
  • IALG_EOK : ialg.h
  • IALG_isOffChip : ialg.h
  • IALG_isProg : ialg.h
  • IALG_MPROG : ialg.h
  • IALG_MXTRN : ialg.h
  • IALG_OBJMEMREC : ialg.h
  • IALG_SYSCMD : ialg.h
  • IAUDDEC1_EFAIL : iauddec1.h
  • IAUDDEC1_EOK : iauddec1.h
  • IAUDDEC1_EUNSUPPORTED : iauddec1.h
  • IAUDDEC_CID : iauddec.h
  • IAUDDEC_EFAIL : iauddec.h
  • IAUDDEC_EOK : iauddec.h
  • IAUDDEC_ERUNTIME : iauddec.h
  • IAUDENC1_EFAIL : iaudenc1.h
  • IAUDENC1_EOK : iaudenc1.h
  • IAUDENC1_EUNSUPPORTED : iaudenc1.h
  • IAUDENC_CID : iaudenc.h
  • IAUDENC_EFAIL : iaudenc.h
  • IAUDENC_EOK : iaudenc.h
  • IAUDENC_ERUNTIME : iaudenc.h
  • IIMGDEC1_EFAIL : iimgdec1.h
  • IIMGDEC1_EOK : iimgdec1.h
  • IIMGDEC1_EUNSUPPORTED : iimgdec1.h
  • IIMGDEC_CID : iimgdec.h
  • IIMGDEC_EFAIL : iimgdec.h
  • IIMGDEC_EOK : iimgdec.h
  • IIMGDEC_ERUNTIME : iimgdec.h
  • IIMGENC1_EFAIL : iimgenc1.h
  • IIMGENC1_EOK : iimgenc1.h
  • IIMGENC1_EUNSUPPORTED : iimgenc1.h
  • IIMGENC_CID : iimgenc.h
  • IIMGENC_EFAIL : iimgenc.h
  • IIMGENC_EOK : iimgenc.h
  • IIMGENC_ERUNTIME : iimgenc.h
  • IMGDEC1_EFAIL : imgdec1.h
  • IMGDEC1_EOK : imgdec1.h
  • IMGDEC1_ETIMEOUT : imgdec1.h
  • IMGDEC1_EUNSUPPORTED : imgdec1.h
  • IMGDEC1_FOREVER : imgdec1.h
  • IMGDEC_EFAIL : imgdec.h
  • IMGDEC_EOK : imgdec.h
  • IMGDEC_ERUNTIME : imgdec.h
  • IMGDEC_ETIMEOUT : imgdec.h
  • IMGDEC_FOREVER : imgdec.h
  • IMGENC1_EFAIL : imgenc1.h
  • IMGENC1_EOK : imgenc1.h
  • IMGENC1_ETIMEOUT : imgenc1.h
  • IMGENC1_EUNSUPPORTED : imgenc1.h
  • IMGENC1_FOREVER : imgenc1.h
  • IMGENC_EFAIL : imgenc.h
  • IMGENC_EOK : imgenc.h
  • IMGENC_ERUNTIME : imgenc.h
  • IMGENC_ETIMEOUT : imgenc.h
  • IMGENC_FOREVER : imgenc.h
  • ISPHDEC1_EFAIL : isphdec1.h
  • ISPHDEC1_EOK : isphdec1.h
  • ISPHDEC1_EUNSUPPORTED : isphdec1.h
  • ISPHDEC_CID : isphdec.h
  • ISPHDEC_EFAIL : isphdec.h
  • ISPHDEC_EOK : isphdec.h
  • ISPHDEC_ERUNTIME : isphdec.h
  • ISPHENC1_EFAIL : isphenc1.h
  • ISPHENC1_ENOOUTPUT : isphenc1.h
  • ISPHENC1_EOK : isphenc1.h
  • ISPHENC1_EUNSUPPORTED : isphenc1.h
  • ISPHENC_CID : isphenc.h
  • ISPHENC_EFAIL : isphenc.h
  • ISPHENC_EOK : isphenc.h
  • ISPHENC_ERUNTIME : isphenc.h
  • IUNIVERSAL_EFAIL : iuniversal.h
  • IUNIVERSAL_EOK : iuniversal.h
  • IUNIVERSAL_EUNSUPPORTED : iuniversal.h
  • IVIDANALYTICS_CLEARRULE : ividanalytics.h
  • IVIDANALYTICS_EFAIL : ividanalytics.h
  • IVIDANALYTICS_EOK : ividanalytics.h
  • IVIDANALYTICS_EUNSUPPORTED : ividanalytics.h
  • IVIDANALYTICS_MAXEVENTS : ividanalytics.h
  • IVIDANALYTICS_MAXTARGETS : ividanalytics.h
  • IVIDANALYTICS_SETRULE : ividanalytics.h
  • IVIDDEC1_EFAIL : ividdec1.h
  • IVIDDEC1_EOK : ividdec1.h
  • IVIDDEC1_EUNSUPPORTED : ividdec1.h
  • IVIDDEC1_FREE_BUFF_SIZE : ividdec1.h
  • IVIDDEC2_EFAIL : ividdec2.h
  • IVIDDEC2_EOK : ividdec2.h
  • IVIDDEC2_EUNSUPPORTED : ividdec2.h
  • IVIDDEC2_MAX_IO_BUFFERS : ividdec2.h
  • IVIDDEC3_EFAIL : ividdec3.h
  • IVIDDEC3_EOK : ividdec3.h
  • IVIDDEC3_EUNSUPPORTED : ividdec3.h
  • IVIDDEC_CID : ividdec.h
  • IVIDDEC_EFAIL : ividdec.h
  • IVIDDEC_EOK : ividdec.h
  • IVIDDEC_ERUNTIME : ividdec.h
  • IVIDENC1_EFAIL : ividenc1.h
  • IVIDENC1_EOK : ividenc1.h
  • IVIDENC1_EUNSUPPORTED : ividenc1.h
  • IVIDENC2_DEFAULTLEVEL : ividenc2.h
  • IVIDENC2_DEFAULTPROFILE : ividenc2.h
  • IVIDENC2_EFAIL : ividenc2.h
  • IVIDENC2_EOK : ividenc2.h
  • IVIDENC2_EUNSUPPORTED : ividenc2.h
  • IVIDENC_CID : ividenc.h
  • IVIDENC_EFAIL : ividenc.h
  • IVIDENC_EOK : ividenc.h
  • IVIDENC_ERUNTIME : ividenc.h
  • IVIDEO2_MAX_IO_BUFFERS : ivideo.h
  • IVIDEO_MAX_NUM_METADATA_PLANES : ivideo.h
  • IVIDEO_MAX_NUM_PLANES : ivideo.h
  • IVIDEO_MAX_YUV_BUFFERS : ivideo.h
  • IVIDTRANSCODE_EFAIL : ividtranscode.h
  • IVIDTRANSCODE_EOK : ividtranscode.h
  • IVIDTRANSCODE_EUNSUPPORTED : ividtranscode.h
  • IVIDTRANSCODE_MAXOUTSTREAMS : ividtranscode.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x

- s -

  • Server_MAXSEGNAMELENGTH : Server.h
  • Server_MODNAME : Server.h
  • SPHDEC1_EFAIL : sphdec1.h
  • SPHDEC1_EOK : sphdec1.h
  • SPHDEC1_ETIMEOUT : sphdec1.h
  • SPHDEC1_EUNSUPPORTED : sphdec1.h
  • SPHDEC1_FOREVER : sphdec1.h
  • SPHDEC_EFAIL : sphdec.h
  • SPHDEC_EOK : sphdec.h
  • SPHDEC_ERUNTIME : sphdec.h
  • SPHDEC_ETIMEOUT : sphdec.h
  • SPHDEC_FOREVER : sphdec.h
  • SPHENC1_EFAIL : sphenc1.h
  • SPHENC1_EOK : sphenc1.h
  • SPHENC1_ETIMEOUT : sphenc1.h
  • SPHENC1_EUNSUPPORTED : sphenc1.h
  • SPHENC1_FOREVER : sphenc1.h
  • SPHENC_EFAIL : sphenc.h
  • SPHENC_EOK : sphenc.h
  • SPHENC_ERUNTIME : sphenc.h
  • SPHENC_ETIMEOUT : sphenc.h
  • SPHENC_FOREVER : sphenc.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x

- t -

  • ti_sdo_ce_osal_Memory_CACHED : Memory.h
  • ti_sdo_ce_osal_Memory_CACHEDMASK : Memory.h
  • ti_sdo_ce_osal_Memory_DEFAULTALIGNMENT : Memory.h
  • ti_sdo_ce_osal_Memory_GTNAME : Memory.h
  • ti_sdo_ce_osal_Memory_NONCACHED : Memory.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x

- u -

  • UNIVERSAL_EFAIL : universal.h
  • UNIVERSAL_EOK : universal.h
  • UNIVERSAL_ETIMEOUT : universal.h
  • UNIVERSAL_EUNSUPPORTED : universal.h
  • UNIVERSAL_FOREVER : universal.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x

- v -

  • VIDANALYTICS_EFAIL : vidanalytics.h
  • VIDANALYTICS_EOK : vidanalytics.h
  • VIDANALYTICS_ETIMEOUT : vidanalytics.h
  • VIDANALYTICS_EUNSUPPORTED : vidanalytics.h
  • VIDANALYTICS_FOREVER : vidanalytics.h
  • VIDDEC1_EFAIL : viddec1.h
  • VIDDEC1_EOK : viddec1.h
  • VIDDEC1_ETIMEOUT : viddec1.h
  • VIDDEC1_EUNSUPPORTED : viddec1.h
  • VIDDEC1_FOREVER : viddec1.h
  • VIDDEC2_EFAIL : viddec2.h
  • VIDDEC2_EOK : viddec2.h
  • VIDDEC2_ETIMEOUT : viddec2.h
  • VIDDEC2_EUNSUPPORTED : viddec2.h
  • VIDDEC2_FOREVER : viddec2.h
  • VIDDEC3_EFAIL : viddec3.h
  • VIDDEC3_EOK : viddec3.h
  • VIDDEC3_ETIMEOUT : viddec3.h
  • VIDDEC3_EUNSUPPORTED : viddec3.h
  • VIDDEC3_FOREVER : viddec3.h
  • VIDDEC_EFAIL : viddec.h
  • VIDDEC_EOK : viddec.h
  • VIDDEC_ERUNTIME : viddec.h
  • VIDDEC_ETIMEOUT : viddec.h
  • VIDDEC_FOREVER : viddec.h
  • VIDENC1_EFAIL : videnc1.h
  • VIDENC1_EOK : videnc1.h
  • VIDENC1_ETIMEOUT : videnc1.h
  • VIDENC1_EUNSUPPORTED : videnc1.h
  • VIDENC1_FOREVER : videnc1.h
  • VIDENC2_EFAIL : videnc2.h
  • VIDENC2_EOK : videnc2.h
  • VIDENC2_ETIMEOUT : videnc2.h
  • VIDENC2_EUNSUPPORTED : videnc2.h
  • VIDENC2_FOREVER : videnc2.h
  • VIDENC_EFAIL : videnc.h
  • VIDENC_EOK : videnc.h
  • VIDENC_ERUNTIME : videnc.h
  • VIDENC_ETIMEOUT : videnc.h
  • VIDENC_FOREVER : videnc.h
  • VIDTRANSCODE_EFAIL : vidtranscode.h
  • VIDTRANSCODE_EOK : vidtranscode.h
  • VIDTRANSCODE_ETIMEOUT : vidtranscode.h
  • VIDTRANSCODE_EUNSUPPORTED : vidtranscode.h
  • VIDTRANSCODE_FOREVER : vidtranscode.h
  • VISA_EFAIL : visa.h
  • VISA_EOK : visa.h
  • VISA_ERUNTIME : visa.h
  • VISA_ETIMEOUT : visa.h
  • VISA_FOREVER : visa.h
  • VISA_MODNAME : visa.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • m
  • s
  • t
  • u
  • v
  • x

- x -

  • XDAS_FALSE : xdas.h
  • XDAS_TRUE : xdas.h
  • XDM_CLEARACCESSMODE_READ : xdm.h
  • XDM_CLEARACCESSMODE_WRITE : xdm.h
  • XDM_CUSTOMCMDBASE : xdm.h
  • XDM_CUSTOMENUMBASE : xdm.h
  • XDM_EFAIL : xdm.h
  • XDM_EOK : xdm.h
  • XDM_ERUNTIME : xdm.h
  • XDM_EUNSUPPORTED : xdm.h
  • XDM_ISACCESSMODE_READ : xdm.h
  • XDM_ISACCESSMODE_WRITE : xdm.h
  • XDM_ISAPPLIEDCONCEALMENT : xdm.h
  • XDM_ISCORRUPTEDDATA : xdm.h
  • XDM_ISCORRUPTEDHEADER : xdm.h
  • XDM_ISFATALERROR : xdm.h
  • XDM_ISINSUFFICIENTDATA : xdm.h
  • XDM_ISUNSUPPORTEDINPUT : xdm.h
  • XDM_ISUNSUPPORTEDPARAM : xdm.h
  • XDM_MAX_CONTEXT_BUFFERS : xdm.h
  • XDM_MAX_IO_BUFFERS : xdm.h
  • XDM_SETACCESSMODE_READ : xdm.h
  • XDM_SETACCESSMODE_WRITE : xdm.h
  • XDM_SETAPPLIEDCONCEALMENT : xdm.h
  • XDM_SETCORRUPTEDDATA : xdm.h
  • XDM_SETCORRUPTEDHEADER : xdm.h
  • XDM_SETFATALERROR : xdm.h
  • XDM_SETINSUFFICIENTDATA : xdm.h
  • XDM_SETUNSUPPORTEDINPUT : xdm.h
  • XDM_SETUNSUPPORTEDPARAM : xdm.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • i
  • s
  • t
  • x

- i -

  • IALG_MemAttrs : ialg.h
  • IALG_MemSpace : ialg.h
  • IAUDIO_ChannelId : iaudio.h
  • IAUDIO_ChannelMode : iaudio.h
  • IAUDIO_DualMonoMode : iaudio.h
  • IAUDIO_EncMode : iaudio.h
  • IAUDIO_PcmFormat : iaudio.h
  • ISPEECH1_AMR_BitRate : ispeech1_amr.h
  • ISPEECH1_AMR_CodecSelect : ispeech1_amr.h
  • ISPEECH1_AMR_PackingType : ispeech1_amr.h
  • ISPEECH1_AMR_VADSelect : ispeech1_amr.h
  • ISPEECH1_EVRC_Mode : ispeech1_evrc.h
  • ISPEECH1_EVRC_NoisePreProc : ispeech1_evrc.h
  • ISPEECH1_EVRC_NullTrafficMode : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMode : ispeech1_evrc.h
  • ISPEECH1_G7221_BitRate : ispeech1_g7221.h
  • ISPEECH1_G722_BitRate : ispeech1_g722.h
  • ISPEECH1_G722_CodecSelect : ispeech1_g722.h
  • ISPEECH1_G723_BitRate : ispeech1_g723.h
  • ISPEECH1_G723_NoisePreProc : ispeech1_g723.h
  • ISPEECH1_G726_BitRate : ispeech1_g726.h
  • ISPEECH1_G726_CompandingLaw : ispeech1_g726.h
  • ISPEECH1_G726_PackingType : ispeech1_g726.h
  • ISPEECH1_ILBC_CodecSelect : ispeech1_ilbc.h
  • ISPEECH1_NullTrafficMode : ispeech1.h
  • ISPEECH1_PCM_CompandingLaw : ispeech1_pcm.h
  • ISPEECH1_PostFilter : ispeech1.h
  • ISPEECH1_SMV_DataMode : ispeech1_smv.h
  • ISPEECH1_SMV_DTMFMode : ispeech1_smv.h
  • ISPEECH1_SMV_Mode : ispeech1_smv.h
  • ISPEECH1_SMV_NoisePreProc : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMode : ispeech1_smv.h
  • ISPEECH1_SMV_VADSelect : ispeech1_smv.h
  • ISPEECH1_VADFlag : ispeech1.h
  • ISPEECH1_WBAMR_BitRate : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PackingType : ispeech1_wbamr.h
  • ISPEECH2_G7221_SamplingRate : ispeech1_g7221.h
  • ISPEECH_CompoundLaw : ispeech.h
  • ISPEECH_VoiceMode : ispeech.h
  • ISPHDEC1_FrameType : isphdec1.h
  • ISPHENC1_FrameType : isphenc1.h
  • IVIDANALYTICS_ActionType : ividanalytics.h
  • IVIDANALYTICS_AnalysisMask : ividanalytics.h
  • IVIDANALYTICS_ObjectType : ividanalytics.h
  • IVIDANALYTICS_ViewState : ividanalytics.h
  • IVIDDEC1_FrameOrder : ividdec1.h
  • IVIDDEC2_FrameOrder : ividdec2.h
  • IVIDDEC3_DisplayBufsMode : ividdec3.h
  • IVIDDEC3_displayDelay : ividdec3.h
  • IVIDENC2_Control : ividenc2.h
  • IVIDENC2_MotionVectorAccuracy : ividenc2.h
  • IVIDEO_BitRange : ivideo.h
  • IVIDEO_ContentType : ivideo.h
  • IVIDEO_DataMode : ivideo.h
  • IVIDEO_ErrorInfoMode : ivideo.h
  • IVIDEO_Format : ivideo.h
  • IVIDEO_FrameSkip : ivideo.h
  • IVIDEO_FrameType : ivideo.h
  • IVIDEO_MetadataType : ivideo.h
  • IVIDEO_OperatingMode : ivideo.h
  • IVIDEO_OutputFrameStatus : ivideo.h
  • IVIDEO_PictureType : ivideo.h
  • IVIDEO_RateControlPreset : ivideo.h
  • IVIDEO_SkipMode : ivideo.h
  • IVIDEO_VideoLayout : ivideo.h

- s -

  • Server_Status : Server.h

- t -

  • ti_sdo_ce_osal_Memory_type : Memory.h

- x -

  • XDM_AccessMode : xdm.h
  • XDM_ChromaFormat : xdm.h
  • XDM_CmdId : xdm.h
  • XDM_DataFormat : xdm.h
  • XDM_DecMode : xdm.h
  • XDM_EncMode : xdm.h
  • XDM_EncodingPreset : xdm.h
  • XDM_ErrorBit : xdm.h
  • XDM_MemoryType : xdm.h
  • XDM_MemoryUsageMode : xdm.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • i
  • s
  • t
  • x

- i -

  • IALG_DARAM0 : ialg.h
  • IALG_DARAM1 : ialg.h
  • IALG_DARAM2 : ialg.h
  • IALG_EPROG : ialg.h
  • IALG_ESDATA : ialg.h
  • IALG_EXTERNAL : ialg.h
  • IALG_IPROG : ialg.h
  • IALG_PERSIST : ialg.h
  • IALG_SARAM : ialg.h
  • IALG_SARAM0 : ialg.h
  • IALG_SARAM1 : ialg.h
  • IALG_SARAM2 : ialg.h
  • IALG_SCRATCH : ialg.h
  • IALG_WRITEONCE : ialg.h
  • IAUDIO_11_0 : iaudio.h
  • IAUDIO_1_0 : iaudio.h
  • IAUDIO_2_0 : iaudio.h
  • IAUDIO_2_1 : iaudio.h
  • IAUDIO_2_2 : iaudio.h
  • IAUDIO_2_3 : iaudio.h
  • IAUDIO_3_0 : iaudio.h
  • IAUDIO_3_1 : iaudio.h
  • IAUDIO_3_2 : iaudio.h
  • IAUDIO_3_3 : iaudio.h
  • IAUDIO_3_4 : iaudio.h
  • IAUDIO_BLOCK : iaudio.h
  • IAUDIO_CBR : iaudio.h
  • IAUDIO_DUALMONO_LEFT : iaudio.h
  • IAUDIO_DUALMONO_LR : iaudio.h
  • IAUDIO_DUALMONO_LR_MIX : iaudio.h
  • IAUDIO_DUALMONO_RIGHT : iaudio.h
  • IAUDIO_FIVE_ONE : iaudio.h
  • IAUDIO_FIVE_ZERO : iaudio.h
  • IAUDIO_INTERLEAVED : iaudio.h
  • IAUDIO_MONO : iaudio.h
  • IAUDIO_SEVEN_ONE : iaudio.h
  • IAUDIO_STEREO : iaudio.h
  • IAUDIO_THREE_ZERO : iaudio.h
  • IAUDIO_VBR : iaudio.h
  • ISPEECH1_AMR_BITRATE_10P2 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_12P2 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_4P75 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_5P15 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_5P9 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_6P7 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_7P4 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_7P95 : ispeech1_amr.h
  • ISPEECH1_AMR_BITRATE_DEFAULT : ispeech1_amr.h
  • ISPEECH1_AMR_CODECSELECT_DEFAULT : ispeech1_amr.h
  • ISPEECH1_AMR_CODECSELECT_PRIMARY : ispeech1_amr.h
  • ISPEECH1_AMR_CODECSELECT_SECONDARY : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPE_IF1_NOCRC : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPE_IF1_WITHCRC : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPE_IF2 : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPE_MIME : ispeech1_amr.h
  • ISPEECH1_AMR_PACKTYPEFORMAT_DEFAULT : ispeech1_amr.h
  • ISPEECH1_AMR_VADSELECT_DEFAULT : ispeech1_amr.h
  • ISPEECH1_AMR_VADSELECT_VAD1 : ispeech1_amr.h
  • ISPEECH1_AMR_VADSELECT_VAD2 : ispeech1_amr.h
  • ISPEECH1_EVRC_MODE_CAPACITYSAVE : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_DEFAULT : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_ECONOMY : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_HALFRATE_MAX : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_PREMIUM : ispeech1_evrc.h
  • ISPEECH1_EVRC_MODE_STANDARD : ispeech1_evrc.h
  • ISPEECH1_EVRC_NOISEPREPROC_DEFAULT : ispeech1_evrc.h
  • ISPEECH1_EVRC_NOISEPREPROC_OFF : ispeech1_evrc.h
  • ISPEECH1_EVRC_NOISEPREPROC_ON : ispeech1_evrc.h
  • ISPEECH1_EVRC_NULLTRAFFICMODE_DEFAULT : ispeech1_evrc.h
  • ISPEECH1_EVRC_NULLTRAFFICMODE_OFF : ispeech1_evrc.h
  • ISPEECH1_EVRC_NULLTRAFFICMODE_ON : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMODE_45P45BPS : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMODE_50BPS : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMODE_DEFAULT : ispeech1_evrc.h
  • ISPEECH1_EVRC_TTYMODE_OFF : ispeech1_evrc.h
  • ISPEECH1_G7221_BITRATE_24 : ispeech1_g7221.h
  • ISPEECH1_G7221_BITRATE_32 : ispeech1_g7221.h
  • ISPEECH1_G7221_BITRATE_48 : ispeech1_g7221.h
  • ISPEECH1_G7221_BITRATE_DEFAULT : ispeech1_g7221.h
  • ISPEECH1_G722_BITRATE_DEFAULT : ispeech1_g722.h
  • ISPEECH1_G722_BITRATE_RATE0 : ispeech1_g722.h
  • ISPEECH1_G722_BITRATE_RATE1 : ispeech1_g722.h
  • ISPEECH1_G722_BITRATE_RATE2 : ispeech1_g722.h
  • ISPEECH1_G722_BITRATE_RATE3 : ispeech1_g722.h
  • ISPEECH1_G722_CODECSELECT_DEFAULT : ispeech1_g722.h
  • ISPEECH1_G722_CODECSELECT_ITUMODE : ispeech1_g722.h
  • ISPEECH1_G722_CODECSELECT_NONITUMODE : ispeech1_g722.h
  • ISPEECH1_G723_BITRATE_5P3 : ispeech1_g723.h
  • ISPEECH1_G723_BITRATE_6P3 : ispeech1_g723.h
  • ISPEECH1_G723_BITRATE_DEFAULT : ispeech1_g723.h
  • ISPEECH1_G723_NOISEPREPROC_DEFAULT : ispeech1_g723.h
  • ISPEECH1_G723_NOISEPREPROC_OFF : ispeech1_g723.h
  • ISPEECH1_G723_NOISEPREPROC_ON : ispeech1_g723.h
  • ISPEECH1_G726_BITRATE_16 : ispeech1_g726.h
  • ISPEECH1_G726_BITRATE_24 : ispeech1_g726.h
  • ISPEECH1_G726_BITRATE_32 : ispeech1_g726.h
  • ISPEECH1_G726_BITRATE_40 : ispeech1_g726.h
  • ISPEECH1_G726_BITRATE_DEFAULT : ispeech1_g726.h
  • ISPEECH1_G726_COMPAND_ALAW : ispeech1_g726.h
  • ISPEECH1_G726_COMPAND_DEFAULT : ispeech1_g726.h
  • ISPEECH1_G726_COMPAND_LINEAR : ispeech1_g726.h
  • ISPEECH1_G726_COMPAND_ULAW : ispeech1_g726.h
  • ISPEECH1_G726_PACKTYPE_LINEAR : ispeech1_g726.h
  • ISPEECH1_G726_PACKTYPE_RTPSPECIAL : ispeech1_g726.h
  • ISPEECH1_G726_PACKTYPEFORMAT_DEFAULT : ispeech1_g726.h
  • ISPEECH1_ILBC_CODECSELECT_20MS : ispeech1_ilbc.h
  • ISPEECH1_ILBC_CODECSELECT_30MS : ispeech1_ilbc.h
  • ISPEECH1_ILBC_CODECSELECT_DEFAULT : ispeech1_ilbc.h
  • ISPEECH1_NULLTRAFFICMODE_DEFAULT : ispeech1.h
  • ISPEECH1_NULLTRAFFICMODE_OFF : ispeech1.h
  • ISPEECH1_NULLTRAFFICMODE_ON : ispeech1.h
  • ISPEECH1_PCM_COMPAND_ALAW : ispeech1_pcm.h
  • ISPEECH1_PCM_COMPAND_DEFAULT : ispeech1_pcm.h
  • ISPEECH1_PCM_COMPAND_LINEAR : ispeech1_pcm.h
  • ISPEECH1_PCM_COMPAND_ULAW : ispeech1_pcm.h
  • ISPEECH1_POSTFILTER_DEFAULT : ispeech1.h
  • ISPEECH1_POSTFILTER_OFF : ispeech1.h
  • ISPEECH1_POSTFILTER_ON : ispeech1.h
  • ISPEECH1_SMV_DATAMODE_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_DATAMODE_FULLRATE : ispeech1_smv.h
  • ISPEECH1_SMV_DATAMODE_HALFRATE : ispeech1_smv.h
  • ISPEECH1_SMV_DATAMODE_OFF : ispeech1_smv.h
  • ISPEECH1_SMV_DTMFMODE_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_DTMFMODE_OFF : ispeech1_smv.h
  • ISPEECH1_SMV_DTMFMODE_ON : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_CAPACITYSAVE : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_ECONOMY : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_PREMIUM : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_PREMIUM_HALFRATE_MAX : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_STANDARD : ispeech1_smv.h
  • ISPEECH1_SMV_MODE_STANDARD_HALFRATE_MAX : ispeech1_smv.h
  • ISPEECH1_SMV_NOISEPREPROC_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_NOISEPREPROC_NSA : ispeech1_smv.h
  • ISPEECH1_SMV_NOISEPREPROC_NSB : ispeech1_smv.h
  • ISPEECH1_SMV_NOISEPREPROC_OFF : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMODE_45P45BPS : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMODE_50BPS : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMODE_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_TTYMODE_OFF : ispeech1_smv.h
  • ISPEECH1_SMV_VADSELECT_DEFAULT : ispeech1_smv.h
  • ISPEECH1_SMV_VADSELECT_VADA : ispeech1_smv.h
  • ISPEECH1_SMV_VADSELECT_VADB : ispeech1_smv.h
  • ISPEECH1_VADFLAG_DEFAULT : ispeech1.h
  • ISPEECH1_VADFLAG_OFF : ispeech1.h
  • ISPEECH1_VADFLAG_ON : ispeech1.h
  • ISPEECH1_WBAMR_BITRATE_12P65 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_14P25 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_15P85 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_18P25 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_19P85 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_23P05 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_23P85 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_6P60 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_8P85 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_BITRATE_DEFAULT : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPE_IF1_NOCRC : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPE_IF1_WITHCRC : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPE_IF2 : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPE_MIME : ispeech1_wbamr.h
  • ISPEECH1_WBAMR_PACKTYPEFORMAT_DEFAULT : ispeech1_wbamr.h
  • ISPEECH2_G7221_SAMPLINGRATE_DEFAULT : ispeech1_g7221.h
  • ISPEECH2_G7221_SAMPLINGRATE_SUPEWIDEBAND : ispeech1_g7221.h
  • ISPEECH2_G7221_SAMPLINGRATE_WIDEBAND : ispeech1_g7221.h
  • ISPEECH_ALAW : ispeech.h
  • ISPEECH_LINEAR : ispeech.h
  • ISPEECH_ULAW : ispeech.h
  • ISPEECH_UNVOICED : ispeech.h
  • ISPEECH_VOICED : ispeech.h
  • ISPHDEC1_FTYPE_BAD : isphdec1.h
  • ISPHDEC1_FTYPE_DEGRADED : isphdec1.h
  • ISPHDEC1_FTYPE_NODATA : isphdec1.h
  • ISPHDEC1_FTYPE_ONSET : isphdec1.h
  • ISPHDEC1_FTYPE_SIDBAD : isphdec1.h
  • ISPHDEC1_FTYPE_SIDFIRST : isphdec1.h
  • ISPHDEC1_FTYPE_SIDUPDATE : isphdec1.h
  • ISPHDEC1_FTYPE_SPEECHGOOD : isphdec1.h
  • ISPHDEC1_FTYPE_SPEECHLOST : isphdec1.h
  • ISPHENC1_FTYPE_NODATA : isphenc1.h
  • ISPHENC1_FTYPE_SIDFRAME : isphenc1.h
  • ISPHENC1_FTYPE_SPEECH : isphenc1.h
  • IVIDANALYTICS_ACTIONTYPE_APPEAR : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_CROSSD2U : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_CROSSL2R : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_CROSSR2L : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_CROSSU2D : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_DISAPPEAR : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_ENTER : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_EXIT : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_LOITER : ividanalytics.h
  • IVIDANALYTICS_ACTIONTYPE_USERBASE : ividanalytics.h
  • IVIDANALYTICS_MOTIONDETECT : ividanalytics.h
  • IVIDANALYTICS_OBJECTTRACKING : ividanalytics.h
  • IVIDANALYTICS_OBJECTTYPE_HUMAN : ividanalytics.h
  • IVIDANALYTICS_OBJECTTYPE_USERBASE : ividanalytics.h
  • IVIDANALYTICS_OBJECTTYPE_VEHICLE : ividanalytics.h
  • IVIDANALYTICS_USERBASE : ividanalytics.h
  • IVIDANALYTICS_VIEWSTATE_BAD : ividanalytics.h
  • IVIDANALYTICS_VIEWSTATE_GOOD : ividanalytics.h
  • IVIDDEC2_DECODE_ORDER : ividdec2.h
  • IVIDDEC2_DISPLAY_ORDER : ividdec2.h
  • IVIDDEC2_FRAMEORDER_DEFAULT : ividdec2.h
  • IVIDDEC3_DECODE_ORDER : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_1 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_10 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_11 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_12 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_13 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_14 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_15 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_16 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_2 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_3 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_4 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_5 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_6 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_7 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_8 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_9 : ividdec3.h
  • IVIDDEC3_DISPLAY_DELAY_AUTO : ividdec3.h
  • IVIDDEC3_DISPLAYBUFS_EMBEDDED : ividdec3.h
  • IVIDDEC3_DISPLAYBUFS_PTRS : ividdec3.h
  • IVIDDEC3_DISPLAYDELAY_DEFAULT : ividdec3.h
  • IVIDDEC_DECODE_ORDER : ividdec1.h
  • IVIDDEC_DISPLAY_ORDER : ividdec1.h
  • IVIDDEC_FRAMEORDER_DEFAULT : ividdec1.h
  • IVIDENC2_CTRL_DEFAULT : ividenc2.h
  • IVIDENC2_CTRL_FORCESKIP : ividenc2.h
  • IVIDENC2_CTRL_NONE : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_EIGHTHPEL : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_HALFPEL : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_MAX : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_PIXEL : ividenc2.h
  • IVIDENC2_MOTIONVECTOR_QUARTERPEL : ividenc2.h
  • IVIDEO_AVS10 : ivideo.h
  • IVIDEO_B_FRAME : ivideo.h
  • IVIDEO_B_PICTURE : ivideo.h
  • IVIDEO_BB_FRAME : ivideo.h
  • IVIDEO_BI_FRAME : ivideo.h
  • IVIDEO_BOTTOM_ONLY : ivideo.h
  • IVIDEO_BP_FRAME : ivideo.h
  • IVIDEO_CONTENTTYPE_DEFAULT : ivideo.h
  • IVIDEO_CONTENTTYPE_NA : ivideo.h
  • IVIDEO_DECODE_ONLY : ivideo.h
  • IVIDEO_ENCODE_ONLY : ivideo.h
  • IVIDEO_ENTIREFRAME : ivideo.h
  • IVIDEO_ERRORINFO_MODE_DEFAULT : ivideo.h
  • IVIDEO_ERRORINFO_OFF : ivideo.h
  • IVIDEO_ERRORINFO_ON_BOTH : ivideo.h
  • IVIDEO_ERRORINFO_ON_INPUT : ivideo.h
  • IVIDEO_ERRORINFO_ON_OUTPUT : ivideo.h
  • IVIDEO_FIELD_INTERLEAVED : ivideo.h
  • IVIDEO_FIELD_SEPARATED : ivideo.h
  • IVIDEO_FIXEDLENGTH : ivideo.h
  • IVIDEO_FRAME_ENCODED : ivideo.h
  • IVIDEO_FRAME_ERROR : ivideo.h
  • IVIDEO_FRAME_NOERROR : ivideo.h
  • IVIDEO_FRAME_NOTAVAILABLE : ivideo.h
  • IVIDEO_FRAME_OUTPUTSKIP : ivideo.h
  • IVIDEO_FRAME_SKIPPED : ivideo.h
  • IVIDEO_FRAMETYPE_DEFAULT : ivideo.h
  • IVIDEO_H263_PROFILE0 : ivideo.h
  • IVIDEO_H263_PROFILE3 : ivideo.h
  • IVIDEO_H264BP : ivideo.h
  • IVIDEO_H264HP : ivideo.h
  • IVIDEO_H264MP : ivideo.h
  • IVIDEO_H264RCDO : ivideo.h
  • IVIDEO_H264SVC : ivideo.h
  • IVIDEO_I_FRAME : ivideo.h
  • IVIDEO_I_PICTURE : ivideo.h
  • IVIDEO_IB_FRAME : ivideo.h
  • IVIDEO_IDR_FRAME : ivideo.h
  • IVIDEO_II_FRAME : ivideo.h
  • IVIDEO_INTERLACED : ivideo.h
  • IVIDEO_INTERLACED_BOTTOMFIELD : ivideo.h
  • IVIDEO_INTERLACED_FRAME : ivideo.h
  • IVIDEO_INTERLACED_TOPFIELD : ivideo.h
  • IVIDEO_IP_FRAME : ivideo.h
  • IVIDEO_LOW_DELAY : ivideo.h
  • IVIDEO_MBAFF_B_FRAME : ivideo.h
  • IVIDEO_MBAFF_I_FRAME : ivideo.h
  • IVIDEO_MBAFF_IDR_FRAME : ivideo.h
  • IVIDEO_MBAFF_P_FRAME : ivideo.h
  • IVIDEO_METADATAPLANE_ALPHA : ivideo.h
  • IVIDEO_METADATAPLANE_EINFO : ivideo.h
  • IVIDEO_METADATAPLANE_MBINFO : ivideo.h
  • IVIDEO_METADATAPLANE_NONE : ivideo.h
  • IVIDEO_MJPEG : ivideo.h
  • IVIDEO_MPEG1 : ivideo.h
  • IVIDEO_MPEG2HP : ivideo.h
  • IVIDEO_MPEG2MP : ivideo.h
  • IVIDEO_MPEG2SP : ivideo.h
  • IVIDEO_MPEG4ASP : ivideo.h
  • IVIDEO_MPEG4SP : ivideo.h
  • IVIDEO_MULTIVIEW : ivideo.h
  • IVIDEO_NA_FRAME : ivideo.h
  • IVIDEO_NA_PICTURE : ivideo.h
  • IVIDEO_NO_SKIP : ivideo.h
  • IVIDEO_NONE : ivideo.h
  • IVIDEO_NUMROWS : ivideo.h
  • IVIDEO_ON2VP6 : ivideo.h
  • IVIDEO_ON2VP7 : ivideo.h
  • IVIDEO_OUTPUTFRAMESTATUS_DEFAULT : ivideo.h
  • IVIDEO_P_FRAME : ivideo.h
  • IVIDEO_P_PICTURE : ivideo.h
  • IVIDEO_PB_FRAME : ivideo.h
  • IVIDEO_PI_FRAME : ivideo.h
  • IVIDEO_PICTURE_TYPE_DEFAULT : ivideo.h
  • IVIDEO_PP_FRAME : ivideo.h
  • IVIDEO_PROGRESSIVE : ivideo.h
  • IVIDEO_PROGRESSIVE_FRAME : ivideo.h
  • IVIDEO_RATECONTROLPRESET_DEFAULT : ivideo.h
  • IVIDEO_RV10 : ivideo.h
  • IVIDEO_RV8 : ivideo.h
  • IVIDEO_RV9 : ivideo.h
  • IVIDEO_SKIP_B : ivideo.h
  • IVIDEO_SKIP_DEFAULT : ivideo.h
  • IVIDEO_SKIP_I : ivideo.h
  • IVIDEO_SKIP_IB : ivideo.h
  • IVIDEO_SKIP_IDR : ivideo.h
  • IVIDEO_SKIP_IP : ivideo.h
  • IVIDEO_SKIP_IPB : ivideo.h
  • IVIDEO_SKIP_NONREFERENCE : ivideo.h
  • IVIDEO_SKIP_P : ivideo.h
  • IVIDEO_SKIP_PB : ivideo.h
  • IVIDEO_SKIPMODE_DEFAULT : ivideo.h
  • IVIDEO_SLICEMODE : ivideo.h
  • IVIDEO_SORENSONSPARK : ivideo.h
  • IVIDEO_STORAGE : ivideo.h
  • IVIDEO_TOP_ONLY : ivideo.h
  • IVIDEO_TRANSCODE_FRAMELEVEL : ivideo.h
  • IVIDEO_TRANSCODE_MBLEVEL : ivideo.h
  • IVIDEO_TRANSRATE_FRAMELEVEL : ivideo.h
  • IVIDEO_TRANSRATE_MBLEVEL : ivideo.h
  • IVIDEO_TWOPASS : ivideo.h
  • IVIDEO_USER_DEFINED : ivideo.h
  • IVIDEO_VC1AP : ivideo.h
  • IVIDEO_VC1MP : ivideo.h
  • IVIDEO_VC1SP : ivideo.h
  • IVIDEO_YUVRANGE_FULL : ivideo.h
  • IVIDEO_YUVRANGE_ITU : ivideo.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • i
  • s
  • t
  • x

- s -

  • Server_EFAIL : Server.h
  • Server_EINUSE : Server.h
  • Server_EINVAL : Server.h
  • Server_ENOMEM : Server.h
  • Server_ENOSERVER : Server.h
  • Server_ENOTFOUND : Server.h
  • Server_EOK : Server.h
  • Server_ERUNTIME : Server.h
  • Server_EWRONGSTATE : Server.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • i
  • s
  • t
  • x

- t -

  • ti_sdo_ce_osal_Memory_CONTIGHEAP : Memory.h
  • ti_sdo_ce_osal_Memory_CONTIGPOOL : Memory.h
  • ti_sdo_ce_osal_Memory_MALLOC : Memory.h
  • ti_sdo_ce_osal_Memory_SEG : Memory.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • i
  • s
  • t
  • x

- x -

  • XDM_ACCESSMODE_READ : xdm.h
  • XDM_ACCESSMODE_WRITE : xdm.h
  • XDM_APPLIEDCONCEALMENT : xdm.h
  • XDM_ARGB8888 : xdm.h
  • XDM_BE_16 : xdm.h
  • XDM_BE_32 : xdm.h
  • XDM_BE_64 : xdm.h
  • XDM_BYTE : xdm.h
  • XDM_CHROMA_NA : xdm.h
  • XDM_CHROMAFORMAT_DEFAULT : xdm.h
  • XDM_CORRUPTEDDATA : xdm.h
  • XDM_CORRUPTEDHEADER : xdm.h
  • XDM_DECODE_AU : xdm.h
  • XDM_DEFAULT : xdm.h
  • XDM_ENCODE_AU : xdm.h
  • XDM_ENCODING_PRESET_MAX : xdm.h
  • XDM_FATALERROR : xdm.h
  • XDM_FLUSH : xdm.h
  • XDM_GENERATE_HEADER : xdm.h
  • XDM_GETBUFINFO : xdm.h
  • XDM_GETCONTEXTINFO : xdm.h
  • XDM_GETDYNPARAMSDEFAULT : xdm.h
  • XDM_GETSTATUS : xdm.h
  • XDM_GETVERSION : xdm.h
  • XDM_GRAY : xdm.h
  • XDM_HIGH_QUALITY : xdm.h
  • XDM_HIGH_SPEED : xdm.h
  • XDM_HIGH_SPEED_MED_QUALITY : xdm.h
  • XDM_INSUFFICIENTDATA : xdm.h
  • XDM_LE_16 : xdm.h
  • XDM_LE_32 : xdm.h
  • XDM_LE_64 : xdm.h
  • XDM_MED_SPEED_HIGH_QUALITY : xdm.h
  • XDM_MED_SPEED_MED_QUALITY : xdm.h
  • XDM_MEMTYPE_RAW : xdm.h
  • XDM_MEMTYPE_ROW : xdm.h
  • XDM_MEMTYPE_TILED16 : xdm.h
  • XDM_MEMTYPE_TILED32 : xdm.h
  • XDM_MEMTYPE_TILED8 : xdm.h
  • XDM_MEMTYPE_TILEDPAGE : xdm.h
  • XDM_MEMUSAGE_DATASYNC : xdm.h
  • XDM_PARAMSCHANGE : xdm.h
  • XDM_PARSE_HEADER : xdm.h
  • XDM_PRESET_DEFAULT : xdm.h
  • XDM_RESET : xdm.h
  • XDM_RGB : xdm.h
  • XDM_RGB555 : xdm.h
  • XDM_RGB565 : xdm.h
  • XDM_SETDEFAULT : xdm.h
  • XDM_SETLATEACQUIREARG : xdm.h
  • XDM_SETPARAMS : xdm.h
  • XDM_UNSUPPORTEDINPUT : xdm.h
  • XDM_UNSUPPORTEDPARAM : xdm.h
  • XDM_USER_DEFINED : xdm.h
  • XDM_YUV_411P : xdm.h
  • XDM_YUV_420P : xdm.h
  • XDM_YUV_420SP : xdm.h
  • XDM_YUV_422IBE : xdm.h
  • XDM_YUV_422ILE : xdm.h
  • XDM_YUV_422P : xdm.h
  • XDM_YUV_444ILE : xdm.h
  • XDM_YUV_444P : xdm.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • c
  • e
  • i
  • s
  • t
  • u
  • v

- a -

  • AUDDEC1_control() : auddec1.h
  • AUDDEC1_create() : auddec1.h
  • AUDDEC1_delete() : auddec1.h
  • AUDDEC1_process() : auddec1.h
  • AUDDEC1_processAsync() : auddec1.h
  • AUDDEC1_processWait() : auddec1.h
  • AUDDEC_control() : auddec.h
  • AUDDEC_create() : auddec.h
  • AUDDEC_delete() : auddec.h
  • AUDDEC_process() : auddec.h
  • AUDDEC_processAsync() : auddec.h
  • AUDDEC_processWait() : auddec.h
  • AUDENC1_control() : audenc1.h
  • AUDENC1_create() : audenc1.h
  • AUDENC1_delete() : audenc1.h
  • AUDENC1_process() : audenc1.h
  • AUDENC1_processAsync() : audenc1.h
  • AUDENC1_processWait() : audenc1.h
  • AUDENC_control() : audenc.h
  • AUDENC_create() : audenc.h
  • AUDENC_delete() : audenc.h
  • AUDENC_process() : audenc.h
  • AUDENC_processAsync() : audenc.h
  • AUDENC_processWait() : audenc.h

- c -

  • CERuntime_exit() : CERuntime.h
  • CERuntime_init() : CERuntime.h

- e -

  • Engine_add() : Engine.h
  • Engine_addAlg() : Engine.h
  • Engine_close() : Engine.h
  • Engine_fwriteTrace() : Engine.h
  • Engine_getAlgInfo() : Engine.h
  • Engine_getCpuLoad() : Engine.h
  • Engine_getLastError() : Engine.h
  • Engine_getName() : Engine.h
  • Engine_getNumAlgs() : Engine.h
  • Engine_getServer() : Engine.h
  • Engine_getUsedMem() : Engine.h
  • Engine_open() : Engine.h
  • Engine_remove() : Engine.h
  • Engine_removeAlg() : Engine.h
  • Engine_setTrace() : Engine.h

- i -

  • IMGDEC1_control() : imgdec1.h
  • IMGDEC1_create() : imgdec1.h
  • IMGDEC1_delete() : imgdec1.h
  • IMGDEC1_process() : imgdec1.h
  • IMGDEC1_processAsync() : imgdec1.h
  • IMGDEC1_processWait() : imgdec1.h
  • IMGDEC_control() : imgdec.h
  • IMGDEC_create() : imgdec.h
  • IMGDEC_delete() : imgdec.h
  • IMGDEC_process() : imgdec.h
  • IMGDEC_processAsync() : imgdec.h
  • IMGDEC_processWait() : imgdec.h
  • IMGENC1_control() : imgenc1.h
  • IMGENC1_create() : imgenc1.h
  • IMGENC1_delete() : imgenc1.h
  • IMGENC1_process() : imgenc1.h
  • IMGENC1_processAsync() : imgenc1.h
  • IMGENC1_processWait() : imgenc1.h
  • IMGENC_control() : imgenc.h
  • IMGENC_create() : imgenc.h
  • IMGENC_delete() : imgenc.h
  • IMGENC_process() : imgenc.h
  • IMGENC_processAsync() : imgenc.h
  • IMGENC_processWait() : imgenc.h

- s -

  • Server_connectTrace() : Server.h
  • Server_disconnectTrace() : Server.h
  • Server_fwriteTrace() : Server.h
  • Server_getCpuLoad() : Server.h
  • Server_getMemStat() : Server.h
  • Server_getNumMemSegs() : Server.h
  • Server_redefineHeap() : Server.h
  • Server_restoreHeap() : Server.h
  • Server_setTrace() : Server.h
  • SPHDEC1_control() : sphdec1.h
  • SPHDEC1_create() : sphdec1.h
  • SPHDEC1_delete() : sphdec1.h
  • SPHDEC1_process() : sphdec1.h
  • SPHDEC1_processAsync() : sphdec1.h
  • SPHDEC1_processWait() : sphdec1.h
  • SPHDEC_control() : sphdec.h
  • SPHDEC_create() : sphdec.h
  • SPHDEC_delete() : sphdec.h
  • SPHDEC_process() : sphdec.h
  • SPHDEC_processAsync() : sphdec.h
  • SPHDEC_processWait() : sphdec.h
  • SPHENC1_control() : sphenc1.h
  • SPHENC1_create() : sphenc1.h
  • SPHENC1_delete() : sphenc1.h
  • SPHENC1_process() : sphenc1.h
  • SPHENC1_processAsync() : sphenc1.h
  • SPHENC1_processWait() : sphenc1.h
  • SPHENC_control() : sphenc.h
  • SPHENC_create() : sphenc.h
  • SPHENC_delete() : sphenc.h
  • SPHENC_process() : sphenc.h
  • SPHENC_processAsync() : sphenc.h
  • SPHENC_processWait() : sphenc.h

- t -

  • ti_sdo_ce_osal_Memory_alloc() : Memory.h
  • ti_sdo_ce_osal_Memory_cacheInv() : Memory.h
  • ti_sdo_ce_osal_Memory_cacheWb() : Memory.h
  • ti_sdo_ce_osal_Memory_cacheWbInv() : Memory.h
  • ti_sdo_ce_osal_Memory_cacheWbInvAll() : Memory.h
  • ti_sdo_ce_osal_Memory_contigAlloc() : Memory.h
  • ti_sdo_ce_osal_Memory_contigFree() : Memory.h
  • ti_sdo_ce_osal_Memory_free() : Memory.h
  • ti_sdo_ce_osal_Memory_getBufferPhysicalAddress() : Memory.h
  • ti_sdo_ce_osal_Memory_getBufferVirtualAddress() : Memory.h

- u -

  • UNIVERSAL_control() : universal.h
  • UNIVERSAL_create() : universal.h
  • UNIVERSAL_delete() : universal.h
  • UNIVERSAL_process() : universal.h
  • UNIVERSAL_processAsync() : universal.h
  • UNIVERSAL_processWait() : universal.h

- v -

  • VIDANALYTICS_control() : vidanalytics.h
  • VIDANALYTICS_create() : vidanalytics.h
  • VIDANALYTICS_delete() : vidanalytics.h
  • VIDANALYTICS_process() : vidanalytics.h
  • VIDANALYTICS_processAsync() : vidanalytics.h
  • VIDANALYTICS_processWait() : vidanalytics.h
  • VIDDEC1_control() : viddec1.h
  • VIDDEC1_create() : viddec1.h
  • VIDDEC1_delete() : viddec1.h
  • VIDDEC1_process() : viddec1.h
  • VIDDEC1_processAsync() : viddec1.h
  • VIDDEC1_processWait() : viddec1.h
  • VIDDEC2_control() : viddec2.h
  • VIDDEC2_create() : viddec2.h
  • VIDDEC2_delete() : viddec2.h
  • VIDDEC2_process() : viddec2.h
  • VIDDEC2_processAsync() : viddec2.h
  • VIDDEC2_processWait() : viddec2.h
  • VIDDEC2BACK_control() : split/viddec2.h
  • VIDDEC2BACK_create() : split/viddec2.h
  • VIDDEC2BACK_delete() : split/viddec2.h
  • VIDDEC2BACK_process() : split/viddec2.h
  • VIDDEC2FRONT_control() : split/viddec2.h
  • VIDDEC2FRONT_create() : split/viddec2.h
  • VIDDEC2FRONT_delete() : split/viddec2.h
  • VIDDEC2FRONT_process() : split/viddec2.h
  • VIDDEC3_control() : viddec3.h
  • VIDDEC3_create() : viddec3.h
  • VIDDEC3_delete() : viddec3.h
  • VIDDEC3_process() : viddec3.h
  • VIDDEC_control() : viddec.h
  • VIDDEC_create() : viddec.h
  • VIDDEC_delete() : viddec.h
  • VIDDEC_process() : viddec.h
  • VIDDEC_processAsync() : viddec.h
  • VIDDEC_processWait() : viddec.h
  • VIDENC1_control() : videnc1.h
  • VIDENC1_create() : videnc1.h
  • VIDENC1_delete() : videnc1.h
  • VIDENC1_process() : videnc1.h
  • VIDENC1_processAsync() : videnc1.h
  • VIDENC1_processWait() : videnc1.h
  • VIDENC2_control() : videnc2.h
  • VIDENC2_create() : videnc2.h
  • VIDENC2_delete() : videnc2.h
  • VIDENC2_process() : videnc2.h
  • VIDENC2_processAsync() : videnc2.h
  • VIDENC2_processWait() : videnc2.h
  • VIDENC_control() : videnc.h
  • VIDENC_create() : videnc.h
  • VIDENC_delete() : videnc.h
  • VIDENC_process() : videnc.h
  • VIDENC_processAsync() : videnc.h
  • VIDENC_processWait() : videnc.h
  • VIDTRANSCODE_control() : vidtranscode.h
  • VIDTRANSCODE_create() : vidtranscode.h
  • VIDTRANSCODE_delete() : vidtranscode.h
  • VIDTRANSCODE_process() : vidtranscode.h
  • VIDTRANSCODE_processAsync() : vidtranscode.h
  • VIDTRANSCODE_processWait() : vidtranscode.h
  • VISA_allocMsg() : visa.h
  • VISA_call() : visa.h
  • VISA_callAsync() : visa.h
  • VISA_create() : visa.h
  • VISA_create2() : visa.h
  • VISA_delete() : visa.h
  • VISA_enter() : visa.h
  • VISA_exit() : visa.h
  • VISA_freeMsg() : visa.h
  • VISA_getAlgFxns() : visa.h
  • VISA_getAlgHandle() : visa.h
  • VISA_getAlgMemRecs() : visa.h
  • VISA_getAlgNumRecs() : visa.h
  • VISA_getAlgorithmHandle() : visa.h
  • VISA_getCodecClassConfig() : visa.h
  • VISA_getContext() : visa.h
  • VISA_getMaxMsgSize() : visa.h
  • VISA_isLocal() : visa.h
  • VISA_setContext() : visa.h
  • VISA_wait() : visa.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • s
  • t
  • u
  • v
  • x

- a -

  • AUDDEC1_Cmd : auddec1.h
  • AUDDEC1_DynamicParams : auddec1.h
  • AUDDEC1_Handle : auddec1.h
  • AUDDEC1_InArgs : auddec1.h
  • AUDDEC1_OutArgs : auddec1.h
  • AUDDEC1_Params : auddec1.h
  • AUDDEC1_Status : auddec1.h
  • AUDDEC_Cmd : auddec.h
  • AUDDEC_DynamicParams : auddec.h
  • AUDDEC_Handle : auddec.h
  • AUDDEC_InArgs : auddec.h
  • AUDDEC_OutArgs : auddec.h
  • AUDDEC_Params : auddec.h
  • AUDDEC_Status : auddec.h
  • AUDENC1_Cmd : audenc1.h
  • AUDENC1_DynamicParams : audenc1.h
  • AUDENC1_Handle : audenc1.h
  • AUDENC1_InArgs : audenc1.h
  • AUDENC1_OutArgs : audenc1.h
  • AUDENC1_Params : audenc1.h
  • AUDENC1_Status : audenc1.h
  • AUDENC_Cmd : audenc.h
  • AUDENC_DynamicParams : audenc.h
  • AUDENC_Handle : audenc.h
  • AUDENC_InArgs : audenc.h
  • AUDENC_OutArgs : audenc.h
  • AUDENC_Params : audenc.h
  • AUDENC_Status : audenc.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • s
  • t
  • u
  • v
  • x

- e -

  • Engine_AlgInfo : Engine.h
  • Engine_Attrs : Engine.h
  • Engine_DllAlgDesc : Engine.h
  • Engine_DllAlgParams : Engine.h
  • Engine_Error : Engine.h
  • Engine_GetAlgDescFxn : Engine.h
  • Engine_Handle : Engine.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • s
  • t
  • u
  • v
  • x

- i -

  • IALG_Cmd : ialg.h
  • IALG_Fxns : ialg.h
  • IALG_Handle : ialg.h
  • IALG_MemAttrs : ialg.h
  • IALG_MemRec : ialg.h
  • IALG_MemSpace : ialg.h
  • IALG_Obj : ialg.h
  • IALG_Params : ialg.h
  • IALG_Status : ialg.h
  • IAUDDEC1_Cmd : iauddec1.h
  • IAUDDEC1_DynamicParams : iauddec1.h
  • IAUDDEC1_Fxns : iauddec1.h
  • IAUDDEC1_Handle : iauddec1.h
  • IAUDDEC1_InArgs : iauddec1.h
  • IAUDDEC1_Obj : iauddec1.h
  • IAUDDEC1_OutArgs : iauddec1.h
  • IAUDDEC1_Params : iauddec1.h
  • IAUDDEC1_Status : iauddec1.h
  • IAUDDEC_Cmd : iauddec.h
  • IAUDDEC_DynamicParams : iauddec.h
  • IAUDDEC_Fxns : iauddec.h
  • IAUDDEC_Handle : iauddec.h
  • IAUDDEC_InArgs : iauddec.h
  • IAUDDEC_Obj : iauddec.h
  • IAUDDEC_OutArgs : iauddec.h
  • IAUDDEC_Params : iauddec.h
  • IAUDDEC_Status : iauddec.h
  • IAUDENC1_Cmd : iaudenc1.h
  • IAUDENC1_DynamicParams : iaudenc1.h
  • IAUDENC1_Fxns : iaudenc1.h
  • IAUDENC1_Handle : iaudenc1.h
  • IAUDENC1_InArgs : iaudenc1.h
  • IAUDENC1_Obj : iaudenc1.h
  • IAUDENC1_OutArgs : iaudenc1.h
  • IAUDENC1_Params : iaudenc1.h
  • IAUDENC1_Status : iaudenc1.h
  • IAUDENC_Cmd : iaudenc.h
  • IAUDENC_DynamicParams : iaudenc.h
  • IAUDENC_Fxns : iaudenc.h
  • IAUDENC_Handle : iaudenc.h
  • IAUDENC_InArgs : iaudenc.h
  • IAUDENC_Obj : iaudenc.h
  • IAUDENC_OutArgs : iaudenc.h
  • IAUDENC_Params : iaudenc.h
  • IAUDENC_Status : iaudenc.h
  • IIMGDEC1_Cmd : iimgdec1.h
  • IIMGDEC1_CodecClassConfig : imgdec1.h
  • IIMGDEC1_DynamicParams : iimgdec1.h
  • IIMGDEC1_Fxns : iimgdec1.h
  • IIMGDEC1_Handle : iimgdec1.h
  • IIMGDEC1_InArgs : iimgdec1.h
  • IIMGDEC1_Obj : iimgdec1.h
  • IIMGDEC1_OutArgs : iimgdec1.h
  • IIMGDEC1_Params : iimgdec1.h
  • IIMGDEC1_Status : iimgdec1.h
  • IIMGDEC_Cmd : iimgdec.h
  • IIMGDEC_CodecClassConfig : imgdec.h
  • IIMGDEC_DynamicParams : iimgdec.h
  • IIMGDEC_Fxns : iimgdec.h
  • IIMGDEC_Handle : iimgdec.h
  • IIMGDEC_InArgs : iimgdec.h
  • IIMGDEC_Obj : iimgdec.h
  • IIMGDEC_OutArgs : iimgdec.h
  • IIMGDEC_Params : iimgdec.h
  • IIMGDEC_Status : iimgdec.h
  • IIMGENC1_Cmd : iimgenc1.h
  • IIMGENC1_CodecClassConfig : imgenc1.h
  • IIMGENC1_DynamicParams : iimgenc1.h
  • IIMGENC1_Fxns : iimgenc1.h
  • IIMGENC1_Handle : iimgenc1.h
  • IIMGENC1_InArgs : iimgenc1.h
  • IIMGENC1_Obj : iimgenc1.h
  • IIMGENC1_OutArgs : iimgenc1.h
  • IIMGENC1_Params : iimgenc1.h
  • IIMGENC1_Status : iimgenc1.h
  • IIMGENC_Cmd : iimgenc.h
  • IIMGENC_CodecClassConfig : imgenc.h
  • IIMGENC_DynamicParams : iimgenc.h
  • IIMGENC_Fxns : iimgenc.h
  • IIMGENC_Handle : iimgenc.h
  • IIMGENC_InArgs : iimgenc.h
  • IIMGENC_Obj : iimgenc.h
  • IIMGENC_OutArgs : iimgenc.h
  • IIMGENC_Params : iimgenc.h
  • IIMGENC_Status : iimgenc.h
  • IMGDEC1_Cmd : imgdec1.h
  • IMGDEC1_DynamicParams : imgdec1.h
  • IMGDEC1_Handle : imgdec1.h
  • IMGDEC1_InArgs : imgdec1.h
  • IMGDEC1_OutArgs : imgdec1.h
  • IMGDEC1_Params : imgdec1.h
  • IMGDEC1_Status : imgdec1.h
  • IMGDEC_Cmd : imgdec.h
  • IMGDEC_DynamicParams : imgdec.h
  • IMGDEC_Handle : imgdec.h
  • IMGDEC_InArgs : imgdec.h
  • IMGDEC_OutArgs : imgdec.h
  • IMGDEC_Params : imgdec.h
  • IMGDEC_Status : imgdec.h
  • IMGENC1_Cmd : imgenc1.h
  • IMGENC1_DynamicParams : imgenc1.h
  • IMGENC1_Handle : imgenc1.h
  • IMGENC1_InArgs : imgenc1.h
  • IMGENC1_OutArgs : imgenc1.h
  • IMGENC1_Params : imgenc1.h
  • IMGENC1_Status : imgenc1.h
  • IMGENC_Cmd : imgenc.h
  • IMGENC_DynamicParams : imgenc.h
  • IMGENC_Handle : imgenc.h
  • IMGENC_InArgs : imgenc.h
  • IMGENC_OutArgs : imgenc.h
  • IMGENC_Params : imgenc.h
  • IMGENC_Status : imgenc.h
  • ISPHDEC1_Cmd : isphdec1.h
  • ISPHDEC1_DynamicParams : isphdec1.h
  • ISPHDEC1_Fxns : isphdec1.h
  • ISPHDEC1_Handle : isphdec1.h
  • ISPHDEC1_InArgs : isphdec1.h
  • ISPHDEC1_Obj : isphdec1.h
  • ISPHDEC1_OutArgs : isphdec1.h
  • ISPHDEC1_Params : isphdec1.h
  • ISPHDEC1_Status : isphdec1.h
  • ISPHDEC_Cmd : isphdec.h
  • ISPHDEC_DynamicParams : isphdec.h
  • ISPHDEC_Fxns : isphdec.h
  • ISPHDEC_Handle : isphdec.h
  • ISPHDEC_InArgs : isphdec.h
  • ISPHDEC_Obj : isphdec.h
  • ISPHDEC_OutArgs : isphdec.h
  • ISPHDEC_Params : isphdec.h
  • ISPHDEC_Status : isphdec.h
  • ISPHENC1_Cmd : isphenc1.h
  • ISPHENC1_DynamicParams : isphenc1.h
  • ISPHENC1_Fxns : isphenc1.h
  • ISPHENC1_Handle : isphenc1.h
  • ISPHENC1_InArgs : isphenc1.h
  • ISPHENC1_Obj : isphenc1.h
  • ISPHENC1_OutArgs : isphenc1.h
  • ISPHENC1_Params : isphenc1.h
  • ISPHENC1_Status : isphenc1.h
  • ISPHENC_Cmd : isphenc.h
  • ISPHENC_DynamicParams : isphenc.h
  • ISPHENC_Fxns : isphenc.h
  • ISPHENC_Handle : isphenc.h
  • ISPHENC_InArgs : isphenc.h
  • ISPHENC_Obj : isphenc.h
  • ISPHENC_OutArgs : isphenc.h
  • ISPHENC_Params : isphenc.h
  • ISPHENC_Status : isphenc.h
  • IUNIVERSAL_Cmd : iuniversal.h
  • IUNIVERSAL_DynamicParams : iuniversal.h
  • IUNIVERSAL_Fxns : iuniversal.h
  • IUNIVERSAL_Handle : iuniversal.h
  • IUNIVERSAL_InArgs : iuniversal.h
  • IUNIVERSAL_Obj : iuniversal.h
  • IUNIVERSAL_OutArgs : iuniversal.h
  • IUNIVERSAL_Params : iuniversal.h
  • IUNIVERSAL_Status : iuniversal.h
  • IVIDANALYTICS_Cmd : ividanalytics.h
  • IVIDANALYTICS_DynamicParams : ividanalytics.h
  • IVIDANALYTICS_Fxns : ividanalytics.h
  • IVIDANALYTICS_Grid : ividanalytics.h
  • IVIDANALYTICS_Handle : ividanalytics.h
  • IVIDANALYTICS_InArgs : ividanalytics.h
  • IVIDANALYTICS_Obj : ividanalytics.h
  • IVIDANALYTICS_OutArgs : ividanalytics.h
  • IVIDANALYTICS_Params : ividanalytics.h
  • IVIDANALYTICS_Rule : ividanalytics.h
  • IVIDANALYTICS_Status : ividanalytics.h
  • IVIDDEC1_Cmd : ividdec1.h
  • IVIDDEC1_CodecClassConfig : viddec1.h
  • IVIDDEC1_DynamicParams : ividdec1.h
  • IVIDDEC1_Fxns : ividdec1.h
  • IVIDDEC1_Handle : ividdec1.h
  • IVIDDEC1_InArgs : ividdec1.h
  • IVIDDEC1_Obj : ividdec1.h
  • IVIDDEC1_OutArgs : ividdec1.h
  • IVIDDEC1_Params : ividdec1.h
  • IVIDDEC1_Status : ividdec1.h
  • IVIDDEC2_Cmd : ividdec2.h
  • IVIDDEC2_CodecClassConfig : viddec2.h
  • IVIDDEC2_DynamicParams : ividdec2.h
  • IVIDDEC2_Fxns : ividdec2.h
  • IVIDDEC2_Handle : ividdec2.h
  • IVIDDEC2_InArgs : ividdec2.h
  • IVIDDEC2_Obj : ividdec2.h
  • IVIDDEC2_OutArgs : ividdec2.h
  • IVIDDEC2_Params : ividdec2.h
  • IVIDDEC2_Status : ividdec2.h
  • IVIDDEC2BACK_CodecClassConfig : split/viddec2.h
  • IVIDDEC2BACK_Fxns : split/ividdec2.h
  • IVIDDEC2BACK_Handle : split/ividdec2.h
  • IVIDDEC2BACK_Obj : split/ividdec2.h
  • IVIDDEC2FRONT_Fxns : split/ividdec2.h
  • IVIDDEC2FRONT_Handle : split/ividdec2.h
  • IVIDDEC2FRONT_Obj : split/ividdec2.h
  • IVIDDEC2FRONT_OutArgs : split/ividdec2.h
  • IVIDDEC2FRONT_Status : split/ividdec2.h
  • IVIDDEC3_Cmd : ividdec3.h
  • IVIDDEC3_CodecClassConfig : viddec3.h
  • IVIDDEC3_DynamicParams : ividdec3.h
  • IVIDDEC3_Fxns : ividdec3.h
  • IVIDDEC3_Handle : ividdec3.h
  • IVIDDEC3_InArgs : ividdec3.h
  • IVIDDEC3_Obj : ividdec3.h
  • IVIDDEC3_OutArgs : ividdec3.h
  • IVIDDEC3_Params : ividdec3.h
  • IVIDDEC3_Status : ividdec3.h
  • IVIDDEC_Cmd : ividdec.h
  • IVIDDEC_CodecClassConfig : viddec.h
  • IVIDDEC_DynamicParams : ividdec.h
  • IVIDDEC_Fxns : ividdec.h
  • IVIDDEC_Handle : ividdec.h
  • IVIDDEC_InArgs : ividdec.h
  • IVIDDEC_Obj : ividdec.h
  • IVIDDEC_OutArgs : ividdec.h
  • IVIDDEC_Params : ividdec.h
  • IVIDDEC_Status : ividdec.h
  • IVIDENC1_Cmd : ividenc1.h
  • IVIDENC1_CodecClassConfig : videnc1.h
  • IVIDENC1_DynamicParams : ividenc1.h
  • IVIDENC1_Fxns : ividenc1.h
  • IVIDENC1_Handle : ividenc1.h
  • IVIDENC1_InArgs : ividenc1.h
  • IVIDENC1_MbData : ividenc1.h
  • IVIDENC1_Obj : ividenc1.h
  • IVIDENC1_OutArgs : ividenc1.h
  • IVIDENC1_Params : ividenc1.h
  • IVIDENC1_Status : ividenc1.h
  • IVIDENC2_Cmd : ividenc2.h
  • IVIDENC2_CodecClassConfig : videnc2.h
  • IVIDENC2_DynamicParams : ividenc2.h
  • IVIDENC2_Fxns : ividenc2.h
  • IVIDENC2_Handle : ividenc2.h
  • IVIDENC2_InArgs : ividenc2.h
  • IVIDENC2_Obj : ividenc2.h
  • IVIDENC2_OutArgs : ividenc2.h
  • IVIDENC2_Params : ividenc2.h
  • IVIDENC2_Status : ividenc2.h
  • IVIDENC_Cmd : ividenc.h
  • IVIDENC_CodecClassConfig : videnc.h
  • IVIDENC_DynamicParams : ividenc.h
  • IVIDENC_Fxns : ividenc.h
  • IVIDENC_Handle : ividenc.h
  • IVIDENC_InArgs : ividenc.h
  • IVIDENC_Obj : ividenc.h
  • IVIDENC_OutArgs : ividenc.h
  • IVIDENC_Params : ividenc.h
  • IVIDENC_Status : ividenc.h
  • IVIDEO1_BufDesc : ivideo.h
  • IVIDEO1_BufDescIn : ivideo.h
  • IVIDEO2_BufDesc : ivideo.h
  • IVIDEO_BufDesc : ivideo.h
  • IVIDTRANSCODE_Cmd : ividtranscode.h
  • IVIDTRANSCODE_DynamicParams : ividtranscode.h
  • IVIDTRANSCODE_Fxns : ividtranscode.h
  • IVIDTRANSCODE_Handle : ividtranscode.h
  • IVIDTRANSCODE_InArgs : ividtranscode.h
  • IVIDTRANSCODE_Obj : ividtranscode.h
  • IVIDTRANSCODE_OutArgs : ividtranscode.h
  • IVIDTRANSCODE_Params : ividtranscode.h
  • IVIDTRANSCODE_Status : ividtranscode.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • s
  • t
  • u
  • v
  • x

- s -

  • Server_Handle : Server.h
  • Server_MemStat : Server.h
  • Server_Status : Server.h
  • SPHDEC1_Cmd : sphdec1.h
  • SPHDEC1_DynamicParams : sphdec1.h
  • SPHDEC1_Handle : sphdec1.h
  • SPHDEC1_InArgs : sphdec1.h
  • SPHDEC1_OutArgs : sphdec1.h
  • SPHDEC1_Params : sphdec1.h
  • SPHDEC1_Status : sphdec1.h
  • SPHDEC_Cmd : sphdec.h
  • SPHDEC_DynamicParams : sphdec.h
  • SPHDEC_Handle : sphdec.h
  • SPHDEC_InArgs : sphdec.h
  • SPHDEC_OutArgs : sphdec.h
  • SPHDEC_Params : sphdec.h
  • SPHDEC_Status : sphdec.h
  • SPHENC1_Cmd : sphenc1.h
  • SPHENC1_DynamicParams : sphenc1.h
  • SPHENC1_Handle : sphenc1.h
  • SPHENC1_InArgs : sphenc1.h
  • SPHENC1_OutArgs : sphenc1.h
  • SPHENC1_Params : sphenc1.h
  • SPHENC1_Status : sphenc1.h
  • SPHENC_Cmd : sphenc.h
  • SPHENC_DynamicParams : sphenc.h
  • SPHENC_Handle : sphenc.h
  • SPHENC_InArgs : sphenc.h
  • SPHENC_OutArgs : sphenc.h
  • SPHENC_Params : sphenc.h
  • SPHENC_Status : sphenc.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • s
  • t
  • u
  • v
  • x

- t -

  • ti_sdo_ce_osal_Memory_AllocParams : Memory.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • s
  • t
  • u
  • v
  • x

- u -

  • UNIVERSAL_Cmd : universal.h
  • UNIVERSAL_DynamicParams : universal.h
  • UNIVERSAL_Handle : universal.h
  • UNIVERSAL_InArgs : universal.h
  • UNIVERSAL_OutArgs : universal.h
  • UNIVERSAL_Params : universal.h
  • UNIVERSAL_Status : universal.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • s
  • t
  • u
  • v
  • x

- v -

  • VIDANALYTICS_Cmd : vidanalytics.h
  • VIDANALYTICS_DynamicParams : vidanalytics.h
  • VIDANALYTICS_Handle : vidanalytics.h
  • VIDANALYTICS_InArgs : vidanalytics.h
  • VIDANALYTICS_OutArgs : vidanalytics.h
  • VIDANALYTICS_Params : vidanalytics.h
  • VIDANALYTICS_Status : vidanalytics.h
  • VIDDEC1_Cmd : viddec1.h
  • VIDDEC1_DynamicParams : viddec1.h
  • VIDDEC1_Handle : viddec1.h
  • VIDDEC1_InArgs : viddec1.h
  • VIDDEC1_OutArgs : viddec1.h
  • VIDDEC1_Params : viddec1.h
  • VIDDEC1_Status : viddec1.h
  • VIDDEC2_Cmd : viddec2.h
  • VIDDEC2_DynamicParams : viddec2.h
  • VIDDEC2_Handle : viddec2.h
  • VIDDEC2_InArgs : viddec2.h
  • VIDDEC2_OutArgs : viddec2.h
  • VIDDEC2_Params : viddec2.h
  • VIDDEC2_Status : viddec2.h
  • VIDDEC2BACK_Handle : split/viddec2.h
  • VIDDEC2FRONT_Handle : split/viddec2.h
  • VIDDEC2FRONT_OutArgs : split/viddec2.h
  • VIDDEC2FRONT_Status : split/viddec2.h
  • VIDDEC3_Cmd : viddec3.h
  • VIDDEC3_DynamicParams : viddec3.h
  • VIDDEC3_Handle : viddec3.h
  • VIDDEC3_InArgs : viddec3.h
  • VIDDEC3_OutArgs : viddec3.h
  • VIDDEC3_Params : viddec3.h
  • VIDDEC3_Status : viddec3.h
  • VIDDEC_Cmd : viddec.h
  • VIDDEC_DynamicParams : viddec.h
  • VIDDEC_Handle : viddec.h
  • VIDDEC_InArgs : viddec.h
  • VIDDEC_OutArgs : viddec.h
  • VIDDEC_Params : viddec.h
  • VIDDEC_Status : viddec.h
  • VIDENC1_Cmd : videnc1.h
  • VIDENC1_DynamicParams : videnc1.h
  • VIDENC1_Handle : videnc1.h
  • VIDENC1_InArgs : videnc1.h
  • VIDENC1_OutArgs : videnc1.h
  • VIDENC1_Params : videnc1.h
  • VIDENC1_Status : videnc1.h
  • VIDENC2_Cmd : videnc2.h
  • VIDENC2_DynamicParams : videnc2.h
  • VIDENC2_Handle : videnc2.h
  • VIDENC2_InArgs : videnc2.h
  • VIDENC2_OutArgs : videnc2.h
  • VIDENC2_Params : videnc2.h
  • VIDENC2_Status : videnc2.h
  • VIDENC_Cmd : videnc.h
  • VIDENC_DynamicParams : videnc.h
  • VIDENC_Handle : videnc.h
  • VIDENC_InArgs : videnc.h
  • VIDENC_OutArgs : videnc.h
  • VIDENC_Params : videnc.h
  • VIDENC_Status : videnc.h
  • VIDTRANSCODE_Cmd : vidtranscode.h
  • VIDTRANSCODE_DynamicParams : vidtranscode.h
  • VIDTRANSCODE_Handle : vidtranscode.h
  • VIDTRANSCODE_InArgs : vidtranscode.h
  • VIDTRANSCODE_OutArgs : vidtranscode.h
  • VIDTRANSCODE_Params : vidtranscode.h
  • VIDTRANSCODE_Status : vidtranscode.h
  • VISA_Handle : visa.h
  • VISA_Msg : visa.h
  • VISA_MsgHeader : visa.h
  • VISA_Status : visa.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • a
  • e
  • i
  • s
  • t
  • u
  • v
  • x

- x -

  • XDAS_Bool : xdas.h
  • XDAS_Int16 : xdas.h
  • XDAS_Int32 : xdas.h
  • XDAS_Int8 : xdas.h
  • XDAS_UInt16 : xdas.h
  • XDAS_UInt32 : xdas.h
  • XDAS_UInt8 : xdas.h
  • XDAS_Void : xdas.h
  • XDM1_AlgBufInfo : xdm.h
  • XDM1_BufDesc : xdm.h
  • XDM1_SingleBufDesc : xdm.h
  • XDM2_BufDesc : xdm.h
  • XDM2_SingleBufDesc : xdm.h
  • XDM_AlgBufInfo : xdm.h
  • XDM_BufDesc : xdm.h
  • XDM_Context : xdm.h
  • XDM_ContextInfo : xdm.h
  • XDM_DataSyncDesc : xdm.h
  • XDM_DataSyncGetBufferFxn : xdm.h
  • XDM_DataSyncGetFxn : xdm.h
  • XDM_DataSyncHandle : xdm.h
  • XDM_DataSyncPutBufferFxn : xdm.h
  • XDM_DataSyncPutFxn : xdm.h
  • XDM_Date : xdm.h
  • XDM_Point : xdm.h
  • XDM_Rect : xdm.h
  • XDM_SingleBufDesc : xdm.h


Codec Engine Application Programming Interface (API): Data Fields

  • File List
  • Globals
  • All
  • Functions
  • Variables
  • Typedefs
  • Enumerations
  • Enumerator
  • Defines
  • Engine_ATTRS : Engine.h
  • ti_sdo_ce_osal_Memory_DEFAULTPARAMS : Memory.h


Codec Engine Application Programming Interface (API): Graph Legend

Graph Legend

This page explains how to interpret the graphs that are generated by doxygen.

Consider the following example:

/*! Invisible class because of truncation */
class Invisible { };

/*! Truncated class, inheritance relation is hidden */
class Truncated : public Invisible { };

/* Class not documented with doxygen comments */
class Undocumented { };

/*! Class that is inherited using public inheritance */
class PublicBase : public Truncated { };

/*! A template class */
template<class T> class Templ { };

/*! Class that is inherited using protected inheritance */
class ProtectedBase { };

/*! Class that is inherited using private inheritance */
class PrivateBase { };

/*! Class that is used by the Inherited class */
class Used { };

/*! Super class that inherits a number of other classes */
class Inherited : public PublicBase,
                  protected ProtectedBase,
                  private PrivateBase,
                  public Undocumented,
                  public Templ<int>
{
  private:
    Used *m_usedClass;
};

This will result in the following graph:

The boxes in the above graph have the following meaning:

  • A filled gray box represents the struct or class for which the graph is generated.
  • A box with a black border denotes a documented struct or class.
  • A box with a grey border denotes an undocumented struct or class.
  • A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.

The arrows have the following meaning:

  • A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • A dark green arrow is used for protected inheritance.
  • A dark red arrow is used for private inheritance.
  • A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
  • A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance.


Codec Engine Application Programming Interface (API): ialg.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais

ialg.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_IALG_
00047 #define ti_xdais_IALG_
00048
00049 #ifdef __cplusplus
00050 extern "C" {
00051 #endif
00052
00055
00056 /*---------------------------*/
00057 /*    TYPES AND CONSTANTS    */
00058 /*---------------------------*/
00059
00060 #define IALG_DEFMEMRECS 4
00061 #define IALG_OBJMEMREC  0
00062 #define IALG_SYSCMD     256
00064 #define IALG_EOK        0
00065 #define IALG_EFAIL      -1
00067 #define IALG_CUSTOMFAILBASE  -2048
00071 #define IALG_CUSTOMFAILEND -256
00079 typedef enum IALG_MemAttrs {
00080     IALG_SCRATCH,
00081     IALG_PERSIST,
00082     IALG_WRITEONCE
00083 } IALG_MemAttrs;
00084
00085 #define IALG_MPROG  0x0008
00086 #define IALG_MXTRN  0x0010
00091 /*
00092  *  ======== IALG_MemSpace ========
00093  */
00094 typedef enum IALG_MemSpace {
00095     IALG_EPROG =
00096         IALG_MPROG | IALG_MXTRN,
00097
00098     IALG_IPROG =
00099         IALG_MPROG,
00100
00101     IALG_ESDATA =
00102         IALG_MXTRN + 0,
00103
00104     IALG_EXTERNAL =
00105         IALG_MXTRN + 1,
00106
00107     IALG_DARAM0 = 0,
00108     IALG_DARAM1 = 1,
00110     IALG_SARAM  = 2,
00111     IALG_SARAM0 = 2,
00112     IALG_SARAM1 = 3,
00114     IALG_DARAM2 = 4,
00115     IALG_SARAM2 = 5
00116 } IALG_MemSpace;
00117
00118 /*
00119  *  ======== IALG_isProg ========
00120  */
00121 #define IALG_isProg(s) (        \
00122     (((int)(s)) & IALG_MPROG)   \
00123 )
00124
00125 /*
00126  *  ======== IALG_isOffChip ========
00127  */
00128 #define IALG_isOffChip(s) (     \
00129     (((int)(s)) & IALG_MXTRN)   \
00130 )
00131
00132
00136 typedef struct IALG_MemRec {
00137     Uns             size;
00138     Int             alignment;
00139     IALG_MemSpace   space;
00140     IALG_MemAttrs   attrs;
00141     Void            *base;
00142 } IALG_MemRec;
00143
00144
00153 typedef struct IALG_Obj {
00154     struct IALG_Fxns *fxns;
00155 } IALG_Obj;
00156
00157
00161 typedef struct IALG_Obj *IALG_Handle;
00162
00163
00170 typedef struct IALG_Params {
00171     Int size;
00172 } IALG_Params;
00173
00174
00181 typedef struct IALG_Status {
00182     Int size;
00183 } IALG_Status;
00184
00185
00193 typedef unsigned int IALG_Cmd;
00194
00195
00200 /*
00201  *      algAlloc()        - apps call this to query the algorithm about
00202  *                          its memory requirements. Must be non-NULL.
00203  *      algControl()      - algorithm specific control operations.  May be
00204  *                          NULL; NULL => no operations supported.
00205  *      algDeactivate()   - notification that current instance is about to
00206  *                          be "deactivated".  May be NULL; NULL => do nothing.
00207  *      algFree()         - query algorithm for memory to free when removing
00208  *                          an instance.  Must be non-NULL.
00209  *      algInit()         - apps call this to allow the algorithm to
00210  *                          initialize memory requested via algAlloc().  Must
00211  *                          be non-NULL.
00212  *      algMoved()        - apps call this whenever an algorithms object or
00213  *                          any pointer parameters are moved in real-time.
00214  *                          May be NULL; NULL => object can not be moved.
00215  *      algNumAlloc()     - query algorithm for number of memory requests.
00216  *                          May be NULL; NULL => number of mem recs is less
00217  *                          then #IALG_DEFMEMRECS.
00218  */
00219 typedef struct IALG_Fxns {
00224     Void    *implementationId;
00225
00275     Void    (*algActivate)(IALG_Handle handle);
00276
00355     Int     (*algAlloc)(const IALG_Params *params,
00356         struct IALG_Fxns **parentFxns, IALG_MemRec *memTab);
00357
00398     Int     (*algControl)(IALG_Handle handle, IALG_Cmd cmd,
00399         IALG_Status *status);
00400
00454     Void    (*algDeactivate)(IALG_Handle handle);
00455
00496     Int     (*algFree)(IALG_Handle handle, IALG_MemRec *memTab);
00497
00671     Int     (*algInit)(IALG_Handle handle, const IALG_MemRec *memTab,
00672         IALG_Handle parent, const IALG_Params *params);
00673
00694     Void    (*algMoved)(IALG_Handle handle, const IALG_MemRec *memTab,
00695         IALG_Handle parent, const IALG_Params *params);
00696
00753     Int     (*algNumAlloc)(Void);
00754 } IALG_Fxns;
00755
00758 #ifdef __cplusplus
00759 }
00760 #endif
00761
00762 #endif  /* ti_xdais_IALG_ */
00763 /*
00764  *  @(#) ti.xdais; 1, 2.0, 1,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00765  */
00766


Codec Engine Application Programming Interface (API): iauddec1.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iauddec1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IAUDDEC1_
00048 #define ti_xdais_dm_IAUDDEC1_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053 #include "iaudio.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059
00062
00063 #define IAUDDEC1_EOK      XDM_EOK
00064 #define IAUDDEC1_EFAIL    XDM_EFAIL
00065 #define IAUDDEC1_EUNSUPPORTED XDM_EUNSUPPORTED
00071 typedef struct IAUDDEC1_Obj {
00072     struct IAUDDEC1_Fxns *fxns;
00073 } IAUDDEC1_Obj;
00074
00075
00079 typedef struct IAUDDEC1_Obj  *IAUDDEC1_Handle;
00080
00081
00088 typedef struct IAUDDEC1_Params {
00089     XDAS_Int32 size;
00090     XDAS_Int32 outputPCMWidth;
00091     XDAS_Int32 pcmFormat;
00095     XDAS_Int32 dataEndianness;
00099 } IAUDDEC1_Params;
00100
00101
00116 typedef struct IAUDDEC1_DynamicParams {
00117     XDAS_Int32 size;
00118     XDAS_Int32 downSampleSbrFlag;
00123 } IAUDDEC1_DynamicParams;
00124
00125
00134 typedef struct IAUDDEC1_InArgs {
00135     XDAS_Int32 size;
00136     XDAS_Int32 numBytes;
00139     XDAS_Int32 desiredChannelMode;
00143     XDAS_Int32 lfeFlag;
00149 } IAUDDEC1_InArgs;
00150
00151
00159 typedef struct IAUDDEC1_Status {
00160     XDAS_Int32 size;
00161     XDAS_Int32 extendedError;
00162     XDM1_SingleBufDesc data;
00178     XDAS_Int32 validFlag;
00201     XDAS_Int32 lfeFlag;
00209     XDAS_Int32 bitRate;
00210     XDAS_Int32 sampleRate;
00215     XDAS_Int32 channelMode;
00219     XDAS_Int32 pcmFormat;
00223     XDAS_Int32 numSamples;
00224     XDAS_Int32 outputBitsPerSample;
00229     XDM_AlgBufInfo  bufInfo;
00233     XDAS_Int32 dualMonoMode;
00238 } IAUDDEC1_Status;
00239
00240
00249 typedef struct IAUDDEC1_OutArgs {
00250     XDAS_Int32 size;
00251     XDAS_Int32 extendedError;
00252     XDAS_Int32 bytesConsumed;
00255     XDAS_Int32 numSamples;
00256     XDAS_Int32 channelMode;
00260     XDAS_Int32 lfeFlag;
00268     XDAS_Int32 dualMonoMode;
00273     XDAS_Int32 sampleRate;
00278 } IAUDDEC1_OutArgs;
00279
00280
00291 typedef  IALG_Cmd IAUDDEC1_Cmd;
00292
00293
00297 typedef struct IAUDDEC1_Fxns{
00298     IALG_Fxns   ialg;
00369     XDAS_Int32   (*process)(IAUDDEC1_Handle handle, XDM1_BufDesc *inBufs,
00370         XDM1_BufDesc *outBufs, IAUDDEC1_InArgs *inArgs,
00371         IAUDDEC1_OutArgs *outArgs);
00372
00373
00409     XDAS_Int32   (*control)(IAUDDEC1_Handle handle, IAUDDEC1_Cmd id,
00410         IAUDDEC1_DynamicParams *params, IAUDDEC1_Status *status);
00411
00412 } IAUDDEC1_Fxns;
00413
00414
00417 #ifdef __cplusplus
00418 }
00419 #endif
00420
00421 #endif
00422 /*
00423  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:42; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00424  */
00425


Codec Engine Application Programming Interface (API): iauddec.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iauddec.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00050 #ifndef ti_xdais_dm_IAUDDEC_
00051 #define ti_xdais_dm_IAUDDEC_
00052
00053 #include <ti/xdais/ialg.h>
00054 #include <ti/xdais/xdas.h>
00055
00056 /*
00057  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00058  * define XDM_INCLUDE_DOT9_SUPPORT
00059  */
00060 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00061 #define XDM_INCLUDE_DOT9_SUPPORT
00062 #endif
00063 #include "xdm.h"
00064 #include "iaudio.h"
00065
00066 #ifdef __cplusplus
00067 extern "C" {
00068 #endif
00069
00072
00073 #define IAUDDEC_CID      "ti.xdais.dm.IAUDDEC"
00075 #define IAUDDEC_ERUNTIME  XDM_ERUNTIME
00076 #define IAUDDEC_EOK       XDM_EOK
00077 #define IAUDDEC_EFAIL     XDM_EFAIL
00083 typedef struct IAUDDEC_Obj {
00084     struct IAUDDEC_Fxns *fxns;
00085 } IAUDDEC_Obj;
00086
00087
00091 typedef struct IAUDDEC_Obj  *IAUDDEC_Handle;
00092
00093
00103 typedef struct IAUDDEC_Params {
00104     XDAS_Int32 size;
00105     XDAS_Int32 maxSampleRate;
00110     XDAS_Int32 maxBitrate;
00115     XDAS_Int32 maxNoOfCh;
00118     XDAS_Int32 dataEndianness;
00122 } IAUDDEC_Params;
00123
00124
00139 typedef struct IAUDDEC_DynamicParams {
00140     XDAS_Int32 size;
00141     XDAS_Int32 outputFormat;
00144 } IAUDDEC_DynamicParams;
00145
00146
00155 typedef struct IAUDDEC_InArgs {
00156     XDAS_Int32 size;
00157     XDAS_Int32 numBytes;
00160 } IAUDDEC_InArgs;
00161
00162
00170 typedef struct IAUDDEC_Status {
00171     XDAS_Int32 size;
00172     XDAS_Int32 extendedError;
00173     XDAS_Int32 bitRate;
00174     XDAS_Int32 sampleRate;
00179     XDAS_Int32 numChannels;
00182     XDAS_Int32 numLFEChannels;
00185     XDAS_Int32 outputFormat;
00188     XDAS_Int32 autoPosition;
00194     XDAS_Int32 fastFwdLen;
00197     XDAS_Int32 frameLen;
00200     XDAS_Int32 outputBitsPerSample;
00205     XDM_AlgBufInfo  bufInfo;
00208 } IAUDDEC_Status;
00209
00210
00219 typedef struct IAUDDEC_OutArgs {
00220     XDAS_Int32 size;
00221     XDAS_Int32 extendedError;
00222     XDAS_Int32 bytesConsumed;
00225 } IAUDDEC_OutArgs;
00226
00227
00238 typedef  IALG_Cmd IAUDDEC_Cmd;
00239
00240
00244 typedef struct IAUDDEC_Fxns{
00245     IALG_Fxns   ialg;
00290     XDAS_Int32   (*process)(IAUDDEC_Handle handle, XDM_BufDesc *inBufs,
00291         XDM_BufDesc *outBufs, IAUDDEC_InArgs *inArgs,
00292         IAUDDEC_OutArgs *outArgs);
00293
00319     XDAS_Int32   (*control)(IAUDDEC_Handle handle, IAUDDEC_Cmd id,
00320         IAUDDEC_DynamicParams *params, IAUDDEC_Status *status);
00321 } IAUDDEC_Fxns;
00322
00323
00326 #ifdef __cplusplus
00327 }
00328 #endif
00329
00330 #endif
00331 /*
00332  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:42; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00333  */
00334


Codec Engine Application Programming Interface (API): iaudenc1.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iaudenc1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IAUDENC1_
00048 #define ti_xdais_dm_IAUDENC1_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053 #include "iaudio.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059
00062
00063 #define IAUDENC1_EOK      XDM_EOK
00064 #define IAUDENC1_EFAIL    XDM_EFAIL
00065 #define IAUDENC1_EUNSUPPORTED XDM_EUNSUPPORTED
00071 typedef struct IAUDENC1_Obj {
00072     struct IAUDENC1_Fxns *fxns;
00073 } IAUDENC1_Obj;
00074
00075
00079 typedef struct IAUDENC1_Obj  *IAUDENC1_Handle;
00080
00081
00088 typedef struct IAUDENC1_Params {
00089     XDAS_Int32 size;
00090     XDAS_Int32 sampleRate;
00098     XDAS_Int32 bitRate;
00103     XDAS_Int32 channelMode;
00108     XDAS_Int32 dataEndianness;
00112     XDAS_Int32 encMode;
00117     XDAS_Int32 inputFormat;
00121     XDAS_Int32 inputBitsPerSample;
00127     XDAS_Int32 maxBitRate;
00131     XDAS_Int32 dualMonoMode;
00138     XDAS_Int32 crcFlag;
00145     XDAS_Int32 ancFlag;
00157     XDAS_Int32 lfeFlag;
00163 } IAUDENC1_Params;
00164
00165
00180 typedef struct IAUDENC1_DynamicParams {
00181     XDAS_Int32 size;
00182     XDAS_Int32 bitRate;
00187     XDAS_Int32 sampleRate;
00195     XDAS_Int32 channelMode;
00200     XDAS_Int32 lfeFlag;
00206     XDAS_Int32 dualMonoMode;
00213     XDAS_Int32 inputBitsPerSample;
00219 } IAUDENC1_DynamicParams;
00220
00221
00230 typedef struct IAUDENC1_InArgs {
00231     XDAS_Int32 size;
00232     XDAS_Int32 numInSamples;
00236     XDM1_SingleBufDesc ancData;
00243 } IAUDENC1_InArgs;
00244
00245
00253 typedef struct IAUDENC1_Status {
00254     XDAS_Int32 size;
00255     XDAS_Int32 extendedError;
00256     XDM1_SingleBufDesc data;
00272     XDM_AlgBufInfo bufInfo;
00276     XDAS_Int32 validFlag;
00282     XDAS_Int32 lfeFlag;
00288     XDAS_Int32 bitRate;
00293     XDAS_Int32 sampleRate;
00301     XDAS_Int32 channelMode;
00307     XDAS_Int32 encMode;
00312 } IAUDENC1_Status;
00313
00314
00323 typedef struct IAUDENC1_OutArgs {
00324     XDAS_Int32 size;
00325     XDAS_Int32 extendedError;
00326     XDAS_Int32 bytesGenerated;
00329     XDAS_Int32 numZeroesPadded;
00336     XDAS_Int32 numInSamples;
00339 } IAUDENC1_OutArgs;
00340
00341
00352 typedef  IALG_Cmd IAUDENC1_Cmd;
00353
00354
00358 typedef struct IAUDENC1_Fxns{
00359     IALG_Fxns   ialg;
00430     XDAS_Int32  (*process)(IAUDENC1_Handle handle, XDM1_BufDesc *inBufs,
00431         XDM1_BufDesc *outBufs, IAUDENC1_InArgs *inArgs,
00432         IAUDENC1_OutArgs *outArgs);
00433
00434
00470     XDAS_Int32  (*control)(IAUDENC1_Handle handle, IAUDENC1_Cmd id,
00471         IAUDENC1_DynamicParams *params, IAUDENC1_Status *status);
00472
00473 } IAUDENC1_Fxns;
00474
00475
00478 #ifdef __cplusplus
00479 }
00480 #endif
00481
00482 #endif
00483 /*
00484  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:42; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00485  */
00486


Codec Engine Application Programming Interface (API): iaudenc.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iaudenc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00050 #ifndef ti_xdais_dm_IAUDENC_
00051 #define ti_xdais_dm_IAUDENC_
00052
00053 #include <ti/xdais/ialg.h>
00054 #include <ti/xdais/xdas.h>
00055
00056 /*
00057  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00058  * define XDM_INCLUDE_DOT9_SUPPORT
00059  */
00060 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00061 #define XDM_INCLUDE_DOT9_SUPPORT
00062 #endif
00063 #include "xdm.h"
00064 #include "iaudio.h"
00065
00066 #ifdef __cplusplus
00067 extern "C" {
00068 #endif
00069
00072
00073 #define IAUDENC_CID      "ti.xdais.dm.IAUDENC"
00075 #define IAUDENC_ERUNTIME  XDM_ERUNTIME
00076 #define IAUDENC_EOK       XDM_EOK
00077 #define IAUDENC_EFAIL     XDM_EFAIL
00083 typedef struct IAUDENC_Obj {
00084     struct IAUDENC_Fxns *fxns;
00085 } IAUDENC_Obj;
00086
00087
00091 typedef struct IAUDENC_Obj  *IAUDENC_Handle;
00092
00093
00103 typedef struct IAUDENC_Params {
00104     XDAS_Int32 size;
00105     XDAS_Int32 encodingPreset;
00108     XDAS_Int32 maxSampleRate;
00113     XDAS_Int32 maxBitrate;
00118     XDAS_Int32 maxNoOfCh;
00121     XDAS_Int32 dataEndianness;
00124 } IAUDENC_Params;
00125
00126
00141 typedef struct IAUDENC_DynamicParams {
00142     XDAS_Int32 size;
00143     XDAS_Int32 inputFormat;
00146     XDAS_Int32 bitRate;
00147     XDAS_Int32 sampleRate;
00152     XDAS_Int32 numChannels;
00155     XDAS_Int32 numLFEChannels;
00158     XDAS_Int32 inputBitsPerSample;
00162 } IAUDENC_DynamicParams;
00163
00164
00173 typedef struct IAUDENC_InArgs {
00174     XDAS_Int32 size;
00175 } IAUDENC_InArgs;
00176
00177
00185 typedef struct IAUDENC_Status {
00186     XDAS_Int32 size;
00187     XDAS_Int32 extendedError;
00188     XDAS_Int32 frameLen;
00191     XDM_AlgBufInfo bufInfo;
00195 } IAUDENC_Status;
00196
00197
00206 typedef struct IAUDENC_OutArgs {
00207     XDAS_Int32 size;
00208     XDAS_Int32 extendedError;
00209     XDAS_Int32 bytesGenerated;
00212 } IAUDENC_OutArgs;
00213
00214
00225 typedef  IALG_Cmd IAUDENC_Cmd;
00226
00227
00231 typedef struct IAUDENC_Fxns{
00232     IALG_Fxns   ialg;
00277     XDAS_Int32  (*process)(IAUDENC_Handle handle, XDM_BufDesc *inBufs,
00278         XDM_BufDesc *outBufs, IAUDENC_InArgs *inArgs,
00279         IAUDENC_OutArgs *outArgs);
00280
00281
00303     XDAS_Int32  (*control)(IAUDENC_Handle handle, IAUDENC_Cmd id,
00304         IAUDENC_DynamicParams *params, IAUDENC_Status *status);
00305
00306 } IAUDENC_Fxns;
00307
00308
00311 #ifdef __cplusplus
00312 }
00313 #endif
00314
00315 #endif
00316 /*
00317  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:42; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00318  */
00319


Codec Engine Application Programming Interface (API): iaudio.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iaudio.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_IAUDIO_
00047 #define ti_xdais_dm_IAUDIO_
00048
00049 #ifdef __cplusplus
00050 extern "C" {
00051 #endif
00052
00055
00056 #ifdef XDM_INCLUDE_DOT9_SUPPORT
00057
00065 typedef enum {
00066     IAUDIO_MONO = 0,
00067     IAUDIO_STEREO = 1,
00068     IAUDIO_THREE_ZERO = 2,
00069     IAUDIO_FIVE_ZERO = 3,
00070     IAUDIO_FIVE_ONE = 4,
00071     IAUDIO_SEVEN_ONE = 5
00072 } IAUDIO_ChannelId;
00073 #endif
00074
00075
00088 typedef enum
00089 {
00090     IAUDIO_1_0 = 0,
00091     IAUDIO_2_0 = 1,
00092     IAUDIO_11_0 = 2,
00096     IAUDIO_3_0 = 3,
00097     IAUDIO_2_1 = 4,
00098     IAUDIO_3_1 = 5,
00099     IAUDIO_2_2 = 6,
00100     IAUDIO_3_2 = 7,
00101     IAUDIO_2_3 = 8,
00102     IAUDIO_3_3 = 9,
00103     IAUDIO_3_4 =10
00105 } IAUDIO_ChannelMode;
00106
00107
00121 typedef enum
00122 {
00123     IAUDIO_DUALMONO_LR = 0,
00124     IAUDIO_DUALMONO_LEFT = 1,
00125     IAUDIO_DUALMONO_RIGHT = 2,
00126     IAUDIO_DUALMONO_LR_MIX = 3
00127 } IAUDIO_DualMonoMode;
00128
00129
00137 typedef enum {
00143     IAUDIO_BLOCK = 0,
00144
00150     IAUDIO_INTERLEAVED = 1
00151 } IAUDIO_PcmFormat;
00152
00153
00161 typedef enum
00162 {
00163     IAUDIO_CBR = 0,
00164     IAUDIO_VBR = 1
00165 } IAUDIO_EncMode;
00166
00167
00170 #ifdef __cplusplus
00171 }
00172 #endif
00173
00174 #endif
00175 /*
00176  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:42; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00177  */
00178


Codec Engine Application Programming Interface (API): iimgdec1.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iimgdec1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IIMGDEC1_
00048 #define ti_xdais_dm_IIMGDEC1_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058
00061
00062 #define IIMGDEC1_EOK      XDM_EOK
00063 #define IIMGDEC1_EFAIL    XDM_EFAIL
00064 #define IIMGDEC1_EUNSUPPORTED XDM_EUNSUPPORTED
00070 typedef struct IIMGDEC1_Obj {
00071     struct IIMGDEC1_Fxns *fxns;
00072 } IIMGDEC1_Obj;
00073
00074
00078 typedef struct IIMGDEC1_Obj  *IIMGDEC1_Handle;
00079
00080
00087 typedef struct IIMGDEC1_Params {
00088     XDAS_Int32 size;
00089     XDAS_Int32 maxHeight;
00090     XDAS_Int32 maxWidth;
00091     XDAS_Int32 maxScans;
00092     XDAS_Int32 dataEndianness;
00096     XDAS_Int32 forceChromaFormat;
00100 } IIMGDEC1_Params;
00101
00102
00117 typedef struct IIMGDEC1_DynamicParams {
00118     XDAS_Int32 size;
00119     XDAS_Int32 numAU;
00123     XDAS_Int32 decodeHeader;
00127     XDAS_Int32 displayWidth;
00131 } IIMGDEC1_DynamicParams;
00132
00133
00142 typedef struct IIMGDEC1_InArgs {
00143     XDAS_Int32 size;
00144     XDAS_Int32 numBytes;
00147 } IIMGDEC1_InArgs;
00148
00149
00157 typedef struct IIMGDEC1_Status {
00158     XDAS_Int32 size;
00159     XDAS_Int32 extendedError;
00160     XDM1_SingleBufDesc data;
00176     XDAS_Int32 outputHeight;
00177     XDAS_Int32 outputWidth;
00180     XDAS_Int32 imageWidth;
00181     XDAS_Int32 outputChromaFormat;
00185     XDAS_Int32 totalAU;
00186     XDAS_Int32 totalScan;
00187     XDM_AlgBufInfo  bufInfo;
00191 } IIMGDEC1_Status;
00192
00193
00202 typedef struct IIMGDEC1_OutArgs {
00203     XDAS_Int32 size;
00204     XDAS_Int32 extendedError;
00205     XDAS_Int32 bytesConsumed;
00208     XDAS_Int32 currentAU;
00209     XDAS_Int32 currentScan;
00210 } IIMGDEC1_OutArgs;
00211
00212
00223 typedef  IALG_Cmd IIMGDEC1_Cmd;
00224
00225
00229 typedef struct IIMGDEC1_Fxns{
00230     IALG_Fxns   ialg;
00301     XDAS_Int32 (*process)(IIMGDEC1_Handle handle, XDM1_BufDesc *inBufs,
00302         XDM1_BufDesc *outBufs, IIMGDEC1_InArgs *inArgs,
00303         IIMGDEC1_OutArgs *outArgs);
00304
00305
00341     XDAS_Int32 (*control)(IIMGDEC1_Handle handle, IIMGDEC1_Cmd id,
00342         IIMGDEC1_DynamicParams *params, IIMGDEC1_Status *status);
00343
00344 }IIMGDEC1_Fxns;
00345
00346
00349 #ifdef __cplusplus
00350 }
00351 #endif
00352
00353 #endif  /* ti_xdais_dm_IIMGDEC1_ */
00354 /*
00355  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00356  */
00357


Codec Engine Application Programming Interface (API): iimgdec.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iimgdec.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00050 #ifndef ti_xdais_dm_IIMGDEC_
00051 #define ti_xdais_dm_IIMGDEC_
00052
00053 #include <ti/xdais/ialg.h>
00054 #include <ti/xdais/xdas.h>
00055
00056 /*
00057  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00058  * define XDM_INCLUDE_DOT9_SUPPORT
00059  */
00060 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00061 #define XDM_INCLUDE_DOT9_SUPPORT
00062 #endif
00063 #include "xdm.h"
00064
00065 #ifdef __cplusplus
00066 extern "C" {
00067 #endif
00068
00071
00072 #define IIMGDEC_CID      "ti.xdais.dm.IIMGDEC"
00074 #define IIMGDEC_ERUNTIME  XDM_ERUNTIME
00075 #define IIMGDEC_EOK       XDM_EOK
00076 #define IIMGDEC_EFAIL     XDM_EFAIL
00082 typedef struct IIMGDEC_Obj {
00083     struct IIMGDEC_Fxns *fxns;
00084 } IIMGDEC_Obj;
00085
00086
00090 typedef struct IIMGDEC_Obj  *IIMGDEC_Handle;
00091
00092
00102 typedef struct IIMGDEC_Params {
00103     XDAS_Int32 size;
00104     XDAS_Int32 maxHeight;
00105     XDAS_Int32 maxWidth;
00106     XDAS_Int32 maxScans;
00107     XDAS_Int32 dataEndianness;
00111     XDAS_Int32 forceChromaFormat;
00115 }IIMGDEC_Params;
00116
00117
00132 typedef struct IIMGDEC_DynamicParams {
00133     XDAS_Int32 size;
00134     XDAS_Int32 numAU;
00138     XDAS_Int32 decodeHeader;
00142     XDAS_Int32 displayWidth;
00146 } IIMGDEC_DynamicParams;
00147
00148
00157 typedef struct IIMGDEC_InArgs {
00158     XDAS_Int32 size;
00159     XDAS_Int32 numBytes;
00162 } IIMGDEC_InArgs;
00163
00164
00172 typedef struct IIMGDEC_Status {
00173     XDAS_Int32 size;
00174     XDAS_Int32 extendedError;
00175     XDAS_Int32 outputHeight;
00176     XDAS_Int32 outputWidth;
00179     XDAS_Int32 imageWidth;
00180     XDAS_Int32 outChromaformat;
00184     XDAS_Int32 totalAU;
00185     XDAS_Int32 totalScan;
00186     XDM_AlgBufInfo  bufInfo;
00190 } IIMGDEC_Status;
00191
00192
00201 typedef struct IIMGDEC_OutArgs {
00202     XDAS_Int32 size;
00203     XDAS_Int32 extendedError;
00204     XDAS_Int32 bytesconsumed;
00207     XDAS_Int32 currentAU;
00208     XDAS_Int32 currentScan;
00209 } IIMGDEC_OutArgs;
00210
00211
00222 typedef  IALG_Cmd IIMGDEC_Cmd;
00223
00224
00228 typedef struct IIMGDEC_Fxns{
00229     IALG_Fxns   ialg;
00274     XDAS_Int32 (*process)(IIMGDEC_Handle handle, XDM_BufDesc *inBufs,
00275             XDM_BufDesc *outBufs, IIMGDEC_InArgs *inArgs,
00276             IIMGDEC_OutArgs *outArgs);
00277
00278
00300     XDAS_Int32 (*control)(IIMGDEC_Handle handle, IIMGDEC_Cmd id,
00301             IIMGDEC_DynamicParams *params, IIMGDEC_Status *status);
00302
00303 }IIMGDEC_Fxns;
00304
00305
00308 #ifdef __cplusplus
00309 }
00310 #endif
00311
00312 #endif
00313 /*
00314  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:42; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00315  */
00316


Codec Engine Application Programming Interface (API): iimgenc1.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iimgenc1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IIMGENC1_
00048 #define ti_xdais_dm_IIMGENC1_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058
00061
00062 #define IIMGENC1_EOK        XDM_EOK
00063 #define IIMGENC1_EFAIL      XDM_EFAIL
00064 #define IIMGENC1_EUNSUPPORTED XDM_EUNSUPPORTED
00070 typedef struct IIMGENC1_Obj {
00071     struct IIMGENC1_Fxns *fxns;
00072 } IIMGENC1_Obj;
00073
00074
00078 typedef struct IIMGENC1_Obj  *IIMGENC1_Handle;
00079
00080
00087 typedef struct IIMGENC1_Params {
00088     XDAS_Int32 size;
00089     XDAS_Int32 maxHeight;
00090     XDAS_Int32 maxWidth;
00091     XDAS_Int32 maxScans;
00092     XDAS_Int32 dataEndianness;
00096     XDAS_Int32 forceChromaFormat;
00100 } IIMGENC1_Params;
00101
00102
00117 typedef struct IIMGENC1_DynamicParams {
00118     XDAS_Int32 size;
00119     XDAS_Int32 numAU;
00123     XDAS_Int32 inputChromaFormat;
00127     XDAS_Int32 inputHeight;
00128     XDAS_Int32 inputWidth;
00129     XDAS_Int32 captureWidth;
00133     XDAS_Int32 generateHeader;
00137     XDAS_Int32 qValue;
00141 } IIMGENC1_DynamicParams;
00142
00143
00152 typedef struct IIMGENC1_InArgs {
00153     XDAS_Int32 size;
00154 } IIMGENC1_InArgs;
00155
00156
00164 typedef struct IIMGENC1_Status {
00165     XDAS_Int32 size;
00166     XDAS_Int32 extendedError;
00167     XDM1_SingleBufDesc data;
00183     XDAS_Int32 totalAU;
00184     XDM_AlgBufInfo bufInfo;
00188 } IIMGENC1_Status;
00189
00190
00199 typedef struct IIMGENC1_OutArgs {
00200     XDAS_Int32 size;
00201     XDAS_Int32 extendedError;
00202     XDAS_Int32 bytesGenerated;
00205     XDAS_Int32 currentAU;
00206 } IIMGENC1_OutArgs;
00207
00208
00219 typedef  IALG_Cmd IIMGENC1_Cmd;
00220
00221
00225 typedef struct IIMGENC1_Fxns{
00226     IALG_Fxns   ialg;
00297     XDAS_Int32  (*process)(IIMGENC1_Handle handle, XDM1_BufDesc *inBufs,
00298         XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs,
00299         IIMGENC1_OutArgs *outArgs);
00300
00301
00337     XDAS_Int32  (*control)(IIMGENC1_Handle handle, IIMGENC1_Cmd id,
00338         IIMGENC1_DynamicParams *params, IIMGENC1_Status *status);
00339
00340 } IIMGENC1_Fxns;
00341
00342
00345 #ifdef __cplusplus
00346 }
00347 #endif
00348
00349 #endif
00350 /*
00351  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00352  */
00353


Codec Engine Application Programming Interface (API): iimgenc.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iimgenc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00050 #ifndef ti_xdais_dm_IIMGENC_
00051 #define ti_xdais_dm_IIMGENC_
00052
00053 #include <ti/xdais/ialg.h>
00054 #include <ti/xdais/xdas.h>
00055
00056 /*
00057  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00058  * define XDM_INCLUDE_DOT9_SUPPORT
00059  */
00060 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00061 #define XDM_INCLUDE_DOT9_SUPPORT
00062 #endif
00063 #include "xdm.h"
00064
00065 #ifdef __cplusplus
00066 extern "C" {
00067 #endif
00068
00071
00072 #define IIMGENC_CID      "ti.xdais.dm.IIMGENC"
00074 #define IIMGENC_ERUNTIME  XDM_ERUNTIME
00075 #define IIMGENC_EOK       XDM_EOK
00076 #define IIMGENC_EFAIL     XDM_EFAIL
00082 typedef struct IIMGENC_Obj {
00083     struct IIMGENC_Fxns *fxns;
00084 } IIMGENC_Obj;
00085
00086
00090 typedef struct IIMGENC_Obj  *IIMGENC_Handle;
00091
00092
00102 typedef struct IIMGENC_Params {
00103     XDAS_Int32 size;
00104     XDAS_Int32 maxHeight;
00105     XDAS_Int32 maxWidth;
00106     XDAS_Int32 maxScans;
00107     XDAS_Int32 dataEndianness;
00111     XDAS_Int32 forceChromaFormat;
00115 }IIMGENC_Params;
00116
00117
00132 typedef struct IIMGENC_DynamicParams {
00133     XDAS_Int32 size;
00134     XDAS_Int32 numAU;
00138     XDAS_Int32 inputChromaFormat;
00142     XDAS_Int32 inputHeight;
00143     XDAS_Int32 inputWidth;
00144     XDAS_Int32 captureWidth;
00148     XDAS_Int32 generateHeader;
00152     XDAS_Int32 qValue;
00156 } IIMGENC_DynamicParams;
00157
00158
00167 typedef struct IIMGENC_InArgs {
00168     XDAS_Int32 size;
00169 } IIMGENC_InArgs;
00170
00171
00179 typedef struct IIMGENC_Status {
00180     XDAS_Int32 size;
00181     XDAS_Int32 extendedError;
00182     XDAS_Int32 totalAU;
00183     XDM_AlgBufInfo bufInfo;
00187 } IIMGENC_Status;
00188
00189
00198 typedef struct IIMGENC_OutArgs {
00199     XDAS_Int32 size;
00200     XDAS_Int32 extendedError;
00201     XDAS_Int32 bytesGenerated;
00204     XDAS_Int32 currentAU;
00205 } IIMGENC_OutArgs;
00206
00207
00218 typedef  IALG_Cmd IIMGENC_Cmd;
00219
00220
00224 typedef struct IIMGENC_Fxns{
00225     IALG_Fxns   ialg;
00270     XDAS_Int32  (*process)(IIMGENC_Handle handle, XDM_BufDesc *inBufs,
00271         XDM_BufDesc *outBufs, IIMGENC_InArgs *inArgs,
00272         IIMGENC_OutArgs *outArgs);
00273
00295     XDAS_Int32  (*control)(IIMGENC_Handle handle, IIMGENC_Cmd id,
00296         IIMGENC_DynamicParams *params, IIMGENC_Status *status);
00297
00298 } IIMGENC_Fxns;
00299
00300
00303 #ifdef __cplusplus
00304 }
00305 #endif
00306
00307 #endif
00308 /*
00309  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00310  */
00311


Codec Engine Application Programming Interface (API): imgdec1.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • image1

imgdec1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== imgdec1.h ========
00035  */
00051 #ifndef ti_sdo_ce_image1_IMGDEC1_
00052 #define ti_sdo_ce_image1_IMGDEC1_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 #include <ti/xdais/dm/xdm.h>
00059 #include <ti/xdais/dm/iimgdec1.h>
00060
00061 #include <ti/sdo/ce/Engine.h>
00062 #include <ti/sdo/ce/visa.h>
00063 #include <ti/sdo/ce/skel.h>
00064
00067
00069 #define IMGDEC1_EOK IIMGDEC1_EOK
00070
00072 #define IMGDEC1_EFAIL IIMGDEC1_EFAIL
00073
00075 #define IMGDEC1_EUNSUPPORTED IIMGDEC1_EUNSUPPORTED
00076
00078 #define IMGDEC1_ETIMEOUT VISA_ETIMEOUT
00079
00081 #define IMGDEC1_FOREVER VISA_FOREVER
00082
00083
00087 typedef VISA_Handle IMGDEC1_Handle;
00088
00089 /* The following are just wrapper typedefs */
00090
00092 typedef struct IIMGDEC1_Params IMGDEC1_Params;
00093
00095 typedef IIMGDEC1_InArgs  IMGDEC1_InArgs;
00096
00098 typedef IIMGDEC1_OutArgs IMGDEC1_OutArgs;
00099
00101 typedef IIMGDEC1_Cmd     IMGDEC1_Cmd;
00102
00104 typedef IIMGDEC1_DynamicParams IMGDEC1_DynamicParams;
00105
00107 typedef IIMGDEC1_Status  IMGDEC1_Status;
00108
00115 extern SKEL_Fxns IMGDEC1_SKEL;
00116
00120 extern IIMGDEC1_Fxns IMGDEC1_STUBS;
00121
00127 typedef struct IIMGDEC1_CodecClassConfig {
00128     Bool manageInBufsCache [ XDM_MAX_IO_BUFFERS ];
00129     Bool manageOutBufsCache[ XDM_MAX_IO_BUFFERS ];
00130 } IIMGDEC1_CodecClassConfig;
00131
00132
00133 /*
00134  *  ======== IMGDEC1_control ========
00135  */
00159 extern Int32 IMGDEC1_control(IMGDEC1_Handle handle, IMGDEC1_Cmd id,
00160     IMGDEC1_DynamicParams *params, IMGDEC1_Status *status);
00161
00162
00163 /*
00164  *  ======== IMGDEC1_create ========
00165  */
00194 extern IMGDEC1_Handle IMGDEC1_create(Engine_Handle e, String name,
00195     IMGDEC1_Params *params);
00196
00197
00198 /*
00199  *  ======== IMGDEC1_delete ========
00200  */
00218 extern Void IMGDEC1_delete(IMGDEC1_Handle handle);
00219
00220
00221 /*
00222  *  ======== IMGDEC1_process ========
00223  */
00262 extern Int32 IMGDEC1_process(IMGDEC1_Handle handle, XDM1_BufDesc *inBufs,
00263     XDM1_BufDesc *outBufs, IMGDEC1_InArgs *inArgs, IMGDEC1_OutArgs *outArgs);
00264
00265
00266 /*
00267  *  ======== IMGDEC1_processAsync ========
00268  */
00305 extern XDAS_Int32 IMGDEC1_processAsync(IMGDEC1_Handle handle,
00306     XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs,
00307     IMGDEC1_InArgs *inArgs, IMGDEC1_OutArgs *outArgs);
00308
00309
00310 /*
00311  *  ======== IMGDEC1_processWait ========
00312  */
00355 extern XDAS_Int32 IMGDEC1_processWait(IMGDEC1_Handle handle,
00356     XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs,
00357     IMGDEC1_InArgs *inArgs, IMGDEC1_OutArgs *outArgs, UInt timeout);
00358
00359
00362 #ifdef __cplusplus
00363 }
00364 #endif
00365
00366 #endif
00367 /*
00368  *  @(#) ti.sdo.ce.image1; 1, 0, 1,274; 2-9-2011 08:56:33; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00369
00370  */
00371


Codec Engine Application Programming Interface (API): imgdec.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • image

imgdec.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== imgdec.h ========
00035  */
00051 #ifndef ti_sdo_ce_image_IMGDEC_
00052 #define ti_sdo_ce_image_IMGDEC_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 /*
00059  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00060  * define XDM_INCLUDE_DOT9_SUPPORT
00061  */
00062 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00063 #define XDM_INCLUDE_DOT9_SUPPORT
00064 #endif
00065 #include <ti/xdais/dm/xdm.h>
00066 #include <ti/xdais/dm/iimgdec.h>
00067
00068 #include <ti/sdo/ce/Engine.h>
00069 #include <ti/sdo/ce/visa.h>
00070 #include <ti/sdo/ce/skel.h>
00071
00074
00075 typedef IIMGDEC_Status IMGDEC_Status;
00077 #define IMGDEC_EOK      IIMGDEC_EOK
00078 #define IMGDEC_EFAIL    IIMGDEC_EFAIL
00079 #define IMGDEC_ERUNTIME IIMGDEC_ERUNTIME
00080 #define IMGDEC_ETIMEOUT VISA_ETIMEOUT
00081 #define IMGDEC_FOREVER  VISA_FOREVER
00086 typedef VISA_Handle IMGDEC_Handle;
00087
00092 typedef struct IIMGDEC_Params IMGDEC_Params;
00093
00097 typedef IIMGDEC_InArgs          IMGDEC_InArgs;
00098
00102 typedef IIMGDEC_OutArgs         IMGDEC_OutArgs;
00103
00107 typedef IIMGDEC_Cmd             IMGDEC_Cmd;
00108
00112 typedef IIMGDEC_DynamicParams   IMGDEC_DynamicParams;
00113
00120 extern SKEL_Fxns IMGDEC_SKEL;
00121
00125 extern IIMGDEC_Fxns IMGDEC_STUBS;
00126
00134 typedef struct IIMGDEC_CodecClassConfig {
00135     Bool manageInBufsCache [ XDM_MAX_IO_BUFFERS ];
00136     Bool manageOutBufsCache[ XDM_MAX_IO_BUFFERS ];
00137 } IIMGDEC_CodecClassConfig;
00138
00139 /*
00140  *  ======== IMGDEC_create ========
00141  */
00170 extern IMGDEC_Handle IMGDEC_create(Engine_Handle e, String name,
00171         IMGDEC_Params *params);
00172
00173
00174 /*
00175  *  ======== IMGDEC_process ========
00176  */
00221 extern Int32 IMGDEC_process(IMGDEC_Handle handle,
00222         XDM_BufDesc *inBufs, XDM_BufDesc *outBufs,
00223         IMGDEC_InArgs *inArgs, IMGDEC_OutArgs *outArgs);
00224
00225
00226 /*
00227  *  ======== IMGDEC_control ========
00228  */
00256 extern Int32 IMGDEC_control(IMGDEC_Handle handle, IMGDEC_Cmd id,
00257         IMGDEC_DynamicParams *params, IMGDEC_Status *status);
00258
00259
00260 /*
00261  *  ======== IMGDEC_delete ========
00262  */
00280 extern Void IMGDEC_delete(IMGDEC_Handle handle);
00281
00282
00283 /*
00284  *  ======== IMGDEC_processAsync ========
00285  */
00322 extern XDAS_Int32 IMGDEC_processAsync(IMGDEC_Handle handle, XDM_BufDesc *inBufs,
00323     XDM_BufDesc *outBufs, IMGDEC_InArgs *inArgs, IMGDEC_OutArgs *outArgs);
00324
00325
00326 /*
00327  *  ======== IMGDEC_processWait ========
00328  */
00371 extern XDAS_Int32 IMGDEC_processWait(IMGDEC_Handle handle, XDM_BufDesc *inBufs,
00372     XDM_BufDesc *outBufs, IMGDEC_InArgs *inArgs, IMGDEC_OutArgs *outArgs,
00373     UInt timeout);
00374
00375
00378 #ifdef __cplusplus
00379 }
00380 #endif
00381
00382 #endif
00383 /*
00384  *  @(#) ti.sdo.ce.image; 1, 0, 3,350; 2-9-2011 08:56:31; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00385
00386  */
00387


Codec Engine Application Programming Interface (API): imgenc1.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • image1

imgenc1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== imgenc1.h ========
00035  */
00051 #ifndef ti_sdo_ce_image1_IMGENC1_
00052 #define ti_sdo_ce_image1_IMGENC1_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 #include <ti/xdais/dm/xdm.h>
00059 #include <ti/xdais/dm/iimgenc1.h>
00060
00061 #include <ti/sdo/ce/Engine.h>
00062 #include <ti/sdo/ce/visa.h>
00063 #include <ti/sdo/ce/skel.h>
00064
00067
00069 #define IMGENC1_EOK IIMGENC1_EOK
00070
00072 #define IMGENC1_EFAIL IIMGENC1_EFAIL
00073
00075 #define IMGENC1_EUNSUPPORTED IIMGENC1_EUNSUPPORTED
00076
00078 #define IMGENC1_ETIMEOUT VISA_ETIMEOUT
00079
00081 #define IMGENC1_FOREVER VISA_FOREVER
00082
00083
00087 typedef VISA_Handle IMGENC1_Handle;
00088
00089 /* The following are just wrapper typedefs */
00090
00092 typedef struct IIMGENC1_Params IMGENC1_Params;
00093
00095 typedef IIMGENC1_InArgs  IMGENC1_InArgs;
00096
00098 typedef IIMGENC1_OutArgs IMGENC1_OutArgs;
00099
00101 typedef IIMGENC1_Cmd IMGENC1_Cmd;
00102
00104 typedef IIMGENC1_DynamicParams IMGENC1_DynamicParams;
00105
00107 typedef IIMGENC1_Status IMGENC1_Status;
00108
00115 extern SKEL_Fxns IMGENC1_SKEL;
00116
00120 extern IIMGENC1_Fxns IMGENC1_STUBS;
00121
00127 typedef struct IIMGENC1_CodecClassConfig {
00128     Bool manageInBufsCache [ XDM_MAX_IO_BUFFERS ];
00129     Bool manageOutBufsCache[ XDM_MAX_IO_BUFFERS ];
00130 } IIMGENC1_CodecClassConfig;
00131
00132
00133
00134 /*
00135  *  ======== IMGENC1_control ========
00136  */
00160 extern Int32 IMGENC1_control(IMGENC1_Handle handle, IMGENC1_Cmd id,
00161     IMGENC1_DynamicParams *params, IMGENC1_Status *status);
00162
00163
00164 /*
00165  *  ======== IMGENC1_create ========
00166  */
00195 extern IMGENC1_Handle IMGENC1_create(Engine_Handle e, String name,
00196     IMGENC1_Params *params);
00197
00198
00199 /*
00200  *  ======== IMGENC1_delete ========
00201  */
00219 extern Void IMGENC1_delete(IMGENC1_Handle handle);
00220
00221
00222 /*
00223  *  ======== IMGENC1_process ========
00224  */
00263 extern Int32 IMGENC1_process(IMGENC1_Handle handle, XDM1_BufDesc *inBufs,
00264     XDM1_BufDesc *outBufs, IMGENC1_InArgs *inArgs, IMGENC1_OutArgs *outArgs);
00265
00266
00267 /*
00268  *  ======== IMGENC1_processAsync ========
00269  */
00306 extern XDAS_Int32 IMGENC1_processAsync(IMGENC1_Handle handle,
00307     XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs,
00308     IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs);
00309
00310
00311 /*
00312  *  ======== IMGENC1_processWait ========
00313  */
00356 extern XDAS_Int32 IMGENC1_processWait(IMGENC1_Handle handle,
00357     XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs,
00358     IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs, UInt timeout);
00359
00360
00363 #ifdef __cplusplus
00364 }
00365 #endif
00366
00367 #endif
00368 /*
00369  *  @(#) ti.sdo.ce.image1; 1, 0, 1,274; 2-9-2011 08:56:33; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00370
00371  */
00372


Codec Engine Application Programming Interface (API): imgenc.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • image

imgenc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== imgenc.h ========
00035  */
00051 #ifndef ti_sdo_ce_image_IMGENC_
00052 #define ti_sdo_ce_image_IMGENC_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 /*
00059  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00060  * define XDM_INCLUDE_DOT9_SUPPORT
00061  */
00062 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00063 #define XDM_INCLUDE_DOT9_SUPPORT
00064 #endif
00065 #include <ti/xdais/dm/xdm.h>
00066 #include <ti/xdais/dm/iimgenc.h>
00067
00068 #include <ti/sdo/ce/Engine.h>
00069 #include <ti/sdo/ce/visa.h>
00070 #include <ti/sdo/ce/skel.h>
00071
00074
00075 typedef IIMGENC_Status IMGENC_Status;
00077 #define IMGENC_EOK      IIMGENC_EOK
00078 #define IMGENC_EFAIL    IIMGENC_EFAIL
00079 #define IMGENC_ERUNTIME IIMGENC_ERUNTIME
00080 #define IMGENC_ETIMEOUT VISA_ETIMEOUT
00081 #define IMGENC_FOREVER  VISA_FOREVER
00086 typedef VISA_Handle IMGENC_Handle;
00087
00092 typedef struct IIMGENC_Params IMGENC_Params;
00093
00097 typedef IIMGENC_InArgs          IMGENC_InArgs;
00098
00102 typedef IIMGENC_OutArgs         IMGENC_OutArgs;
00103
00107 typedef IIMGENC_Cmd             IMGENC_Cmd;
00108
00112 typedef IIMGENC_DynamicParams   IMGENC_DynamicParams;
00113
00120 extern SKEL_Fxns IMGENC_SKEL;
00121
00125 extern IIMGENC_Fxns IMGENC_STUBS;
00126
00134 typedef struct IIMGENC_CodecClassConfig {
00135     Bool manageInBufsCache [ XDM_MAX_IO_BUFFERS ];
00136     Bool manageOutBufsCache[ XDM_MAX_IO_BUFFERS ];
00137 } IIMGENC_CodecClassConfig;
00138
00139 /*
00140  *  ======== IMGENC_create ========
00141  */
00170 extern IMGENC_Handle IMGENC_create(Engine_Handle e, String name,
00171         IMGENC_Params *params);
00172
00173
00174 /*
00175  *  ======== IMGENC_process ========
00176  */
00221 extern Int32 IMGENC_process(IMGENC_Handle handle,
00222         XDM_BufDesc *inBufs, XDM_BufDesc *outBufs,
00223         IMGENC_InArgs *inArgs, IMGENC_OutArgs *outArgs);
00224
00225
00226 /*
00227  *  ======== IMGENC_control ========
00228  */
00258 extern Int32 IMGENC_control(IMGENC_Handle handle, IMGENC_Cmd id,
00259         IMGENC_DynamicParams *params, IMGENC_Status *status);
00260
00261
00262 /*
00263  *  ======== IMGENC_delete ========
00264  */
00282 extern Void IMGENC_delete(IMGENC_Handle handle);
00283
00284
00285 /*
00286  *  ======== IMGENC_processAsync ========
00287  */
00326 extern XDAS_Int32 IMGENC_processAsync(IMGENC_Handle handle, XDM_BufDesc *inBufs,
00327         XDM_BufDesc *outBufs, IIMGENC_InArgs *inArgs, IIMGENC_OutArgs *outArgs);
00328
00329
00330 /*
00331  *  ======== IMGENC_processWait ========
00332  */
00375 extern XDAS_Int32 IMGENC_processWait(IMGENC_Handle handle, XDM_BufDesc *inBufs,
00376     XDM_BufDesc *outBufs, IIMGENC_InArgs *inArgs, IIMGENC_OutArgs *outArgs,
00377     UInt timeout);
00378
00379
00382 #ifdef __cplusplus
00383 }
00384 #endif
00385
00386 #endif
00387 /*
00388  *  @(#) ti.sdo.ce.image; 1, 0, 3,350; 2-9-2011 08:56:31; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00389
00390  */
00391


Codec Engine Application Programming Interface (API): ispeech1.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_ISPEECH1_
00048 #define ti_xdais_dm_ISPEECH1_
00049
00050 #ifdef __cplusplus
00051 extern "C" {
00052 #endif
00053
00056
00057
00063 typedef enum {
00064     ISPEECH1_NULLTRAFFICMODE_OFF = 0,
00068     ISPEECH1_NULLTRAFFICMODE_ON = 1,
00073     ISPEECH1_NULLTRAFFICMODE_DEFAULT = ISPEECH1_NULLTRAFFICMODE_OFF
00074 } ISPEECH1_NullTrafficMode;
00075
00076
00082 typedef enum {
00083     ISPEECH1_POSTFILTER_OFF = 0,
00084     ISPEECH1_POSTFILTER_ON = 1,
00087     ISPEECH1_POSTFILTER_DEFAULT = ISPEECH1_POSTFILTER_ON
00088 } ISPEECH1_PostFilter;
00089
00090
00091
00095 typedef enum {
00096     ISPEECH1_VADFLAG_OFF = 0,
00097     ISPEECH1_VADFLAG_ON = 1,
00100     ISPEECH1_VADFLAG_DEFAULT = ISPEECH1_VADFLAG_ON
00101 } ISPEECH1_VADFlag;
00102
00106 #ifdef __cplusplus
00107 }
00108 #endif
00109
00110 #endif
00111 /*
00112  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00113  */
00114


Codec Engine Application Programming Interface (API): ispeech1_amr.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_amr.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_AMR_
00047 #define ti_xdais_dm_ISPEECH1_AMR_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00062 typedef enum {
00063     ISPEECH1_AMR_BITRATE_4P75 = 0,
00064     ISPEECH1_AMR_BITRATE_5P15 = 1,
00065     ISPEECH1_AMR_BITRATE_5P9  = 2,
00066     ISPEECH1_AMR_BITRATE_6P7  = 3,
00067     ISPEECH1_AMR_BITRATE_7P4  = 4,
00068     ISPEECH1_AMR_BITRATE_7P95 = 5,
00069     ISPEECH1_AMR_BITRATE_10P2 = 6,
00070     ISPEECH1_AMR_BITRATE_12P2 = 7,
00073     ISPEECH1_AMR_BITRATE_DEFAULT = ISPEECH1_AMR_BITRATE_12P2
00074 } ISPEECH1_AMR_BitRate;
00075
00076
00083 typedef enum {
00084     ISPEECH1_AMR_CODECSELECT_PRIMARY = 0,
00085     ISPEECH1_AMR_CODECSELECT_SECONDARY = 1,
00088     ISPEECH1_AMR_CODECSELECT_DEFAULT = ISPEECH1_AMR_CODECSELECT_PRIMARY
00089 } ISPEECH1_AMR_CodecSelect;
00090
00091
00095 typedef enum {
00096     ISPEECH1_AMR_PACKTYPE_IF1_NOCRC = 0,
00100     ISPEECH1_AMR_PACKTYPE_IF1_WITHCRC = 1,
00104     ISPEECH1_AMR_PACKTYPE_IF2 = 2,
00107     ISPEECH1_AMR_PACKTYPE_MIME = 3,
00112     ISPEECH1_AMR_PACKTYPEFORMAT_DEFAULT = ISPEECH1_AMR_PACKTYPE_IF1_NOCRC
00113 } ISPEECH1_AMR_PackingType;
00114
00115
00119 typedef enum {
00120     ISPEECH1_AMR_VADSELECT_VAD1 = 1,
00121     ISPEECH1_AMR_VADSELECT_VAD2 = 2,
00124     ISPEECH1_AMR_VADSELECT_DEFAULT = ISPEECH1_AMR_VADSELECT_VAD1
00125 } ISPEECH1_AMR_VADSelect;
00126
00127   /* ingroup */
00129
00130 #ifdef __cplusplus
00131 }
00132 #endif
00133
00134 #endif  /* ti_xdais_dm_ISPEECH1_AMR_ */
00135 /*
00136  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00137  */
00138


Codec Engine Application Programming Interface (API): ispeech1_evrc.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_evrc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_EVRC_
00047 #define ti_xdais_dm_ISPEECH1_EVRC_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00062 typedef enum {
00063     ISPEECH1_EVRC_NOISEPREPROC_OFF = 0,
00066     ISPEECH1_EVRC_NOISEPREPROC_ON = 1,
00071     ISPEECH1_EVRC_NOISEPREPROC_DEFAULT = ISPEECH1_EVRC_NOISEPREPROC_ON
00072 } ISPEECH1_EVRC_NoisePreProc;
00073
00074
00078 typedef enum {
00079     ISPEECH1_EVRC_TTYMODE_OFF = 0,
00080     ISPEECH1_EVRC_TTYMODE_45P45BPS = 1,
00081     ISPEECH1_EVRC_TTYMODE_50BPS = 2,
00084     ISPEECH1_EVRC_TTYMODE_DEFAULT = ISPEECH1_EVRC_TTYMODE_OFF
00085 } ISPEECH1_EVRC_TTYMode;
00086
00087
00095 typedef enum {
00096     ISPEECH1_EVRC_MODE_PREMIUM = 0,
00097     ISPEECH1_EVRC_MODE_STANDARD = 1,
00098     ISPEECH1_EVRC_MODE_ECONOMY = 2,
00099     ISPEECH1_EVRC_MODE_CAPACITYSAVE = 3,
00100     ISPEECH1_EVRC_MODE_HALFRATE_MAX = 4,
00103     ISPEECH1_EVRC_MODE_DEFAULT = ISPEECH1_EVRC_MODE_PREMIUM
00104 } ISPEECH1_EVRC_Mode;
00105
00106
00112 typedef enum {
00113     ISPEECH1_EVRC_NULLTRAFFICMODE_OFF = 0,
00117     ISPEECH1_EVRC_NULLTRAFFICMODE_ON = 1,
00122     ISPEECH1_EVRC_NULLTRAFFICMODE_DEFAULT = ISPEECH1_EVRC_NULLTRAFFICMODE_OFF
00123 } ISPEECH1_EVRC_NullTrafficMode;
00124
00127 #ifdef __cplusplus
00128 }
00129 #endif
00130
00131 #endif
00132 /*
00133  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00134  */
00135


Codec Engine Application Programming Interface (API): ispeech1_g722.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_g722.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_G722_
00047 #define ti_xdais_dm_ISPEECH1_G722_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00062 typedef enum {
00063     ISPEECH1_G722_BITRATE_RATE0 = 0,
00064     ISPEECH1_G722_BITRATE_RATE1 = 1,
00065     ISPEECH1_G722_BITRATE_RATE2 = 2,
00066     ISPEECH1_G722_BITRATE_RATE3 = 3,
00069     ISPEECH1_G722_BITRATE_DEFAULT = ISPEECH1_G722_BITRATE_RATE0
00070 } ISPEECH1_G722_BitRate;
00071
00072 typedef enum {
00073     ISPEECH1_G722_CODECSELECT_NONITUMODE = 0,    /* with QMF support */
00074     ISPEECH1_G722_CODECSELECT_ITUMODE    = 1,    /* Subband coding without QMF */   _
00076     ISPEECH1_G722_CODECSELECT_DEFAULT = ISPEECH2_G722_CODECSELECT_NONITUMODE
00077 } ISPEECH1_G722_CodecSelect;
00078
00079
00082 #ifdef __cplusplus
00083 }
00084 #endif
00085
00086 #endif
00087 /*
00088  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00089  */
00090


Codec Engine Application Programming Interface (API): ispeech1_g723.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_g723.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_G723_
00047 #define ti_xdais_dm_ISPEECH1_G723_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00062 typedef enum {
00063     ISPEECH1_G723_BITRATE_5P3 = 0,
00064     ISPEECH1_G723_BITRATE_6P3 = 1,
00067     ISPEECH1_G723_BITRATE_DEFAULT = ISPEECH1_G723_BITRATE_6P3
00068 } ISPEECH1_G723_BitRate;
00069
00070
00074 typedef enum {
00075     ISPEECH1_G723_NOISEPREPROC_OFF = 0,
00076     ISPEECH1_G723_NOISEPREPROC_ON = 1,
00079     ISPEECH1_G723_NOISEPREPROC_DEFAULT = ISPEECH1_G723_NOISEPREPROC_ON
00080 } ISPEECH1_G723_NoisePreProc;
00081
00084 #ifdef __cplusplus
00085 }
00086 #endif
00087
00088 #endif
00089 /*
00090  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00091  */
00092


Codec Engine Application Programming Interface (API): ispeech1_g726.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_g726.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_G726_
00047 #define ti_xdais_dm_ISPEECH1_G726_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00062 typedef enum {
00063     ISPEECH1_G726_BITRATE_16  = 0,
00064     ISPEECH1_G726_BITRATE_24  = 1,
00065     ISPEECH1_G726_BITRATE_32  = 2,
00066     ISPEECH1_G726_BITRATE_40  = 3,
00069     ISPEECH1_G726_BITRATE_DEFAULT = ISPEECH1_G726_BITRATE_40
00070 } ISPEECH1_G726_BitRate;
00071
00072
00076 typedef enum {
00077     ISPEECH1_G726_COMPAND_LINEAR = 0,
00078     ISPEECH1_G726_COMPAND_ALAW = 1,
00079     ISPEECH1_G726_COMPAND_ULAW = 2,
00082     ISPEECH1_G726_COMPAND_DEFAULT = ISPEECH1_G726_COMPAND_LINEAR
00083 } ISPEECH1_G726_CompandingLaw;
00084
00085
00089 typedef enum {
00090     ISPEECH1_G726_PACKTYPE_LINEAR = 0,
00091     ISPEECH1_G726_PACKTYPE_RTPSPECIAL = 1,
00094     ISPEECH1_G726_PACKTYPEFORMAT_DEFAULT = ISPEECH1_G726_PACKTYPE_LINEAR
00095 } ISPEECH1_G726_PackingType;
00096
00099 #ifdef __cplusplus
00100 }
00101 #endif
00102
00103 #endif
00104 /*
00105  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00106  */
00107


Codec Engine Application Programming Interface (API): ispeech1_g7221.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_g7221.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_G7221_
00047 #define ti_xdais_dm_ISPEECH1_G7221_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00062 typedef enum {
00063     ISPEECH1_G7221_BITRATE_24  = 24,
00064     ISPEECH1_G7221_BITRATE_32  = 32,
00065     ISPEECH1_G7221_BITRATE_48  = 48,
00068     ISPEECH1_G7221_BITRATE_DEFAULT = ISPEECH1_G7221_BITRATE_24
00069 } ISPEECH1_G7221_BitRate;
00070
00071
00082 typedef enum {
00083     ISPEECH2_G7221_SAMPLINGRATE_WIDEBAND = 0,
00084     ISPEECH2_G7221_SAMPLINGRATE_SUPEWIDEBAND = 1,
00086     ISPEECH2_G7221_SAMPLINGRATE_DEFAULT = ISPEECH2_G7221_SAMPLINGRATE_WIDEBAND
00087
00088 } ISPEECH2_G7221_SamplingRate;
00089
00092 #ifdef __cplusplus
00093 }
00094 #endif
00095
00096 #endif
00097 /*
00098  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00099  */
00100


Codec Engine Application Programming Interface (API): ispeech1_ilbc.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_ilbc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_ILBC_
00047 #define ti_xdais_dm_ISPEECH1_ILBC_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00064 typedef enum {
00065     ISPEECH1_ILBC_CODECSELECT_20MS = 0,
00066     ISPEECH1_ILBC_CODECSELECT_30MS = 1,
00069     ISPEECH1_ILBC_CODECSELECT_DEFAULT = ISPEECH1_ILBC_CODECSELECT_20MS
00070 } ISPEECH1_ILBC_CodecSelect;
00071
00072
00075 #ifdef __cplusplus
00076 }
00077 #endif
00078
00079 #endif
00080 /*
00081  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00082  */
00083


Codec Engine Application Programming Interface (API): ispeech1_pcm.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_pcm.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_PCM_
00047 #define ti_xdais_dm_ISPEECH1_PCM_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00062 typedef enum {
00063     ISPEECH1_PCM_COMPAND_LINEAR = 0,
00064     ISPEECH1_PCM_COMPAND_ALAW = 1,
00065     ISPEECH1_PCM_COMPAND_ULAW = 2,
00068     ISPEECH1_PCM_COMPAND_DEFAULT = ISPEECH1_PCM_COMPAND_LINEAR
00069 } ISPEECH1_PCM_CompandingLaw;
00070
00071
00074 #ifdef __cplusplus
00075 }
00076 #endif
00077
00078 #endif
00079 /*
00080  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00081  */
00082


Codec Engine Application Programming Interface (API): ispeech1_smv.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_smv.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_SMV_
00047 #define ti_xdais_dm_ISPEECH1_SMV_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00064 typedef enum {
00065     ISPEECH1_SMV_NOISEPREPROC_OFF = 0,
00066     ISPEECH1_SMV_NOISEPREPROC_NSA = 1,
00069     ISPEECH1_SMV_NOISEPREPROC_NSB = 2,
00074     ISPEECH1_SMV_NOISEPREPROC_DEFAULT = ISPEECH1_SMV_NOISEPREPROC_NSA
00075 } ISPEECH1_SMV_NoisePreProc;
00076
00077
00081 typedef enum {
00082     ISPEECH1_SMV_VADSELECT_VADA = 1,
00083     ISPEECH1_SMV_VADSELECT_VADB = 2,
00086     ISPEECH1_SMV_VADSELECT_DEFAULT = ISPEECH1_SMV_VADSELECT_VADA
00087 } ISPEECH1_SMV_VADSelect;
00088
00089
00093 typedef enum {
00094     ISPEECH1_SMV_TTYMODE_OFF = 0,
00095     ISPEECH1_SMV_TTYMODE_45P45BPS = 1,
00098     ISPEECH1_SMV_TTYMODE_50BPS =  2,
00103     ISPEECH1_SMV_TTYMODE_DEFAULT = ISPEECH1_SMV_TTYMODE_OFF
00104 } ISPEECH1_SMV_TTYMode;
00105
00106
00110 typedef enum {
00111     ISPEECH1_SMV_DTMFMODE_OFF = 0,
00112     ISPEECH1_SMV_DTMFMODE_ON = 1,
00115     ISPEECH1_SMV_DTMFMODE_DEFAULT = ISPEECH1_SMV_DTMFMODE_OFF
00116 } ISPEECH1_SMV_DTMFMode;
00117
00118
00123 typedef enum {
00124     ISPEECH1_SMV_DATAMODE_OFF = 0,
00125     ISPEECH1_SMV_DATAMODE_HALFRATE = 1,
00128     ISPEECH1_SMV_DATAMODE_FULLRATE = 1,
00133     ISPEECH1_SMV_DATAMODE_DEFAULT = ISPEECH1_SMV_DATAMODE_OFF
00134 } ISPEECH1_SMV_DataMode;
00135
00136
00140 typedef enum {
00141     ISPEECH1_SMV_MODE_PREMIUM = 0,
00142     ISPEECH1_SMV_MODE_STANDARD = 1,
00143     ISPEECH1_SMV_MODE_ECONOMY = 2,
00144     ISPEECH1_SMV_MODE_CAPACITYSAVE = 3,
00145     ISPEECH1_SMV_MODE_PREMIUM_HALFRATE_MAX = 4,
00148     ISPEECH1_SMV_MODE_STANDARD_HALFRATE_MAX = 5,
00153     ISPEECH1_SMV_MODE_DEFAULT = ISPEECH1_SMV_MODE_PREMIUM
00154 } ISPEECH1_SMV_Mode;
00155
00156
00159 #ifdef __cplusplus
00160 }
00161 #endif
00162
00163 #endif
00164 /*
00165  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00166  */
00167


Codec Engine Application Programming Interface (API): ispeech1_wbamr.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech1_wbamr.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH1_WBAMR_
00047 #define ti_xdais_dm_ISPEECH1_WBAMR_
00048
00049 #include "ispeech1.h"
00050
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054
00057
00058
00062 typedef enum {
00063     ISPEECH1_WBAMR_PACKTYPE_IF1_NOCRC = 0,
00067     ISPEECH1_WBAMR_PACKTYPE_IF1_WITHCRC = 1,
00071     ISPEECH1_WBAMR_PACKTYPE_IF2 = 2,
00074     ISPEECH1_WBAMR_PACKTYPE_MIME = 3,
00079     ISPEECH1_WBAMR_PACKTYPEFORMAT_DEFAULT = ISPEECH1_WBAMR_PACKTYPE_IF1_NOCRC
00080 } ISPEECH1_WBAMR_PackingType;
00081
00082
00086 typedef enum {
00087     ISPEECH1_WBAMR_BITRATE_6P60  = 0,
00088     ISPEECH1_WBAMR_BITRATE_8P85  = 1,
00089     ISPEECH1_WBAMR_BITRATE_12P65 = 2,
00090     ISPEECH1_WBAMR_BITRATE_14P25 = 3,
00091     ISPEECH1_WBAMR_BITRATE_15P85 = 4,
00092     ISPEECH1_WBAMR_BITRATE_18P25 = 5,
00093     ISPEECH1_WBAMR_BITRATE_19P85 = 6,
00094     ISPEECH1_WBAMR_BITRATE_23P05 = 7,
00095     ISPEECH1_WBAMR_BITRATE_23P85 = 8,
00098     ISPEECH1_WBAMR_BITRATE_DEFAULT = ISPEECH1_WBAMR_BITRATE_23P85
00099 } ISPEECH1_WBAMR_BitRate;
00100
00101
00104 #ifdef __cplusplus
00105 }
00106 #endif
00107
00108 #endif
00109 /*
00110  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00111  */
00112


Codec Engine Application Programming Interface (API): ispeech.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ispeech.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_ISPEECH_
00047 #define ti_xdais_dm_ISPEECH_
00048
00049 #ifdef __cplusplus
00050 extern "C" {
00051 #endif
00052
00055
00056
00060 typedef enum {
00061     ISPEECH_VOICED = 0,
00062     ISPEECH_UNVOICED
00063 } ISPEECH_VoiceMode;
00064
00065 typedef enum {
00066     ISPEECH_LINEAR = 0,
00067     ISPEECH_ALAW,
00068     ISPEECH_ULAW
00069 } ISPEECH_CompoundLaw;
00070
00073 #ifdef __cplusplus
00074 }
00075 #endif
00076
00077 #endif
00078 /*
00079  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00080  */
00081


Codec Engine Application Programming Interface (API): isphdec1.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

isphdec1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_ISPHDEC1_
00048 #define ti_xdais_dm_ISPHDEC1_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053 #include "ispeech1.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059
00062
00063 #define ISPHDEC1_EOK       XDM_EOK
00064 #define ISPHDEC1_EFAIL     XDM_EFAIL
00065 #define ISPHDEC1_EUNSUPPORTED XDM_EUNSUPPORTED
00071 typedef struct ISPHDEC1_Obj {
00072     struct ISPHDEC1_Fxns *fxns;
00073 } ISPHDEC1_Obj;
00074
00075
00079 typedef struct ISPHDEC1_Obj  *ISPHDEC1_Handle;
00080
00081
00091 typedef struct ISPHDEC1_Params {
00092     XDAS_Int16 size;
00093     XDAS_Int16 compandingLaw;
00100     XDAS_Int16 packingType;
00108     XDAS_Int16 codecSelection;
00115     XDAS_Int16 bitRate;
00124     XDAS_Int16 reserved;
00125     XDAS_Int8  **tablesPtr;
00128 } ISPHDEC1_Params;
00129
00130
00145 typedef struct ISPHDEC1_DynamicParams {
00146     XDAS_Int16 size;
00147     XDAS_Int16 postFilter;
00152 } ISPHDEC1_DynamicParams;
00153
00154
00162 typedef enum {
00163     ISPHDEC1_FTYPE_SPEECHGOOD = 0,
00166     ISPHDEC1_FTYPE_SIDUPDATE = 1,
00167     ISPHDEC1_FTYPE_NODATA = 2,
00170     ISPHDEC1_FTYPE_SPEECHLOST = 3,
00171     ISPHDEC1_FTYPE_DEGRADED = 4,
00174     ISPHDEC1_FTYPE_BAD = 5,
00175     ISPHDEC1_FTYPE_SIDFIRST = 6,
00176     ISPHDEC1_FTYPE_SIDBAD = 7,
00177     ISPHDEC1_FTYPE_ONSET = 8
00180 } ISPHDEC1_FrameType;
00181
00182
00187 typedef struct ISPHDEC1_InArgs {
00188     XDAS_Int16 size;
00190     XDAS_Int16 frameType;
00194     XDM1_SingleBufDesc data;
00197 } ISPHDEC1_InArgs;
00198
00199
00207 typedef struct ISPHDEC1_Status {
00208     XDAS_Int16 size;
00209     XDAS_Int16 postFilter;
00213     XDAS_Int32 extendedError;
00214     XDM1_SingleBufDesc data;
00235     XDAS_Int16 compandingLaw;
00242     XDAS_Int16 packingType;
00250     XDM_AlgBufInfo  bufInfo;
00254     XDAS_Int16 codecSelection;
00261     XDAS_Int16 bitRate;
00270 } ISPHDEC1_Status;
00271
00272
00281 typedef struct ISPHDEC1_OutArgs {
00282     XDAS_Int16 size;
00283     XDAS_Int16 dataSize;
00284     XDAS_Int32 extendedError;
00285 } ISPHDEC1_OutArgs;
00286
00287
00298 typedef  IALG_Cmd ISPHDEC1_Cmd;
00299
00300
00304 typedef struct ISPHDEC1_Fxns{
00305     IALG_Fxns   ialg;
00382     XDAS_Int32 (*process)(ISPHDEC1_Handle handle,
00383         XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf,
00384         ISPHDEC1_InArgs *inArgs, ISPHDEC1_OutArgs *outArgs);
00385
00386
00422     XDAS_Int32 (*control)(ISPHDEC1_Handle handle, ISPHDEC1_Cmd id,
00423         ISPHDEC1_DynamicParams *params, ISPHDEC1_Status *status);
00424
00425 } ISPHDEC1_Fxns;
00426
00427
00430 #ifdef __cplusplus
00431 }
00432 #endif
00433
00434 #endif
00435 /*
00436  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00437  */
00438


Codec Engine Application Programming Interface (API): isphdec.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

isphdec.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00050 #ifndef ti_xdais_dm_ISPHDEC_
00051 #define ti_xdais_dm_ISPHDEC_
00052
00053 #include <ti/xdais/ialg.h>
00054 #include <ti/xdais/xdas.h>
00055
00056 /*
00057  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00058  * define XDM_INCLUDE_DOT9_SUPPORT
00059  */
00060 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00061 #define XDM_INCLUDE_DOT9_SUPPORT
00062 #endif
00063 #include "xdm.h"
00064 #include "ispeech.h"
00065
00066 #ifdef __cplusplus
00067 extern "C" {
00068 #endif
00069
00072
00073 #define ISPHDEC_CID      "ti.xdais.dm.ISPHDEC"
00075 #define ISPHDEC_ERUNTIME  XDM_ERUNTIME
00076 #define ISPHDEC_EOK       XDM_EOK
00077 #define ISPHDEC_EFAIL     XDM_EFAIL
00083 typedef struct ISPHDEC_Obj {
00084     struct ISPHDEC_Fxns *fxns;
00085 } ISPHDEC_Obj;
00086
00087
00091 typedef struct ISPHDEC_Obj  *ISPHDEC_Handle;
00092
00093
00103 typedef struct ISPHDEC_Params {
00104     XDAS_Int32 size;
00105     XDAS_Int32 dataEnable;
00108     XDAS_Int32 compandingLaw;
00112     XDAS_Int32 packingType;
00116 } ISPHDEC_Params;
00117
00118
00133 typedef struct ISPHDEC_DynamicParams {
00134     XDAS_Int32 size;
00135     XDAS_Int32 postFilter;
00138 } ISPHDEC_DynamicParams;
00139
00140
00149 typedef struct ISPHDEC_InArgs {
00150     XDAS_Int32 size;
00151     XDAS_Int32 frameType;
00152     XDAS_Int32 inBufferSize;
00155     XDAS_Int32 bfiFlag;
00158 } ISPHDEC_InArgs;
00159
00160
00168 typedef struct ISPHDEC_Status {
00169     XDAS_Int32 size;
00170     XDAS_Int32 extendedError;
00171     XDAS_Int32 postFilter;
00174     XDAS_Int32 dataMode;
00175     XDM_AlgBufInfo  bufInfo;
00179 } ISPHDEC_Status;
00180
00181
00190 typedef struct ISPHDEC_OutArgs {
00191     XDAS_Int32 size;
00192     XDAS_Int32 mode;
00195 } ISPHDEC_OutArgs;
00196
00197
00208 typedef  IALG_Cmd ISPHDEC_Cmd;
00209
00210
00214 typedef struct ISPHDEC_Fxns{
00215     IALG_Fxns   ialg;
00270     XDAS_Int32 (*process)(ISPHDEC_Handle handle, XDM_BufDesc *inBufs,
00271             XDM_BufDesc *outBufs, ISPHDEC_InArgs *inArgs,
00272             ISPHDEC_OutArgs *outArgs);
00273
00299     XDAS_Int32 (*control)(ISPHDEC_Handle handle, ISPHDEC_Cmd id,
00300             ISPHDEC_DynamicParams *params, ISPHDEC_Status *status);
00301 } ISPHDEC_Fxns;
00302
00305 #ifdef __cplusplus
00306 }
00307 #endif
00308
00309 #endif
00310 /*
00311  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00312  */
00313


Codec Engine Application Programming Interface (API): isphenc1.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

isphenc1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_ISPHENC1_
00048 #define ti_xdais_dm_ISPHENC1_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053 #include "ispeech1.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059
00062
00063 #define ISPHENC1_EOK       XDM_EOK
00064 #define ISPHENC1_EFAIL     XDM_EFAIL
00065 #define ISPHENC1_EUNSUPPORTED XDM_EUNSUPPORTED
00072 #define ISPHENC1_ENOOUTPUT               1
00073
00078 typedef struct ISPHENC1_Obj {
00079     struct ISPHENC1_Fxns *fxns;
00080 } ISPHENC1_Obj;
00081
00082
00086 typedef struct ISPHENC1_Obj  *ISPHENC1_Handle;
00087
00088
00098 typedef struct ISPHENC1_Params {
00099     XDAS_Int16 size;
00100     XDAS_Int16 frameSize;
00103     XDAS_Int16 compandingLaw;
00110     XDAS_Int16 packingType;
00118     XDAS_Int16 vadSelection;
00126     XDAS_Int16 codecSelection;
00133     XDAS_Int16 bitRate;
00142     XDAS_Int16 reserved;
00143     XDAS_Int8  **tablesPtr;
00155 } ISPHENC1_Params;
00156
00157
00170 typedef struct ISPHENC1_DynamicParams {
00171     XDAS_Int16 size;
00172     XDAS_Int16 frameSize;
00175     XDAS_Int16 bitRate;
00183     XDAS_Int16 mode;
00190     XDAS_Int16 vadFlag;
00193     XDAS_Int16 noiseSuppressionMode;
00202     XDAS_Int16 ttyTddMode;
00209     XDAS_Int16 dtmfMode;
00215     XDAS_Int16 dataTransmit;
00221     XDAS_Int16 reserved;
00222 } ISPHENC1_DynamicParams;
00223
00224
00231 typedef struct ISPHENC1_InArgs {
00232     XDAS_Int16 size;
00233     XDAS_Int16 nullTrafficChannel;
00249     XDM1_SingleBufDesc data;
00252 } ISPHENC1_InArgs;
00253
00254
00260 typedef struct ISPHENC1_Status {
00261     XDAS_Int16 size;
00262     XDAS_Int16 frameSize;
00265     XDAS_Int32 extendedError;
00266     XDM1_SingleBufDesc data;
00287     XDAS_Int16 bitRate;
00295     XDAS_Int16 mode;
00302     XDAS_Int16 vadFlag;
00305     XDAS_Int16 noiseSuppressionMode;
00314     XDAS_Int16 ttyTddMode;
00321     XDAS_Int16 dataTransmit;
00327     XDAS_Int16 compandingLaw;
00334     XDAS_Int16 packingType;
00342     XDAS_Int16 vadSelection;
00350     XDAS_Int16 codecSelection;
00357     XDM_AlgBufInfo  bufInfo;
00360 }ISPHENC1_Status;
00361
00362
00368 typedef enum {
00369     ISPHENC1_FTYPE_SPEECH = 0,
00370     ISPHENC1_FTYPE_SIDFRAME = 1,
00371     ISPHENC1_FTYPE_NODATA = 2
00374 } ISPHENC1_FrameType;
00375
00376
00385 typedef struct ISPHENC1_OutArgs {
00386     XDAS_Int16 size;
00387     XDAS_Int16 frameType;
00391     XDAS_Int32 extendedError;
00392 } ISPHENC1_OutArgs;
00393
00394
00405 typedef  IALG_Cmd ISPHENC1_Cmd;
00406
00407
00411 typedef struct ISPHENC1_Fxns{
00412     IALG_Fxns   ialg;
00491     XDAS_Int32 (*process)(ISPHENC1_Handle handle,
00492         XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf,
00493         ISPHENC1_InArgs *inArgs, ISPHENC1_OutArgs *outArgs);
00494
00495
00531     XDAS_Int32 (*control)(ISPHENC1_Handle handle, ISPHENC1_Cmd id,
00532         ISPHENC1_DynamicParams *params, ISPHENC1_Status *status);
00533
00534 } ISPHENC1_Fxns;
00535
00536
00539 #ifdef __cplusplus
00540 }
00541 #endif
00542
00543 #endif
00544 /*
00545  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00546  */
00547


Codec Engine Application Programming Interface (API): isphenc.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

isphenc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00050 #ifndef ti_xdais_dm_ISPHENC_
00051 #define ti_xdais_dm_ISPHENC_
00052
00053 #include <ti/xdais/ialg.h>
00054 #include <ti/xdais/xdas.h>
00055
00056 /*
00057  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00058  * define XDM_INCLUDE_DOT9_SUPPORT
00059  */
00060 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00061 #define XDM_INCLUDE_DOT9_SUPPORT
00062 #endif
00063 #include "xdm.h"
00064 #include "ispeech.h"
00065
00066 #ifdef __cplusplus
00067 extern "C" {
00068 #endif
00069
00072
00073 #define ISPHENC_CID      "ti.xdais.dm.ISPHENC"
00075 #define ISPHENC_ERUNTIME  XDM_ERUNTIME
00076 #define ISPHENC_EOK       XDM_EOK
00077 #define ISPHENC_EFAIL     XDM_EFAIL
00083 typedef struct ISPHENC_Obj {
00084     struct ISPHENC_Fxns *fxns;
00085 } ISPHENC_Obj;
00086
00087
00091 typedef struct ISPHENC_Obj  *ISPHENC_Handle;
00092
00093
00103 typedef struct ISPHENC_Params {
00104     XDAS_Int32 size;
00105     XDAS_Int32 frameSize;
00108     XDAS_Int32 compandingLaw;
00112     XDAS_Int32 packingType;
00116     XDAS_Int32 vadSelection;
00117 } ISPHENC_Params;
00118
00119
00134 typedef struct ISPHENC_DynamicParams {
00135     XDAS_Int32 size;
00136     XDAS_Int32 frameSize;
00139     XDAS_Int32 bitRate;
00140     XDAS_Int32 mode;
00141     XDAS_Int32 vadFlag;
00142     XDAS_Int32 noiseSuppressionMode;
00143     XDAS_Int32 ttyTddMode;
00144     XDAS_Int32 dtmfMode;
00145     XDAS_Int32 dataTransmit;
00146     XDAS_Int32 homingMode;
00147 } ISPHENC_DynamicParams;
00148
00149
00158 typedef struct ISPHENC_InArgs {
00159     XDAS_Int32 size;
00160     XDAS_Int32 nullTrafficChannel;
00161 } ISPHENC_InArgs;
00162
00163
00171 typedef struct ISPHENC_Status {
00172     XDAS_Int32 size;
00173     XDAS_Int32 extendedError;
00174     XDAS_Int32 frameSize;
00175     XDAS_Int32 bitRate;
00176     XDAS_Int32 mode;
00177     XDAS_Int32 vadFlag;
00178     XDAS_Int32 noiseSuppressionMode;
00179     XDAS_Int32 ttyTddMode;
00180     XDAS_Int32 dtmfMode;
00181     XDAS_Int32 dataTransmit;
00182     XDAS_Int32 homingMode;
00183     XDM_AlgBufInfo  bufInfo;
00187 } ISPHENC_Status;
00188
00189
00198 typedef struct ISPHENC_OutArgs {
00199     XDAS_Int32 size;
00200     XDAS_Int32 rate;
00201     XDAS_Int32 frameType;
00202     XDAS_Int32 outbufferSize;
00203 } ISPHENC_OutArgs;
00204
00205
00216 typedef  IALG_Cmd ISPHENC_Cmd;
00217
00218
00222 typedef struct ISPHENC_Fxns{
00223     IALG_Fxns   ialg;
00278     XDAS_Int32  (*process)(ISPHENC_Handle handle,  XDM_BufDesc *inBufs,
00279             XDM_BufDesc *outBufs, ISPHENC_InArgs *inArgs,
00280             ISPHENC_OutArgs *outArgs);
00281
00282
00308     XDAS_Int32  (*control)(ISPHENC_Handle handle, ISPHENC_Cmd id,
00309             ISPHENC_DynamicParams *params, ISPHENC_Status *status);
00310 } ISPHENC_Fxns;
00311
00312
00315 #ifdef __cplusplus
00316 }
00317 #endif
00318
00319 #endif  /* ISPHENC_ */
00320 /*
00321  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00322  */
00323


Codec Engine Application Programming Interface (API): iuniversal.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

iuniversal.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IUNIVERSAL_
00048 #define ti_xdais_dm_IUNIVERSAL_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00060
00061 #define IUNIVERSAL_EOK      XDM_EOK
00062 #define IUNIVERSAL_EFAIL    XDM_EFAIL
00063 #define IUNIVERSAL_EUNSUPPORTED XDM_EUNSUPPORTED
00069 typedef struct IUNIVERSAL_Obj {
00070     struct IUNIVERSAL_Fxns *fxns;
00071 } IUNIVERSAL_Obj;
00072
00073
00077 typedef struct IUNIVERSAL_Obj  *IUNIVERSAL_Handle;
00078
00079
00086 typedef struct IUNIVERSAL_Params {
00087     XDAS_Int32 size;
00088 } IUNIVERSAL_Params;
00089
00090
00105 typedef struct IUNIVERSAL_DynamicParams {
00106     XDAS_Int32 size;
00107 } IUNIVERSAL_DynamicParams;
00108
00109
00118 typedef struct IUNIVERSAL_InArgs {
00119     XDAS_Int32 size;
00120 } IUNIVERSAL_InArgs;
00121
00122
00130 typedef struct IUNIVERSAL_Status {
00131     XDAS_Int32 size;
00132     XDAS_Int32 extendedError;
00133     XDM1_BufDesc data;
00150 } IUNIVERSAL_Status;
00151
00152
00161 typedef struct IUNIVERSAL_OutArgs {
00162     XDAS_Int32 size;
00163     XDAS_Int32 extendedError;
00164 } IUNIVERSAL_OutArgs;
00165
00166
00177 typedef  IALG_Cmd IUNIVERSAL_Cmd;
00178
00179
00183 typedef struct IUNIVERSAL_Fxns{
00184     IALG_Fxns   ialg;
00250     XDAS_Int32   (*process)(IUNIVERSAL_Handle handle, XDM1_BufDesc *inBufs,
00251             XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs,
00252             IUNIVERSAL_InArgs *inArgs, IUNIVERSAL_OutArgs *outArgs);
00253
00254
00290     XDAS_Int32   (*control)(IUNIVERSAL_Handle handle, IUNIVERSAL_Cmd id,
00291         IUNIVERSAL_DynamicParams *params, IUNIVERSAL_Status *status);
00292
00293 } IUNIVERSAL_Fxns;
00294
00295
00298 #ifdef __cplusplus
00299 }
00300 #endif
00301
00302 #endif
00303 /*
00304  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00305  */
00306


Codec Engine Application Programming Interface (API): ividanalytics.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ividanalytics.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IVIDANALYTICS_
00048 #define ti_xdais_dm_IVIDANALYTICS_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00060
00061 #define IVIDANALYTICS_EOK       XDM_EOK
00062 #define IVIDANALYTICS_EFAIL     XDM_EFAIL
00063 #define IVIDANALYTICS_EUNSUPPORTED XDM_EUNSUPPORTED
00065 /* IVIDANALYTICS-specific control commands  */
00066
00070 #define IVIDANALYTICS_SETRULE           XDM_CLASSCMDBASE
00071
00075 #define IVIDANALYTICS_CLEARRULE         XDM_CLASSCMDBASE + 1
00076
00083 #define IVIDANALYTICS_MAXTARGETS 128
00084
00091 #define IVIDANALYTICS_MAXEVENTS 128
00092
00100 typedef enum {
00101     IVIDANALYTICS_MOTIONDETECT = 0,
00102     IVIDANALYTICS_OBJECTTRACKING = 1,
00104     IVIDANALYTICS_USERBASE = 16
00107 } IVIDANALYTICS_AnalysisMask;
00108
00109
00118 typedef struct IVIDANALYTICS_Grid {   /* a grid/block is put on top of a video frame. Some blocks are MD-enabled, the others are MD-disabled... */
00119     /* do we need a size field? probably not */
00120     XDAS_Int32 blockHeight;
00121     XDAS_Int32 blockWidth;
00122     XDAS_Int32 numBlockHorizontal;
00123     XDAS_Int32 numBlockVertical;
00125     XDM1_SingleBufDesc enableMaskArray;
00135 } IVIDANALYTICS_Grid;
00136
00143 typedef enum {
00144     IVIDANALYTICS_OBJECTTYPE_VEHICLE = 0,
00145     IVIDANALYTICS_OBJECTTYPE_HUMAN = 1,
00147     IVIDANALYTICS_OBJECTTYPE_USERBASE = 256
00150 } IVIDANALYTICS_ObjectType;
00151
00158 typedef enum {
00159     IVIDANALYTICS_ACTIONTYPE_LOITER = 0,
00160     IVIDANALYTICS_ACTIONTYPE_ENTER = 1,
00161     IVIDANALYTICS_ACTIONTYPE_EXIT = 2,
00162     IVIDANALYTICS_ACTIONTYPE_APPEAR = 3,
00163     IVIDANALYTICS_ACTIONTYPE_DISAPPEAR = 4,
00164     IVIDANALYTICS_ACTIONTYPE_CROSSL2R = 5,
00165     IVIDANALYTICS_ACTIONTYPE_CROSSR2L = 6,
00166     IVIDANALYTICS_ACTIONTYPE_CROSSU2D = 7,
00167     IVIDANALYTICS_ACTIONTYPE_CROSSD2U = 8,
00169     IVIDANALYTICS_ACTIONTYPE_USERBASE = 256
00172 } IVIDANALYTICS_ActionType;
00173
00174
00178 typedef struct IVIDANALYTICS_Rule{
00179     XDAS_Int32 size;
00180     XDAS_Int32 id;
00182     IVIDANALYTICS_ObjectType objectType;
00185     IVIDANALYTICS_ActionType actionType;
00188 } IVIDANALYTICS_Rule;
00189
00190
00195 typedef struct IVIDANALYTICS_Obj {
00196     struct IVIDANALYTICS_Fxns *fxns;
00197 } IVIDANALYTICS_Obj;
00198
00199
00203 typedef struct IVIDANALYTICS_Obj  *IVIDANALYTICS_Handle;
00204
00205
00217 typedef enum {
00218     IVIDANALYTICS_VIEWSTATE_BAD = 0,
00219     IVIDANALYTICS_VIEWSTATE_GOOD = 1
00220 } IVIDANALYTICS_ViewState;
00221
00222
00229 typedef struct IVIDANALYTICS_Params {
00230     XDAS_Int32 size;
00231     XDAS_Int32 maxHeight;
00232     XDAS_Int32 maxWidth;
00233     XDAS_Int32 maxFrameRate;
00238     XDAS_Int32 dataEndianness;
00242     XDAS_Int32 inputChromaFormat;
00246     XDAS_Int32 maxRules;
00247 }IVIDANALYTICS_Params;
00248
00249
00264 typedef struct IVIDANALYTICS_DynamicParams {
00265     XDAS_Int32 size;
00266     IVIDANALYTICS_Grid *grid;
00267     XDM_Date      date;
00269     /* Note, we've removed height & width - no way to change size at runtime - need to recreate the alg instance */
00270
00271     IVIDANALYTICS_Rule rule;
00274 } IVIDANALYTICS_DynamicParams;
00275
00276
00285 typedef struct IVIDANALYTICS_InArgs {
00286     XDAS_Int32    size;
00287     XDM_Date      date;
00288 }IVIDANALYTICS_InArgs;
00289
00290
00298 typedef struct IVIDANALYTICS_Status {
00299     XDAS_Int32 size;
00300     XDAS_Int32 extendedError;
00301     XDM1_BufDesc data;
00322     XDM_AlgBufInfo bufInfo;
00335     XDAS_Int32 viewState;
00339 } IVIDANALYTICS_Status;
00340
00341
00350 typedef struct IVIDANALYTICS_OutArgs {
00351     XDAS_Int32 size;
00352     XDAS_Int32 numTargets;
00353     XDM_Rect targets[IVIDANALYTICS_MAXTARGETS];
00360     XDAS_Int32 numEvents;
00362     XDAS_Int32 eventId[IVIDANALYTICS_MAXEVENTS];
00371     XDAS_Int32 extendedError;
00372     XDM_Date      date;
00373 } IVIDANALYTICS_OutArgs;
00374
00375
00386 typedef  IALG_Cmd IVIDANALYTICS_Cmd;
00387
00388
00392 typedef struct IVIDANALYTICS_Fxns {
00393     IALG_Fxns   ialg;
00465     XDAS_Int32 (*process)(IVIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs,
00466         XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs,
00467         IVIDANALYTICS_OutArgs *outArgs);
00468
00469
00505     XDAS_Int32   (*control)(IVIDANALYTICS_Handle handle, IVIDANALYTICS_Cmd id,
00506             IVIDANALYTICS_DynamicParams *params, IVIDANALYTICS_Status *status);
00507
00508 } IVIDANALYTICS_Fxns;
00509
00510
00513 #ifdef __cplusplus
00514 }
00515 #endif
00516
00517 #endif
00518 /*
00519  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00520  */
00521


Codec Engine Application Programming Interface (API): ividdec1.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ividdec1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00050 #ifndef ti_xdais_dm_IVIDDEC1_
00051 #define ti_xdais_dm_IVIDDEC1_
00052
00053 #include <ti/xdais/ialg.h>
00054 #include <ti/xdais/xdas.h>
00055 #include "xdm.h"
00056 #include "ivideo.h"
00057
00058 #ifdef __cplusplus
00059 extern "C" {
00060 #endif
00061
00062
00065
00066 #define IVIDDEC1_EOK       XDM_EOK
00067 #define IVIDDEC1_EFAIL     XDM_EFAIL
00068 #define IVIDDEC1_EUNSUPPORTED XDM_EUNSUPPORTED
00074 typedef struct IVIDDEC1_Obj {
00075     struct IVIDDEC1_Fxns *fxns;
00076 } IVIDDEC1_Obj;
00077
00078
00082 typedef struct IVIDDEC1_Obj  *IVIDDEC1_Handle;
00083
00084
00092 typedef enum {
00093     IVIDDEC_DISPLAY_ORDER = 0,
00109     IVIDDEC_DECODE_ORDER = 1,
00124     IVIDDEC_FRAMEORDER_DEFAULT = IVIDDEC_DISPLAY_ORDER
00125 } IVIDDEC1_FrameOrder;
00126
00127
00134 typedef struct IVIDDEC1_Params {
00135     XDAS_Int32 size;
00136     XDAS_Int32 maxHeight;
00137     XDAS_Int32 maxWidth;
00138     XDAS_Int32 maxFrameRate;
00143     XDAS_Int32 maxBitRate;
00147     XDAS_Int32 dataEndianness;
00151     XDAS_Int32 forceChromaFormat;
00155 } IVIDDEC1_Params;
00156
00157
00172 typedef struct IVIDDEC1_DynamicParams {
00173     XDAS_Int32 size;
00174     XDAS_Int32 decodeHeader;
00178     XDAS_Int32 displayWidth;
00182     XDAS_Int32 frameSkipMode;
00186     XDAS_Int32 frameOrder;
00190     XDAS_Int32 newFrameFlag;
00202     XDAS_Int32 mbDataFlag;
00211 } IVIDDEC1_DynamicParams;
00212
00213
00222 typedef struct IVIDDEC1_InArgs {
00223     XDAS_Int32 size;
00224     XDAS_Int32 numBytes;
00227     XDAS_Int32 inputID;
00246 } IVIDDEC1_InArgs;
00247
00248
00259 typedef struct IVIDDEC1_Status {
00260     XDAS_Int32 size;
00261     XDAS_Int32 extendedError;
00262     XDM1_SingleBufDesc data;
00283     XDAS_Int32 outputHeight;
00284     XDAS_Int32 outputWidth;
00285     XDAS_Int32 frameRate;
00290     XDAS_Int32 bitRate;
00291     XDAS_Int32 contentType;
00295     XDAS_Int32 outputChromaFormat;
00299     XDM_AlgBufInfo bufInfo;
00303 } IVIDDEC1_Status;
00304
00305
00306 #define IVIDDEC1_FREE_BUFF_SIZE 16
00319 typedef struct IVIDDEC1_OutArgs {
00320     XDAS_Int32 size;
00321     XDAS_Int32 bytesConsumed;
00324     XDAS_Int32 outputID[XDM_MAX_IO_BUFFERS];
00339     IVIDEO1_BufDesc decodedBufs;
00354     IVIDEO1_BufDesc displayBufs[XDM_MAX_IO_BUFFERS];
00377     XDAS_Int32 outputMbDataID;
00382     XDM1_SingleBufDesc mbDataBuf;
00389     XDAS_Int32 freeBufID[IVIDDEC1_FREE_BUFF_SIZE];
00426     XDAS_Int32 outBufsInUseFlag;
00435 } IVIDDEC1_OutArgs;
00436
00437
00448 typedef  IALG_Cmd IVIDDEC1_Cmd;
00449
00450
00454 typedef struct IVIDDEC1_Fxns {
00455     IALG_Fxns   ialg;
00542     XDAS_Int32 (*process)(IVIDDEC1_Handle handle, XDM1_BufDesc *inBufs,
00543         XDM_BufDesc *outBufs, IVIDDEC1_InArgs *inArgs,
00544         IVIDDEC1_OutArgs *outArgs);
00545
00546
00582     XDAS_Int32 (*control)(IVIDDEC1_Handle handle, IVIDDEC1_Cmd id,
00583         IVIDDEC1_DynamicParams *params, IVIDDEC1_Status *status);
00584
00585 } IVIDDEC1_Fxns;
00586
00587
00590 #ifdef __cplusplus
00591 }
00592 #endif
00593
00594 #endif
00595 /*
00596  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00597  */
00598


Codec Engine Application Programming Interface (API): ividdec2.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ividdec2.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IVIDDEC2_
00048 #define ti_xdais_dm_IVIDDEC2_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053 #include "ivideo.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059
00062
00073 #define IVIDDEC2_MAX_IO_BUFFERS                IVIDEO2_MAX_IO_BUFFERS
00074
00075 #define IVIDDEC2_EOK       XDM_EOK
00076 #define IVIDDEC2_EFAIL     XDM_EFAIL
00077 #define IVIDDEC2_EUNSUPPORTED XDM_EUNSUPPORTED
00083 typedef struct IVIDDEC2_Obj {
00084     struct IVIDDEC2_Fxns *fxns;
00085 } IVIDDEC2_Obj;
00086
00087
00091 typedef struct IVIDDEC2_Obj  *IVIDDEC2_Handle;
00092
00093
00101 typedef enum {
00102     IVIDDEC2_DISPLAY_ORDER = 0,
00118     IVIDDEC2_DECODE_ORDER = 1,
00133     IVIDDEC2_FRAMEORDER_DEFAULT = IVIDDEC2_DISPLAY_ORDER
00134 } IVIDDEC2_FrameOrder;
00135
00136
00143 typedef struct IVIDDEC2_Params {
00144     XDAS_Int32 size;
00145     XDAS_Int32 maxHeight;
00146     XDAS_Int32 maxWidth;
00147     XDAS_Int32 maxFrameRate;
00152     XDAS_Int32 maxBitRate;
00156     XDAS_Int32 dataEndianness;
00160     XDAS_Int32 forceChromaFormat;
00164 } IVIDDEC2_Params;
00165
00166
00181 typedef struct IVIDDEC2_DynamicParams {
00182     XDAS_Int32 size;
00183     XDAS_Int32 decodeHeader;
00187     XDAS_Int32 displayWidth;
00191     XDAS_Int32 frameSkipMode;
00195     XDAS_Int32 frameOrder;
00199     XDAS_Int32 newFrameFlag;
00211     XDAS_Int32 mbDataFlag;
00220 } IVIDDEC2_DynamicParams;
00221
00222
00231 typedef struct IVIDDEC2_InArgs {
00232     XDAS_Int32 size;
00233     XDAS_Int32 numBytes;
00236     XDAS_Int32 inputID;
00255 } IVIDDEC2_InArgs;
00256
00257
00268 typedef struct IVIDDEC2_Status {
00269     XDAS_Int32 size;
00270     XDAS_Int32 extendedError;
00271     XDM1_SingleBufDesc data;
00292     XDAS_Int32 maxNumDisplayBufs;
00298     XDAS_Int32 outputHeight;
00299     XDAS_Int32 outputWidth;
00300     XDAS_Int32 frameRate;
00305     XDAS_Int32 bitRate;
00306     XDAS_Int32 contentType;
00310     XDAS_Int32 outputChromaFormat;
00314     XDM_AlgBufInfo bufInfo;
00318 } IVIDDEC2_Status;
00319
00320
00329 typedef struct IVIDDEC2_OutArgs {
00330     XDAS_Int32 size;
00331     XDAS_Int32 bytesConsumed;
00335     XDAS_Int32 outputID[IVIDEO2_MAX_IO_BUFFERS];
00350     IVIDEO1_BufDesc decodedBufs;
00365     IVIDEO1_BufDesc displayBufs[IVIDEO2_MAX_IO_BUFFERS];
00388     XDAS_Int32 outputMbDataID;
00393     XDM1_SingleBufDesc mbDataBuf;
00400     XDAS_Int32 freeBufID[IVIDEO2_MAX_IO_BUFFERS];
00437     XDAS_Int32 outBufsInUseFlag;
00446 } IVIDDEC2_OutArgs;
00447
00448
00459 typedef  IALG_Cmd IVIDDEC2_Cmd;
00460
00461
00465 typedef struct IVIDDEC2_Fxns {
00466     IALG_Fxns   ialg;
00572     XDAS_Int32 (*process)(IVIDDEC2_Handle handle, XDM1_BufDesc *inBufs,
00573         XDM_BufDesc *outBufs, IVIDDEC2_InArgs *inArgs,
00574         IVIDDEC2_OutArgs *outArgs);
00575
00576
00612     XDAS_Int32 (*control)(IVIDDEC2_Handle handle, IVIDDEC2_Cmd id,
00613         IVIDDEC2_DynamicParams *params, IVIDDEC2_Status *status);
00614
00615 } IVIDDEC2_Fxns;
00616
00617
00620 #ifdef __cplusplus
00621 }
00622 #endif
00623
00624 #endif  /* ti_xdais_dm_IVIDDEC2_ */
00625 /*
00626  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00627  */
00628


Codec Engine Application Programming Interface (API): ividdec3.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ividdec3.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IVIDDEC3_
00048 #define ti_xdais_dm_IVIDDEC3_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053 #include "ivideo.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059
00062
00063 #define IVIDDEC3_EOK       XDM_EOK
00064 #define IVIDDEC3_EFAIL     XDM_EFAIL
00065 #define IVIDDEC3_EUNSUPPORTED XDM_EUNSUPPORTED
00071 typedef struct IVIDDEC3_Obj {
00072     struct IVIDDEC3_Fxns *fxns;
00073 } IVIDDEC3_Obj;
00074
00075
00079 typedef struct IVIDDEC3_Obj  *IVIDDEC3_Handle;
00080
00081
00090 typedef enum {
00091     IVIDDEC3_DISPLAY_DELAY_AUTO = -1,
00092     IVIDDEC3_DECODE_ORDER = 0,
00093     IVIDDEC3_DISPLAY_DELAY_1 = 1,
00094     IVIDDEC3_DISPLAY_DELAY_2 = 2,
00095     IVIDDEC3_DISPLAY_DELAY_3 = 3,
00096     IVIDDEC3_DISPLAY_DELAY_4 = 4,
00097     IVIDDEC3_DISPLAY_DELAY_5 = 5,
00098     IVIDDEC3_DISPLAY_DELAY_6 = 6,
00099     IVIDDEC3_DISPLAY_DELAY_7 = 7,
00100     IVIDDEC3_DISPLAY_DELAY_8 = 8,
00101     IVIDDEC3_DISPLAY_DELAY_9 = 9,
00102     IVIDDEC3_DISPLAY_DELAY_10 = 10,
00103     IVIDDEC3_DISPLAY_DELAY_11 = 11,
00104     IVIDDEC3_DISPLAY_DELAY_12 = 12,
00105     IVIDDEC3_DISPLAY_DELAY_13 = 13,
00106     IVIDDEC3_DISPLAY_DELAY_14 = 14,
00107     IVIDDEC3_DISPLAY_DELAY_15 = 15,
00108     IVIDDEC3_DISPLAY_DELAY_16 = 16,
00109     IVIDDEC3_DISPLAYDELAY_DEFAULT = IVIDDEC3_DISPLAY_DELAY_AUTO
00110 } IVIDDEC3_displayDelay;
00111
00118 typedef struct IVIDDEC3_Params {
00119     XDAS_Int32 size;
00120     XDAS_Int32 maxHeight;
00121     XDAS_Int32 maxWidth;
00122     XDAS_Int32 maxFrameRate;
00127     XDAS_Int32 maxBitRate;
00131     XDAS_Int32 dataEndianness;
00135     XDAS_Int32 forceChromaFormat;
00139     XDAS_Int32 operatingMode;
00143     XDAS_Int32 displayDelay;
00147     XDAS_Int32 inputDataMode;
00166     XDAS_Int32 outputDataMode;
00181     XDAS_Int32 numInputDataUnits;
00192     XDAS_Int32 numOutputDataUnits;
00203     XDAS_Int32 errorInfoMode;
00208     XDAS_Int32 displayBufsMode;
00219     XDAS_Int32 metadataType[IVIDEO_MAX_NUM_METADATA_PLANES];
00224  } IVIDDEC3_Params;
00225
00226
00241 typedef struct IVIDDEC3_DynamicParams {
00242     XDAS_Int32 size;
00243     XDAS_Int32 decodeHeader;
00247     XDAS_Int32 displayWidth;
00252     XDAS_Int32 frameSkipMode;
00256     XDAS_Int32 newFrameFlag;
00268     XDM_DataSyncPutFxn putDataFxn;
00282     XDM_DataSyncHandle putDataHandle;
00304     XDM_DataSyncGetFxn getDataFxn;
00317     XDM_DataSyncHandle getDataHandle;
00338     XDM_DataSyncPutBufferFxn putBufferFxn;
00352     XDM_DataSyncHandle putBufferHandle;
00374     XDAS_Int32 lateAcquireArg;
00403 } IVIDDEC3_DynamicParams;
00404
00405
00414 typedef struct IVIDDEC3_InArgs {
00415     XDAS_Int32 size;
00416     XDAS_Int32 numBytes;
00419     XDAS_Int32 inputID;
00438 } IVIDDEC3_InArgs;
00439
00440
00448 typedef struct IVIDDEC3_Status {
00449     XDAS_Int32 size;
00450     XDAS_Int32 extendedError;
00451     XDM1_SingleBufDesc data;
00472     XDAS_Int32 maxNumDisplayBufs;
00478     XDAS_Int32 maxOutArgsDisplayBufs;
00489     XDAS_Int32 outputHeight;
00490     XDAS_Int32 outputWidth;
00491     XDAS_Int32 frameRate;
00496     XDAS_Int32 bitRate;
00497     XDAS_Int32 contentType;
00501     XDAS_Int32 sampleAspectRatioHeight;
00502     XDAS_Int32 sampleAspectRatioWidth;
00503     XDAS_Int32 bitRange;
00504     XDAS_Int32 forceChromaFormat;
00508     XDAS_Int32 operatingMode;
00512     XDAS_Int32 frameOrder;
00518     XDAS_Int32 inputDataMode;
00523     XDAS_Int32 outputDataMode;
00528     XDM1_AlgBufInfo bufInfo;
00539     XDAS_Int32 numInputDataUnits;
00552     XDAS_Int32 numOutputDataUnits;
00564     XDAS_Int32 configurationID;
00576     XDAS_Int32 metadataType[IVIDEO_MAX_NUM_METADATA_PLANES];
00581     IVIDDEC3_DynamicParams decDynamicParams;
00588 } IVIDDEC3_Status;
00589
00590
00600 typedef enum {
00601     IVIDDEC3_DISPLAYBUFS_EMBEDDED = 1,
00612     IVIDDEC3_DISPLAYBUFS_PTRS = 2
00633 } IVIDDEC3_DisplayBufsMode;
00634
00635
00657 typedef struct IVIDDEC3_OutArgs {
00658     XDAS_Int32 size;
00669     XDAS_Int32 extendedError;
00670     XDAS_Int32 bytesConsumed;
00671     XDAS_Int32 outputID[IVIDEO2_MAX_IO_BUFFERS];
00686     IVIDEO2_BufDesc decodedBufs;
00702     XDAS_Int32 freeBufID[IVIDEO2_MAX_IO_BUFFERS];
00739     XDAS_Int32 outBufsInUseFlag;
00748     XDAS_Int32 displayBufsMode;
00765     union {
00766         IVIDEO2_BufDesc bufDesc[1];
00807         IVIDEO2_BufDesc *pBufDesc[IVIDEO2_MAX_IO_BUFFERS];
00817     } displayBufs;
00843 } IVIDDEC3_OutArgs;
00844
00845
00856 typedef  IALG_Cmd IVIDDEC3_Cmd;
00857
00858
00862 typedef struct IVIDDEC3_Fxns {
00863     IALG_Fxns ialg;
00960     XDAS_Int32 (*process)(IVIDDEC3_Handle handle, XDM2_BufDesc *inBufs,
00961         XDM2_BufDesc *outBufs, IVIDDEC3_InArgs *inArgs,
00962         IVIDDEC3_OutArgs *outArgs);
00963
00964
01000     XDAS_Int32 (*control)(IVIDDEC3_Handle handle, IVIDDEC3_Cmd id,
01001         IVIDDEC3_DynamicParams *params, IVIDDEC3_Status *status);
01002
01003 } IVIDDEC3_Fxns;
01004
01005
01008 #ifdef __cplusplus
01009 }
01010 #endif
01011
01012 #endif
01013 /*
01014  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
01015  */
01016


Codec Engine Application Programming Interface (API): ividdec.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ividdec.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00050 #ifndef ti_xdais_dm_IVIDDEC_
00051 #define ti_xdais_dm_IVIDDEC_
00052
00053 #include <ti/xdais/ialg.h>
00054 #include <ti/xdais/xdas.h>
00055
00056 /*
00057  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00058  * define XDM_INCLUDE_DOT9_SUPPORT
00059  */
00060 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00061 #define XDM_INCLUDE_DOT9_SUPPORT
00062 #endif
00063 #include "xdm.h"
00064 #include "ivideo.h"
00065
00066 #ifdef __cplusplus
00067 extern "C" {
00068 #endif
00069
00070
00073
00074 #define IVIDDEC_CID      "ti.xdais.dm.IVIDDEC"
00076 #define IVIDDEC_ERUNTIME  XDM_ERUNTIME
00077 #define IVIDDEC_EOK       XDM_EOK
00078 #define IVIDDEC_EFAIL     XDM_EFAIL
00084 typedef struct IVIDDEC_Obj {
00085     struct IVIDDEC_Fxns *fxns;
00086 } IVIDDEC_Obj;
00087
00088
00092 typedef struct IVIDDEC_Obj  *IVIDDEC_Handle;
00093
00094
00108 typedef struct IVIDDEC_Params {
00109     XDAS_Int32 size;
00114     XDAS_Int32 maxHeight;
00115     XDAS_Int32 maxWidth;
00116     XDAS_Int32 maxFrameRate;
00117     XDAS_Int32 maxBitRate;
00121     XDAS_Int32 dataEndianness;
00125     XDAS_Int32 forceChromaFormat;
00129 } IVIDDEC_Params;
00130
00131
00146 typedef struct IVIDDEC_DynamicParams {
00147     XDAS_Int32 size;
00148     XDAS_Int32 decodeHeader;
00152     XDAS_Int32 displayWidth;
00156     XDAS_Int32 frameSkipMode;
00160 } IVIDDEC_DynamicParams;
00161
00162
00171 typedef struct IVIDDEC_InArgs {
00172     XDAS_Int32 size;
00173     XDAS_Int32 numBytes;
00176     XDAS_Int32 inputID;
00195 } IVIDDEC_InArgs;
00196
00197
00205 typedef struct IVIDDEC_Status {
00206     XDAS_Int32 size;
00207     XDAS_Int32 extendedError;
00208     XDAS_Int32 outputHeight;
00209     XDAS_Int32 outputWidth;
00210     XDAS_Int32 frameRate;
00211     XDAS_Int32 bitRate;
00212     XDAS_Int32 contentType;
00216     XDAS_Int32 outputChromaFormat;
00220     XDM_AlgBufInfo  bufInfo;
00224 } IVIDDEC_Status;
00225
00226
00235 typedef struct IVIDDEC_OutArgs {
00236     XDAS_Int32 size;
00237     XDAS_Int32 extendedError;
00238     XDAS_Int32 bytesConsumed;
00239     XDAS_Int32 decodedFrameType;
00241     XDAS_Int32 outputID;
00244     IVIDEO_BufDesc displayBufs;
00252 } IVIDDEC_OutArgs;
00253
00254
00265 typedef  IALG_Cmd IVIDDEC_Cmd;
00266
00267
00271 typedef struct IVIDDEC_Fxns {
00272     IALG_Fxns   ialg;
00312     XDAS_Int32 (*process)(IVIDDEC_Handle handle, XDM_BufDesc *inBufs,
00313         XDM_BufDesc *outBufs, IVIDDEC_InArgs *inArgs,
00314         IVIDDEC_OutArgs *outArgs);
00315
00316
00342     XDAS_Int32 (*control)(IVIDDEC_Handle handle, IVIDDEC_Cmd id,
00343         IVIDDEC_DynamicParams *params, IVIDDEC_Status *status);
00344
00345 } IVIDDEC_Fxns;
00346
00347
00350 #ifdef __cplusplus
00351 }
00352 #endif
00353
00354 #endif
00355 /*
00356  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:43; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00357  */
00358


Codec Engine Application Programming Interface (API): ividenc1.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ividenc1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IVIDENC1_
00048 #define ti_xdais_dm_IVIDENC1_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053 #include "ivideo.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00061
00062 #define IVIDENC1_EOK       XDM_EOK
00063 #define IVIDENC1_EFAIL     XDM_EFAIL
00064 #define IVIDENC1_EUNSUPPORTED XDM_EUNSUPPORTED
00070 typedef struct IVIDENC1_Obj {
00071     struct IVIDENC1_Fxns *fxns;
00072 } IVIDENC1_Obj;
00073
00074
00078 typedef struct IVIDENC1_Obj  *IVIDENC1_Handle;
00079
00080
00087 typedef struct IVIDENC1_Params {
00088     XDAS_Int32 size;
00089     XDAS_Int32 encodingPreset;
00090     XDAS_Int32 rateControlPreset;
00094     XDAS_Int32 maxHeight;
00095     XDAS_Int32 maxWidth;
00096     XDAS_Int32 maxFrameRate;
00101     XDAS_Int32 maxBitRate;
00102     XDAS_Int32 dataEndianness;
00106     XDAS_Int32 maxInterFrameInterval;
00113     XDAS_Int32 inputChromaFormat;
00117     XDAS_Int32 inputContentType;
00122     XDAS_Int32 reconChromaFormat;
00133 } IVIDENC1_Params;
00134
00135
00150 typedef struct IVIDENC1_DynamicParams {
00151     XDAS_Int32 size;
00152     XDAS_Int32 inputHeight;
00153     XDAS_Int32 inputWidth;
00154     XDAS_Int32 refFrameRate;
00161     XDAS_Int32 targetFrameRate;
00168     XDAS_Int32 targetBitRate;
00169     XDAS_Int32 intraFrameInterval;
00181     XDAS_Int32 generateHeader;
00185     XDAS_Int32 captureWidth;
00190     XDAS_Int32 forceFrame;
00208     XDAS_Int32 interFrameInterval;
00225     XDAS_Int32 mbDataFlag;
00229 } IVIDENC1_DynamicParams;
00230
00231
00240 typedef struct IVIDENC1_InArgs {
00241     XDAS_Int32 size;
00242     XDAS_Int32 inputID;
00263     XDAS_Int32 topFieldFirstFlag;
00276 } IVIDENC1_InArgs;
00277
00278
00286 typedef struct IVIDENC1_Status {
00287     XDAS_Int32 size;
00288     XDAS_Int32 extendedError;
00289     XDM1_SingleBufDesc data;
00310     XDM_AlgBufInfo bufInfo;
00330 } IVIDENC1_Status;
00331
00332
00341 typedef struct IVIDENC1_OutArgs {
00342     XDAS_Int32 size;
00343     XDAS_Int32 extendedError;
00344     XDAS_Int32 bytesGenerated;
00347     XDAS_Int32 encodedFrameType;
00351     XDAS_Int32 inputFrameSkip;
00355     XDAS_Int32 outputID;
00366    XDM1_SingleBufDesc encodedBuf;
00388     IVIDEO1_BufDesc reconBufs;
00406 } IVIDENC1_OutArgs;
00407
00408
00419 typedef  IALG_Cmd IVIDENC1_Cmd;
00420
00421
00434 typedef struct IVIDENC1_MbData {
00435     XDAS_Int32 mbMode;
00446     XDAS_Int32 QP;
00451     XDAS_Int32 mvFwdXY;
00467     XDAS_Int32 mvBwdXY;
00472 } IVIDENC1_MbData;
00473
00474
00478 typedef struct IVIDENC1_Fxns {
00479     IALG_Fxns   ialg;
00570     XDAS_Int32 (*process)(IVIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs,
00571         XDM_BufDesc *outBufs, IVIDENC1_InArgs *inArgs,
00572         IVIDENC1_OutArgs *outArgs);
00573
00574
00610     XDAS_Int32 (*control)(IVIDENC1_Handle handle, IVIDENC1_Cmd id,
00611         IVIDENC1_DynamicParams *params, IVIDENC1_Status *status);
00612
00613 } IVIDENC1_Fxns;
00614
00615
00618 #ifdef __cplusplus
00619 }
00620 #endif
00621
00622 #endif
00623 /*
00624  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00625  */
00626


Codec Engine Application Programming Interface (API): ividenc2.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ividenc2.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IVIDENC2_
00048 #define ti_xdais_dm_IVIDENC2_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053 #include "ivideo.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059
00062
00063 #define IVIDENC2_EOK       XDM_EOK
00064 #define IVIDENC2_EFAIL     XDM_EFAIL
00065 #define IVIDENC2_EUNSUPPORTED XDM_EUNSUPPORTED
00073 typedef enum {
00074     IVIDENC2_MOTIONVECTOR_PIXEL = 0,
00075     IVIDENC2_MOTIONVECTOR_HALFPEL = 1,
00076     IVIDENC2_MOTIONVECTOR_QUARTERPEL = 2,
00077     IVIDENC2_MOTIONVECTOR_EIGHTHPEL = 3,
00078     IVIDENC2_MOTIONVECTOR_MAX = 4
00079 } IVIDENC2_MotionVectorAccuracy;
00080
00093 typedef enum {
00094     IVIDENC2_CTRL_NONE = 0,
00095     IVIDENC2_CTRL_FORCESKIP = 1,
00097     IVIDENC2_CTRL_DEFAULT = IVIDENC2_CTRL_NONE
00098 } IVIDENC2_Control;
00099
00100
00105 typedef struct IVIDENC2_Obj {
00106     struct IVIDENC2_Fxns *fxns;
00107 } IVIDENC2_Obj;
00108
00109
00113 typedef struct IVIDENC2_Obj  *IVIDENC2_Handle;
00114
00124 #define IVIDENC2_DEFAULTPROFILE (-1)
00125
00135 #define IVIDENC2_DEFAULTLEVEL (-1)
00136
00143 typedef struct IVIDENC2_Params {
00144     XDAS_Int32 size;
00145     XDAS_Int32 encodingPreset;
00146     XDAS_Int32 rateControlPreset;
00150     XDAS_Int32 maxHeight;
00151     XDAS_Int32 maxWidth;
00152     XDAS_Int32 dataEndianness;
00156     XDAS_Int32 maxInterFrameInterval;
00163     XDAS_Int32 maxBitRate;
00166     XDAS_Int32 minBitRate;
00169     XDAS_Int32 inputChromaFormat;
00173     XDAS_Int32 inputContentType;
00178     XDAS_Int32 operatingMode;
00182     XDAS_Int32 profile;
00195     XDAS_Int32 level;
00208     XDAS_Int32 inputDataMode;
00224     XDAS_Int32 outputDataMode;
00243     XDAS_Int32 numInputDataUnits;
00252     XDAS_Int32 numOutputDataUnits;
00261     XDAS_Int32 metadataType[IVIDEO_MAX_NUM_METADATA_PLANES];
00266 } IVIDENC2_Params;
00267
00268
00283 typedef struct IVIDENC2_DynamicParams {
00284     XDAS_Int32 size;
00285     XDAS_Int32 inputHeight;
00286     XDAS_Int32 inputWidth;
00287     XDAS_Int32 refFrameRate;
00294     XDAS_Int32 targetFrameRate;
00301     XDAS_Int32 targetBitRate;
00302     XDAS_Int32 intraFrameInterval;
00314     XDAS_Int32 generateHeader;
00318     XDAS_Int32 captureWidth;
00323     XDAS_Int32 forceFrame;
00341     XDAS_Int32 interFrameInterval;
00358     XDAS_Int32 mvAccuracy;
00369     XDAS_Int32 sampleAspectRatioHeight;
00375     XDAS_Int32 sampleAspectRatioWidth;
00381     XDAS_Int32 ignoreOutbufSizeFlag;
00413     XDM_DataSyncPutFxn putDataFxn;
00426     XDM_DataSyncHandle putDataHandle;
00448     XDM_DataSyncGetFxn getDataFxn;
00461     XDM_DataSyncHandle getDataHandle;
00482     XDM_DataSyncGetBufferFxn getBufferFxn;
00496     XDM_DataSyncHandle getBufferHandle;
00518     XDAS_Int32 lateAcquireArg;
00547 } IVIDENC2_DynamicParams;
00548
00549
00558 typedef struct IVIDENC2_InArgs {
00559     XDAS_Int32 size;
00560     XDAS_Int32 inputID;
00581    XDAS_Int32 control;
00585 } IVIDENC2_InArgs;
00586
00587
00595 typedef struct IVIDENC2_Status {
00596     XDAS_Int32 size;
00597     XDAS_Int32 extendedError;
00598     XDM1_SingleBufDesc data;
00620     XDAS_Int32  encodingPreset;
00621     XDAS_Int32  rateControlPreset;
00625     XDAS_Int32  maxInterFrameInterval;
00632     XDAS_Int32 inputChromaFormat;
00636     XDAS_Int32 inputContentType;
00641     XDAS_Int32 operatingMode;
00645     XDAS_Int32 profile;
00650     XDAS_Int32 level;
00655     XDAS_Int32 inputDataMode;
00660     XDAS_Int32 outputDataMode;
00665     XDAS_Int32 numInputDataUnits;
00678     XDAS_Int32 numOutputDataUnits;
00690    XDAS_Int32 configurationID;
00704     XDM1_AlgBufInfo bufInfo;
00717     XDAS_Int32 metadataType[IVIDEO_MAX_NUM_METADATA_PLANES];
00722     IVIDENC2_DynamicParams encDynamicParams;
00734 } IVIDENC2_Status;
00735
00736
00745 typedef struct IVIDENC2_OutArgs {
00746     XDAS_Int32 size;
00747     XDAS_Int32 extendedError;
00748     XDAS_Int32 bytesGenerated;
00751     XDAS_Int32 encodedFrameType;
00755     XDAS_Int32 inputFrameSkip;
00759    XDAS_Int32 freeBufID[IVIDEO2_MAX_IO_BUFFERS];
00787     IVIDEO2_BufDesc reconBufs;
00788 } IVIDENC2_OutArgs;
00789
00790
00801 typedef  IALG_Cmd IVIDENC2_Cmd;
00802
00803
00807 typedef struct IVIDENC2_Fxns {
00808     IALG_Fxns   ialg;
00886     XDAS_Int32 (*process)(IVIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs,
00887             XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs,
00888             IVIDENC2_OutArgs *outArgs);
00889
00890
00926     XDAS_Int32 (*control)(IVIDENC2_Handle handle, IVIDENC2_Cmd id,
00927             IVIDENC2_DynamicParams *params, IVIDENC2_Status *status);
00928
00929 } IVIDENC2_Fxns;
00930
00931
00934 #ifdef __cplusplus
00935 }
00936 #endif
00937
00938 #endif
00939 /*
00940  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00941  */
00942


Codec Engine Application Programming Interface (API): ividenc.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ividenc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00050 #ifndef ti_xdais_dm_IVIDENC_
00051 #define ti_xdais_dm_IVIDENC_
00052
00053 #include <ti/xdais/ialg.h>
00054 #include <ti/xdais/xdas.h>
00055
00056 /*
00057  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00058  * define XDM_INCLUDE_DOT9_SUPPORT
00059  */
00060 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00061 #define XDM_INCLUDE_DOT9_SUPPORT
00062 #endif
00063 #include "xdm.h"
00064 #include "ivideo.h"
00065
00066 #ifdef __cplusplus
00067 extern "C" {
00068 #endif
00069
00070
00073
00074 #define IVIDENC_CID      "ti.xdais.dm.IVIDENC"
00076 #define IVIDENC_ERUNTIME  XDM_ERUNTIME
00077 #define IVIDENC_EOK       XDM_EOK
00078 #define IVIDENC_EFAIL     XDM_EFAIL
00084 typedef struct IVIDENC_Obj {
00085     struct IVIDENC_Fxns *fxns;
00086 } IVIDENC_Obj;
00087
00088
00092 typedef struct IVIDENC_Obj  *IVIDENC_Handle;
00093
00094
00104 typedef struct IVIDENC_Params {
00105     XDAS_Int32 size;
00106     XDAS_Int32 encodingPreset;
00107     XDAS_Int32 rateControlPreset;
00111     XDAS_Int32 maxHeight;
00112     XDAS_Int32 maxWidth;
00113     XDAS_Int32 maxFrameRate;
00114     XDAS_Int32 maxBitRate;
00115     XDAS_Int32 dataEndianness;
00119     XDAS_Int32 maxInterFrameInterval;
00122     XDAS_Int32 inputChromaFormat;
00126     XDAS_Int32 inputContentType;
00131 } IVIDENC_Params;
00132
00133
00148 typedef struct IVIDENC_DynamicParams {
00149     XDAS_Int32 size;
00150     XDAS_Int32 inputHeight;
00151     XDAS_Int32 inputWidth;
00152     XDAS_Int32 refFrameRate;
00153     XDAS_Int32 targetFrameRate;
00154     XDAS_Int32 targetBitRate;
00155     XDAS_Int32 intraFrameInterval;
00158     XDAS_Int32 generateHeader;
00162     XDAS_Int32 captureWidth;
00167     XDAS_Int32 forceIFrame;
00169 } IVIDENC_DynamicParams;
00170
00179 typedef struct IVIDENC_InArgs {
00180     XDAS_Int32 size;
00185 } IVIDENC_InArgs;
00186
00194 typedef struct IVIDENC_Status {
00195     XDAS_Int32 size;
00196     XDAS_Int32 extendedError;
00197     XDM_AlgBufInfo bufInfo;
00200 } IVIDENC_Status;
00201
00202
00211 typedef struct IVIDENC_OutArgs {
00212     XDAS_Int32 size;
00213     XDAS_Int32 extendedError;
00214     XDAS_Int32 bytesGenerated;
00215     XDAS_Int32 encodedFrameType;
00219     XDAS_Int32 inputFrameSkip;
00220     IVIDEO_BufDesc reconBufs;
00221 } IVIDENC_OutArgs;
00222
00223
00234 typedef  IALG_Cmd IVIDENC_Cmd;
00235
00236
00240 typedef struct IVIDENC_Fxns {
00241     IALG_Fxns   ialg;
00278     XDAS_Int32 (*process)(IVIDENC_Handle handle, XDM_BufDesc *inBufs,
00279         XDM_BufDesc *outBufs, IVIDENC_InArgs *inArgs,
00280         IVIDENC_OutArgs *outArgs);
00281
00282
00308     XDAS_Int32 (*control)(IVIDENC_Handle handle, IVIDENC_Cmd id,
00309         IVIDENC_DynamicParams *params, IVIDENC_Status *status);
00310
00311 } IVIDENC_Fxns;
00312
00313
00316 #ifdef __cplusplus
00317 }
00318 #endif
00319
00320 #endif
00321 /*
00322  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00323  */
00324


Codec Engine Application Programming Interface (API): ivideo.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ivideo.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_IVIDEO_
00047 #define ti_xdais_dm_IVIDEO_
00048
00049 #ifdef __cplusplus
00050 extern "C" {
00051 #endif
00052
00055
00063 #define IVIDEO2_MAX_IO_BUFFERS                20
00064
00072 typedef enum {
00073     IVIDEO_NO_SKIP = 0,
00074     IVIDEO_SKIP_P = 1,
00091     IVIDEO_SKIP_B = 2,
00099     IVIDEO_SKIP_I = 3,
00100     IVIDEO_SKIP_IP = 4,
00101     IVIDEO_SKIP_IB = 5,
00102     IVIDEO_SKIP_PB = 6,
00103     IVIDEO_SKIP_IPB = 7,
00104     IVIDEO_SKIP_IDR = 8,
00105     IVIDEO_SKIP_NONREFERENCE = 9,
00108     IVIDEO_SKIP_DEFAULT = IVIDEO_NO_SKIP
00109 } IVIDEO_FrameSkip;
00110
00123 typedef enum {
00124     IVIDEO_NA_FRAME = -1,
00125     IVIDEO_I_FRAME = 0,
00126     IVIDEO_P_FRAME = 1,
00127     IVIDEO_B_FRAME = 2,
00128     IVIDEO_IDR_FRAME = 3,
00131     IVIDEO_II_FRAME = 4,
00132     IVIDEO_IP_FRAME = 5,
00135     IVIDEO_IB_FRAME = 6,
00138     IVIDEO_PI_FRAME = 7,
00141     IVIDEO_PP_FRAME = 8,
00142     IVIDEO_PB_FRAME = 9,
00145     IVIDEO_BI_FRAME = 10,
00148     IVIDEO_BP_FRAME = 11,
00151     IVIDEO_BB_FRAME = 12,
00152     IVIDEO_MBAFF_I_FRAME = 13,
00153     IVIDEO_MBAFF_P_FRAME = 14,
00154     IVIDEO_MBAFF_B_FRAME = 15,
00155     IVIDEO_MBAFF_IDR_FRAME = 16,
00159     IVIDEO_FRAMETYPE_DEFAULT = IVIDEO_I_FRAME
00160 } IVIDEO_FrameType;
00161
00169 typedef enum {
00170     IVIDEO_CONTENTTYPE_NA = -1,
00171     IVIDEO_PROGRESSIVE = 0,
00172     IVIDEO_PROGRESSIVE_FRAME = IVIDEO_PROGRESSIVE,
00173     IVIDEO_INTERLACED = 1,
00174     IVIDEO_INTERLACED_FRAME = IVIDEO_INTERLACED,
00175     IVIDEO_INTERLACED_TOPFIELD = 2,
00176     IVIDEO_INTERLACED_BOTTOMFIELD = 3,
00179     IVIDEO_CONTENTTYPE_DEFAULT = IVIDEO_PROGRESSIVE
00180 } IVIDEO_ContentType;
00181
00182
00190 typedef enum {
00191     IVIDEO_LOW_DELAY = 1,
00192     IVIDEO_STORAGE = 2,
00195     IVIDEO_TWOPASS = 3,
00198     IVIDEO_NONE = 4,
00201     IVIDEO_USER_DEFINED = 5,
00206     IVIDEO_RATECONTROLPRESET_DEFAULT = IVIDEO_LOW_DELAY
00207 } IVIDEO_RateControlPreset;
00208
00209
00217 typedef enum {
00218     IVIDEO_FRAME_ENCODED = 0,
00219     IVIDEO_FRAME_SKIPPED = 1,
00225     IVIDEO_SKIPMODE_DEFAULT = IVIDEO_FRAME_ENCODED
00226 } IVIDEO_SkipMode;
00227
00228
00245 typedef enum {
00246     IVIDEO_FRAME_NOERROR = 0,
00248     IVIDEO_FRAME_NOTAVAILABLE = 1,
00251     IVIDEO_FRAME_ERROR = 2,
00272     IVIDEO_FRAME_OUTPUTSKIP = 3,
00277     IVIDEO_OUTPUTFRAMESTATUS_DEFAULT = IVIDEO_FRAME_NOERROR
00278 } IVIDEO_OutputFrameStatus;
00279
00287 typedef enum {
00288     IVIDEO_NA_PICTURE = -1,
00289     IVIDEO_I_PICTURE = 0,
00290     IVIDEO_P_PICTURE = 1,
00291     IVIDEO_B_PICTURE = 2,
00293     IVIDEO_PICTURE_TYPE_DEFAULT = IVIDEO_I_PICTURE
00294 } IVIDEO_PictureType;
00295
00296
00304 typedef enum {
00305     IVIDEO_MPEG1 = 1,
00306     IVIDEO_MPEG2SP = 2,
00307     IVIDEO_MPEG2MP = 3,
00308     IVIDEO_MPEG2HP = 4,
00309     IVIDEO_MPEG4SP = 5,
00310     IVIDEO_MPEG4ASP = 6,
00311     IVIDEO_H264BP = 7,
00312     IVIDEO_H264MP = 8,
00313     IVIDEO_H264HP = 9,
00314     IVIDEO_VC1SP = 10,
00315     IVIDEO_VC1MP = 11,
00316     IVIDEO_VC1AP = 12,
00317     IVIDEO_H264RCDO = 13,
00318     IVIDEO_RV8 = 14,
00319     IVIDEO_RV9 = 15,
00320     IVIDEO_RV10 = IVIDEO_RV9,
00321     IVIDEO_ON2VP6 = 16,
00322     IVIDEO_ON2VP7 = 17,
00323     IVIDEO_AVS10 = 18,
00324     IVIDEO_SORENSONSPARK = 19,
00325     IVIDEO_H263_PROFILE0 = 20,
00326     IVIDEO_H263_PROFILE3 = 21,
00327     IVIDEO_H264SVC = 22,
00328     IVIDEO_MULTIVIEW = 23,
00329     IVIDEO_MJPEG = 24
00330 } IVIDEO_Format;
00331
00332
00336 typedef struct IVIDEO_BufDesc {
00337     XDAS_Int32  numBufs;
00338     XDAS_Int32  width;
00339     XDAS_Int8  *bufs[XDM_MAX_IO_BUFFERS];
00342     XDAS_Int32  bufSizes[XDM_MAX_IO_BUFFERS];
00345 } IVIDEO_BufDesc;
00346
00350 typedef struct IVIDEO1_BufDescIn {
00351     XDAS_Int32  numBufs;
00352     XDAS_Int32  frameWidth;
00353     XDAS_Int32  frameHeight;
00354     XDAS_Int32  framePitch;
00359     XDM1_SingleBufDesc bufDesc[XDM_MAX_IO_BUFFERS];
00360 } IVIDEO1_BufDescIn;
00361
00362
00366 #define IVIDEO_MAX_YUV_BUFFERS  3
00367
00371 typedef struct IVIDEO1_BufDesc {
00372     XDAS_Int32  numBufs;
00373     XDAS_Int32  frameWidth;
00374     XDAS_Int32  frameHeight;
00375     XDAS_Int32  framePitch;
00380     XDM1_SingleBufDesc bufDesc[IVIDEO_MAX_YUV_BUFFERS];
00381     XDAS_Int32 extendedError;
00382     XDAS_Int32 frameType;
00386     XDAS_Int32 topFieldFirstFlag;
00399     XDAS_Int32 repeatFirstFieldFlag;
00412     XDAS_Int32 frameStatus;
00419     XDAS_Int32 repeatFrame;
00446     XDAS_Int32 contentType;
00460     XDAS_Int32 chromaFormat;
00464 } IVIDEO1_BufDesc;
00465
00475 typedef enum {
00476     IVIDEO_FIELD_INTERLEAVED = 0,
00477     IVIDEO_FIELD_SEPARATED = 1,
00478     IVIDEO_TOP_ONLY = 2,
00479     IVIDEO_BOTTOM_ONLY = 3
00480 } IVIDEO_VideoLayout;
00481
00495 typedef enum {
00496     IVIDEO_DECODE_ONLY = 0,
00497     IVIDEO_ENCODE_ONLY = 1,
00498     IVIDEO_TRANSCODE_FRAMELEVEL = 2,
00502     IVIDEO_TRANSCODE_MBLEVEL = 3,
00506     IVIDEO_TRANSRATE_FRAMELEVEL = 4,
00510     IVIDEO_TRANSRATE_MBLEVEL = 5
00514 } IVIDEO_OperatingMode;
00515
00525 typedef enum {
00526     IVIDEO_YUVRANGE_FULL = 0,
00527     IVIDEO_YUVRANGE_ITU = 1
00528 } IVIDEO_BitRange;
00529
00542 typedef enum {
00543     IVIDEO_FIXEDLENGTH = 0,
00544     IVIDEO_SLICEMODE = 1,
00545     IVIDEO_NUMROWS = 2,
00546     IVIDEO_ENTIREFRAME = 3
00547 } IVIDEO_DataMode;
00548
00549
00555 typedef enum {
00556     IVIDEO_ERRORINFO_OFF  = 0,
00559     IVIDEO_ERRORINFO_ON_INPUT  = 1,
00562     IVIDEO_ERRORINFO_ON_OUTPUT  = 2,
00565     IVIDEO_ERRORINFO_ON_BOTH  = 3,
00570     IVIDEO_ERRORINFO_MODE_DEFAULT = IVIDEO_ERRORINFO_OFF
00571
00572 } IVIDEO_ErrorInfoMode;
00573
00577 #define IVIDEO_MAX_NUM_PLANES           3
00578 #define IVIDEO_MAX_NUM_METADATA_PLANES  3
00586 /*
00587  *  @brief      Metadata types
00588  *
00589  *  @enumWarning
00590  *
00591  *  @extendedEnum
00592  */
00593 typedef enum {
00594     IVIDEO_METADATAPLANE_NONE = -1,
00597     IVIDEO_METADATAPLANE_MBINFO = 0,
00603     IVIDEO_METADATAPLANE_EINFO = 1,
00609     IVIDEO_METADATAPLANE_ALPHA = 2
00616 } IVIDEO_MetadataType;
00617
00621 typedef struct IVIDEO2_BufDesc {
00622     XDAS_Int32 numPlanes;
00629     XDAS_Int32 numMetaPlanes;
00636     XDAS_Int32 dataLayout;
00643     XDM2_SingleBufDesc planeDesc[IVIDEO_MAX_NUM_PLANES];
00644     XDM2_SingleBufDesc metadataPlaneDesc[IVIDEO_MAX_NUM_METADATA_PLANES];
00650     XDAS_Int32  secondFieldOffsetWidth[IVIDEO_MAX_NUM_PLANES];
00663     XDAS_Int32  secondFieldOffsetHeight[IVIDEO_MAX_NUM_PLANES];
00675     XDAS_Int32  imagePitch[IVIDEO_MAX_NUM_PLANES];
00678     XDM_Rect    imageRegion;
00681     XDM_Rect    activeFrameRegion;
00684     XDAS_Int32  extendedError;
00689     XDAS_Int32 frameType;
00696     XDAS_Int32 topFieldFirstFlag;
00709     XDAS_Int32 repeatFirstFieldFlag;   /* not required for encoder input buffer */
00722     XDAS_Int32 frameStatus;       /* not required for encoder input buffer */
00729     XDAS_Int32 repeatFrame;         /* not required for encoder input buffer */
00756     XDAS_Int32 contentType;
00770     XDAS_Int32 chromaFormat;
00774     XDAS_Int32 scalingWidth;
00784     XDAS_Int32 scalingHeight;
00791     XDAS_Int32 rangeMappingLuma;
00800     XDAS_Int32 rangeMappingChroma;
00809     XDAS_Int32 enableRangeReductionFlag;
00820 } IVIDEO2_BufDesc;
00821
00822
00825 #ifdef __cplusplus
00826 }
00827 #endif
00828
00829 #endif
00830 /*
00831  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00832  */
00833


Codec Engine Application Programming Interface (API): ividtranscode.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

ividtranscode.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00047 #ifndef ti_xdais_dm_IVIDTRANSCODE_
00048 #define ti_xdais_dm_IVIDTRANSCODE_
00049
00050 #include <ti/xdais/ialg.h>
00051 #include <ti/xdais/xdas.h>
00052 #include "xdm.h"
00053 #include "ivideo.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00061
00062 #define IVIDTRANSCODE_EOK       XDM_EOK
00063 #define IVIDTRANSCODE_EFAIL     XDM_EFAIL
00064 #define IVIDTRANSCODE_EUNSUPPORTED XDM_EUNSUPPORTED
00066 #define IVIDTRANSCODE_MAXOUTSTREAMS 2
00072 typedef struct IVIDTRANSCODE_Obj {
00073     struct IVIDTRANSCODE_Fxns *fxns;
00074 } IVIDTRANSCODE_Obj;
00075
00076
00080 typedef struct IVIDTRANSCODE_Obj  *IVIDTRANSCODE_Handle;
00081
00082
00089 typedef struct IVIDTRANSCODE_Params {
00090     XDAS_Int32 size;
00091     XDAS_Int32 numOutputStreams;
00096     XDAS_Int32 formatInput;
00104     XDAS_Int32 formatOutput[IVIDTRANSCODE_MAXOUTSTREAMS];
00114     XDAS_Int32 maxHeightInput;
00115     XDAS_Int32 maxWidthInput;
00116     XDAS_Int32 maxFrameRateInput;
00121     XDAS_Int32 maxBitRateInput;
00125     XDAS_Int32 maxHeightOutput[IVIDTRANSCODE_MAXOUTSTREAMS];
00128     XDAS_Int32 maxWidthOutput[IVIDTRANSCODE_MAXOUTSTREAMS];
00131     XDAS_Int32 maxFrameRateOutput[IVIDTRANSCODE_MAXOUTSTREAMS];
00138     XDAS_Int32 maxBitRateOutput[IVIDTRANSCODE_MAXOUTSTREAMS];
00145     XDAS_Int32 dataEndianness;
00149 } IVIDTRANSCODE_Params;
00150
00151
00166 typedef struct IVIDTRANSCODE_DynamicParams {
00167     XDAS_Int32 size;
00168     XDAS_Int32 readHeaderOnlyFlag;
00174     XDAS_Int32 keepInputResolutionFlag[IVIDTRANSCODE_MAXOUTSTREAMS];
00183     XDAS_Int32 outputHeight[IVIDTRANSCODE_MAXOUTSTREAMS];
00192     XDAS_Int32 outputWidth[IVIDTRANSCODE_MAXOUTSTREAMS];
00201     XDAS_Int32 keepInputFrameRateFlag[IVIDTRANSCODE_MAXOUTSTREAMS];
00209     XDAS_Int32 inputFrameRate;
00220     XDAS_Int32 outputFrameRate[IVIDTRANSCODE_MAXOUTSTREAMS];
00232     XDAS_Int32 targetBitRate[IVIDTRANSCODE_MAXOUTSTREAMS];
00236     XDAS_Int32 rateControl[IVIDTRANSCODE_MAXOUTSTREAMS];
00242     XDAS_Int32 keepInputGOPFlag[IVIDTRANSCODE_MAXOUTSTREAMS];
00249     XDAS_Int32 intraFrameInterval[IVIDTRANSCODE_MAXOUTSTREAMS];
00266     XDAS_Int32 interFrameInterval[IVIDTRANSCODE_MAXOUTSTREAMS];
00286     XDAS_Int32 forceFrame[IVIDTRANSCODE_MAXOUTSTREAMS];
00310     XDAS_Int32 frameSkipTranscodeFlag[IVIDTRANSCODE_MAXOUTSTREAMS];
00323 } IVIDTRANSCODE_DynamicParams;
00324
00325
00334 typedef struct IVIDTRANSCODE_InArgs {
00335     XDAS_Int32 size;
00336     XDAS_Int32 numBytes;
00339     XDAS_Int32 inputID;
00344 } IVIDTRANSCODE_InArgs;
00345
00346
00354 typedef struct IVIDTRANSCODE_Status {
00355     XDAS_Int32 size;
00356     XDAS_Int32 extendedError;
00357     XDM1_SingleBufDesc data;
00378     XDM_AlgBufInfo bufInfo;
00390 } IVIDTRANSCODE_Status;
00391
00392
00401 typedef struct IVIDTRANSCODE_OutArgs {
00402     XDAS_Int32 size;
00403     XDAS_Int32 extendedError;
00404     XDAS_Int32 bitsConsumed;
00407     XDAS_Int32 bitsGenerated[IVIDTRANSCODE_MAXOUTSTREAMS];
00412     XDAS_Int32 decodedPictureType;
00416     XDAS_Int32 decodedPictureStructure;
00420     XDAS_Int32 encodedPictureType[IVIDTRANSCODE_MAXOUTSTREAMS];
00425     XDAS_Int32 encodedPictureStructure[IVIDTRANSCODE_MAXOUTSTREAMS];
00431     XDAS_Int32 decodedHeight;
00432     XDAS_Int32 decodedWidth;
00433     XDAS_Int32 outputID[IVIDTRANSCODE_MAXOUTSTREAMS];
00446     XDAS_Int32 inputFrameSkipTranscodeFlag[IVIDTRANSCODE_MAXOUTSTREAMS];
00454     XDM1_SingleBufDesc encodedBuf[IVIDTRANSCODE_MAXOUTSTREAMS];
00460     XDAS_Int32 outBufsInUseFlag;
00470 } IVIDTRANSCODE_OutArgs;
00471
00472
00483 typedef  IALG_Cmd IVIDTRANSCODE_Cmd;
00484
00485
00489 typedef struct IVIDTRANSCODE_Fxns {
00490     IALG_Fxns   ialg;
00559     XDAS_Int32 (*process)(IVIDTRANSCODE_Handle handle, XDM1_BufDesc *inBufs,
00560         XDM_BufDesc *outBufs, IVIDTRANSCODE_InArgs *inArgs,
00561         IVIDTRANSCODE_OutArgs *outArgs);
00562
00563
00599     XDAS_Int32 (*control)(IVIDTRANSCODE_Handle handle, IVIDTRANSCODE_Cmd id,
00600         IVIDTRANSCODE_DynamicParams *params, IVIDTRANSCODE_Status *status);
00601
00602 } IVIDTRANSCODE_Fxns;
00603
00604
00607 #ifdef __cplusplus
00608 }
00609 #endif
00610
00611 #endif
00612 /*
00613  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00614  */
00615


Codec Engine Application Programming Interface (API): Page Index

Related Pages

Here is a list of all related documentation pages:
  • Remote Command Message Overview
  • Disclaimer
  • Todo List
  • Deprecated List


Codec Engine Application Programming Interface (API): sphdec1.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • speech1

sphdec1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== sphdec1.h ========
00035  */
00051 #ifndef ti_sdo_ce_speech1_SPHDEC1_
00052 #define ti_sdo_ce_speech1_SPHDEC1_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 #include <ti/xdais/dm/xdm.h>
00059 #include <ti/xdais/dm/isphdec1.h>
00060
00061 #include <ti/sdo/ce/Engine.h>
00062 #include <ti/sdo/ce/visa.h>
00063 #include <ti/sdo/ce/skel.h>
00064
00067
00069 #define SPHDEC1_EOK ISPHDEC1_EOK
00070
00072 #define SPHDEC1_EFAIL ISPHDEC1_EFAIL
00073
00075 #define SPHDEC1_EUNSUPPORTED ISPHDEC1_EUNSUPPORTED
00076
00078 #define SPHDEC1_ETIMEOUT VISA_ETIMEOUT
00079
00081 #define SPHDEC1_FOREVER  VISA_FOREVER
00082
00083
00087 typedef VISA_Handle SPHDEC1_Handle;
00088
00089 /* The following are just wrapper typedefs */
00090
00092 typedef ISPHDEC1_Params SPHDEC1_Params;
00093
00095 typedef ISPHDEC1_InArgs SPHDEC1_InArgs;
00096
00098 typedef ISPHDEC1_OutArgs SPHDEC1_OutArgs;
00099
00101 typedef ISPHDEC1_Cmd SPHDEC1_Cmd;
00102
00104 typedef ISPHDEC1_DynamicParams SPHDEC1_DynamicParams;
00105
00107 typedef ISPHDEC1_Status SPHDEC1_Status;
00108
00115 extern SKEL_Fxns SPHDEC1_SKEL;
00116
00120 extern ISPHDEC1_Fxns SPHDEC1_STUBS;
00121
00125 /*
00126  *  ======== SPHDEC1_control ========
00127  */
00151 extern Int32 SPHDEC1_control(SPHDEC1_Handle handle, SPHDEC1_Cmd id,
00152     SPHDEC1_DynamicParams *params, SPHDEC1_Status *status);
00153
00154
00155 /*
00156  *  ======== SPHDEC1_create ========
00157  */
00186 extern SPHDEC1_Handle SPHDEC1_create(Engine_Handle e, String name,
00187     SPHDEC1_Params *params);
00188
00189
00190 /*
00191  *  ======== SPHDEC1_delete ========
00192  */
00210 extern Void SPHDEC1_delete(SPHDEC1_Handle handle);
00211
00212
00213 /*
00214  *  ======== SPHDEC1_process ========
00215  */
00254 extern Int32 SPHDEC1_process(SPHDEC1_Handle handle,
00255     XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf,
00256     SPHDEC1_InArgs *inArgs, SPHDEC1_OutArgs *outArgs);
00257
00258
00259 /*
00260  *  ======== SPHDEC1_processAsync ========
00261  */
00298 extern XDAS_Int32 SPHDEC1_processAsync(SPHDEC1_Handle handle,
00299     XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf,
00300     SPHDEC1_InArgs *inArgs, SPHDEC1_OutArgs *outArgs);
00301
00302 /*
00303  *  ======== SPHDEC1_processWait ========
00304  */
00347 extern XDAS_Int32 SPHDEC1_processWait(SPHDEC1_Handle handle,
00348     XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf,
00349     SPHDEC1_InArgs *inArgs, SPHDEC1_OutArgs *outArgs, UInt timeout);
00350
00351
00354 #ifdef __cplusplus
00355 }
00356 #endif
00357
00358 #endif
00359 /*
00360  *  @(#) ti.sdo.ce.speech1; 1, 0, 1,274; 2-9-2011 08:56:58; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00361
00362  */
00363


Codec Engine Application Programming Interface (API): sphdec.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • speech

sphdec.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== sphdec.h ========
00035  */
00052 #ifndef ti_sdo_ce_speech_SPHDEC_
00053 #define ti_sdo_ce_speech_SPHDEC_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 /*
00060  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00061  * define XDM_INCLUDE_DOT9_SUPPORT
00062  */
00063 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00064 #define XDM_INCLUDE_DOT9_SUPPORT
00065 #endif
00066 #include <ti/xdais/dm/xdm.h>
00067 #include <ti/xdais/dm/isphdec.h>
00068
00069 #include <ti/sdo/ce/Engine.h>
00070 #include <ti/sdo/ce/visa.h>
00071 #include <ti/sdo/ce/skel.h>
00072
00075
00076 typedef ISPHDEC_Status SPHDEC_Status;
00078 #define SPHDEC_EOK      ISPHDEC_EOK
00079 #define SPHDEC_EFAIL    ISPHDEC_EFAIL
00080 #define SPHDEC_ERUNTIME ISPHDEC_ERUNTIME
00081 #define SPHDEC_ETIMEOUT VISA_ETIMEOUT
00082 #define SPHDEC_FOREVER  VISA_FOREVER
00087 typedef VISA_Handle SPHDEC_Handle;
00088
00093 typedef struct ISPHDEC_Params SPHDEC_Params;
00094
00098 typedef ISPHDEC_InArgs          SPHDEC_InArgs;
00099
00103 typedef ISPHDEC_OutArgs         SPHDEC_OutArgs;
00104
00108 typedef ISPHDEC_Cmd             SPHDEC_Cmd;
00109
00113 typedef ISPHDEC_DynamicParams   SPHDEC_DynamicParams;
00114
00121 extern SKEL_Fxns SPHDEC_SKEL;
00122
00126 extern ISPHDEC_Fxns SPHDEC_STUBS;
00127
00130 /*
00131  *  ======== SPHDEC_create ========
00132  */
00157 extern SPHDEC_Handle SPHDEC_create(Engine_Handle e, String name,
00158         SPHDEC_Params *params);
00159
00160
00161 /*
00162  *  ======== SPHDEC_process ========
00163  */
00202 extern Int32 SPHDEC_process(SPHDEC_Handle handle,
00203         XDM_BufDesc *inBufs, XDM_BufDesc *outBufs,
00204         SPHDEC_InArgs *inArgs, SPHDEC_OutArgs *outArgs);
00205
00206
00207 /*
00208  *  ======== SPHDEC_control ========
00209  */
00233 extern Int32 SPHDEC_control(SPHDEC_Handle handle, SPHDEC_Cmd id,
00234         SPHDEC_DynamicParams *params, SPHDEC_Status *status);
00235
00236
00237 /*
00238  *  ======== SPHDEC_delete ========
00239  */
00257 extern Void SPHDEC_delete(SPHDEC_Handle handle);
00258
00259
00260 /*
00261  *  ======== SPHDEC_processAsync ========
00262  */
00299 extern XDAS_Int32 SPHDEC_processAsync(SPHDEC_Handle handle, XDM_BufDesc *inBufs,
00300         XDM_BufDesc *outBufs, SPHDEC_InArgs *inArgs, SPHDEC_OutArgs *outArgs);
00301
00302
00303 /*
00304  *  ======== SPHDEC_processWait ========
00305  */
00348 extern XDAS_Int32 SPHDEC_processWait(SPHDEC_Handle handle, XDM_BufDesc *inBufs,
00349     XDM_BufDesc *outBufs, SPHDEC_InArgs *inArgs, SPHDEC_OutArgs *outArgs,
00350     UInt timeout);
00351
00352
00355 #ifdef __cplusplus
00356 }
00357 #endif
00358
00359 #endif
00360 /*
00361  *  @(#) ti.sdo.ce.speech; 1, 0, 2,414; 2-9-2011 08:56:56; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00362
00363  */
00364


Codec Engine Application Programming Interface (API): sphenc1.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • speech1

sphenc1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== sphenc1.h ========
00035  */
00051 #ifndef ti_sdo_ce_speech1_SPHENC1_
00052 #define ti_sdo_ce_speech1_SPHENC1_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 #include <ti/xdais/dm/xdm.h>
00059 #include <ti/xdais/dm/isphenc1.h>
00060
00061 #include <ti/sdo/ce/Engine.h>
00062 #include <ti/sdo/ce/visa.h>
00063 #include <ti/sdo/ce/skel.h>
00064
00067
00068 #define SPHENC1_EOK      ISPHENC1_EOK
00069 #define SPHENC1_EFAIL    ISPHENC1_EFAIL
00072 #define SPHENC1_EUNSUPPORTED ISPHENC1_EUNSUPPORTED
00073
00074 #define SPHENC1_ETIMEOUT VISA_ETIMEOUT
00075 #define SPHENC1_FOREVER  VISA_FOREVER
00081 typedef VISA_Handle SPHENC1_Handle;
00082
00083 /* The following are just wrapper typedefs */
00084
00086 typedef ISPHENC1_Params SPHENC1_Params;
00087
00089 typedef ISPHENC1_InArgs  SPHENC1_InArgs;
00090
00092 typedef ISPHENC1_OutArgs SPHENC1_OutArgs;
00093
00095 typedef ISPHENC1_Cmd     SPHENC1_Cmd;
00096
00098 typedef ISPHENC1_DynamicParams SPHENC1_DynamicParams;
00099
00101 typedef ISPHENC1_Status SPHENC1_Status;
00102
00109 extern SKEL_Fxns SPHENC1_SKEL;
00110
00114 extern ISPHENC1_Fxns SPHENC1_STUBS;
00115
00119 /*
00120  *  ======== SPHENC1_control ========
00121  */
00149 extern Int32 SPHENC1_control(SPHENC1_Handle handle, SPHENC1_Cmd id,
00150     SPHENC1_DynamicParams *params, SPHENC1_Status *status);
00151
00152
00153 /*
00154  *  ======== SPHENC1_create ========
00155  */
00184 extern SPHENC1_Handle SPHENC1_create(Engine_Handle e, String name,
00185     SPHENC1_Params *params);
00186
00187
00188 /*
00189  *  ======== SPHENC1_delete ========
00190  */
00208 extern Void SPHENC1_delete(SPHENC1_Handle handle);
00209
00210
00211 /*
00212  *  ======== SPHENC1_process ========
00213  */
00258 extern Int32 SPHENC1_process(SPHENC1_Handle handle,
00259     XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf,
00260     SPHENC1_InArgs *inArgs, SPHENC1_OutArgs *outArgs);
00261
00262
00263 /*
00264  *  ======== SPHENC1_processAsync ========
00265  */
00302 extern XDAS_Int32 SPHENC1_processAsync(SPHENC1_Handle handle,
00303     XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf,
00304     SPHENC1_InArgs *inArgs, SPHENC1_OutArgs *outArgs);
00305
00306
00307 /*
00308  *  ======== SPHENC1_processWait ========
00309  */
00352 extern XDAS_Int32 SPHENC1_processWait(SPHENC1_Handle handle,
00353     XDM1_SingleBufDesc *inBuf, XDM1_SingleBufDesc *outBuf,
00354     SPHENC1_InArgs *inArgs, SPHENC1_OutArgs *outArgs, UInt timeout);
00355
00356
00359 #ifdef __cplusplus
00360 }
00361 #endif
00362
00363 #endif
00364 /*
00365  *  @(#) ti.sdo.ce.speech1; 1, 0, 1,274; 2-9-2011 08:56:58; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00366
00367  */
00368


Codec Engine Application Programming Interface (API): sphenc.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • speech

sphenc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== sphenc.h ========
00035  */
00052 #ifndef ti_sdo_ce_speech_SPHENC_
00053 #define ti_sdo_ce_speech_SPHENC_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 /*
00060  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00061  * define XDM_INCLUDE_DOT9_SUPPORT
00062  */
00063 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00064 #define XDM_INCLUDE_DOT9_SUPPORT
00065 #endif
00066 #include <ti/xdais/dm/xdm.h>
00067 #include <ti/xdais/dm/isphenc.h>
00068
00069 #include <ti/sdo/ce/Engine.h>
00070 #include <ti/sdo/ce/visa.h>
00071 #include <ti/sdo/ce/skel.h>
00072
00075
00076 typedef ISPHENC_Status SPHENC_Status;
00078 #define SPHENC_EOK      ISPHENC_EOK
00079 #define SPHENC_EFAIL    ISPHENC_EFAIL
00080 #define SPHENC_ERUNTIME ISPHENC_ERUNTIME
00081 #define SPHENC_ETIMEOUT VISA_ETIMEOUT
00082 #define SPHENC_FOREVER  VISA_FOREVER
00087 typedef VISA_Handle SPHENC_Handle;
00088
00093 typedef struct ISPHENC_Params SPHENC_Params;
00094
00098 typedef ISPHENC_InArgs          SPHENC_InArgs;
00099
00103 typedef ISPHENC_OutArgs         SPHENC_OutArgs;
00104
00108 typedef ISPHENC_Cmd             SPHENC_Cmd;
00109
00113 typedef ISPHENC_DynamicParams   SPHENC_DynamicParams;
00114
00121 extern SKEL_Fxns SPHENC_SKEL;
00122
00126 extern ISPHENC_Fxns SPHENC_STUBS;
00127
00130 /*
00131  *  ======== SPHENC_create ========
00132  */
00157 extern SPHENC_Handle SPHENC_create(Engine_Handle e, String name,
00158         SPHENC_Params *params);
00159
00160
00161 /*
00162  *  ======== SPHENC_process ========
00163  */
00202 extern Int32 SPHENC_process(SPHENC_Handle handle,
00203         XDM_BufDesc *inBufs, XDM_BufDesc *outBufs,
00204         SPHENC_InArgs *inArgs, SPHENC_OutArgs *outArgs);
00205
00206
00207 /*
00208  *  ======== SPHENC_control ========
00209  */
00233 extern Int32 SPHENC_control(SPHENC_Handle handle, SPHENC_Cmd id,
00234        SPHENC_DynamicParams *params, SPHENC_Status *status);
00235
00236
00237 /*
00238  *  ======== SPHENC_delete ========
00239  */
00257 extern Void SPHENC_delete(SPHENC_Handle handle);
00258
00259
00260 /*
00261  *  ======== SPHENC_processAsync ========
00262  */
00299 extern XDAS_Int32 SPHENC_processAsync(SPHENC_Handle handle, XDM_BufDesc *inBufs,
00300         XDM_BufDesc *outBufs, ISPHENC_InArgs *inArgs, ISPHENC_OutArgs *outArgs);
00301
00302
00303 /*
00304  *  ======== SPHENC_processWait ========
00305  */
00348 extern XDAS_Int32 SPHENC_processWait(SPHENC_Handle handle, XDM_BufDesc *inBufs,
00349     XDM_BufDesc *outBufs, ISPHENC_InArgs *inArgs, ISPHENC_OutArgs *outArgs,
00350     UInt timeout);
00351
00352
00355 #ifdef __cplusplus
00356 }
00357 #endif
00358
00359 #endif
00360 /*
00361  *  @(#) ti.sdo.ce.speech; 1, 0, 2,414; 2-9-2011 08:56:56; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00362
00363  */
00364


Codec Engine Application Programming Interface (API): ividdec2.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm
  • split

split/ividdec2.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_split_IVIDDEC2_
00047 #define ti_xdais_dm_split_IVIDDEC2_
00048
00049 #include <ti/xdais/ialg.h>
00050 #include <ti/xdais/xdas.h>
00051 #include "../xdm.h"
00052
00053 #include "../ividdec2.h"
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059
00062
00067 typedef struct IVIDDEC2FRONT_Obj {
00068     struct IVIDDEC2FRONT_Fxns *fxns;
00069 } IVIDDEC2FRONT_Obj;
00070
00071
00075 typedef struct IVIDDEC2FRONT_Obj  *IVIDDEC2FRONT_Handle;
00076
00081 typedef struct IVIDDEC2BACK_Obj {
00082     struct IVIDDEC2BACK_Fxns *fxns;
00083 } IVIDDEC2BACK_Obj;
00084
00085
00089 typedef struct IVIDDEC2BACK_Obj  *IVIDDEC2BACK_Handle;
00090
00091
00100 typedef struct IVIDDEC2FRONT_Status {
00101     XDM_ContextInfo contextInfo;
00107     XDAS_Int32 nextPartRequiredFlag;
00131     XDAS_Int32 partialExtendedError;
00141     IVIDDEC2_Status fullStatus;
00226 } IVIDDEC2FRONT_Status;
00227
00228
00237 typedef struct IVIDDEC2FRONT_OutArgs {
00238     XDAS_Int32 size;
00239     XDAS_Int32 extendedError;
00240     XDAS_Int32 bytesConsumed;
00243 } IVIDDEC2FRONT_OutArgs;
00244
00245
00249 typedef struct IVIDDEC2FRONT_Fxns {
00250     IALG_Fxns   ialg;
00350     XDAS_Int32 (*process)(IVIDDEC2FRONT_Handle handle, IVIDDEC2_InArgs *inArgs,
00351         XDM_Context *context, IVIDDEC2FRONT_OutArgs *outArgs);
00352
00353
00398     XDAS_Int32 (*control)(IVIDDEC2FRONT_Handle handle, IVIDDEC2_Cmd id,
00399         IVIDDEC2_DynamicParams *params, XDM_Context *context,
00400         IVIDDEC2FRONT_Status *status);
00401
00402 } IVIDDEC2FRONT_Fxns;
00403
00404
00408 typedef struct IVIDDEC2BACK_Fxns {
00409     IALG_Fxns   ialg;
00443     XDAS_Int32 (*process)(IVIDDEC2BACK_Handle handle, XDM_Context *context,
00444         IVIDDEC2_OutArgs *outArgs);
00445
00446
00477     XDAS_Int32 (*control)(IVIDDEC2BACK_Handle handle,
00478         XDM_Context *context, IVIDDEC2_Status *status);
00479
00480 } IVIDDEC2BACK_Fxns;
00481
00482
00485 #ifdef __cplusplus
00486 }
00487 #endif
00488
00489 #endif
00490 /*
00491  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00492  */
00493


Codec Engine Application Programming Interface (API): viddec2.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video2
  • split

split/viddec2.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== viddec2.h ========
00035  */
00052 #ifndef ti_sdo_ce_video2_split_VIDDEC2_
00053 #define ti_sdo_ce_video2_split_VIDDEC2_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/split/ividdec2.h>
00061
00062
00063 #include <ti/sdo/ce/Engine.h>
00064 #include <ti/sdo/ce/visa.h>
00065 #include <ti/sdo/ce/skel.h>
00066 #include <ti/sdo/ce/video2/viddec2.h>
00067
00070
00074 typedef IVIDDEC2FRONT_Status VIDDEC2FRONT_Status;
00075
00076
00080 typedef VISA_Handle VIDDEC2FRONT_Handle;
00081
00082
00086 typedef VISA_Handle VIDDEC2BACK_Handle;
00087
00088
00092 typedef IVIDDEC2FRONT_OutArgs    VIDDEC2FRONT_OutArgs;
00093
00100 extern SKEL_Fxns VIDDEC2FRONT_SKEL;
00101
00106 extern IVIDDEC2FRONT_Fxns VIDDEC2FRONT_STUBS;
00107
00112 extern SKEL_Fxns VIDDEC2BACK_SKEL;
00113
00118 extern IVIDDEC2BACK_Fxns VIDDEC2BACK_STUBS;
00119
00125 typedef struct IVIDDEC2BACK_CodecClassConfig {
00126     Bool manageInBufsCache          [ XDM_MAX_CONTEXT_BUFFERS ];
00127     Bool manageOutBufsCache         [ XDM_MAX_CONTEXT_BUFFERS ];
00128     Bool manageIntermediateBufsCache[ XDM_MAX_CONTEXT_BUFFERS ];
00129 } IVIDDEC2BACK_CodecClassConfig;
00130
00131 /*
00132  *  ======== VIDDEC2BACK_create ========
00133  */
00158 extern VIDDEC2BACK_Handle VIDDEC2BACK_create(Engine_Handle e, String name,
00159     VIDDEC2_Params *params);
00160
00161
00162 /*
00163  *  ======== VIDDEC2BACK_process ========
00164  */
00204 extern Int32 VIDDEC2BACK_process(VIDDEC2BACK_Handle handle,
00205         XDM_Context *context, VIDDEC2_OutArgs *outArgs);
00206
00207
00208 /*
00209  *  ======== VIDDEC2BACK_control ========
00210  */
00235 extern Int32 VIDDEC2BACK_control(VIDDEC2BACK_Handle handle,
00236         XDM_Context *context, VIDDEC2_Status *status);
00237
00238 /*
00239  *  ======== VIDDEC2BACK_delete ========
00240  */
00258 extern Void VIDDEC2BACK_delete(VIDDEC2BACK_Handle handle);
00259
00260
00261 /*
00262  *  ======== VIDDEC2FRONT_create ========
00263  */
00288 extern VIDDEC2FRONT_Handle VIDDEC2FRONT_create(Engine_Handle e, String name,
00289     VIDDEC2_Params *params);
00290
00291
00292 /*
00293  *  ======== VIDDEC2FRONT_process ========
00294  */
00335 extern Int32 VIDDEC2FRONT_process(VIDDEC2FRONT_Handle handle,
00336         VIDDEC2_InArgs *inArgs, XDM_Context *context,
00337         VIDDEC2FRONT_OutArgs *outArgs);
00338
00339
00340 /*
00341  *  ======== VIDDEC2FRONT_control ========
00342  */
00369 extern Int32 VIDDEC2FRONT_control(VIDDEC2FRONT_Handle handle, VIDDEC2_Cmd id,
00370         VIDDEC2_DynamicParams *params, XDM_Context *context,
00371         VIDDEC2FRONT_Status *status);
00372
00373
00374 /*
00375  *  ======== VIDDEC2FRONT_delete ========
00376  */
00394 extern Void VIDDEC2FRONT_delete(VIDDEC2FRONT_Handle handle);
00395
00396   /* ingroup */
00398
00399 #ifdef __cplusplus
00400 }
00401 #endif
00402
00403 #endif
00404 /*
00405  *  @(#) ti.sdo.ce.video2.split; 1, 0, 0,165; 2-9-2011 08:57:49; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00406
00407  */
00408


Codec Engine Application Programming Interface (API): universal.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • universal

universal.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== universal.h ========
00035  */
00036
00052 #ifndef ti_sdo_ce_universal_UNIVERSAL_
00053 #define ti_sdo_ce_universal_UNIVERSAL_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/iuniversal.h>
00061
00062 #include <ti/sdo/ce/Engine.h>
00063 #include <ti/sdo/ce/visa.h>
00064 #include <ti/sdo/ce/skel.h>
00065
00068
00070 #define UNIVERSAL_EOK            IUNIVERSAL_EOK
00071
00073 #define UNIVERSAL_EFAIL          IUNIVERSAL_EFAIL
00074
00076 #define UNIVERSAL_EUNSUPPORTED   IUNIVERSAL_EUNSUPPORTED
00077
00079 #define UNIVERSAL_ETIMEOUT VISA_ETIMEOUT
00080
00082 #define UNIVERSAL_FOREVER  VISA_FOREVER
00083
00087 typedef VISA_Handle UNIVERSAL_Handle;
00088
00093 typedef struct IUNIVERSAL_Params UNIVERSAL_Params;
00094
00096 typedef IUNIVERSAL_InArgs  UNIVERSAL_InArgs;
00098 typedef IUNIVERSAL_OutArgs UNIVERSAL_OutArgs;
00100 typedef IUNIVERSAL_Cmd     UNIVERSAL_Cmd;
00102 typedef IUNIVERSAL_Status  UNIVERSAL_Status;
00103
00105 typedef IUNIVERSAL_DynamicParams UNIVERSAL_DynamicParams;
00106
00107
00114 extern SKEL_Fxns UNIVERSAL_SKEL;
00115
00120 extern IUNIVERSAL_Fxns UNIVERSAL_STUBS;
00121
00125 /*
00126  *  ======== UNIVERSAL_control ========
00127  */
00152 extern Int32 UNIVERSAL_control(UNIVERSAL_Handle handle,
00153     UNIVERSAL_Cmd id, UNIVERSAL_DynamicParams *params,
00154     UNIVERSAL_Status *status);
00155
00156
00157 /*
00158  *  ======== UNIVERSAL_create ========
00159  */
00188 extern UNIVERSAL_Handle UNIVERSAL_create(Engine_Handle e, String name,
00189     UNIVERSAL_Params *params);
00190
00191
00192 /*
00193  *  ======== UNIVERSAL_delete ========
00194  */
00212 extern Void UNIVERSAL_delete(UNIVERSAL_Handle handle);
00213
00214
00215 /*
00216  *  ======== UNIVERSAL_process ========
00217  */
00258 extern Int32 UNIVERSAL_process(UNIVERSAL_Handle handle,
00259         XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs,
00260         UNIVERSAL_InArgs *inArgs, UNIVERSAL_OutArgs *outArgs);
00261
00262 /*
00263  *  ======== UNIVERSAL_processAsync ========
00264  */
00303 extern XDAS_Int32 UNIVERSAL_processAsync(UNIVERSAL_Handle handle,
00304         XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs,
00305         IUNIVERSAL_InArgs *inArgs, IUNIVERSAL_OutArgs *outArgs);
00306
00307 /*
00308  *  ======== UNIVERSAL_processWait ========
00309  */
00354 extern XDAS_Int32 UNIVERSAL_processWait(UNIVERSAL_Handle handle,
00355         XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, XDM1_BufDesc *inOutBufs,
00356         IUNIVERSAL_InArgs *inArgs, IUNIVERSAL_OutArgs *outArgs, UInt timeout);
00357
00360 #ifdef __cplusplus
00361 }
00362 #endif
00363
00364 #endif
00365 /*
00366  *  @(#) ti.sdo.ce.universal; 1, 0, 0,140; 2-9-2011 08:57:31; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00367
00368  */
00369


Codec Engine Application Programming Interface (API): vidanalytics.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • vidanalytics

vidanalytics.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== vidtranscode.h ========
00035  */
00052 #ifndef ti_sdo_ce_vidanalytics_VIDANALYTICS_
00053 #define ti_sdo_ce_vidanalytics_VIDANALYTICS_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/ividanalytics.h>
00061
00062 #include <ti/sdo/ce/Engine.h>
00063 #include <ti/sdo/ce/visa.h>
00064 #include <ti/sdo/ce/skel.h>
00065
00068
00070 #define VIDANALYTICS_EOK IVIDANALYTICS_EOK
00071
00073 #define VIDANALYTICS_EFAIL IVIDANALYTICS_EFAIL
00074
00076 #define VIDANALYTICS_EUNSUPPORTED IVIDANALYTICS_EUNSUPPORTED
00077
00079 #define VIDANALYTICS_ETIMEOUT VISA_ETIMEOUT
00080
00082 #define VIDANALYTICS_FOREVER  VISA_FOREVER
00083
00084
00088 typedef VISA_Handle VIDANALYTICS_Handle;
00089
00090 /* The following are just wrapper typedefs */
00091
00093 typedef IVIDANALYTICS_Params VIDANALYTICS_Params;
00094
00096 typedef IVIDANALYTICS_InArgs VIDANALYTICS_InArgs;
00097
00099 typedef IVIDANALYTICS_OutArgs VIDANALYTICS_OutArgs;
00100
00102 typedef IVIDANALYTICS_Cmd VIDANALYTICS_Cmd;
00103
00105 typedef IVIDANALYTICS_DynamicParams VIDANALYTICS_DynamicParams;
00106
00108 typedef IVIDANALYTICS_Status VIDANALYTICS_Status;
00109
00116 extern SKEL_Fxns VIDANALYTICS_SKEL;
00117
00122 extern IVIDANALYTICS_Fxns VIDANALYTICS_STUBS;
00123
00127 /*
00128  *  ======== VIDANALYTICS_control ========
00129  */
00154 extern Int32 VIDANALYTICS_control(VIDANALYTICS_Handle handle,
00155     VIDANALYTICS_Cmd id, VIDANALYTICS_DynamicParams *params,
00156     VIDANALYTICS_Status *status);
00157
00158
00159 /*
00160  *  ======== VIDANALYTICS_create ========
00161  */
00190 extern VIDANALYTICS_Handle VIDANALYTICS_create(Engine_Handle e, String name,
00191     VIDANALYTICS_Params *params);
00192
00193
00194 /*
00195  *  ======== VIDANALYTICS_delete ========
00196  */
00214 extern Void VIDANALYTICS_delete(VIDANALYTICS_Handle handle);
00215
00216
00217 /*
00218  *  ======== VIDANALYTICS_process ========
00219  */
00259 extern Int32 VIDANALYTICS_process(VIDANALYTICS_Handle handle,
00260     XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, VIDANALYTICS_InArgs *inArgs,
00261     VIDANALYTICS_OutArgs *outArgs);
00262
00263 /*
00264  *  ======== VIDANALYTICS_processAsync ========
00265  */
00303 extern XDAS_Int32 VIDANALYTICS_processAsync(VIDANALYTICS_Handle handle,
00304     XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs,
00305     IVIDANALYTICS_OutArgs *outArgs);
00306
00307 /*
00308  *  ======== VIDANALYTICS_processWait ========
00309  */
00354 extern XDAS_Int32 VIDANALYTICS_processWait(VIDANALYTICS_Handle handle,
00355     XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs,
00356     IVIDANALYTICS_OutArgs *outArgs, UInt timeout);
00357
00360 #ifdef __cplusplus
00361 }
00362 #endif
00363
00364 #endif
00365 /*
00366  *  @(#) ti.sdo.ce.vidanalytics; 1, 0, 1,209; 2-9-2011 08:57:39; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00367
00368  */
00369


Codec Engine Application Programming Interface (API): viddec1.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video1

viddec1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== viddec1.h ========
00035  */
00052 #ifndef ti_sdo_ce_video1_VIDDEC1_
00053 #define ti_sdo_ce_video1_VIDDEC1_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/ividdec1.h>
00061
00062 #include <ti/sdo/ce/Engine.h>
00063 #include <ti/sdo/ce/visa.h>
00064 #include <ti/sdo/ce/skel.h>
00065
00068
00069 typedef IVIDDEC1_Status VIDDEC1_Status;
00071 #define VIDDEC1_EOK      IVIDDEC1_EOK
00072 #define VIDDEC1_EFAIL    IVIDDEC1_EFAIL
00075 #define VIDDEC1_EUNSUPPORTED IVIDDEC1_EUNSUPPORTED
00076
00077 #define VIDDEC1_ETIMEOUT VISA_ETIMEOUT
00078 #define VIDDEC1_FOREVER  VISA_FOREVER
00083 typedef VISA_Handle VIDDEC1_Handle;
00084
00089 typedef struct IVIDDEC1_Params VIDDEC1_Params;
00090
00094 typedef IVIDDEC1_InArgs          VIDDEC1_InArgs;
00095
00099 typedef IVIDDEC1_OutArgs         VIDDEC1_OutArgs;
00100
00104 typedef IVIDDEC1_Cmd             VIDDEC1_Cmd;
00105
00109 typedef IVIDDEC1_DynamicParams   VIDDEC1_DynamicParams;
00110
00117 extern SKEL_Fxns VIDDEC1_SKEL;
00118
00122 extern IVIDDEC1_Fxns VIDDEC1_STUBS;
00123
00131 typedef struct IVIDDEC1_CodecClassConfig {
00132     Bool manageInBufsCache     [ XDM_MAX_IO_BUFFERS ];
00133     Bool manageOutBufsCache    [ XDM_MAX_IO_BUFFERS ];
00134 } IVIDDEC1_CodecClassConfig;
00135
00136 /*
00137  *  ======== VIDDEC1_create ========
00138  */
00167 extern VIDDEC1_Handle VIDDEC1_create(Engine_Handle e, String name,
00168     VIDDEC1_Params *params);
00169
00170
00171 /*
00172  *  ======== VIDDEC1_process ========
00173  */
00214 extern Int32 VIDDEC1_process(VIDDEC1_Handle handle, XDM1_BufDesc *inBufs,
00215     XDM_BufDesc *outBufs, VIDDEC1_InArgs *inArgs, VIDDEC1_OutArgs *outArgs);
00216
00217
00218 /*
00219  *  ======== VIDDEC1_control ========
00220  */
00248 extern Int32 VIDDEC1_control(VIDDEC1_Handle handle, VIDDEC1_Cmd id,
00249     VIDDEC1_DynamicParams *params, VIDDEC1_Status *status);
00250
00251
00252 /*
00253  *  ======== VIDDEC1_delete ========
00254  */
00272 extern Void VIDDEC1_delete(VIDDEC1_Handle handle);
00273
00274
00275 /*
00276  *  ======== VIDDEC1_processAsync ========
00277  */
00314 extern XDAS_Int32 VIDDEC1_processAsync(VIDDEC1_Handle handle,
00315     XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs,
00316     VIDDEC1_InArgs *inArgs, VIDDEC1_OutArgs *outArgs);
00317
00318
00319 /*
00320  *  ======== VIDDEC1_processWait ========
00321  */
00364 extern XDAS_Int32 VIDDEC1_processWait(VIDDEC1_Handle handle,
00365     XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs,
00366     VIDDEC1_InArgs *inArgs, VIDDEC1_OutArgs *outArgs, UInt timeout);
00367
00368
00371 #ifdef __cplusplus
00372 }
00373 #endif
00374
00375 #endif
00376 /*
00377  *  @(#) ti.sdo.ce.video1; 1, 0, 2,269; 2-9-2011 08:57:44; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00378
00379  */
00380


Codec Engine Application Programming Interface (API): viddec2.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video2

viddec2.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== viddec2.h ========
00035  */
00052 #ifndef ti_sdo_ce_video2_VIDDEC2_
00053 #define ti_sdo_ce_video2_VIDDEC2_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/ividdec2.h>
00061
00062 #include <ti/sdo/ce/Engine.h>
00063 #include <ti/sdo/ce/visa.h>
00064 #include <ti/sdo/ce/skel.h>
00065
00068
00069 typedef IVIDDEC2_Status VIDDEC2_Status;
00071 #define VIDDEC2_EOK      IVIDDEC2_EOK
00072 #define VIDDEC2_EFAIL    IVIDDEC2_EFAIL
00075 #define VIDDEC2_EUNSUPPORTED IVIDDEC2_EUNSUPPORTED
00076
00077 #define VIDDEC2_ETIMEOUT VISA_ETIMEOUT
00078 #define VIDDEC2_FOREVER  VISA_FOREVER
00083 typedef VISA_Handle VIDDEC2_Handle;
00084
00089 typedef struct IVIDDEC2_Params VIDDEC2_Params;
00090
00094 typedef IVIDDEC2_InArgs          VIDDEC2_InArgs;
00095
00099 typedef IVIDDEC2_OutArgs         VIDDEC2_OutArgs;
00100
00104 typedef IVIDDEC2_Cmd             VIDDEC2_Cmd;
00105
00109 typedef IVIDDEC2_DynamicParams   VIDDEC2_DynamicParams;
00110
00117 extern SKEL_Fxns VIDDEC2_SKEL;
00118
00122 extern IVIDDEC2_Fxns VIDDEC2_STUBS;
00123
00131 typedef struct IVIDDEC2_CodecClassConfig {
00132     Bool manageInBufsCache     [ XDM_MAX_IO_BUFFERS ];
00133     Bool manageOutBufsCache    [ XDM_MAX_IO_BUFFERS ];
00134 } IVIDDEC2_CodecClassConfig;
00135
00136
00137 /*
00138  *  ======== VIDDEC2_create ========
00139  */
00168 extern VIDDEC2_Handle VIDDEC2_create(Engine_Handle e, String name,
00169     VIDDEC2_Params *params);
00170
00171
00172 /*
00173  *  ======== VIDDEC2_process ========
00174  */
00215 extern Int32 VIDDEC2_process(VIDDEC2_Handle handle, XDM1_BufDesc *inBufs,
00216     XDM_BufDesc *outBufs, VIDDEC2_InArgs *inArgs, VIDDEC2_OutArgs *outArgs);
00217
00218
00219 /*
00220  *  ======== VIDDEC2_control ========
00221  */
00249 extern Int32 VIDDEC2_control(VIDDEC2_Handle handle, VIDDEC2_Cmd id,
00250     VIDDEC2_DynamicParams *params, VIDDEC2_Status *status);
00251
00252
00253 /*
00254  *  ======== VIDDEC2_delete ========
00255  */
00273 extern Void VIDDEC2_delete(VIDDEC2_Handle handle);
00274
00275
00276 /*
00277  *  ======== VIDDEC2_processAsync ========
00278  */
00315 extern XDAS_Int32 VIDDEC2_processAsync(VIDDEC2_Handle handle,
00316     XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs,
00317     VIDDEC2_InArgs *inArgs, VIDDEC2_OutArgs *outArgs);
00318
00319
00320 /*
00321  *  ======== VIDDEC2_processWait ========
00322  */
00365 extern XDAS_Int32 VIDDEC2_processWait(VIDDEC2_Handle handle,
00366     XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs,
00367     VIDDEC2_InArgs *inArgs, VIDDEC2_OutArgs *outArgs, UInt timeout);
00368
00369
00372 #ifdef __cplusplus
00373 }
00374 #endif
00375
00376 #endif
00377 /*
00378  *  @(#) ti.sdo.ce.video2; 1, 0, 3,176; 2-9-2011 08:57:47; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00379
00380  */
00381


Codec Engine Application Programming Interface (API): viddec3.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video3

viddec3.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== viddec3.h ========
00035  */
00052 #ifndef ti_sdo_ce_video3_VIDDEC3_
00053 #define ti_sdo_ce_video3_VIDDEC3_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/ividdec3.h>
00061
00062 #include <ti/sdo/ce/Engine.h>
00063 #include <ti/sdo/ce/visa.h>
00064 #include <ti/sdo/ce/skel.h>
00065
00068
00069 #define VIDDEC3_EOK      IVIDDEC3_EOK
00070 #define VIDDEC3_EFAIL    IVIDDEC3_EFAIL
00073 #define VIDDEC3_EUNSUPPORTED IVIDDEC3_EUNSUPPORTED
00074
00075 #define VIDDEC3_ETIMEOUT VISA_ETIMEOUT
00076 #define VIDDEC3_FOREVER  VISA_FOREVER
00082 typedef VISA_Handle VIDDEC3_Handle;
00083
00085 typedef struct IVIDDEC3_Params VIDDEC3_Params;
00086
00088 typedef IVIDDEC3_InArgs VIDDEC3_InArgs;
00089
00091 typedef IVIDDEC3_OutArgs VIDDEC3_OutArgs;
00092
00094 typedef IVIDDEC3_Cmd VIDDEC3_Cmd;
00095
00097 typedef IVIDDEC3_DynamicParams   VIDDEC3_DynamicParams;
00098
00100 typedef IVIDDEC3_Status VIDDEC3_Status;
00101
00102
00109 extern SKEL_Fxns VIDDEC3_SKEL;
00110
00114 extern IVIDDEC3_Fxns VIDDEC3_STUBS;
00115
00123 typedef struct IVIDDEC3_CodecClassConfig {
00124     Bool manageInBufsCache     [ XDM_MAX_IO_BUFFERS ];
00125     Bool manageOutBufsCache    [ XDM_MAX_IO_BUFFERS ];
00126 } IVIDDEC3_CodecClassConfig;
00127
00128
00129 /*
00130  *  ======== VIDDEC3_control ========
00131  */
00159 extern Int32 VIDDEC3_control(VIDDEC3_Handle handle, VIDDEC3_Cmd id,
00160     VIDDEC3_DynamicParams *params, VIDDEC3_Status *status);
00161
00162
00163 /*
00164  *  ======== VIDDEC3_create ========
00165  */
00194 extern VIDDEC3_Handle VIDDEC3_create(Engine_Handle e, String name,
00195     VIDDEC3_Params *params);
00196
00197
00198 /*
00199  *  ======== VIDDEC3_delete ========
00200  */
00218 extern Void VIDDEC3_delete(VIDDEC3_Handle handle);
00219
00220
00221 /*
00222  *  ======== VIDDEC3_process ========
00223  */
00266 extern Int32 VIDDEC3_process(VIDDEC3_Handle handle, XDM2_BufDesc *inBufs,
00267     XDM2_BufDesc *outBufs, VIDDEC3_InArgs *inArgs, VIDDEC3_OutArgs *outArgs);
00268
00269
00270 #if 0 /* async not yet supported */
00271
00272 /*
00273  *  ======== VIDDEC3_processAsync ========
00274  */
00311 extern XDAS_Int32 VIDDEC3_processAsync(VIDDEC3_Handle handle,
00312     XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs,
00313     VIDDEC3_InArgs *inArgs, VIDDEC3_OutArgs *outArgs);
00314
00315 /*
00316  *  ======== VIDDEC3_processWait ========
00317  */
00360 extern XDAS_Int32 VIDDEC3_processWait(VIDDEC3_Handle handle,
00361     XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs,
00362     VIDDEC3_InArgs *inArgs, VIDDEC3_OutArgs *outArgs, UInt timeout);
00363
00364 #endif
00365
00366   /* ingroup */
00368
00369 #ifdef __cplusplus
00370 }
00371 #endif
00372
00373 #endif
00374 /*
00375  *  @(#) ti.sdo.ce.video3; 1, 0, 0,123; 2-9-2011 08:57:52; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00376
00377  */
00378


Codec Engine Application Programming Interface (API): viddec.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video

viddec.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== viddec.h ========
00035  */
00051 #ifndef ti_sdo_ce_video_VIDDEC_
00052 #define ti_sdo_ce_video_VIDDEC_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 /*
00059  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00060  * define XDM_INCLUDE_DOT9_SUPPORT
00061  */
00062 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00063 #define XDM_INCLUDE_DOT9_SUPPORT
00064 #endif
00065 #include <ti/xdais/dm/xdm.h>
00066 #include <ti/xdais/dm/ividdec.h>
00067
00068 #include <ti/sdo/ce/Engine.h>
00069 #include <ti/sdo/ce/visa.h>
00070 #include <ti/sdo/ce/skel.h>
00071
00074
00075 typedef IVIDDEC_Status VIDDEC_Status;
00077 #define VIDDEC_EOK      IVIDDEC_EOK
00078 #define VIDDEC_EFAIL    IVIDDEC_EFAIL
00079 #define VIDDEC_ERUNTIME IVIDDEC_ERUNTIME
00080 #define VIDDEC_ETIMEOUT VISA_ETIMEOUT
00081 #define VIDDEC_FOREVER  VISA_FOREVER
00086 typedef VISA_Handle VIDDEC_Handle;
00087
00092 typedef struct IVIDDEC_Params VIDDEC_Params;
00093
00097 typedef IVIDDEC_InArgs          VIDDEC_InArgs;
00098
00102 typedef IVIDDEC_OutArgs         VIDDEC_OutArgs;
00103
00107 typedef IVIDDEC_Cmd             VIDDEC_Cmd;
00108
00112 typedef IVIDDEC_DynamicParams   VIDDEC_DynamicParams;
00113
00120 extern SKEL_Fxns VIDDEC_SKEL;
00121
00125 extern IVIDDEC_Fxns VIDDEC_STUBS;
00126
00134 typedef struct IVIDDEC_CodecClassConfig {
00142     Bool manageInBufsCache     [ XDM_MAX_IO_BUFFERS ];
00150     Bool manageOutBufsCache    [ XDM_MAX_IO_BUFFERS ];
00158     Bool manageDisplayBufsCache[ XDM_MAX_IO_BUFFERS ];
00159 } IVIDDEC_CodecClassConfig;
00160
00161 /*
00162  *  ======== VIDDEC_create ========
00163  */
00192 extern VIDDEC_Handle VIDDEC_create(Engine_Handle e, String name,
00193     VIDDEC_Params *params);
00194
00195
00196 /*
00197  *  ======== VIDDEC_process ========
00198  */
00237 extern Int32 VIDDEC_process(VIDDEC_Handle handle,
00238         XDM_BufDesc *inBufs, XDM_BufDesc *outBufs,
00239         VIDDEC_InArgs *inArgs, VIDDEC_OutArgs *outArgs);
00240
00241
00242 /*
00243  *  ======== VIDDEC_control ========
00244  */
00268 extern Int32 VIDDEC_control(VIDDEC_Handle handle, VIDDEC_Cmd id,
00269         VIDDEC_DynamicParams *params, VIDDEC_Status *status);
00270
00271
00272 /*
00273  *  ======== VIDDEC_delete ========
00274  */
00292 extern Void VIDDEC_delete(VIDDEC_Handle handle);
00293
00294
00295 /*
00296  *  ======== VIDDEC_processAsync ========
00297  */
00334 extern XDAS_Int32 VIDDEC_processAsync(VIDDEC_Handle handle, XDM_BufDesc *inBufs,
00335     XDM_BufDesc *outBufs, VIDDEC_InArgs *inArgs, VIDDEC_OutArgs *outArgs);
00336
00337
00338 /*
00339  *  ======== VIDDEC_processWait ========
00340  */
00383 extern XDAS_Int32 VIDDEC_processWait(VIDDEC_Handle handle, XDM_BufDesc *inBufs,
00384     XDM_BufDesc *outBufs, VIDDEC_InArgs *inArgs, VIDDEC_OutArgs *outArgs,
00385     UInt timeout);
00386
00387
00390 #ifdef __cplusplus
00391 }
00392 #endif
00393
00394 #endif
00395 /*
00396  *  @(#) ti.sdo.ce.video; 1, 0, 3,408; 2-9-2011 08:57:43; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00397
00398  */
00399


Codec Engine Application Programming Interface (API): videnc1.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video1

videnc1.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== videnc1.h ========
00035  */
00052 #ifndef ti_sdo_ce_video1_VIDENC1_
00053 #define ti_sdo_ce_video1_VIDENC1_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/ividenc1.h>
00061
00062 #include <ti/sdo/ce/Engine.h>
00063 #include <ti/sdo/ce/visa.h>
00064 #include <ti/sdo/ce/skel.h>
00065
00068
00069 #define VIDENC1_EOK      IVIDENC1_EOK
00070 #define VIDENC1_EFAIL    IVIDENC1_EFAIL
00073 #define VIDENC1_EUNSUPPORTED IVIDENC1_EUNSUPPORTED
00074
00075 #define VIDENC1_ETIMEOUT VISA_ETIMEOUT
00076 #define VIDENC1_FOREVER  VISA_FOREVER
00082 typedef VISA_Handle VIDENC1_Handle;
00083
00084 /* The following are just wrapper typedefs */
00085
00087 typedef struct IVIDENC1_Params VIDENC1_Params;
00088
00090 typedef IVIDENC1_InArgs          VIDENC1_InArgs;
00091
00093 typedef IVIDENC1_OutArgs         VIDENC1_OutArgs;
00094
00096 typedef IVIDENC1_Cmd             VIDENC1_Cmd;
00097
00099 typedef IVIDENC1_DynamicParams VIDENC1_DynamicParams;
00100
00102 typedef IVIDENC1_Status VIDENC1_Status;
00103
00110 extern SKEL_Fxns VIDENC1_SKEL;
00111
00115 extern IVIDENC1_Fxns VIDENC1_STUBS;
00116
00124 typedef struct IVIDENC1_CodecClassConfig {
00125     Bool manageInBufsCache     [ XDM_MAX_IO_BUFFERS ];
00126     Bool manageOutBufsCache    [ XDM_MAX_IO_BUFFERS ];
00127 } IVIDENC1_CodecClassConfig;
00128
00129 /*
00130  *  ======== VIDENC1_control ========
00131  */
00160 extern Int32 VIDENC1_control(VIDENC1_Handle handle, VIDENC1_Cmd id,
00161     VIDENC1_DynamicParams *params, VIDENC1_Status *status);
00162
00163
00164 /*
00165  *  ======== VIDENC1_create ========
00166  */
00195 extern VIDENC1_Handle VIDENC1_create(Engine_Handle e, String name,
00196     VIDENC1_Params *params);
00197
00198
00199 /*
00200  *  ======== VIDENC1_delete ========
00201  */
00219 extern Void VIDENC1_delete(VIDENC1_Handle handle);
00220
00221
00222 /*
00223  *  ======== VIDENC1_process ========
00224  */
00270 extern Int32 VIDENC1_process(VIDENC1_Handle handle, IVIDEO1_BufDescIn *inBufs,
00271     XDM_BufDesc *outBufs, VIDENC1_InArgs *inArgs, VIDENC1_OutArgs *outArgs);
00272
00273
00274 /*
00275  *  ======== VIDENC1_processAsync ========
00276  */
00313 extern XDAS_Int32 VIDENC1_processAsync(VIDENC1_Handle handle,
00314     IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs,
00315     IVIDENC1_InArgs *inArgs, IVIDENC1_OutArgs *outArgs);
00316
00317
00318 /*
00319  *  ======== VIDENC1_processWait ========
00320  */
00363 extern XDAS_Int32 VIDENC1_processWait(VIDENC1_Handle handle,
00364     IVIDEO1_BufDescIn *inBufs, XDM_BufDesc *outBufs,
00365     IVIDENC1_InArgs *inArgs, IVIDENC1_OutArgs *outArgs, UInt timeout);
00366
00367
00370 #ifdef __cplusplus
00371 }
00372 #endif
00373
00374 #endif
00375 /*
00376  *  @(#) ti.sdo.ce.video1; 1, 0, 2,269; 2-9-2011 08:57:44; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00377
00378  */
00379


Codec Engine Application Programming Interface (API): videnc2.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video2

videnc2.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== videnc2.h ========
00035  */
00052 #ifndef ti_sdo_ce_video2_VIDENC2_
00053 #define ti_sdo_ce_video2_VIDENC2_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/ividenc2.h>
00061
00062 #include <ti/sdo/ce/Engine.h>
00063 #include <ti/sdo/ce/visa.h>
00064 #include <ti/sdo/ce/skel.h>
00065
00068
00069 #define VIDENC2_EOK      IVIDENC2_EOK
00070 #define VIDENC2_EFAIL    IVIDENC2_EFAIL
00073 #define VIDENC2_EUNSUPPORTED IVIDENC2_EUNSUPPORTED
00074
00075 #define VIDENC2_ETIMEOUT VISA_ETIMEOUT
00076 #define VIDENC2_FOREVER  VISA_FOREVER
00082 typedef VISA_Handle VIDENC2_Handle;
00083
00084 /* The following are just wrapper typedefs */
00085
00087 typedef struct IVIDENC2_Params VIDENC2_Params;
00088
00090 typedef IVIDENC2_InArgs VIDENC2_InArgs;
00091
00093 typedef IVIDENC2_OutArgs VIDENC2_OutArgs;
00094
00096 typedef IVIDENC2_Cmd VIDENC2_Cmd;
00097
00099 typedef IVIDENC2_DynamicParams VIDENC2_DynamicParams;
00100
00102 typedef IVIDENC2_Status VIDENC2_Status;
00103
00110 extern SKEL_Fxns VIDENC2_SKEL;
00111
00115 extern IVIDENC2_Fxns VIDENC2_STUBS;
00116
00124 typedef struct IVIDENC2_CodecClassConfig {
00125     Bool manageInBufsPlaneDescCache[IVIDEO_MAX_NUM_PLANES];
00126     Bool manageInBufsMetaPlaneDescCache[IVIDEO_MAX_NUM_METADATA_PLANES];
00127     Bool manageOutBufsCache[XDM_MAX_IO_BUFFERS];
00128 } IVIDENC2_CodecClassConfig;
00129
00130
00131 /*
00132  *  ======== VIDENC2_control ========
00133  */
00162 extern Int32 VIDENC2_control(VIDENC2_Handle handle, VIDENC2_Cmd id,
00163         VIDENC2_DynamicParams *params, VIDENC2_Status *status);
00164
00165
00166 /*
00167  *  ======== VIDENC2_create ========
00168  */
00197 extern VIDENC2_Handle VIDENC2_create(Engine_Handle e, String name,
00198     VIDENC2_Params *params);
00199
00200
00201 /*
00202  *  ======== VIDENC2_delete ========
00203  */
00221 extern Void VIDENC2_delete(VIDENC2_Handle handle);
00222
00223
00224 /*
00225  *  ======== VIDENC2_process ========
00226  */
00272 extern Int32 VIDENC2_process(VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs,
00273         XDM2_BufDesc *outBufs, VIDENC2_InArgs *inArgs,
00274         VIDENC2_OutArgs *outArgs);
00275
00276
00277 /*
00278  *  ======== VIDENC2_processAsync ========
00279  */
00316 extern XDAS_Int32 VIDENC2_processAsync(VIDENC2_Handle handle,
00317         IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs,
00318         IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs);
00319
00320
00321 /*
00322  *  ======== VIDENC2_processWait ========
00323  */
00366 extern XDAS_Int32 VIDENC2_processWait(VIDENC2_Handle handle,
00367         IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs,
00368         IVIDENC2_OutArgs *outArgs, UInt timeout);
00369
00370
00373 #ifdef __cplusplus
00374 }
00375 #endif
00376
00377 #endif
00378 /*
00379  *  @(#) ti.sdo.ce.video2; 1, 0, 3,176; 2-9-2011 08:57:47; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00380
00381  */
00382


Codec Engine Application Programming Interface (API): videnc.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • video

videnc.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== videnc.h ========
00035  */
00051 #ifndef ti_sdo_ce_video_VIDENC_
00052 #define ti_sdo_ce_video_VIDENC_
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00058 /*
00059  * By definition, this interface is 0.9 XDM.  Before including xdm.h,
00060  * define XDM_INCLUDE_DOT9_SUPPORT
00061  */
00062 #ifndef XDM_INCLUDE_DOT9_SUPPORT
00063 #define XDM_INCLUDE_DOT9_SUPPORT
00064 #endif
00065 #include <ti/xdais/dm/xdm.h>
00066 #include <ti/xdais/dm/ividenc.h>
00067
00068 #include <ti/sdo/ce/Engine.h>
00069 #include <ti/sdo/ce/visa.h>
00070 #include <ti/sdo/ce/skel.h>
00071
00074
00075 typedef IVIDENC_Status VIDENC_Status;
00077 #define VIDENC_EOK      IVIDENC_EOK
00078 #define VIDENC_EFAIL    IVIDENC_EFAIL
00079 #define VIDENC_ERUNTIME IVIDENC_ERUNTIME
00080 #define VIDENC_ETIMEOUT VISA_ETIMEOUT
00081 #define VIDENC_FOREVER  VISA_FOREVER
00086 typedef VISA_Handle VIDENC_Handle;
00087
00092 typedef struct IVIDENC_Params VIDENC_Params;
00093
00097 typedef IVIDENC_InArgs          VIDENC_InArgs;
00098
00102 typedef IVIDENC_OutArgs         VIDENC_OutArgs;
00103
00107 typedef IVIDENC_Cmd             VIDENC_Cmd;
00108
00112 typedef IVIDENC_DynamicParams   VIDENC_DynamicParams;
00113
00120 extern SKEL_Fxns VIDENC_SKEL;
00121
00125 extern IVIDENC_Fxns VIDENC_STUBS;
00126
00134 typedef struct IVIDENC_CodecClassConfig {
00135     Bool manageInBufsCache   [ XDM_MAX_IO_BUFFERS ];
00136     Bool manageOutBufsCache  [ XDM_MAX_IO_BUFFERS ];
00137     Bool manageReconBufsCache[ XDM_MAX_IO_BUFFERS ];
00138 } IVIDENC_CodecClassConfig;
00139
00140 /*
00141  *  ======== VIDENC_create ========
00142  */
00170 extern VIDENC_Handle VIDENC_create(Engine_Handle e, String name,
00171     VIDENC_Params *params);
00172
00173
00174 /*
00175  *  ======== VIDENC_process ========
00176  */
00221 extern Int32 VIDENC_process(VIDENC_Handle handle,
00222         XDM_BufDesc *inBufs, XDM_BufDesc *outBufs,
00223         VIDENC_InArgs *inArgs, VIDENC_OutArgs *outArgs);
00224
00225
00226 /*
00227  *  ======== VIDENC_control ========
00228  */
00258 extern Int32 VIDENC_control(VIDENC_Handle handle, VIDENC_Cmd id,
00259         VIDENC_DynamicParams *params, VIDENC_Status *status);
00260
00261
00262 /*
00263  *  ======== VIDENC_delete ========
00264  */
00282 extern Void VIDENC_delete(VIDENC_Handle handle);
00283
00284
00285 /*
00286  *  ======== VIDENC_processAsync ========
00287  */
00326 extern XDAS_Int32 VIDENC_processAsync(VIDENC_Handle handle, XDM_BufDesc *inBufs,
00327     XDM_BufDesc *outBufs, IVIDENC_InArgs *inArgs, IVIDENC_OutArgs *outArgs);
00328
00329
00330 /*
00331  *  ======== VIDENC_processWait ========
00332  */
00375 extern XDAS_Int32 VIDENC_processWait(VIDENC_Handle handle, XDM_BufDesc *inBufs,
00376     XDM_BufDesc *outBufs, IVIDENC_InArgs *inArgs, IVIDENC_OutArgs *outArgs,
00377     UInt timeout);
00378
00379
00382 #ifdef __cplusplus
00383 }
00384 #endif
00385
00386 #endif
00387 /*
00388  *  @(#) ti.sdo.ce.video; 1, 0, 3,408; 2-9-2011 08:57:43; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00389
00390  */
00391


Codec Engine Application Programming Interface (API): vidtranscode.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce
  • vidtranscode

vidtranscode.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== vidtranscode.h ========
00035  */
00052 #ifndef ti_sdo_ce_vidtranscode_VIDTRANSCODE_
00053 #define ti_sdo_ce_vidtranscode_VIDTRANSCODE_
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/ividtranscode.h>
00061
00062 #include <ti/sdo/ce/Engine.h>
00063 #include <ti/sdo/ce/visa.h>
00064 #include <ti/sdo/ce/skel.h>
00065
00068
00070 #define VIDTRANSCODE_EOK            IVIDTRANSCODE_EOK
00071
00073 #define VIDTRANSCODE_EFAIL          IVIDTRANSCODE_EFAIL
00074
00076 #define VIDTRANSCODE_EUNSUPPORTED   IVIDTRANSCODE_EUNSUPPORTED
00077
00079 #define VIDTRANSCODE_ETIMEOUT VISA_ETIMEOUT
00080
00082 #define VIDTRANSCODE_FOREVER  VISA_FOREVER
00083
00084
00088 typedef VISA_Handle VIDTRANSCODE_Handle;
00089
00090 /* The following are just wrapper typedefs */
00091
00093 typedef struct IVIDTRANSCODE_Params VIDTRANSCODE_Params;
00094
00096 typedef IVIDTRANSCODE_InArgs VIDTRANSCODE_InArgs;
00097
00099 typedef IVIDTRANSCODE_OutArgs VIDTRANSCODE_OutArgs;
00100
00102 typedef IVIDTRANSCODE_Cmd VIDTRANSCODE_Cmd;
00103
00105 typedef IVIDTRANSCODE_DynamicParams VIDTRANSCODE_DynamicParams;
00106
00108 typedef IVIDTRANSCODE_Status VIDTRANSCODE_Status;
00109
00116 extern SKEL_Fxns VIDTRANSCODE_SKEL;
00117
00122 extern IVIDTRANSCODE_Fxns VIDTRANSCODE_STUBS;
00123
00127 /*
00128  *  ======== VIDTRANSCODE_control ========
00129  */
00154 extern Int32 VIDTRANSCODE_control(VIDTRANSCODE_Handle handle,
00155     VIDTRANSCODE_Cmd id, VIDTRANSCODE_DynamicParams *params,
00156     VIDTRANSCODE_Status *status);
00157
00158
00159 /*
00160  *  ======== VIDTRANSCODE_create ========
00161  */
00190 extern VIDTRANSCODE_Handle VIDTRANSCODE_create(Engine_Handle e, String name,
00191     VIDTRANSCODE_Params *params);
00192
00193
00194 /*
00195  *  ======== VIDTRANSCODE_delete ========
00196  */
00214 extern Void VIDTRANSCODE_delete(VIDTRANSCODE_Handle handle);
00215
00216
00217 /*
00218  *  ======== VIDTRANSCODE_process ========
00219  */
00258 extern Int32 VIDTRANSCODE_process(VIDTRANSCODE_Handle handle,
00259     XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, VIDTRANSCODE_InArgs *inArgs,
00260     VIDTRANSCODE_OutArgs *outArgs);
00261
00262 /*
00263  *  ======== VIDTRANSCODE_processAsync ========
00264  */
00301 extern XDAS_Int32 VIDTRANSCODE_processAsync(VIDTRANSCODE_Handle handle,
00302     XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDTRANSCODE_InArgs *inArgs,
00303     IVIDTRANSCODE_OutArgs *outArgs);
00304
00305 /*
00306  *  ======== VIDTRANSCODE_processWait ========
00307  */
00351 extern XDAS_Int32 VIDTRANSCODE_processWait(VIDTRANSCODE_Handle handle,
00352     XDM1_BufDesc *inBufs, XDM_BufDesc *outBufs, IVIDTRANSCODE_InArgs *inArgs,
00353     IVIDTRANSCODE_OutArgs *outArgs, UInt timeout);
00354
00357 #ifdef __cplusplus
00358 }
00359 #endif
00360
00361 #endif
00362 /*
00363  *  @(#) ti.sdo.ce.vidtranscode; 1, 0, 1,226; 2-9-2011 08:57:53; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00364
00365  */
00366


Codec Engine Application Programming Interface (API): visa.h Source File

  • File List
  • Globals
  • packages
  • ti
  • sdo
  • ce

visa.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033 /*
00034  *  ======== visa.h ========
00035  */
00060 #ifndef ti_sdo_ce_VISA_
00061 #define ti_sdo_ce_VISA_
00062
00063 #include <stddef.h>     /* for size_t */
00064
00065 #include <ti/sdo/ce/node/node.h>
00066 #include <ti/xdais/ialg.h>
00067 #include <ti/sdo/ce/Engine.h>
00068
00069 #ifdef __cplusplus
00070 extern "C" {
00071 #endif
00072
00077 typedef Int VISA_Status;
00078
00083 #define VISA_EOK        0
00084
00089 #define VISA_ERUNTIME   -1
00090
00095 #define VISA_EFAIL     -2
00096
00101 #define VISA_ETIMEOUT  -100
00102
00107 #define VISA_FOREVER Engine_FOREVER
00108
00117 #define VISA_MODNAME "ti.sdo.ce.VISA"
00118
00122 typedef struct VISA_Obj *VISA_Handle;
00123
00131 typedef struct VISA_MsgHeader {
00132     NODE_MsgHeader  header;
00133     Int             cmd;
00134     VISA_Status     status;
00135 } VISA_MsgHeader;
00136
00137 /*
00138  *  ======== VISA_Msg ========
00139  */
00140 typedef VISA_MsgHeader *VISA_Msg;
00141
00142 /*
00143  *  ======== VISA_allocMsg ========
00144  */
00159 extern VISA_Msg VISA_allocMsg(VISA_Handle visa);
00160
00161 /*
00162  *  ======== VISA_call ========
00163  */
00181 extern VISA_Status VISA_call(VISA_Handle visa, VISA_Msg *msg);
00182
00183 /*
00184  *  ======== VISA_callAsync ========
00185  */
00204 extern VISA_Status VISA_callAsync(VISA_Handle visa, VISA_Msg *msg);
00205
00206 /*
00207  *  ======== VISA_wait ========
00208  */
00229 extern VISA_Status VISA_wait(VISA_Handle visa, VISA_Msg *msg, UInt timeout);
00230
00231 /*
00232  *  ======== VISA_freeMsg ========
00233  */
00250 extern Void VISA_freeMsg(VISA_Handle visa, VISA_Msg msg);
00251
00252
00255
00256 /*
00257  *  ======== VISA_create ========
00258  */
00290 extern VISA_Handle VISA_create(Engine_Handle engine, String name,
00291     IALG_Params *params, size_t msgSize, String type);
00292
00293 /*
00294  *  ======== VISA_delete ========
00295  */
00303 extern Void VISA_delete(VISA_Handle visa);
00304
00305
00306 /*
00307  *  ======== VISA_create2 ========
00308  */
00347 extern VISA_Handle VISA_create2(Engine_Handle engine, String name,
00348     IALG_Params *params, Int paramsSize, size_t msgSize, String type);
00349
00350
00351 /*
00352  *  ======== VISA_enter ========
00353  */
00366 extern Void VISA_enter(VISA_Handle visa);
00367
00368 /*
00369  *  ======== VISA_exit ========
00370  */
00381 extern Void VISA_exit(VISA_Handle visa);
00382
00383 /*
00384  *  ======== VISA_getAlgHandle ========
00385  */
00399 extern Ptr VISA_getAlgHandle(VISA_Handle visa);
00400
00401 /*
00402  *  ======== VISA_getAlgorithmHandle ========
00403  */
00417 extern Ptr VISA_getAlgorithmHandle(VISA_Handle visa);
00418
00419 /*
00420  *  ======== VISA_getAlgFxns ========
00421  */
00443 extern IALG_Fxns *VISA_getAlgFxns(VISA_Handle visa);
00444   /* ingroup */
00446
00447 /*
00448  *  ======== VISA_getAlgMemRecs ========
00449  */
00480 extern VISA_Status VISA_getAlgMemRecs(VISA_Handle visa, IALG_MemRec *memTab,
00481         Int size, Int *numRecs);
00482
00483 /*
00484  *  ======== VISA_getAlgNumRecs ========
00485  */
00513 extern VISA_Status VISA_getAlgNumRecs(VISA_Handle visa, Int *numRecs);
00514
00515
00516 /*
00517  *  ======== VISA_getContext ========
00518  */
00537 extern Void VISA_getContext(VISA_Handle visa, UInt32 * pContext);
00538
00539 /*
00540  *  ======== VISA_getCodecClassConfig ========
00541  */
00558 extern Ptr VISA_getCodecClassConfig(VISA_Handle visa);
00559
00560
00561 /*
00562  *  ======== VISA_getMaxMsgSize ========
00563  */
00576 extern UInt VISA_getMaxMsgSize(VISA_Handle visa);
00577
00578
00579 /*
00580  *  ======== VISA_isChecked ========
00581  */
00595 static inline Bool VISA_isChecked(Void)
00596 {
00597     extern Bool VISA_checked;  /* generated by Settings.xdt based 'checked' */
00598
00599     return (VISA_checked);
00600 }
00601
00602 /*
00603  *  ======== VISA_setContext ========
00604  */
00621 extern Void VISA_setContext(VISA_Handle visa, UInt32 context);
00622
00623 /*
00624  *  ======== VISA_isLocal ========
00625  */
00636 extern Bool VISA_isLocal(VISA_Handle visa);
00637
00638 #ifdef __cplusplus
00639 }
00640 #endif
00641
00642 #endif
00643 /*
00644  *  @(#) ti.sdo.ce; 1, 0, 6,433; 2-9-2011 08:54:25; /db/atree/library/trees/ce/ce-q18x/src/ xlibrary
00645
00646  */
00647


Codec Engine Application Programming Interface (API): xdas.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais

xdas.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00045 #ifndef ti_xdais_XDAS_
00046 #define ti_xdais_XDAS_
00047
00048 #ifdef __cplusplus
00049 extern "C" {
00050 #endif
00051
00054
00055
00056 #define XDAS_TRUE       1
00057 #define XDAS_FALSE      0
00058
00059
00060 typedef Void            XDAS_Void;
00061 typedef Uint8           XDAS_Bool;
00062
00063
00064 typedef Int8            XDAS_Int8;
00065 typedef Uint8           XDAS_UInt8;
00066 typedef Int16           XDAS_Int16;
00067 typedef Uint16          XDAS_UInt16;
00068 typedef Int32           XDAS_Int32;
00069 typedef Uint32          XDAS_UInt32;
00073
00074
00075 #ifdef __cplusplus
00076 }
00077 #endif
00078
00079 #endif  /* ti_xdais_XDAS_ */
00080 /*
00081  *  @(#) ti.xdais; 1, 2.0, 1,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
00082  */
00083


Codec Engine Application Programming Interface (API): xdm.h Source File

  • File List
  • Globals
  • cetools
  • packages
  • ti
  • xdais
  • dm

xdm.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010, Texas Instruments Incorporated
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * *  Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * *  Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * *  Neither the name of Texas Instruments Incorporated nor the names of
00017  *    its contributors may be used to endorse or promote products derived
00018  *    from this software without specific prior written permission.
00019  *
00020  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00021  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00022  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00023  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00024  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00025  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00026  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00027  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00028  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00029  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00030  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00031  *
00032  */
00033
00046 #ifndef ti_xdais_dm_XDM_
00047 #define ti_xdais_dm_XDM_
00048
00049 #include <ti/xdais/ialg.h>
00050 #include <ti/xdais/xdas.h>
00051
00052 #ifdef __cplusplus
00053 extern "C" {
00054 #endif
00055
00058
00059 #define XDM_EOK                 IALG_EOK
00060 #define XDM_EFAIL               IALG_EFAIL
00061 #define XDM_EUNSUPPORTED        -3
00064 #ifdef XDM_INCLUDE_DOT9_SUPPORT
00065
00073 #define XDM_ERUNTIME            -2
00074 #endif
00075
00076 #define XDM_MAX_IO_BUFFERS      16
00160 typedef struct XDM_BufDesc {
00161     XDAS_Int8   **bufs;
00164     XDAS_Int32   numBufs;
00165     XDAS_Int32  *bufSizes;
00166 } XDM_BufDesc;
00167
00168
00172 typedef struct XDM_SingleBufDesc {
00173     XDAS_Int8   *buf;
00174     XDAS_Int32  bufSize;
00175 } XDM_SingleBufDesc;
00176
00177
00178
00182 typedef struct XDM1_SingleBufDesc {
00183     XDAS_Int8   *buf;
00184     XDAS_Int32  bufSize;
00185     XDAS_Int32  accessMask;
00211 } XDM1_SingleBufDesc;
00212
00213
00221 typedef union  {
00222     struct {
00223         XDAS_Int32 width;
00224         XDAS_Int32 height;
00225     } tileMem;
00226     XDAS_Int32 bytes;
00227 } XDM2_BufSize;
00228
00237 typedef struct XDM2_SingleBufDesc {
00238     XDAS_Int8   *buf;
00239     XDAS_Int16  memType;
00243     XDAS_Int16 usageMode;
00253     XDM2_BufSize bufSize;
00254     XDAS_Int32  accessMask;
00280 } XDM2_SingleBufDesc;
00281
00282
00286 typedef struct XDM1_BufDesc {
00287     XDAS_Int32   numBufs;
00292     XDM1_SingleBufDesc descs[XDM_MAX_IO_BUFFERS];
00295 } XDM1_BufDesc;
00296
00305 typedef struct XDM2_BufDesc {
00306     XDAS_Int32   numBufs;
00311     XDM2_SingleBufDesc descs[XDM_MAX_IO_BUFFERS];
00314 } XDM2_BufDesc;
00315
00316
00336 typedef enum {
00337     XDM_ACCESSMODE_READ = 0,
00343     XDM_ACCESSMODE_WRITE = 1
00349 } XDM_AccessMode;
00350
00351
00362 #define XDM_ISACCESSMODE_READ(x)    (((x) >> XDM_ACCESSMODE_READ) & 0x1)
00363
00364
00375 #define XDM_ISACCESSMODE_WRITE(x)   (((x) >> XDM_ACCESSMODE_WRITE) & 0x1)
00376
00377
00388 #define XDM_CLEARACCESSMODE_READ(x)   ((x) &= (~(0x1 << XDM_ACCESSMODE_READ)))
00389
00390
00401 #define XDM_CLEARACCESSMODE_WRITE(x)   ((x) &= (~(0x1 << XDM_ACCESSMODE_WRITE)))
00402
00403
00413 #define XDM_SETACCESSMODE_READ(x)   ((x) |= (0x1 << XDM_ACCESSMODE_READ))
00414
00415
00425 #define XDM_SETACCESSMODE_WRITE(x)  ((x) |= (0x1 << XDM_ACCESSMODE_WRITE))
00426
00427
00431 typedef struct XDM1_AlgBufInfo {
00432     XDAS_Int32 minNumInBufs;
00433     XDAS_Int32 minNumOutBufs;
00434     XDM2_BufSize minInBufSize[XDM_MAX_IO_BUFFERS];
00437     XDM2_BufSize minOutBufSize[XDM_MAX_IO_BUFFERS];
00440     XDAS_Int32 inBufMemoryType[XDM_MAX_IO_BUFFERS];
00445     XDAS_Int32 outBufMemoryType[XDM_MAX_IO_BUFFERS];
00450     XDAS_Int32 minNumBufSets;
00455 } XDM1_AlgBufInfo;
00456
00457
00461 typedef struct XDM_AlgBufInfo {
00462     XDAS_Int32 minNumInBufs;
00463     XDAS_Int32 minNumOutBufs;
00464     XDAS_Int32 minInBufSize[XDM_MAX_IO_BUFFERS];
00467     XDAS_Int32 minOutBufSize[XDM_MAX_IO_BUFFERS];
00470 } XDM_AlgBufInfo;
00471
00472
00487 #define XDM_CUSTOMENUMBASE 0x100
00488
00489
00506 #define XDM_CUSTOMCMDBASE 0x100
00507
00527 typedef enum {
00528     XDM_GETSTATUS = 0,
00541     XDM_SETPARAMS = 1,
00542     XDM_RESET = 2,
00546     XDM_SETDEFAULT = 3,
00569     XDM_FLUSH = 4,
00585     XDM_GETBUFINFO = 5,
00599     XDM_GETVERSION = 6,
00607     XDM_GETCONTEXTINFO = 7,
00613     XDM_GETDYNPARAMSDEFAULT = 8,
00643     XDM_SETLATEACQUIREARG = 9
00651 } XDM_CmdId;
00652
00653
00672 typedef enum {
00673     XDM_PARAMSCHANGE = 8,
00685     XDM_APPLIEDCONCEALMENT = 9,
00698     XDM_INSUFFICIENTDATA = 10,
00715     XDM_CORRUPTEDDATA = 11,
00725     XDM_CORRUPTEDHEADER = 12,
00739     XDM_UNSUPPORTEDINPUT = 13,
00759     XDM_UNSUPPORTEDPARAM = 14,
00780     XDM_FATALERROR = 15
00802 } XDM_ErrorBit;
00803
00805 #define XDM_ISFATALERROR(x)         (((x) >> XDM_FATALERROR) & 0x1)
00806
00807 #define XDM_ISUNSUPPORTEDPARAM(x)   (((x) >> XDM_UNSUPPORTEDPARAM) & 0x1)
00808
00809 #define XDM_ISUNSUPPORTEDINPUT(x)   (((x) >> XDM_UNSUPPORTEDINPUT) & 0x1)
00810
00811 #define XDM_ISCORRUPTEDHEADER(x)    (((x) >> XDM_CORRUPTEDHEADER) & 0x1)
00812
00813 #define XDM_ISCORRUPTEDDATA(x)      (((x) >> XDM_CORRUPTEDDATA) & 0x1)
00814
00815 #define XDM_ISINSUFFICIENTDATA(x)   (((x) >> XDM_INSUFFICIENTDATA) & 0x1)
00816
00817 #define XDM_ISAPPLIEDCONCEALMENT(x) (((x) >> XDM_APPLIEDCONCEALMENT) & 0x1)
00818
00820 #define XDM_SETFATALERROR(x)         ((x) |= (0x1 << XDM_FATALERROR))
00821
00822 #define XDM_SETUNSUPPORTEDPARAM(x)   ((x) |= (0x1 << XDM_UNSUPPORTEDPARAM))
00823
00824 #define XDM_SETUNSUPPORTEDINPUT(x)   ((x) |= (0x1 << XDM_UNSUPPORTEDINPUT))
00825
00826 #define XDM_SETCORRUPTEDHEADER(x)    ((x) |= (0x1 << XDM_CORRUPTEDHEADER))
00827
00828 #define XDM_SETCORRUPTEDDATA(x)      ((x) |= (0x1 << XDM_CORRUPTEDDATA))
00829
00830 #define XDM_SETINSUFFICIENTDATA(x)   ((x) |= (0x1 << XDM_INSUFFICIENTDATA))
00831
00832 #define XDM_SETAPPLIEDCONCEALMENT(x) ((x) |= (0x1 << XDM_APPLIEDCONCEALMENT))
00833
00834
00842 typedef enum {
00843     XDM_BYTE = 1,
00844     XDM_LE_16 = 2,
00845     XDM_LE_32 = 3,
00846     XDM_LE_64 = 4,
00847     XDM_BE_16 = 5,
00848     XDM_BE_32 = 6,
00849     XDM_BE_64 = 7
00850 } XDM_DataFormat;
00851
00852
00856 typedef struct XDM_Date {
00857     XDAS_Int32 msecsOfDay;
00858     XDAS_Int32 month;
00859     XDAS_Int32 dayOfMonth;
00860     XDAS_Int32 dayOfWeek;
00861     XDAS_Int32 year;
00862 } XDM_Date;
00863
00864
00868 typedef struct XDM_Point {
00869     XDAS_Int32 x;
00870     XDAS_Int32 y;
00871 } XDM_Point;
00872
00873
00877 typedef struct XDM_Rect {
00878     XDM_Point topLeft;
00879     XDM_Point bottomRight;
00880 } XDM_Rect;
00881
00885 #define XDM_MAX_CONTEXT_BUFFERS   32
00886
00887
00891 typedef struct XDM_ContextInfo {
00892     XDAS_Int32 minContextSize;
00895     XDAS_Int32 minIntermediateBufSizes[XDM_MAX_CONTEXT_BUFFERS];
00904 } XDM_ContextInfo;
00905
00906
00910 typedef struct XDM_Context {
00911     XDM1_SingleBufDesc algContext;
00918     XDAS_Int32 numInBufs;
00919     XDAS_Int32 numOutBufs;
00920     XDAS_Int32 numInOutBufs;
00921     XDM1_SingleBufDesc inBufs[XDM_MAX_CONTEXT_BUFFERS];
00926     XDM1_SingleBufDesc outBufs[XDM_MAX_CONTEXT_BUFFERS];
00931     XDM1_SingleBufDesc inOutBufs[XDM_MAX_CONTEXT_BUFFERS];
00937     XDM1_SingleBufDesc intermediateBufs[XDM_MAX_CONTEXT_BUFFERS];
00962 } XDM_Context;
00963
00964
00972 typedef enum {
00973     XDM_DEFAULT = 0,
00977     XDM_HIGH_QUALITY = 1,
00978     XDM_HIGH_SPEED = 2,
00979     XDM_USER_DEFINED = 3,
00982     XDM_HIGH_SPEED_MED_QUALITY = 4,
00985     XDM_MED_SPEED_MED_QUALITY = 5,
00988     XDM_MED_SPEED_HIGH_QUALITY = 6,
00992     XDM_ENCODING_PRESET_MAX  = 7,
00993     XDM_PRESET_DEFAULT = XDM_MED_SPEED_MED_QUALITY
00998 } XDM_EncodingPreset;
00999
01000
01008 typedef enum {
01009     XDM_DECODE_AU = 0,
01012     XDM_PARSE_HEADER = 1
01013 } XDM_DecMode;
01014
01015
01023 typedef enum {
01024     XDM_ENCODE_AU = 0,
01027     XDM_GENERATE_HEADER = 1
01028 } XDM_EncMode;
01029
01030
01038 typedef enum {
01039     XDM_CHROMA_NA = -1,
01040     XDM_YUV_420P = 1,
01041     XDM_YUV_422P = 2,
01042     XDM_YUV_422IBE = 3,
01043     XDM_YUV_422ILE = 4,
01044     XDM_YUV_444P = 5,
01045     XDM_YUV_411P = 6,
01046     XDM_GRAY = 7,
01047     XDM_RGB = 8,
01048     XDM_YUV_420SP = 9,
01051     XDM_ARGB8888 = 10,
01052     XDM_RGB555 = 11,
01053     XDM_RGB565 = 12,
01054     XDM_YUV_444ILE = 13,
01056     XDM_CHROMAFORMAT_DEFAULT = XDM_YUV_422ILE
01057 } XDM_ChromaFormat;
01058
01059
01067  typedef enum {
01068     XDM_MEMTYPE_ROW = 0,
01082     XDM_MEMTYPE_RAW = 0,
01086     XDM_MEMTYPE_TILED8 = 1,
01087     XDM_MEMTYPE_TILED16 = 2,
01088     XDM_MEMTYPE_TILED32 = 3,
01089     XDM_MEMTYPE_TILEDPAGE = 4
01090 } XDM_MemoryType;
01091
01092
01098  typedef enum {
01099     XDM_MEMUSAGE_DATASYNC = 0
01118 } XDM_MemoryUsageMode;
01119
01120
01125 typedef struct XDM_DataSyncDesc {
01126     XDAS_Int32 size;
01127     XDAS_Int32 scatteredBlocksFlag;
01149     XDAS_Int32 *baseAddr;
01166     XDAS_Int32 numBlocks;
01167     XDAS_Int32 varBlockSizesFlag;
01173     XDAS_Int32 *blockSizes;
01187 } XDM_DataSyncDesc;
01188
01189
01198 typedef Void * XDM_DataSyncHandle;
01199
01200
01217 typedef Void (*XDM_DataSyncPutFxn)(XDM_DataSyncHandle dataSyncHandle,
01218         XDM_DataSyncDesc *dataSyncDesc);
01219
01242 typedef XDAS_Int32 (*XDM_DataSyncGetFxn)(XDM_DataSyncHandle dataSyncHandle,
01243         XDM_DataSyncDesc *dataSyncDesc);
01244
01278 typedef XDAS_Int32 (*XDM_DataSyncGetBufferFxn)(XDM_DataSyncHandle dataSyncHandle,
01279         XDM_DataSyncDesc *dataSyncDesc);
01280
01281
01297 typedef XDAS_Int32 (*XDM_DataSyncPutBufferFxn)(XDM_DataSyncHandle dataSyncHandle,
01298         XDM_DataSyncDesc *dataSyncDesc);
01299
01303 #ifdef __cplusplus
01304 }
01305 #endif
01306
01307 #endif  /* ti_xdais_dm_XDM_ */
01308 /*
01309  *  @(#) ti.xdais.dm; 1, 0, 7,23; 10-21-2010 16:35:44; /db/wtree/library/trees/dais/dais.git/src/ dais-s07
01310  */
01311