dvb: allow off-air services to be inserted into the service list
This commit is contained in:
parent
b90b7f96b0
commit
e00ba4c85f
1 changed files with 11 additions and 5 deletions
|
@ -143,7 +143,7 @@ dvb_service_is_enabled(service_t *t)
|
|||
{
|
||||
th_dvb_mux_instance_t *tdmi = t->s_dvb_mux_instance;
|
||||
th_dvb_adapter_t *tda = tdmi->tdmi_adapter;
|
||||
return tda->tda_enabled && tdmi->tdmi_enabled && t->s_enabled;
|
||||
return tda->tda_enabled && tdmi->tdmi_enabled && t->s_enabled && t->s_pmt_pid;
|
||||
}
|
||||
|
||||
|
||||
|
@ -416,12 +416,18 @@ dvb_service_find2(th_dvb_mux_instance_t *tdmi, uint16_t sid, int pmt_pid,
|
|||
|
||||
LIST_FOREACH(t, &tdmi->tdmi_transports, s_group_link) {
|
||||
if(t->s_dvb_service_id == sid)
|
||||
return t;
|
||||
break;
|
||||
}
|
||||
|
||||
/* Existing - updated PMT_PID if required */
|
||||
if (t) {
|
||||
if (pmt_pid && pmt_pid != t->s_pmt_pid) {
|
||||
t->s_pmt_pid = pmt_pid;
|
||||
*save = 1;
|
||||
}
|
||||
return t;
|
||||
}
|
||||
|
||||
if(pmt_pid == 0)
|
||||
return NULL;
|
||||
|
||||
if(identifier == NULL) {
|
||||
snprintf(tmp, sizeof(tmp), "%s_%04x", tdmi->tdmi_identifier, sid);
|
||||
identifier = tmp;
|
||||
|
|
Loading…
Add table
Reference in a new issue