Ensure ONID is updated at some point, this still may not work, but worth a shot.
This commit is contained in:
parent
7b6ed15eb9
commit
71d6adfed0
3 changed files with 23 additions and 1 deletions
|
@ -364,6 +364,8 @@ void dvb_mux_set_networkname(th_dvb_mux_instance_t *tdmi, const char *name);
|
|||
|
||||
void dvb_mux_set_tsid(th_dvb_mux_instance_t *tdmi, uint16_t tsid);
|
||||
|
||||
void dvb_mux_set_onid(th_dvb_mux_instance_t *tdmi, uint16_t onid);
|
||||
|
||||
void dvb_mux_set_enable(th_dvb_mux_instance_t *tdmi, int enabled);
|
||||
|
||||
void dvb_mux_set_satconf(th_dvb_mux_instance_t *tdmi, const char *scid,
|
||||
|
|
|
@ -865,6 +865,24 @@ dvb_mux_set_tsid(th_dvb_mux_instance_t *tdmi, uint16_t tsid)
|
|||
notify_by_msg("dvbMux", m);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
void
|
||||
dvb_mux_set_onid(th_dvb_mux_instance_t *tdmi, uint16_t onid)
|
||||
{
|
||||
htsmsg_t *m;
|
||||
|
||||
tdmi->tdmi_network_id = onid;
|
||||
|
||||
dvb_mux_save(tdmi);
|
||||
|
||||
m = htsmsg_create_map();
|
||||
htsmsg_add_str(m, "id", tdmi->tdmi_identifier);
|
||||
htsmsg_add_u32(m, "onid", tdmi->tdmi_network_id);
|
||||
notify_by_msg("dvbMux", m);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
|
|
|
@ -463,8 +463,10 @@ dvb_sdt_callback(th_dvb_mux_instance_t *tdmi, uint8_t *ptr, int len,
|
|||
tsid = ptr[0] << 8 | ptr[1];
|
||||
onid = ptr[5] << 8 | ptr[6];
|
||||
if (tableid == 0x42) {
|
||||
if(tdmi->tdmi_transport_stream_id != tsid || tdmi->tdmi_network_id != onid)
|
||||
if(tdmi->tdmi_transport_stream_id != tsid)
|
||||
return -1;
|
||||
if(!tdmi->tdmi_network_id)
|
||||
dvb_mux_set_onid(tdmi, onid);
|
||||
} else {
|
||||
LIST_FOREACH(tdmi, &tda->tda_muxes, tdmi_adapter_link)
|
||||
if(tdmi->tdmi_transport_stream_id == tsid &&
|
||||
|
|
Loading…
Add table
Reference in a new issue