From: Jaroslav Kysela Date: Mon, 20 Nov 2017 15:15:17 +0000 (+0100) Subject: service: rebuild shared PCR 'stream' on load, too X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=170f4810cc557eebc81e713ce5c081e64cb0fca7;p=thirdparty%2Ftvheadend.git service: rebuild shared PCR 'stream' on load, too --- diff --git a/src/service.c b/src/service.c index 4551cc14f..99a87705a 100644 --- a/src/service.c +++ b/src/service.c @@ -2248,6 +2248,7 @@ void service_load ( service_t *t, htsmsg_t *c ) elementary_stream_t *st; streaming_component_type_t type; const char *v; + int shared_pcr = 0; idnode_load(&t->s_id, c); @@ -2287,6 +2288,9 @@ void service_load ( service_t *t, htsmsg_t *c ) if(htsmsg_get_u32(c, "pid", &pid)) continue; + if(pid > 0 && t->s_pcr_pid > 0 && pid == t->s_pcr_pid) + shared_pcr = 1; + st = service_stream_create(t, pid, type); if((v = htsmsg_get_str(c, "language")) != NULL) @@ -2330,6 +2334,8 @@ void service_load ( service_t *t, htsmsg_t *c ) } } } + if (!shared_pcr) + service_stream_create(t, t->s_pcr_pid, SCT_PCR); sort_elementary_streams(t); pthread_mutex_unlock(&t->s_stream_mutex); }