|
libdvbpsi
1.3.0
|
Subtable demutiplexor. More...
Go to the source code of this file.
Data Structures | |
| struct | dvbpsi_demux_subdec_s |
| Subtable decoder structure. More... | |
| struct | dvbpsi_demux_s |
| subtable demultiplexor structure More... | |
Typedefs | |
| typedef void(* | dvbpsi_demux_new_cb_t )(dvbpsi_t *p_dvbpsi, uint8_t i_table_id, uint16_t i_extension, void *p_cb_data) |
| Callback used in case of a new subtable detected. | |
| typedef void(* | dvbpsi_demux_gather_cb_t )(dvbpsi_t *p_dvbpsi, dvbpsi_decoder_t *p_decoder, dvbpsi_psi_section_t *p_section) |
| Callback used for gathering psi sections on behalf of subtable decoders. | |
| typedef void(* | dvbpsi_demux_detach_cb_t )(dvbpsi_t *p_dvbpsi, uint8_t i_table_id, uint16_t i_extension) |
| Callback used for detaching subtable decoder from demuxer. | |
|
typedef struct dvbpsi_demux_subdec_s | dvbpsi_demux_subdec_t |
| dvbpsi_demux_subdec_t type definition. | |
| typedef struct dvbpsi_demux_s | dvbpsi_demux_t |
| dvbpsi_demux_t type definition. | |
Functions | |
| bool | dvbpsi_AttachDemux (dvbpsi_t *p_dvbpsi, dvbpsi_demux_new_cb_t pf_new_cb, void *p_new_cb_data) |
| Attaches a new demux structure on dvbpsi_t* handle. | |
| void | dvbpsi_DetachDemux (dvbpsi_t *p_dvbpsi) |
| Destroys a demux structure. | |
| dvbpsi_demux_subdec_t * | dvbpsi_demuxGetSubDec (dvbpsi_demux_t *p_demux, uint8_t i_table_id, uint16_t i_extension) |
| Looks for a subtable decoder, given the subtable ID. | |
| void | dvbpsi_Demux (dvbpsi_t *p_dvbpsi, dvbpsi_psi_section_t *p_section) |
| Sends the PSI sections to the right subtable decoder according to their table ID and extension. | |
| dvbpsi_demux_subdec_t * | dvbpsi_NewDemuxSubDecoder (const uint8_t i_table_id, const uint16_t i_extension, dvbpsi_demux_detach_cb_t pf_detach, dvbpsi_demux_gather_cb_t pf_gather, dvbpsi_decoder_t *p_decoder) |
| Allocates a new demux sub table decoder and initializes it. | |
| void | dvbpsi_DeleteDemuxSubDecoder (dvbpsi_demux_subdec_t *p_subdec) |
| Releases memory allocated with. | |
| void | dvbpsi_AttachDemuxSubDecoder (dvbpsi_demux_t *p_demux, dvbpsi_demux_subdec_t *p_subdec) |
| Attach a subtable decoder to the given demux handle. | |
| void | dvbpsi_DetachDemuxSubDecoder (dvbpsi_demux_t *p_demux, dvbpsi_demux_subdec_t *p_subdec) |
| Detach a subtable decoder from the given demux pointer. | |
Subtable demutiplexor.
>
| void(* dvbpsi_demux_detach_cb_t)(dvbpsi_t *p_dvbpsi, uint8_t i_table_id, uint16_t i_extension) |
Callback used for detaching subtable decoder from demuxer.
table extention to detach
| void(* dvbpsi_demux_gather_cb_t)(dvbpsi_t *p_dvbpsi, void *p_cb_data, dvbpsi_psi_section_t *p_section) |
Callback used for gathering psi sections on behalf of subtable decoders.
pointer to psi section
| void(* dvbpsi_demux_new_cb_t)(dvbpsi_t *p_dvbpsi, uint8_t i_table_id, uint16_t i_extension, void *p_cb_data) |
Callback used in case of a new subtable detected.
pointer to callback data
| bool dvbpsi_AttachDemux | ( | dvbpsi_t * | p_dvbpsi, |
| dvbpsi_demux_new_cb_t | pf_new_cb, | ||
| void * | p_new_cb_data | ||
| ) |
Attaches a new demux structure on dvbpsi_t* handle.
| p_dvbpsi | pointer to dvbpsi_t handle |
| pf_new_cb | A callcack called when a new type of subtable is found. |
| p_new_cb_data | Data given to the previous callback. |
| void dvbpsi_AttachDemuxSubDecoder | ( | dvbpsi_demux_t * | p_demux, |
| dvbpsi_demux_subdec_t * | p_subdec | ||
| ) |
Attach a subtable decoder to the given demux handle.
| p_demux | pointer to dvbpsi_demux_t |
| p_subdec | pointer to dvbpsi_demux_subdec_t |
| void dvbpsi_DeleteDemuxSubDecoder | ( | dvbpsi_demux_subdec_t * | p_subdec | ) |
Releases memory allocated with.
| p_subdec | pointer to demux subtable decoder. |
| void dvbpsi_Demux | ( | dvbpsi_t * | p_dvbpsi, |
| dvbpsi_psi_section_t * | p_section | ||
| ) |
Sends the PSI sections to the right subtable decoder according to their table ID and extension.
| p_dvbpsi | PSI decoder handle. |
| p_section | PSI section. |
| dvbpsi_demux_subdec_t * dvbpsi_demuxGetSubDec | ( | dvbpsi_demux_t * | p_demux, |
| uint8_t | i_table_id, | ||
| uint16_t | i_extension | ||
| ) |
Looks for a subtable decoder, given the subtable ID.
| p_demux | Pointer to the demux structure. |
| i_table_id | Table ID of the wanted subtable. |
| i_extension | Table ID extension of the wanted subtable. |
| void dvbpsi_DetachDemux | ( | dvbpsi_t * | p_dvbpsi | ) |
Destroys a demux structure.
| p_dvbpsi | The handle of the demux to be destroyed. |
| void dvbpsi_DetachDemuxSubDecoder | ( | dvbpsi_demux_t * | p_demux, |
| dvbpsi_demux_subdec_t * | p_subdec | ||
| ) |
Detach a subtable decoder from the given demux pointer.
| p_demux | pointer to dvbpsi_demux_t |
| p_subdec | pointer to dvbpsi_demux_subdec_t |
| dvbpsi_demux_subdec_t * dvbpsi_NewDemuxSubDecoder | ( | const uint8_t | i_table_id, |
| const uint16_t | i_extension, | ||
| dvbpsi_demux_detach_cb_t | pf_detach, | ||
| dvbpsi_demux_gather_cb_t | pf_gather, | ||
| dvbpsi_decoder_t * | p_decoder | ||
| ) |
Allocates a new demux sub table decoder and initializes it.
| i_table_id | table id to create subtable decoder for |
| i_extension | table extension to create subtable decoder for |
| pf_detach | pointer to detach function for subtable decoder. |
| pf_gather | pointer to gather function for subtable decoder. |
| p_decoder | pointer to private decoder. |
1.7.6.1