Go to the source code of this file.
Data Structures | |
| struct | dvbpsi_sdt_service_s |
| SDT service description structure. More... | |
| struct | dvbpsi_sdt_s |
| SDT structure. More... | |
Defines | |
| #define | dvbpsi_NewSDT(p_sdt, i_ts_id, i_version, b_current_next, i_network_id) |
| Allocate and initialize a new dvbpsi_sdt_t structure. | |
| #define | dvbpsi_DeleteSDT(p_sdt) |
| Clean and free a dvbpsi_sdt_t structure. | |
Typedefs | |
| typedef struct dvbpsi_sdt_service_s | dvbpsi_sdt_service_t |
| dvbpsi_sdt_service_t type definition. | |
| typedef struct dvbpsi_sdt_s | dvbpsi_sdt_t |
| dvbpsi_sdt_t type definition. | |
| typedef void(* | dvbpsi_sdt_callback )(void *p_cb_data, dvbpsi_sdt_t *p_new_sdt) |
| Callback type definition. | |
Functions | |
| int | dvbpsi_AttachSDT (dvbpsi_decoder_t *p_psi_decoder, uint8_t i_table_id, uint16_t i_extension, dvbpsi_sdt_callback pf_callback, void *p_cb_data) |
| void | dvbpsi_DetachSDT (dvbpsi_demux_t *p_demux, uint8_t i_table_id, uint16_t i_extension) |
| Destroy a SDT decoder. | |
| void | dvbpsi_InitSDT (dvbpsi_sdt_t *p_sdt, uint16_t i_ts_id, uint8_t i_version, int b_current_next, uint16_t i_network_id) |
| Initialize a user-allocated dvbpsi_sdt_t structure. | |
| void | dvbpsi_EmptySDT (dvbpsi_sdt_t *p_sdt) |
| Clean a dvbpsi_sdt_t structure. | |
| dvbpsi_sdt_service_t * | dvbpsi_SDTAddService (dvbpsi_sdt_t *p_sdt, uint16_t i_service_id, int b_eit_schedule, int b_eit_present, uint8_t i_running_status, int b_free_ca) |
| Add a service description at the end of the SDT. | |
| dvbpsi_descriptor_t * | dvbpsi_SDTServiceAddDescriptor (dvbpsi_sdt_service_t *p_service, uint8_t i_tag, uint8_t i_length, uint8_t *p_data) |
| Add a descriptor in the SDT service. | |
| dvbpsi_psi_section_t * | dvbpsi_GenSDTSections (dvbpsi_sdt_t *p_sdt) |
>
| #define dvbpsi_DeleteSDT | ( | p_sdt | ) |
Value:
do { \ dvbpsi_EmptySDT(p_sdt); \ free(p_sdt); \ } while(0);
| p_sdt | pointer to the SDT structure |
| #define dvbpsi_NewSDT | ( | p_sdt, | |||
| i_ts_id, | |||||
| i_version, | |||||
| b_current_next, | |||||
| i_network_id | ) |
Value:
do { \ p_sdt = (dvbpsi_sdt_t*)malloc(sizeof(dvbpsi_sdt_t)); \ if(p_sdt != NULL) \ dvbpsi_InitSDT(p_sdt, i_ts_id, i_version, b_current_next, i_network_id); \ } while(0);
| p_sdt | pointer to the SDT structure | |
| i_ts_id | transport stream ID | |
| i_version | SDT version | |
| b_current_next | current next indicator | |
| i_network_id | original network id |
| void dvbpsi_DetachSDT | ( | dvbpsi_demux_t * | p_demux, | |
| uint8_t | i_table_id, | |||
| uint16_t | i_extension | |||
| ) |
Destroy a SDT decoder.
| p_demux | Subtable demultiplexor to which the decoder is attached. | |
| i_table_id | Table ID, 0x42 or 0x46. | |
| i_extension | Table ID extension, here TS ID. |
| void dvbpsi_EmptySDT | ( | dvbpsi_sdt_t * | p_sdt | ) |
Clean a dvbpsi_sdt_t structure.
| p_sdt | pointer to the SDT structure |
| void dvbpsi_InitSDT | ( | dvbpsi_sdt_t * | p_sdt, | |
| uint16_t | i_ts_id, | |||
| uint8_t | i_version, | |||
| int | b_current_next, | |||
| uint16_t | i_network_id | |||
| ) |
Initialize a user-allocated dvbpsi_sdt_t structure.
| p_sdt | pointer to the SDT structure | |
| i_ts_id | transport stream ID | |
| i_version | SDT version | |
| b_current_next | current next indicator | |
| i_network_id | original network id |
| dvbpsi_sdt_service_t * dvbpsi_SDTAddService | ( | dvbpsi_sdt_t * | p_sdt, | |
| uint16_t | i_service_id, | |||
| int | b_eit_schedule, | |||
| int | b_eit_present, | |||
| uint8_t | i_running_status, | |||
| int | b_free_ca | |||
| ) |
Add a service description at the end of the SDT.
| p_sdt | pointer to the SDT structure | |
| i_service_id | Service ID | |
| b_eit_schedule | EIT Schedule flag | |
| b_eit_present | EIT Present/Following flag | |
| i_running_status | Running status | |
| b_free_ca | Free CA flag |
| dvbpsi_descriptor_t * dvbpsi_SDTServiceAddDescriptor | ( | dvbpsi_sdt_service_t * | p_service, | |
| uint8_t | i_tag, | |||
| uint8_t | i_length, | |||
| uint8_t * | p_data | |||
| ) |
Add a descriptor in the SDT service.
| p_service | pointer to the service structure | |
| i_tag | descriptor's tag | |
| i_length | descriptor's length | |
| p_data | descriptor's data |
1.5.5