XDAIS
dais-x04
Main Page
Modules
Data Structures
Files
Related Pages
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Groups
Pages
packages
ti
xdais
dm
iaudenc1.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2006-2012, Texas Instruments Incorporated
3
* All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions
7
* are met:
8
*
9
* * Redistributions of source code must retain the above copyright
10
* notice, this list of conditions and the following disclaimer.
11
*
12
* * Redistributions in binary form must reproduce the above copyright
13
* notice, this list of conditions and the following disclaimer in the
14
* documentation and/or other materials provided with the distribution.
15
*
16
* * Neither the name of Texas Instruments Incorporated nor the names of
17
* its contributors may be used to endorse or promote products derived
18
* from this software without specific prior written permission.
19
*
20
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
*
32
*/
33
47
#ifndef ti_xdais_dm_IAUDENC1_
48
#define ti_xdais_dm_IAUDENC1_
49
50
#include <
ti/xdais/ialg.h
>
51
#include <
ti/xdais/xdas.h
>
52
#include "
xdm.h
"
53
#include "
iaudio.h
"
54
55
#ifdef __cplusplus
56
extern
"C"
{
57
#endif
58
61
62
#define IAUDENC1_EOK XDM_EOK
63
#define IAUDENC1_EFAIL XDM_EFAIL
64
#define IAUDENC1_EUNSUPPORTED XDM_EUNSUPPORTED
70
typedef struct IAUDENC1_Obj {
71
struct
IAUDENC1_Fxns
*
fxns
;
72
}
IAUDENC1_Obj
;
73
74
78
typedef
struct
IAUDENC1_Obj
*
IAUDENC1_Handle
;
79
80
87
typedef
struct
IAUDENC1_Params
{
88
XDAS_Int32
size
;
89
XDAS_Int32
sampleRate
;
97
XDAS_Int32
bitRate
;
102
XDAS_Int32
channelMode
;
107
XDAS_Int32
dataEndianness
;
111
XDAS_Int32
encMode
;
116
XDAS_Int32
inputFormat
;
120
XDAS_Int32
inputBitsPerSample
;
126
XDAS_Int32
maxBitRate
;
130
XDAS_Int32
dualMonoMode
;
137
XDAS_Int32
crcFlag
;
144
XDAS_Int32
ancFlag
;
156
XDAS_Int32
lfeFlag
;
162
}
IAUDENC1_Params
;
163
164
179
typedef
struct
IAUDENC1_DynamicParams
{
180
XDAS_Int32
size
;
181
XDAS_Int32
bitRate
;
186
XDAS_Int32
sampleRate
;
194
XDAS_Int32
channelMode
;
199
XDAS_Int32
lfeFlag
;
205
XDAS_Int32
dualMonoMode
;
212
XDAS_Int32
inputBitsPerSample
;
218
}
IAUDENC1_DynamicParams
;
219
220
229
typedef
struct
IAUDENC1_InArgs
{
230
XDAS_Int32
size
;
231
XDAS_Int32
numInSamples
;
235
XDM1_SingleBufDesc
ancData
;
242
}
IAUDENC1_InArgs
;
243
244
252
typedef
struct
IAUDENC1_Status
{
253
XDAS_Int32
size
;
254
XDAS_Int32
extendedError
;
255
XDM1_SingleBufDesc
data
;
271
XDM_AlgBufInfo
bufInfo
;
275
XDAS_Int32
validFlag
;
281
XDAS_Int32
lfeFlag
;
287
XDAS_Int32
bitRate
;
292
XDAS_Int32
sampleRate
;
300
XDAS_Int32
channelMode
;
306
XDAS_Int32
encMode
;
311
}
IAUDENC1_Status
;
312
313
322
typedef
struct
IAUDENC1_OutArgs
{
323
XDAS_Int32
size
;
324
XDAS_Int32
extendedError
;
325
XDAS_Int32
bytesGenerated
;
328
XDAS_Int32
numZeroesPadded
;
335
XDAS_Int32
numInSamples
;
338
}
IAUDENC1_OutArgs
;
339
340
351
typedef
IALG_Cmd
IAUDENC1_Cmd
;
352
353
357
typedef
struct
IAUDENC1_Fxns
{
358
IALG_Fxns
ialg
;
429
XDAS_Int32
(*
process
)(IAUDENC1_Handle handle,
XDM1_BufDesc
*inBufs,
430
XDM1_BufDesc
*outBufs,
IAUDENC1_InArgs
*inArgs,
431
IAUDENC1_OutArgs
*outArgs);
432
433
469
XDAS_Int32
(*
control
)(IAUDENC1_Handle handle,
IAUDENC1_Cmd
id,
470
IAUDENC1_DynamicParams
*params,
IAUDENC1_Status
*status);
471
472
}
IAUDENC1_Fxns
;
473
474
477
#ifdef __cplusplus
478
}
479
#endif
480
481
#endif
Copyright 2013, Texas Instruments Incorporated