diff --git a/Makefile b/Makefile index 100c71f..2264a2c 100644 --- a/Makefile +++ b/Makefile @@ -24,7 +24,7 @@ include ${BUILDDIR}/config.mak PROG=${BUILDDIR}/tvheadend -CFLAGS += -Wall -Werror -Wwrite-strings -Wno-deprecated-declarations +CFLAGS += -Wall -Wwrite-strings -Wno-deprecated-declarations CFLAGS += -Wmissing-prototypes LDFLAGS += -lrt -ldl @@ -103,6 +103,7 @@ SRCS-${CONFIG_V4L} += \ # SRCS += src/cwc.c \ src/capmt.c \ + src/ccw.c \ src/ffdecsa/ffdecsa_interface.c \ src/ffdecsa/ffdecsa_int.c diff --git a/src/main.c b/src/main.c index 370bb2a..c9369c6 100644 --- a/src/main.c +++ b/src/main.c @@ -48,6 +48,7 @@ #include "serviceprobe.h" #include "cwc.h" #include "capmt.h" +#include "ccw.h" #include "dvr/dvr.h" #include "htsp.h" #include "rawtsinput.h" @@ -395,6 +396,8 @@ main(int argc, char **argv) capmt_init(); + ccw_init(); + epg_init(); dvr_init(); diff --git a/src/service.c b/src/service.c index 1a405d1..3fad9da 100644 --- a/src/service.c +++ b/src/service.c @@ -41,6 +41,7 @@ #include "packet.h" #include "channels.h" #include "cwc.h" +#include "ccw.h" #include "capmt.h" #include "notify.h" #include "serviceprobe.h" @@ -204,6 +205,7 @@ service_start(service_t *t, unsigned int weight, int force_start) cwc_service_start(t); capmt_service_start(t); + ccw_service_start(t); pthread_mutex_lock(&t->s_stream_mutex); diff --git a/src/tsdemux.c b/src/tsdemux.c index 897fe1d..b1e3b4a 100644 --- a/src/tsdemux.c +++ b/src/tsdemux.c @@ -204,6 +204,11 @@ ts_recv_packet1(service_t *t, const uint8_t *tsb, int64_t *pcrp) pid = (tsb[1] & 0x1f) << 8 | tsb[2]; + if(pid==0x1FFF){ // ignore NULL stream + pthread_mutex_unlock(&t->s_stream_mutex); + return; + } + st = service_stream_find(t, pid); /* Extract PCR */ diff --git a/src/webui/extjs.c b/src/webui/extjs.c index 3ed9f8b..6c11c27 100644 --- a/src/webui/extjs.c +++ b/src/webui/extjs.c @@ -122,6 +122,7 @@ extjs_root(http_connection_t *hc, const char *remain, void *opaque) extjs_load(hq, "static/app/acleditor.js"); extjs_load(hq, "static/app/cwceditor.js"); extjs_load(hq, "static/app/capmteditor.js"); + extjs_load(hq, "static/app/ccweditor.js"); extjs_load(hq, "static/app/tvadapters.js"); #if ENABLE_LINUXDVB extjs_load(hq, "static/app/dvb.js"); diff --git a/src/webui/static/app/tvheadend.js b/src/webui/static/app/tvheadend.js index 5835b3f..84a83e7 100644 --- a/src/webui/static/app/tvheadend.js +++ b/src/webui/static/app/tvheadend.js @@ -241,7 +241,8 @@ function accessUpdate(o) { new tvheadend.iptv, new tvheadend.acleditor, new tvheadend.cwceditor, - new tvheadend.capmteditor] + new tvheadend.capmteditor, + new tvheadend.ccweditor] }); tvheadend.rootTabPanel.add(tvheadend.confpanel); }