Commit 3ce402e8 authored by Marian Ďurkovič's avatar Marian Ďurkovič Committed by Christophe Massiot

* ALL: Per-output SDT versioning

parent 428ce29c
...@@ -848,6 +848,7 @@ static void NewSDT( output_t *p_output ) ...@@ -848,6 +848,7 @@ static void NewSDT( output_t *p_output )
if ( p_output->p_sdt_section != NULL ) if ( p_output->p_sdt_section != NULL )
dvbpsi_DeletePSISections( p_output->p_sdt_section ); dvbpsi_DeletePSISections( p_output->p_sdt_section );
p_output->p_sdt_section = NULL; p_output->p_sdt_section = NULL;
p_output->i_sdt_version++;
if ( !p_output->i_sid ) return; if ( !p_output->i_sid ) return;
if ( p_current_sdt == NULL ) return; if ( p_current_sdt == NULL ) return;
...@@ -871,13 +872,11 @@ static void NewSDT( output_t *p_output ) ...@@ -871,13 +872,11 @@ static void NewSDT( output_t *p_output )
if ( b_unique_tsid ) if ( b_unique_tsid )
dvbpsi_InitSDT( &sdt, p_output->i_ts_id, dvbpsi_InitSDT( &sdt, p_output->i_ts_id,
p_current_sdt->i_version, p_output->i_sdt_version, 1,
p_current_sdt->b_current_next,
p_current_sdt->i_network_id ); p_current_sdt->i_network_id );
else else
dvbpsi_InitSDT( &sdt, p_current_sdt->i_ts_id, dvbpsi_InitSDT( &sdt, p_current_sdt->i_ts_id,
p_current_sdt->i_version, p_output->i_sdt_version, 1,
p_current_sdt->b_current_next,
p_current_sdt->i_network_id ); p_current_sdt->i_network_id );
p_new_service = dvbpsi_SDTAddService( &sdt, p_new_service = dvbpsi_SDTAddService( &sdt,
......
...@@ -65,7 +65,7 @@ typedef struct output_t ...@@ -65,7 +65,7 @@ typedef struct output_t
dvbpsi_psi_section_t *p_pmt_section; dvbpsi_psi_section_t *p_pmt_section;
uint8_t i_pmt_version, i_pmt_cc; uint8_t i_pmt_version, i_pmt_cc;
dvbpsi_psi_section_t *p_sdt_section; dvbpsi_psi_section_t *p_sdt_section;
uint8_t i_sdt_cc; uint8_t i_sdt_version, i_sdt_cc;
uint8_t i_eit_cc; uint8_t i_eit_cc;
uint16_t i_ts_id; uint16_t i_ts_id;
......
...@@ -91,6 +91,7 @@ int output_Init( output_t *p_output, in_addr_t i_maddr, uint16_t i_port ) ...@@ -91,6 +91,7 @@ int output_Init( output_t *p_output, in_addr_t i_maddr, uint16_t i_port )
p_output->i_eit_cc = rand() & 0xf; p_output->i_eit_cc = rand() & 0xf;
p_output->i_pat_version = rand() & 0xff; p_output->i_pat_version = rand() & 0xff;
p_output->i_pmt_version = rand() & 0xff; p_output->i_pmt_version = rand() & 0xff;
p_output->i_sdt_version = rand() & 0xff;
p_output->p_pat_section = NULL; p_output->p_pat_section = NULL;
p_output->p_pmt_section = NULL; p_output->p_pmt_section = NULL;
p_output->p_sdt_section = NULL; p_output->p_sdt_section = NULL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment