Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
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 #define VIDENC2_VISATYPE "ti.sdo.ce.video2.IVIDENC2"
00083
00090 #define VIDENC2_STUBSNAME "VIDENC2_STUBS"
00091
00092
00096 typedef VISA_Handle VIDENC2_Handle;
00097
00098
00099
00101 typedef struct IVIDENC2_Params VIDENC2_Params;
00102
00104 typedef IVIDENC2_InArgs VIDENC2_InArgs;
00105
00107 typedef IVIDENC2_OutArgs VIDENC2_OutArgs;
00108
00110 typedef IVIDENC2_Cmd VIDENC2_Cmd;
00111
00113 typedef IVIDENC2_DynamicParams VIDENC2_DynamicParams;
00114
00116 typedef IVIDENC2_Status VIDENC2_Status;
00117
00124 extern SKEL_Fxns VIDENC2_SKEL;
00125
00129 extern IVIDENC2_Fxns VIDENC2_STUBS;
00130
00138 typedef struct IVIDENC2_CodecClassConfig {
00139 Bool manageInBufsPlaneDescCache[IVIDEO_MAX_NUM_PLANES];
00140 Bool manageInBufsMetaPlaneDescCache[IVIDEO_MAX_NUM_METADATA_PLANES];
00141 Bool manageOutBufsCache[XDM_MAX_IO_BUFFERS];
00142 } IVIDENC2_CodecClassConfig;
00143
00144
00145
00146
00147
00176 extern Int32 VIDENC2_control(VIDENC2_Handle handle, VIDENC2_Cmd id,
00177 VIDENC2_DynamicParams *params, VIDENC2_Status *status);
00178
00179
00180
00181
00182
00211 extern VIDENC2_Handle VIDENC2_create(Engine_Handle e, String name,
00212 VIDENC2_Params *params);
00213
00214
00215
00216
00217
00235 extern Void VIDENC2_delete(VIDENC2_Handle handle);
00236
00237
00238
00239
00240
00286 extern Int32 VIDENC2_process(VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs,
00287 XDM2_BufDesc *outBufs, VIDENC2_InArgs *inArgs,
00288 VIDENC2_OutArgs *outArgs);
00289
00290
00291
00292
00293
00330 extern XDAS_Int32 VIDENC2_processAsync(VIDENC2_Handle handle,
00331 IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs,
00332 IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs);
00333
00334
00335
00336
00337
00380 extern XDAS_Int32 VIDENC2_processWait(VIDENC2_Handle handle,
00381 IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs,
00382 IVIDENC2_OutArgs *outArgs, UInt timeout);
00383
00384
00387 #ifdef __cplusplus
00388 }
00389 #endif
00390
00391 #endif
00392
00393
00394
00395
00396