Wasabi ExpressPlay SDK for Embedded Systems
1.10
Main Page
Modules
Data Structures
Files
File List
Globals
Client
Source
Interface
Core
WsbTsMuxer.h
Go to the documentation of this file.
1
/*****************************************************************
2
|
3
| Wasabi - Wasabi MPEG2 TS Multiplexer
4
|
5
| $Id: WsbTsMuxer.h 10793 2014-06-25 12:46:08Z jebaseelir $
6
| Original author: Edin Hodzic (dino@concisoft.com)
7
|
8
| This software is provided to you pursuant to your agreement
9
| with Intertrust Technologies Corporation ("Intertrust").
10
| This software may be used only in accordance with the terms
11
| of the agreement.
12
|
13
| Copyright (c) 2012-2014 by Intertrust. All rights reserved.
14
|
15
****************************************************************/
16
28
#ifndef _WSB_TS_MUXER_H_
29
#define _WSB_TS_MUXER_H_
30
31
/*----------------------------------------------------------------------
32
| includes
33
+---------------------------------------------------------------------*/
34
#include "
WsbTypes.h
"
35
36
/*----------------------------------------------------------------------
37
| types
38
+---------------------------------------------------------------------*/
39
typedef
struct
WSB_TsMuxer
WSB_TsMuxer
;
40
46
typedef
enum
{
47
WSB_TSMS_PMT
,
48
WSB_TSMS_AUDIO
,
49
WSB_TSMS_VIDEO
50
}
WSB_TsMuxer_Stream
;
51
52
/*----------------------------------------------------------------------
53
| prototypes
54
+---------------------------------------------------------------------*/
55
#ifdef __cplusplus
56
extern
"C"
{
57
#elif 0
58
}
/* make editors happier */
59
#endif
60
61
/*----------------------------------------------------------------------
62
| WSB_TsMuxer_Create
63
+---------------------------------------------------------------------*/
86
WSB_EXPORT
WSB_Result
87
WSB_TsMuxer_Create
(
WSB_TsMuxer
** muxer);
88
89
/*----------------------------------------------------------------------
90
| WSB_TsMuxer_Destroy
91
+---------------------------------------------------------------------*/
100
WSB_EXPORT
WSB_Result
101
WSB_TsMuxer_Destroy
(
WSB_TsMuxer
* muxer);
102
103
104
/*----------------------------------------------------------------------
105
| WSB_TsMuxer_SetPmtAudioType
106
+---------------------------------------------------------------------*/
122
WSB_EXPORT
WSB_Result
123
WSB_TsMuxer_SetPmtAudioType
(
WSB_TsMuxer
* muxer,
WSB_UInt8
audio_type);
124
125
/*----------------------------------------------------------------------
126
| WSB_TsMuxer_SetStreamPid
127
+---------------------------------------------------------------------*/
147
WSB_EXPORT
WSB_Result
148
WSB_TsMuxer_SetStreamPid
(
WSB_TsMuxer
* muxer,
149
WSB_TsMuxer_Stream
stream,
150
WSB_UInt16
pid);
151
152
/*----------------------------------------------------------------------
153
| WSB_TsMuxer_MuxMp4Samples
154
+---------------------------------------------------------------------*/
223
WSB_EXPORT
WSB_Result
224
WSB_TsMuxer_MuxMp4Samples
(
WSB_TsMuxer
* muxer,
225
WSB_Boolean
is_video,
226
const
WSB_UInt8
* media_samples,
227
WSB_Size
media_samples_size,
228
const
WSB_UInt8
* codec_info,
229
WSB_Size
codec_info_size,
230
WSB_UInt64
cts_us,
231
WSB_UInt64
dts_us,
232
WSB_Boolean
dts_is_valid,
233
WSB_Boolean
need_PAT_PMT,
234
WSB_Boolean
need_PCR,
235
WSB_UInt8
** ts_output,
236
WSB_Size
* output_data_size,
237
WSB_Size
* output_buffer_size);
238
239
#ifdef __cplusplus
240
}
241
#endif
242
243
#endif // _WSB_TS_MUXER_H_