Wasabi ExpressPlay SDK for Embedded Systems  1.23.0
Data Structures | Macros | Typedefs | Enumerations | Functions
Ts2ElementaryStream.h File Reference
#include "Atomix.h"
#include "Ts2Packet.h"
#include "Ts2Pes.h"
#include "Ts2Descriptors.h"

Go to the source code of this file.

Data Structures

struct  TS2_ElementaryStream
 
struct  TS2_DoviElementaryStream
 

Macros

#define TS2_ES_MPEG1_VIDEO   0x01
 
#define TS2_ES_MPEG2_VIDEO   0x02
 
#define TS2_ES_MPEG1_AUDIO   0x03
 
#define TS2_ES_MPEG2_AUDIO   0x04
 
#define TS2_ES_PRIVATE_DATA   0x06
 
#define TS2_ES_MPEG4_VIDEO   0x10
 
#define TS2_ES_MPEG2_AAC   0x0F /* ADTS */
 
#define TS2_ES_MPEG4_AUDIO   0x11
 
#define TS2_ES_AVC   0x1B
 
#define TS2_ES_HEVC   0x24
 
#define TS2_ES_AC3   0x81
 

Typedefs

typedef struct TS2_ElementaryStream TS2_ElementaryStream
 
typedef struct TS2_DoviElementaryStream TS2_DoviElementaryStream
 

Enumerations

enum  TS2_ElementaryStream_Type {
  TS2_ES_TYPE_UNKNOWN = 0,
  TS2_ES_TYPE_GENERIC = 1,
  TS2_ES_TYPE_DOVI = 2
}
 

Functions

ATX_Result TS2_ElementaryStream_Parse (const ATX_Byte *data, ATX_Size *data_size, TS2_ElementaryStream **es)
 
TS2_DescriptorTS2_ElementaryStream_GetDescriptor (const TS2_ElementaryStream *self, ATX_Byte desc_tag)
 
ATX_Result TS2_ElementaryStream_Serialize (const TS2_ElementaryStream *self, ATX_Byte *buffer)
 
ATX_Size TS2_ElementaryStream_GetSize (const TS2_ElementaryStream *self)
 
void TS2_ElementaryStream_Destroy (TS2_ElementaryStream *self)
 
ATX_Result TS2_ElementaryStream_ProcessTsPacket (void *elementary_stream, TS2_PacketDispatcher *dispatcher, TS2_Packet *packet)
 
ATX_Result TS2_ElementaryStream_SetPESHandler (TS2_ElementaryStream *self, ATX_Result(*OnPesPacketComplete)(TS2_ElementaryStream *, TS2_PesPacket *, ATX_Any), ATX_Any client_data)
 

Macro Definition Documentation

◆ TS2_ES_AC3

#define TS2_ES_AC3   0x81

◆ TS2_ES_AVC

#define TS2_ES_AVC   0x1B

◆ TS2_ES_HEVC

#define TS2_ES_HEVC   0x24

◆ TS2_ES_MPEG1_AUDIO

#define TS2_ES_MPEG1_AUDIO   0x03

◆ TS2_ES_MPEG1_VIDEO

#define TS2_ES_MPEG1_VIDEO   0x01

◆ TS2_ES_MPEG2_AAC

#define TS2_ES_MPEG2_AAC   0x0F /* ADTS */

◆ TS2_ES_MPEG2_AUDIO

#define TS2_ES_MPEG2_AUDIO   0x04

◆ TS2_ES_MPEG2_VIDEO

#define TS2_ES_MPEG2_VIDEO   0x02

◆ TS2_ES_MPEG4_AUDIO

#define TS2_ES_MPEG4_AUDIO   0x11

◆ TS2_ES_MPEG4_VIDEO

#define TS2_ES_MPEG4_VIDEO   0x10

◆ TS2_ES_PRIVATE_DATA

#define TS2_ES_PRIVATE_DATA   0x06

Typedef Documentation

◆ TS2_DoviElementaryStream

◆ TS2_ElementaryStream

Enumeration Type Documentation

◆ TS2_ElementaryStream_Type

Enumerator
TS2_ES_TYPE_UNKNOWN 
TS2_ES_TYPE_GENERIC 
TS2_ES_TYPE_DOVI 

Function Documentation

◆ TS2_ElementaryStream_Destroy()

void TS2_ElementaryStream_Destroy ( TS2_ElementaryStream self)

◆ TS2_ElementaryStream_GetDescriptor()

TS2_Descriptor* TS2_ElementaryStream_GetDescriptor ( const TS2_ElementaryStream self,
ATX_Byte  desc_tag 
)

◆ TS2_ElementaryStream_GetSize()

ATX_Size TS2_ElementaryStream_GetSize ( const TS2_ElementaryStream self)

◆ TS2_ElementaryStream_Parse()

ATX_Result TS2_ElementaryStream_Parse ( const ATX_Byte *  data,
ATX_Size *  data_size,
TS2_ElementaryStream **  es 
)

◆ TS2_ElementaryStream_ProcessTsPacket()

ATX_Result TS2_ElementaryStream_ProcessTsPacket ( void *  elementary_stream,
TS2_PacketDispatcher dispatcher,
TS2_Packet packet 
)

◆ TS2_ElementaryStream_Serialize()

ATX_Result TS2_ElementaryStream_Serialize ( const TS2_ElementaryStream self,
ATX_Byte *  buffer 
)

◆ TS2_ElementaryStream_SetPESHandler()

ATX_Result TS2_ElementaryStream_SetPESHandler ( TS2_ElementaryStream self,
ATX_Result(*)(TS2_ElementaryStream *, TS2_PesPacket *, ATX_Any)  OnPesPacketComplete,
ATX_Any  client_data 
)