Commit graph

4393 commits

Author SHA1 Message Date
Adam Sutton
87a232ebb8 mpegts network_scan: fix problems with having multiple networks
previously as soon as any mux failed it would give up assuming nothing else
could be tuned. However just because no tuner was available that could service
that mux doesn't mean there wasn't one that couldn't service another.

The only real issue I can see with this is if we're idle scanning it's possible
due to bad luck to starve muxes of an attempt. We can either rely on random
chance or put some additional weighting based on time? Though that could be
problematic for other reasons.
2014-06-10 21:40:15 +01:00
Jaroslav Kysela
b22336f60c httpc: add checking for NULL scheme and host 2014-06-10 20:14:43 +02:00
Jaroslav Kysela
3b808e72a3 capmt: another 'mode 1' fix 2014-06-10 19:53:51 +02:00
Jaroslav Kysela
985f3af0a6 capmt: adapter index fix for 'mode 1' 2014-06-10 18:39:05 +02:00
Jaroslav Kysela
6fc3a46810 Makefile: Simplify (and probably fix) the ffdecsa rules 2014-06-10 18:29:38 +02:00
perexg
4b4eb4d7c9 Merge pull request #422 from dmarion/osx
2 fixes to make it build-able on OS X
2014-06-10 18:19:45 +02:00
Damjan Marion
a2fe8f50db capmt: fix capmt_pid_remove() by removing extra semicolon
Thanks to clang for notifying this.
2014-06-10 18:07:54 +02:00
Damjan Marion
d1c04df5a4 fix building on OS X and FreeBSD 2014-06-10 18:03:50 +02:00
Jaroslav Kysela
eaec1c216c httpc: fix for the previous commit 2014-06-10 15:07:58 +02:00
Jaroslav Kysela
900b2f0a80 httpc: Add EINPROGRESS workaround for OSX 2014-06-10 15:02:34 +02:00
Jaroslav Kysela
96d2ee5a79 capmt: fix compilation without linuxdvb support 2014-06-10 14:51:14 +02:00
Jaroslav Kysela
3a13aa34ea mpegts_mux_start: follow weight handling as for service, fix errors 2014-06-10 14:42:11 +02:00
Jaroslav Kysela
92ca7963f2 service: find the tuner/source with the lowest weight for the override action 2014-06-10 14:23:18 +02:00
Jaroslav Kysela
8d9608b611 mpegts: Add extra weight for inputs with more subscribers
This simple code assures that the inputs having more subscribers
will be selected after ones with less subscribers.
2014-06-10 14:14:46 +02:00
Jaroslav Kysela
63dd191bd2 recode mpegts_mux_start() to follow rules as service_find_instance() 2014-06-10 14:14:46 +02:00
Jaroslav Kysela
521c49e14b service: handle input priority better
Ensure, that inputs with higher priorities are preferred.
The decision line is:

1) re-use input if the in-use mux matches
2) use a free input with highest priority
3) cancel the mux/input with smallest weight and use it for new
2014-06-10 14:14:46 +02:00
Jaroslav Kysela
2be0f84f0f capmt: fix wrong free() call 2014-06-10 14:02:37 +02:00
Jaroslav Kysela
2a4d765e1c descrambler: move some of the reader logic to the common code 2014-06-10 14:02:37 +02:00
Jaroslav Kysela
11bd63d590 capmt: fix the mutex deadlock in capmt_destroy() 2014-06-10 14:02:37 +02:00
Jaroslav Kysela
81dd4d1dd0 descrambler: add time-based check for valid ECM key responses 2014-06-10 14:02:36 +02:00
Jaroslav Kysela
5eb3255186 descrambler: use buffer to make streaming of scrambled streams faster 2014-06-10 14:02:36 +02:00
Jaroslav Kysela
476d8b77b8 service.h: remove unused variable 2014-06-10 14:02:36 +02:00
Jaroslav Kysela
a326371cf9 descrambler: filter equal ECM/EMM requests 2014-06-10 14:02:36 +02:00
Jaroslav Kysela
9887c5773d descrambler: introduce descrambler_keys() 2014-06-10 14:02:36 +02:00
Jaroslav Kysela
fb12cf9239 mpegts/descrambler: Introduce FAST TABLE for CA ECM processing
- also change the capmt locking (get most of job outside global lock)
2014-06-10 14:02:36 +02:00
Jaroslav Kysela
e9617b9ede mpegts: close_service - ignore SCT_CA streams 2014-06-10 14:02:36 +02:00
Jaroslav Kysela
795ccefce4 cwc: remove opaque structures 2014-06-10 14:02:36 +02:00
Jaroslav Kysela
16e86616cc descrambler: improve/fix the emm locking 2014-06-10 14:02:36 +02:00
Jaroslav Kysela
e044b1f817 capmt/cwc/mpegts: change emm processing 2014-06-10 14:02:36 +02:00
Jaroslav Kysela
8c4597022b capmt/cwc/mpegts: descrambler changes - register CA PIDs on demand
- capmt code was a bit restructured again
2014-06-10 14:02:36 +02:00
Jaroslav Kysela
db59cf12a5 capmt: recode - use polling and write queue 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
5ecd88305b capmt: fixes for the adapter index 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
16b963aeeb capmt: small cosmetic optimization 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
de2f07a5ba capmt: webui - we know the oscam revision for mode 4 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
eda2192277 capmt: Improve docs for updated code 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
b024170480 capmt: add support for the one socket mode (oscam) 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
d47354a171 separate capmt and cwc config 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
78f6b5a23d descrambler: add descrambler_ca_section function 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
8f13641d57 decrambler: cosmetic (change tabs for spaces) 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
202b556989 cwc: Fix the provider id print 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
18315fc72f descrambler: add stop fcn and remove the loop from tsdemux 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
7425d43a23 descrambler: Merge the common descrambler code - tvhcsa_descramble() calls 2014-06-10 14:02:35 +02:00
Jaroslav Kysela
2ca5d1e215 cwc: Allocated cwc_providers member dynamically 2014-06-10 14:02:34 +02:00
Jaroslav Kysela
8af2590668 imagecache: fix memory leak (skel) 2014-06-10 14:00:30 +02:00
Jaroslav Kysela
15a66e2877 mpegts_mux: fix the scan shutdown sequence for mux 2014-06-10 14:00:30 +02:00
Adam Sutton
caf9a7b313 build: disable strict aliasing
although can create a minor performance penalty it looks like many projects
disable this as strict aliasing can create annoying warnings that are not
always trivial to overcome at the expense of a relatively minor performance
improvement.
2014-06-10 10:57:45 +01:00
Adam Sutton
fda1a03171 ssl: fix cleanup 2014-06-10 10:27:59 +01:00
Adam Sutton
a68d867cb3 mpegts: fix possible recursion, causing strange crashes
I'm not entirely sure what has changed that has made this a problem
where it apparently wasn't before. That being said, its not nice and
would previously have said it might cause undesirable side-effects.
I would have been right!
2014-06-09 22:08:41 +01:00
Adam Sutton
e722e48324 mpegts: some minor debug changes 2014-06-09 22:08:41 +01:00
Adam Sutton
147c631e3c mpegts network_scan: fix queue ordering issue
This was causing entries just complete (idle scan) to get re-added to the head!
Which ultimately resulted in only N entries ever getting serviced (where N is
the number of available tuners)
2014-06-09 22:08:41 +01:00