summaryrefslogtreecommitdiffstats
path: root/gst/mpegdemux/gstmpegdemux.c
AgeCommit message (Collapse)AuthorFilesLines
2009-04-21mpegdemux: Only error out at EOS push failure if we don't have any streams.Edward Hervey1-6/+21
This should remove the bogus error messages while still keeping the original intent of this, which is to inform the pipeline/application/user that we could not find any valid streams. There are many reasons why pushing an event can fail, and not all of them are because there's no link downstream (it could be because it was blocked, or flushing).
2009-03-13mpegpsdemux: workaround to fix playback of certain malformed clipsJosep Torra1-2/+29
Added a workarround to permit play certain malformed clips where first SCR is greater than last SCR. Fixes bug #454228
2009-03-10mpegdemux: Fixed a bug in the TS scanner. Fixes #574009Josep Torra1-1/+1
2009-02-25mpegdemux: don't ignore GstFlowReturn valuesWim Taymans1-0/+6
don't ignore the return value of pull_range because we only get a valid non-NULL buffer when the return value is GST_FLOW_OK. Avoids a crash when the pipeline is shutting down.
2009-02-12Make the demuxer reusable in READY->PLAYING->READY->PLAYING cycles byJulien Moutte1-0/+1
flushing adapters correctly.
2009-02-04mpegpsdemux: fixes clossing segment generation.Josep Torra1-25/+56
Ensure that the clossing segment is generated correctly and being properly pushed. Added some GST_DEBUG to check it. Ensure that last_stop is updated in stream time. Calculate duration as delta of PTS as it seems more correct than delta of SCR in some clips that I tested.
2009-02-04mpegpsdemux: several fixes on the seeking function in pul mode.Josep Torra1-8/+9
Removed a line wrongly copy pasted in my previous commit. Avoid an unsigned integer overflow. Seek last_stop in stream time. Clamp last_stop in stream time between first and last SCR. Fixed a typo in the GST_DEBUG line and added some more info.
2009-02-04Moved var declarations to the begin of functionJosep Torra1-4/+8
2009-02-04Improved seeking in pull mode. Some refactoring and small fixesJosep Torra1-56/+126
2009-02-02Add pull mode to mpegpsdemux and report duration reading first and last PTS. ↵Josep Torra1-81/+829
Some random cleanups.
2009-01-02gst/mpegdemux/gstmpegdemux.c: Initialize scr_rate_n and scr_rate_d in order ↵Alessandro Decina1-0/+3
to fix compiler warnings. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: Initialize scr_rate_n and scr_rate_d in order to fix compiler warnings.
2008-12-29gst/mpegdemux/gstmpegdemux.c: Use the adjusted SCR for calculating the mux rate.Wim Taymans1-6/+18
Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_src_query), (gst_flups_demux_parse_pack_start): Use the adjusted SCR for calculating the mux rate. Don't update the rate estimation after a discont.
2008-12-29gst/mpegdemux/gstmpegdemux.*: The position member in the newsegment event ↵Wim Taymans1-1/+4
corresponds to the stream_time of the segme... Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data): * gst/mpegdemux/gstmpegdemux.h: The position member in the newsegment event corresponds to the stream_time of the segment start position.
2008-12-29gst/mpegdemux/gstmpegdemux.c: Converting from time to bytes operates on the ↵Robin Stocker1-3/+2
stream_time, not the SCR timeline. Original commit message from CVS: Patch by: Robin Stocker <robin at nibor dot org> * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_src_query): Converting from time to bytes operates on the stream_time, not the SCR timeline. The position reporting should happen in stream_time, not the segment timestamp range. See #557161.
2008-10-20gst/mpegdemux/gstmpegdemux.c: Fix reverse playback regression.Edward Hervey1-4/+16
Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data): Fix reverse playback regression. Fixes #557080
2008-10-16gst/mpegdemux/gstmpegdemux.c: Make sure the mpegpsdemux element creates ↵Edward Hervey1-2/+8
valid newsegment events. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data): Make sure the mpegpsdemux element creates valid newsegment events. Fixes #556428
2008-10-08gst/mpegdemux/: Add Fluendo to the Long Name.Zaheer Abbas Merali1-1/+1
Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: Add Fluendo to the Long Name.
2008-10-08gst/mpegdemux/gstmpegdemux.c: Prevent a division by zero if last mux rate ↵Sebastian Dröge1-8/+14
was zero. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data), (gst_flups_demux_parse_pack_start): Prevent a division by zero if last mux rate was zero. If we're going to send a NEWSEGMENT event but the segment start and the current buffer timestamp differ by more than a second we will start the NEWSEGMENT at the buffer timestamp. This fixes playback of the tv2-1_25.mpg file, which has 0 as first SCR but the first PTS are around 1 hour and 40 minutes. Fixes bug #553755.
2008-09-09gst/mpegdemux/: Fix conflicting public names in new mpeg demuxers.Edward Hervey1-4/+4
Original commit message from CVS: * gst/mpegdemux/flumpegdemux.c: (plugin_init): * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_sync_get_type), (gst_flups_demux_get_type), (gst_flups_demux_plugin_init): * gst/mpegdemux/gstmpegtsdemux.c: (gst_fluts_demux_get_type), (gst_fluts_demux_plugin_init): Fix conflicting public names in new mpeg demuxers. Fixes #550468
2008-09-02gst/mpegdemux/: Fix build on macosx.Edward Hervey1-1/+1
Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_parse_pack_start): * gst/mpegdemux/gstmpegtsdemux.c: (gst_fluts_demux_data_cb): Fix build on macosx.
2008-09-02Add Fluendo MPEG PS and TS demuxers to gst-plugins-bad. This is now dual ↵Zaheer Abbas Merali1-0/+1869
licensed MPL and LGPL. Original commit message from CVS: * configure.ac: * gst/mpegdemux/Makefile.am: * gst/mpegdemux/flumpegdemux.c: * gst/mpegdemux/flutspatinfo.c: * gst/mpegdemux/flutspatinfo.h: * gst/mpegdemux/flutspmtinfo.c: * gst/mpegdemux/flutspmtinfo.h: * gst/mpegdemux/flutspmtstreaminfo.c: * gst/mpegdemux/flutspmtstreaminfo.h: * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: * gst/mpegdemux/gstmpegdesc.c: * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: * gst/mpegdemux/gstpesfilter.c: * gst/mpegdemux/gstpesfilter.h: * gst/mpegdemux/gstsectionfilter.c: * gst/mpegdemux/gstsectionfilter.h: Add Fluendo MPEG PS and TS demuxers to gst-plugins-bad. This is now dual licensed MPL and LGPL.