Restored ability to subscribe to a channel using the channel name. Syntax: http://host:port/stream/channelname/<chname> and http://host:port/playlist/channelname/<chname>
Adam Sutton [Tue, 22 Apr 2014 21:24:26 +0000 (22:24 +0100)]
iptv: fix stupid error causing IPTV systems to fail (fixes #2067)
This occured where the IPTV system was using small packets (7 pkts
is pretty normal since it always fits in most IP datagrams)
unfortunately all my testing had been with custom generator script
that used much larger packets.
Adam Sutton [Tue, 22 Apr 2014 13:04:17 +0000 (14:04 +0100)]
tsdemux: hack for PCR extraction now PMT monitoring is disabled
Probably should just force PMT monitoring on for tsfile input and
only extract PCR from "known" good PID. However I've found in
practice the "real" PCR streams are typically video streams that
also include payload. So this hack works for now.
Adam Sutton [Tue, 22 Apr 2014 13:02:56 +0000 (14:02 +0100)]
mpegts: add PMT monitoring option
PMT monitoring is currently disabled by default, need to decide whether
this is the correct behaviour. This should help low performance tuners.
Fixes #1986
Adam Sutton [Tue, 22 Apr 2014 08:19:09 +0000 (09:19 +0100)]
linuxdvb: remove full mux rx mode
There is currently no use for this feature in TVH, it was only ever added as
a means of getting internal table filtering going and with the idea of some
caching feature that's never materialised. However enabling on low performance
devices can often cause problems, so until there is a genuine use I'm removing
confusion.
Adam Sutton [Mon, 14 Apr 2014 16:31:14 +0000 (17:31 +0100)]
mpegts: disable the extra input thread
I have decided that this is no longer necessary, however:
a) I like some of the changes introduced, so want to keep them
b) want to keep the option available should I re-evaulate the performance
Adam Sutton [Fri, 11 Apr 2014 22:47:05 +0000 (23:47 +0100)]
subscription: update to changes in mpegts_input API
Really this should not be directly in here, as subscription code shouldn't
need any knowledge of the underlying systems. However its a backdoor into
the full mux.
Adam Sutton [Fri, 11 Apr 2014 22:43:12 +0000 (23:43 +0100)]
mpegts: reworking of the input threading
I have split the input threading in two. There is now a smaller/faster thread
responisble for reading data from the source device (file/socket/DVB/etc...)
and a potentially slower (though not too slow!) thread for processing.
This ensures that any minor delay in processing (potentially due to unexpected
effects during start/stop, or anything else!) do not unduly impact reading from
the source which could otherwise lead to loss of data.
Adam Sutton [Mon, 14 Apr 2014 15:58:00 +0000 (16:58 +0100)]
mpegts: ensure scrambled streams are properly handled
If a scrambled has been seen on a "scrambled" channel all further packets
(within the subscription) MUST be processed through the descrambler else we
can end up with out of sequence packets causing CC errors. Relates to #1986
Adam Sutton [Mon, 7 Apr 2014 16:02:28 +0000 (17:02 +0100)]
mpegts dvb: fix rather dubious assert (fixes #2036)
Could have ensure this was set correctly on input, but given that it was being
set if no config was passed and almost certainly it must by definition be the
same as the source mux, might as well simplify things.
Adam Sutton [Fri, 4 Apr 2014 10:50:43 +0000 (11:50 +0100)]
config: migration of DVB networks
This will not attempt to remove duplicate networks or configure the tuners.
I have decided this is just too much work to get right, versus very little
human input to correct.
Adam Sutton [Thu, 3 Apr 2014 21:02:00 +0000 (22:02 +0100)]
config: started to add the concept of a configuration version
This is to allow simple detection of a need to migrate, so that it can be done
in one centralised location. Rather than having to have lots of in place dual
config handling.
Some simple stuff will probably continue to be done in place, to avoid
constantly adding migration routines for trivial stuff. But anyting non-trivial
will at least be more easily handled without the need for external scripts.
Jaroslav Kysela [Thu, 27 Mar 2014 10:27:17 +0000 (11:27 +0100)]
Do not rely on linux kernel's headers - preparing for network tuners (SAT-IP)
This is a complete migration to use the own mux configuration scheme without
the system limitations to allow write backends for the network tuners like
SAT-IP servers.