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 typedef VISA_Handle VIDENC2_Handle;
00083
00084
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
00133
00162 extern Int32 VIDENC2_control(VIDENC2_Handle handle, VIDENC2_Cmd id,
00163 VIDENC2_DynamicParams *params, VIDENC2_Status *status);
00164
00165
00166
00167
00168
00197 extern VIDENC2_Handle VIDENC2_create(Engine_Handle e, String name,
00198 VIDENC2_Params *params);
00199
00200
00201
00202
00203
00221 extern Void VIDENC2_delete(VIDENC2_Handle handle);
00222
00223
00224
00225
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
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
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
00380
00381
00382