mpegts: ensure that PCR (and PMT) are properly opened by service and recorded.
Fixes #1884.
This commit is contained in:
parent
821a854d90
commit
88e06607b0
2 changed files with 5 additions and 0 deletions
|
@ -1346,6 +1346,7 @@ psi_parse_pmt
|
|||
t->s_pcr_pid = pcr_pid;
|
||||
update |= PMT_UPDATE_PCR;
|
||||
}
|
||||
tvhdebug("pmt", " pcr_pid %04X", pcr_pid);
|
||||
|
||||
ptr += 9;
|
||||
len -= 9;
|
||||
|
|
|
@ -226,6 +226,8 @@ mpegts_input_open_service ( mpegts_input_t *mi, mpegts_service_t *s, int init )
|
|||
|
||||
/* Register PIDs */
|
||||
pthread_mutex_lock(&s->s_stream_mutex);
|
||||
mi->mi_open_pid(mi, s->s_dvb_mux, s->s_pmt_pid, MPS_STREAM, s);
|
||||
mi->mi_open_pid(mi, s->s_dvb_mux, s->s_pcr_pid, MPS_STREAM, s);
|
||||
TAILQ_FOREACH(st, &s->s_components, es_link)
|
||||
mi->mi_open_pid(mi, s->s_dvb_mux, st->es_pid, MPS_STREAM, s);
|
||||
|
||||
|
@ -247,6 +249,8 @@ mpegts_input_close_service ( mpegts_input_t *mi, mpegts_service_t *s )
|
|||
|
||||
/* Close PID */
|
||||
pthread_mutex_lock(&s->s_stream_mutex);
|
||||
mi->mi_close_pid(mi, s->s_dvb_mux, s->s_pmt_pid, MPS_STREAM, s);
|
||||
mi->mi_close_pid(mi, s->s_dvb_mux, s->s_pcr_pid, MPS_STREAM, s);
|
||||
TAILQ_FOREACH(st, &s->s_components, es_link)
|
||||
mi->mi_close_pid(mi, s->s_dvb_mux, st->es_pid, MPS_STREAM, s);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue