libdvbpsi 1.3.2
|
Application interface for the PMT decoder and the PMT generator. More...
Go to the source code of this file.
Data Structures | |
struct | dvbpsi_pmt_es_s |
PMT ES structure. More... | |
struct | dvbpsi_pmt_s |
PMT structure. More... |
Typedefs | |
typedef struct dvbpsi_pmt_es_s | dvbpsi_pmt_es_t |
dvbpsi_pmt_es_t type definition. | |
typedef struct dvbpsi_pmt_s | dvbpsi_pmt_t |
dvbpsi_pmt_t type definition. | |
typedef void(* | dvbpsi_pmt_callback) (void *p_cb_data, dvbpsi_pmt_t *p_new_pmt) |
Callback type definition. |
Functions | |
bool | dvbpsi_pmt_attach (dvbpsi_t *p_dvbpsi, uint16_t i_program_number, dvbpsi_pmt_callback pf_callback, void *p_cb_data) |
Creates and initialization of a PMT decoder and attaches it to dvbpsi_t handle. | |
void | dvbpsi_pmt_detach (dvbpsi_t *p_dvbpsi) |
Destroy a PMT decoder. | |
void | dvbpsi_pmt_init (dvbpsi_pmt_t *p_pmt, uint16_t i_program_number, uint8_t i_version, bool b_current_next, uint16_t i_pcr_pid) |
Initialize a user-allocated dvbpsi_pmt_t structure. | |
dvbpsi_pmt_t * | dvbpsi_pmt_new (uint16_t i_program_number, uint8_t i_version, bool b_current_next, uint16_t i_pcr_pid) |
Allocate and initialize a new dvbpsi_pmt_t structure. | |
void | dvbpsi_pmt_empty (dvbpsi_pmt_t *p_pmt) |
Clean a dvbpsi_pmt_t structure. | |
void | dvbpsi_pmt_delete (dvbpsi_pmt_t *p_pmt) |
Clean and free a dvbpsi_pmt_t structure. | |
dvbpsi_descriptor_t * | dvbpsi_pmt_descriptor_add (dvbpsi_pmt_t *p_pmt, uint8_t i_tag, uint8_t i_length, uint8_t *p_data) |
Add a descriptor in the PMT. | |
dvbpsi_pmt_es_t * | dvbpsi_pmt_es_add (dvbpsi_pmt_t *p_pmt, uint8_t i_type, uint16_t i_pid) |
Add an ES in the PMT. | |
dvbpsi_descriptor_t * | dvbpsi_pmt_es_descriptor_add (dvbpsi_pmt_es_t *p_es, uint8_t i_tag, uint8_t i_length, uint8_t *p_data) |
Add a descriptor in the PMT ES. | |
dvbpsi_psi_section_t * | dvbpsi_pmt_sections_generate (dvbpsi_t *p_dvbpsi, dvbpsi_pmt_t *p_pmt) |
PMT generator. |
Application interface for the PMT decoder and the PMT generator.
>
Application interface for the PMT decoder and the PMT generator. New decoded PMT tables are sent by callback to the application.
bool dvbpsi_pmt_attach | ( | dvbpsi_t * | p_dvbpsi, |
uint16_t | i_program_number, | ||
dvbpsi_pmt_callback | pf_callback, | ||
void * | p_cb_data ) |
Creates and initialization of a PMT decoder and attaches it to dvbpsi_t handle.
p_dvbpsi | handle |
i_program_number | program number |
pf_callback | function to call back on new PMT |
p_cb_data | private data given in argument to the callback |
void dvbpsi_pmt_delete | ( | dvbpsi_pmt_t * | p_pmt | ) |
Clean and free a dvbpsi_pmt_t structure.
p_pmt | pointer to the PMT structure |
dvbpsi_descriptor_t * dvbpsi_pmt_descriptor_add | ( | dvbpsi_pmt_t * | p_pmt, |
uint8_t | i_tag, | ||
uint8_t | i_length, | ||
uint8_t * | p_data ) |
Add a descriptor in the PMT.
p_pmt | pointer to the PMT structure |
i_tag | descriptor's tag |
i_length | descriptor's length |
p_data | descriptor's data |
void dvbpsi_pmt_detach | ( | dvbpsi_t * | p_dvbpsi | ) |
Destroy a PMT decoder.
p_dvbpsi | handle |
The handle isn't valid any more.
void dvbpsi_pmt_empty | ( | dvbpsi_pmt_t * | p_pmt | ) |
dvbpsi_pmt_es_t * dvbpsi_pmt_es_add | ( | dvbpsi_pmt_t * | p_pmt, |
uint8_t | i_type, | ||
uint16_t | i_pid ) |
Add an ES in the PMT.
p_pmt | pointer to the PMT structure |
i_type | type of ES |
i_pid | PID of the ES |
dvbpsi_descriptor_t * dvbpsi_pmt_es_descriptor_add | ( | dvbpsi_pmt_es_t * | p_es, |
uint8_t | i_tag, | ||
uint8_t | i_length, | ||
uint8_t * | p_data ) |
Add a descriptor in the PMT ES.
p_es | pointer to the ES structure |
i_tag | descriptor's tag |
i_length | descriptor's length |
p_data | descriptor's data |
void dvbpsi_pmt_init | ( | dvbpsi_pmt_t * | p_pmt, |
uint16_t | i_program_number, | ||
uint8_t | i_version, | ||
bool | b_current_next, | ||
uint16_t | i_pcr_pid ) |
Initialize a user-allocated dvbpsi_pmt_t structure.
p_pmt | pointer to the PMT structure |
i_program_number | program number |
i_version | PMT version |
b_current_next | current next indicator |
i_pcr_pid | PCR_PID |
References b_current_next, and i_version.
dvbpsi_pmt_t * dvbpsi_pmt_new | ( | uint16_t | i_program_number, |
uint8_t | i_version, | ||
bool | b_current_next, | ||
uint16_t | i_pcr_pid ) |
Allocate and initialize a new dvbpsi_pmt_t structure.
i_program_number | program number |
i_version | PMT version |
b_current_next | current next indicator |
i_pcr_pid | PCR_PID |
References b_current_next, and i_version.
dvbpsi_psi_section_t * dvbpsi_pmt_sections_generate | ( | dvbpsi_t * | p_dvbpsi, |
dvbpsi_pmt_t * | p_pmt ) |
PMT generator.
p_dvbpsi | handle to dvbpsi with attached decoder |
p_pmt | PMT structure |
Generate PMT sections based on the dvbpsi_pmt_t structure.