Codec Engine Application Programming Interface (API)
ce-w08
Main Page
Modules
Data Structures
Files
Related Pages
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
packages
ti
sdo
ce
video
videnc.h
Go to the documentation of this file.
1
/*
2
* Copyright 2013 by Texas Instruments Incorporated.
3
*
4
*/
5
6
/*
7
* Copyright (c) 2013, Texas Instruments Incorporated
8
* All rights reserved.
9
*
10
* Redistribution and use in source and binary forms, with or without
11
* modification, are permitted provided that the following conditions
12
* are met:
13
*
14
* * Redistributions of source code must retain the above copyright
15
* notice, this list of conditions and the following disclaimer.
16
*
17
* * Redistributions in binary form must reproduce the above copyright
18
* notice, this list of conditions and the following disclaimer in the
19
* documentation and/or other materials provided with the distribution.
20
*
21
* * Neither the name of Texas Instruments Incorporated nor the names of
22
* its contributors may be used to endorse or promote products derived
23
* from this software without specific prior written permission.
24
*
25
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
27
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
29
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
30
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
31
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
32
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
33
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
34
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
35
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36
*
37
*/
38
/*
39
* ======== videnc.h ========
40
*/
56
#ifndef ti_sdo_ce_video_VIDENC_
57
#define ti_sdo_ce_video_VIDENC_
58
59
#ifdef __cplusplus
60
extern
"C"
{
61
#endif
62
63
/*
64
* By definition, this interface is 0.9 XDM. Before including xdm.h,
65
* define XDM_INCLUDE_DOT9_SUPPORT
66
*/
67
#ifndef XDM_INCLUDE_DOT9_SUPPORT
68
#define XDM_INCLUDE_DOT9_SUPPORT
69
#endif
70
#include <
ti/xdais/dm/xdm.h
>
71
#include <
ti/xdais/dm/ividenc.h
>
72
73
#include <
ti/sdo/ce/Engine.h
>
74
#include <
ti/sdo/ce/visa.h
>
75
#include <ti/sdo/ce/skel.h>
76
79
80
typedef
IVIDENC_Status
VIDENC_Status
;
82
#define VIDENC_EOK IVIDENC_EOK
83
#define VIDENC_EFAIL IVIDENC_EFAIL
84
#define VIDENC_ERUNTIME IVIDENC_ERUNTIME
85
#define VIDENC_ETIMEOUT VISA_ETIMEOUT
86
#define VIDENC_FOREVER VISA_FOREVER
91
#define VIDENC_VISATYPE "ti.sdo.ce.video.IVIDENC"
92
99
#define VIDENC_STUBSNAME "VIDENC_STUBS"
100
101
105
typedef
VISA_Handle
VIDENC_Handle
;
106
111
typedef
struct
IVIDENC_Params
VIDENC_Params
;
112
116
typedef
IVIDENC_InArgs
VIDENC_InArgs
;
117
121
typedef
IVIDENC_OutArgs
VIDENC_OutArgs
;
122
126
typedef
IVIDENC_Cmd
VIDENC_Cmd
;
127
131
typedef
IVIDENC_DynamicParams
VIDENC_DynamicParams
;
132
139
extern
SKEL_Fxns VIDENC_SKEL;
140
144
extern
IVIDENC_Fxns
VIDENC_STUBS;
145
153
typedef
struct
IVIDENC_CodecClassConfig
{
154
Bool
manageInBufsCache
[
XDM_MAX_IO_BUFFERS
];
155
Bool
manageOutBufsCache
[
XDM_MAX_IO_BUFFERS
];
156
Bool
manageReconBufsCache
[
XDM_MAX_IO_BUFFERS
];
157
}
IVIDENC_CodecClassConfig
;
158
159
/*
160
* ======== VIDENC_create ========
161
*/
189
extern
VIDENC_Handle
VIDENC_create
(
Engine_Handle
e, String name,
190
VIDENC_Params
*params);
191
192
193
/*
194
* ======== VIDENC_process ========
195
*/
240
extern
Int32
VIDENC_process
(VIDENC_Handle handle,
241
XDM_BufDesc
*inBufs,
XDM_BufDesc
*outBufs,
242
VIDENC_InArgs *inArgs, VIDENC_OutArgs *outArgs);
243
244
245
/*
246
* ======== VIDENC_control ========
247
*/
277
extern
Int32
VIDENC_control
(VIDENC_Handle handle, VIDENC_Cmd
id
,
278
VIDENC_DynamicParams *params, VIDENC_Status *status);
279
280
281
/*
282
* ======== VIDENC_delete ========
283
*/
301
extern
Void
VIDENC_delete
(VIDENC_Handle handle);
302
303
304
/*
305
* ======== VIDENC_processAsync ========
306
*/
345
extern
XDAS_Int32
VIDENC_processAsync
(VIDENC_Handle handle,
XDM_BufDesc
*inBufs,
346
XDM_BufDesc
*outBufs,
IVIDENC_InArgs
*inArgs,
IVIDENC_OutArgs
*outArgs);
347
348
349
/*
350
* ======== VIDENC_processWait ========
351
*/
394
extern
XDAS_Int32
VIDENC_processWait
(VIDENC_Handle handle,
XDM_BufDesc
*inBufs,
395
XDM_BufDesc
*outBufs,
IVIDENC_InArgs
*inArgs,
IVIDENC_OutArgs
*outArgs,
396
UInt timeout);
397
398
401
#ifdef __cplusplus
402
}
403
#endif
404
405
#endif
406
/*
407
* @(#) ti.sdo.ce.video; 1, 0, 3,3; 6-13-2013 00:20:10; /db/atree/library/trees/ce/ce-w08/src/ xlibrary
408
409
*/
410
Copyright 2013, Texas Instruments Incorporated