diff --git a/configure b/configure
index 8d0e47cc..cdcd469d 100755
--- a/configure
+++ b/configure
@@ -36,7 +36,6 @@ OPTIONS=(
"bundle:no"
"dvbcsa:no"
"kqueue:no"
- "mpegts_dvb:auto"
)
#
@@ -155,7 +154,6 @@ check_cc_header 'linux/dvb/version' linuxdvbapi
if enabled_or_auto linuxdvb; then
if enabled linuxdvbapi; then
enable linuxdvb
- enable mpegts_dvb
elif enabled linuxdvb; then
die "Linux DVB API not found (use --disable-linuxdvb)"
fi
@@ -307,9 +305,14 @@ fi
#
disable mpegts
disable mpegps
-if enabled linuxdvb || enabled iptv || enabled tsfile; then
+disable mpegts_dvb
+if enabled linuxdvb || enabled iptv || enabled tsfile || enabled satip_client;
+then
enable mpegts
fi
+if enabled linuxdvb || enabled satip_client; then
+ enable mpegts_dvb
+fi
if enabled v4l; then
enable mpegps
diff --git a/src/descrambler/capmt.c b/src/descrambler/capmt.c
index e7027262..3cc16c16 100644
--- a/src/descrambler/capmt.c
+++ b/src/descrambler/capmt.c
@@ -16,6 +16,7 @@
* along with this program. If not, see .
*/
+
#include
#include
#include
@@ -40,6 +41,9 @@
#include "input.h"
#include "tcp.h"
#include "capmt.h"
+
+#if ENABLE_LINUXDVB
+
#include "notify.h"
#include "subscriptions.h"
#include "dtable.h"
@@ -1299,3 +1303,11 @@ capmt_done(void)
}
dtable_delete("capmt");
}
+
+#else /* ENABLE_LINUXDVB */
+
+void capmt_init ( void ) {}
+void capmt_done ( void ) {}
+void capmt_service_start(service_t *s) {}
+
+#endif
diff --git a/src/input/mpegts.h b/src/input/mpegts.h
index 51830c58..3991dc49 100644
--- a/src/input/mpegts.h
+++ b/src/input/mpegts.h
@@ -265,7 +265,7 @@ struct mpegts_network
void (*mn_display_name) (mpegts_network_t*, char *buf, size_t len);
void (*mn_config_save) (mpegts_network_t*);
mpegts_mux_t* (*mn_create_mux)
- (mpegts_mux_t*, uint16_t onid, uint16_t tsid, dvb_mux_conf_t *conf);
+ (mpegts_mux_t*, uint16_t onid, uint16_t tsid, void *conf);
mpegts_service_t* (*mn_create_service)
(mpegts_mux_t*, uint16_t sid, uint16_t pmt_pid);
const idclass_t* (*mn_mux_class) (mpegts_network_t*);
diff --git a/src/input/mpegts/dvb_psi.c b/src/input/mpegts/dvb_psi.c
index 1155ec2c..071eb9d4 100644
--- a/src/input/mpegts/dvb_psi.c
+++ b/src/input/mpegts/dvb_psi.c
@@ -824,6 +824,7 @@ dvb_nit_callback
break;
/* nit only */
+#if ENABLE_MPEGTS_DVB
case DVB_DESC_SAT_DEL:
case DVB_DESC_CABLE_DEL:
case DVB_DESC_TERR_DEL:
@@ -838,6 +839,7 @@ dvb_nit_callback
mpegts_mux_set_tsid(mux, tsid, 0);
}
break;
+#endif
/* Both */
case DVB_DESC_DEF_AUTHORITY:
diff --git a/src/input/mpegts/mpegts_network.c b/src/input/mpegts/mpegts_network.c
index caf3433a..c83098f3 100644
--- a/src/input/mpegts/mpegts_network.c
+++ b/src/input/mpegts/mpegts_network.c
@@ -181,7 +181,7 @@ mpegts_network_config_save
static mpegts_mux_t *
mpegts_network_create_mux
- ( mpegts_mux_t *mm, uint16_t sid, uint16_t tsid, dvb_mux_conf_t *aux )
+ ( mpegts_mux_t *mm, uint16_t sid, uint16_t tsid, void *aux )
{
return NULL;
}
diff --git a/src/input/mpegts/mpegts_network_dvb.c b/src/input/mpegts/mpegts_network_dvb.c
index 583cddf9..6344467d 100644
--- a/src/input/mpegts/mpegts_network_dvb.c
+++ b/src/input/mpegts/mpegts_network_dvb.c
@@ -275,11 +275,12 @@ dvb_network_mux_class
static mpegts_mux_t *
dvb_network_create_mux
- ( mpegts_mux_t *mm, uint16_t onid, uint16_t tsid, dvb_mux_conf_t *dmc )
+ ( mpegts_mux_t *mm, uint16_t onid, uint16_t tsid, void *p )
{
int save = 0;
mpegts_mux_t *mmo = mm;
dvb_network_t *ln = (dvb_network_t*)mm->mm_network;
+ dvb_mux_conf_t *dmc = p;
mm = dvb_network_find_mux(ln, dmc);
if (!mm && ln->mn_autodiscovery) {
diff --git a/src/main.c b/src/main.c
index 3dcd09c9..7602838c 100644
--- a/src/main.c
+++ b/src/main.c
@@ -427,8 +427,8 @@ main(int argc, char **argv)
{
int i;
sigset_t set;
-#if ENABLE_LINUXDVB
- uint32_t adapter_mask;
+#if ENABLE_MPEGTS
+ uint32_t adapter_mask = 0;
#endif
int log_level = LOG_INFO;
int log_options = TVHLOG_OPT_MILLIS | TVHLOG_OPT_STDERR | TVHLOG_OPT_SYSLOG;