pmt.h File Reference
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...
|
Defines |
#define | dvbpsi_NewPMT(p_pmt, i_program_number,i_version, b_current_next, i_pcr_pid) |
| Allocate and initialize a new dvbpsi_pmt_t structure.
|
#define | dvbpsi_DeletePMT(p_pmt) |
| Clean and free a dvbpsi_pmt_t structure.
|
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 |
dvbpsi_handle | dvbpsi_AttachPMT (uint16_t i_program_number, dvbpsi_pmt_callback pf_callback, void *p_cb_data) |
| Creation and initialization of a PMT decoder.
|
void | dvbpsi_DetachPMT (dvbpsi_handle h_dvbpsi) |
| Destroy a PMT decoder.
|
void | dvbpsi_InitPMT (dvbpsi_pmt_t *p_pmt, uint16_t i_program_number, uint8_t i_version, int b_current_next, uint16_t i_pcr_pid) |
| Initialize a user-allocated dvbpsi_pmt_t structure.
|
void | dvbpsi_EmptyPMT (dvbpsi_pmt_t *p_pmt) |
| Clean a dvbpsi_pmt_t structure.
|
dvbpsi_descriptor_t * | dvbpsi_PMTAddDescriptor (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_PMTAddES (dvbpsi_pmt_t *p_pmt, uint8_t i_type, uint16_t i_pid) |
| Add an ES in the PMT.
|
dvbpsi_descriptor_t * | dvbpsi_PMTESAddDescriptor (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_GenPMTSections (dvbpsi_pmt_t *p_pmt) |
| PMT generator.
|
Detailed Description
Application interface for the PMT decoder and the PMT generator.
>
- Author:
- Arnaud de Bossoreille de Ribou <bozo@via.ecp.fr> Application interface for the PMT decoder and the PMT generator. New decoded PMT tables are sent by callback to the application. If a table wasn't active (b_current_next == 0) and the next is the same but active (b_current_next == 1) then the two lists are empty and should be caught from the previous structure.
Define Documentation
#define dvbpsi_DeletePMT |
( |
p_pmt |
|
) |
|
Value:
Clean and free a dvbpsi_pmt_t structure.
- Parameters:
-
| p_pmt | pointer to the PMT structure |
- Returns:
- nothing.
#define dvbpsi_NewPMT |
( |
p_pmt, |
|
|
i_program_number, |
|
|
i_version, |
|
|
b_current_next, |
|
|
i_pcr_pid |
|
) |
|
Value:
Allocate and initialize a new dvbpsi_pmt_t structure.
- Parameters:
-
| 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 |
- Returns:
- nothing.
Function Documentation
Creation and initialization of a PMT decoder.
- Parameters:
-
| 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 |
- Returns:
- a pointer to the decoder for future calls.
Destroy a PMT decoder.
- Parameters:
-
| h_dvbpsi | handle to the decoder |
- Returns:
- nothing.
The handle isn't valid any more.
Clean a dvbpsi_pmt_t structure.
- Parameters:
-
| p_pmt | pointer to the PMT structure |
- Returns:
- nothing.
PMT generator.
- Parameters:
-
- Returns:
- a pointer to the list of generated PSI sections.
Generate PMT sections based on the dvbpsi_pmt_t structure.
void dvbpsi_InitPMT |
( |
dvbpsi_pmt_t * |
p_pmt, |
|
|
uint16_t |
i_program_number, |
|
|
uint8_t |
i_version, |
|
|
int |
b_current_next, |
|
|
uint16_t |
i_pcr_pid | |
|
) |
| | |
Initialize a user-allocated dvbpsi_pmt_t structure.
- Parameters:
-
| 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 |
- Returns:
- nothing.
Add a descriptor in the PMT.
- Parameters:
-
| p_pmt | pointer to the PMT structure |
| i_tag | descriptor's tag |
| i_length | descriptor's length |
| p_data | descriptor's data |
- Returns:
- a pointer to the added descriptor.
Add an ES in the PMT.
- Parameters:
-
| p_pmt | pointer to the PMT structure |
| i_type | type of ES |
| i_pid | PID of the ES |
- Returns:
- a pointer to the added ES.
Add a descriptor in the PMT ES.
- Parameters:
-
| p_es | pointer to the ES structure |
| i_tag | descriptor's tag |
| i_length | descriptor's length |
| p_data | descriptor's data |
- Returns:
- a pointer to the added descriptor.