From ba2eaabcd4a91e38ee11caae5552fea6341a5da5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96man?= Date: Sat, 9 Jan 2010 22:19:40 +0000 Subject: [PATCH] Disallow multi service streaming from a single mux if the adapter is only 12Mbit/s USB --- src/dvb/dvb_transport.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/dvb/dvb_transport.c b/src/dvb/dvb_transport.c index f5e5fc8f..5487ab0e 100644 --- a/src/dvb/dvb_transport.c +++ b/src/dvb/dvb_transport.c @@ -117,13 +117,15 @@ dvb_transport_start(th_transport_t *t, unsigned int weight, int force_start) /* Check if adapter is idle, or already tuned */ - if(tdmi != NULL && tdmi != t->tht_dvb_mux_instance && !force_start) { + if(tdmi != NULL && + (tdmi != t->tht_dvb_mux_instance || + tda->tda_hostconnection == HOSTCONNECTION_USB12)) { - w = transport_compute_weight(&tdmi->tdmi_adapter->tda_transports); - if(w >= weight) + w = transport_compute_weight(&tda->tda_transports); + if(w >= weight && !force_start) /* We are outranked by weight, cant use it */ return TRANSPORT_NOSTART_NOT_FREE; - + dvb_adapter_clean(tda); }