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
00087 typedef VISA_Handle VIDENC2_Handle;
00088
00089
00090
00092 typedef struct IVIDENC2_Params VIDENC2_Params;
00093
00095 typedef IVIDENC2_InArgs VIDENC2_InArgs;
00096
00098 typedef IVIDENC2_OutArgs VIDENC2_OutArgs;
00099
00101 typedef IVIDENC2_Cmd VIDENC2_Cmd;
00102
00104 typedef IVIDENC2_DynamicParams VIDENC2_DynamicParams;
00105
00107 typedef IVIDENC2_Status VIDENC2_Status;
00108
00115 extern SKEL_Fxns VIDENC2_SKEL;
00116
00120 extern IVIDENC2_Fxns VIDENC2_STUBS;
00121
00129 typedef struct IVIDENC2_CodecClassConfig {
00130 Bool manageInBufsPlaneDescCache[IVIDEO_MAX_NUM_PLANES];
00131 Bool manageInBufsMetaPlaneDescCache[IVIDEO_MAX_NUM_METADATA_PLANES];
00132 Bool manageOutBufsCache[XDM_MAX_IO_BUFFERS];
00133 } IVIDENC2_CodecClassConfig;
00134
00135
00136
00137
00138
00167 extern Int32 VIDENC2_control(VIDENC2_Handle handle, VIDENC2_Cmd id,
00168 VIDENC2_DynamicParams *params, VIDENC2_Status *status);
00169
00170
00171
00172
00173
00202 extern VIDENC2_Handle VIDENC2_create(Engine_Handle e, String name,
00203 VIDENC2_Params *params);
00204
00205
00206
00207
00208
00226 extern Void VIDENC2_delete(VIDENC2_Handle handle);
00227
00228
00229
00230
00231
00277 extern Int32 VIDENC2_process(VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs,
00278 XDM2_BufDesc *outBufs, VIDENC2_InArgs *inArgs,
00279 VIDENC2_OutArgs *outArgs);
00280
00281
00282
00283
00284
00321 extern XDAS_Int32 VIDENC2_processAsync(VIDENC2_Handle handle,
00322 IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs,
00323 IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs);
00324
00325
00326
00327
00328
00371 extern XDAS_Int32 VIDENC2_processWait(VIDENC2_Handle handle,
00372 IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs,
00373 IVIDENC2_OutArgs *outArgs, UInt timeout);
00374
00375
00378 #ifdef __cplusplus
00379 }
00380 #endif
00381
00382 #endif
00383
00384
00385
00386
00387