gstreamer/gst/mpegtsdemux
Edward Hervey ab31900b64 tsparse: Fix per-program-pad pushing
This fixes a couple of issues regarding the output of (request)
per-program pads output:

We would never push out PAT sections (ok, that was one reallly stupid
mistake. I guess nobody ever uses this feature ...).

In the case where the PMT section of a program was bigger than one
packet, we would only end up pushing the last packet of that PMT. Which
obviously results in the resulting stream never containing the proper
(complete) PMT.

The problem was that the program is only started (in the base class)
after the PMT section is completely parsed. When dealing with single-program
pads, tsparse only wants to push the PMT corresponding to the requested
program (and not the other ones). tsparse did that check by looking
at the streams of the program...
... but that program doesn't exist for the first packets of the initial
PMT.

The fix is to use the base class program information (if it parsed the
PAT it already has some information, like the PMT PID for a given program)
if the program hasn't started yet.
2016-02-19 18:12:59 +01:00
..
gstmpegdefs.h tsdemux: Fix scaling macros 2014-04-18 16:20:31 +02:00
gstmpegdesc.h tsdemux: Add support for Opus 2015-11-03 20:35:41 +02:00
gsttsdemux.c mpegtsdemux: Update plugin license field 2014-02-06 14:28:54 +01:00
Makefile.am tsdemux/mux: Add support for GstAudioClippingMeta for Opus 2015-11-03 20:35:41 +02:00
mpegtsbase.c mpegtsbase: Refactor code to check for subclass seek handling 2016-02-17 10:51:07 +02:00
mpegtsbase.h mpegtsdemux: Allow deactivation of programs to be delayed 2015-12-02 14:15:04 +01:00
mpegtspacketizer.c Remove unnecessary NULL checks before g_free() 2015-11-18 16:05:42 -08:00
mpegtspacketizer.h tsparse: Handle backward and discont timestamps better. 2014-10-29 23:02:50 +11:00
mpegtsparse.c tsparse: Fix per-program-pad pushing 2016-02-19 18:12:59 +01:00
mpegtsparse.h tsparse: Use GstFlowCombiner 2016-02-19 18:04:23 +01:00
pesparse.c tsdemux: remove unnecessary check 2015-07-08 14:50:00 +01:00
pesparse.h tsdemux: fix overflow of packet_length field of PESHeader 2014-09-12 11:27:52 +02:00
TODO tsdemux: Update TODO 2012-03-05 10:17:56 +01:00
tsdemux.c tsdemux: Expose DVB Subpicture as subpictures 2015-12-02 14:15:04 +01:00
tsdemux.h mpegtsdemux: Allow deactivation of programs to be delayed 2015-12-02 14:15:04 +01:00