summaryrefslogtreecommitdiffstats
path: root/gst
Commit message (Collapse)AuthorAgeFilesLines
...
* avi: fix read offset and cleanupsWim Taymans2009-09-281-25/+27
|
* avi: rewrite index playbackWim Taymans2009-09-282-388/+628
| | | | | | disable code, start on reimplementing loop based operation. Rewrite the index handling so that all streams use their own index for decoding media.
* avidemux: add new index parsing codeWim Taymans2009-09-282-0/+211
| | | | | | | | | | | | Add a new function and datastructure to parse and hold the index entries on a per stream base. Also avoid doing too much work trying to figure out the timestamps and durations as we can trivially do that later. Less information in the entries makes them 2 times smaller and not doing too much work makes this code about 12 times faster than the regular case. Hook in the new function alongside the existing function for comparison until the rest of the code is updated to handle the new index datastructure.
* qtdemux: some optional QT specified stsd MPEG-4 atoms also apply to H264Mark Nauwelaerts2009-09-251-0/+10
| | | | Fixes #596319.
* qtdemux: only send tag events downstream after newsegmentMark Nauwelaerts2009-09-251-16/+63
|
* rtspsrc: if transport protocol unsupported, try another oneMark Nauwelaerts2009-09-251-7/+35
| | | | | Also change error message to more accurately reflect cases in which it can occur.
* qtdemux: add durations modulo 1<<32Wim Taymans2009-09-251-1/+2
| | | | | | | For calculating the durations of each sample, we are supposed to add each duration modulo 1<<32 so make the elapsed time counter a uint32. Fixes #595942
* qtdemux: small cleanupWim Taymans2009-09-241-9/+11
|
* qtdemux: don't use core API that doesn't exist yetTim-Philipp Müller2009-09-241-1/+7
| | | | There's no gst_byte_reader_has_remaining() yet. Fixes build.
* qtdemux: map some atomparser functions to their new bytereader equivalentsTim-Philipp Müller2009-09-241-79/+27
| | | | | Now that GstByteReader has unchecked and inlined variants as well, map atomparser functions to their respective bytereader equivalents.
* qtdemux: add qt_atom_parser_has_chunks() and fix indentationTim-Philipp Müller2009-09-243-22/+33
|
* qtdemux: bail out instead of trying to alloc silly index sizesTim-Philipp Müller2009-09-241-3/+20
| | | | | | | If it looks like we would be allocating a silly size for our sample index, just bail out instead of trying to allocate it. Helps with broken or fuzzed files where we might end up trying to malloc a couple of hundred MBs otherwise.
* qtdemux: error out correctly if we don't even have enough bytes for an atom ↵Tim-Philipp Müller2009-09-241-4/+14
| | | | header
* qtdemux: init fourcc to 0 as well to avoid invalid reads when printf'ing ↵Tim-Philipp Müller2009-09-241-1/+1
| | | | error message
* qtdemux: add qt_atom_parse_has_remaining() to avoid overflows with ↵Tim-Philipp Müller2009-09-243-23/+30
| | | | _get_remaining()
* qtdemux: use GstByteReader when parsing tkhd atomTim-Philipp Müller2009-09-231-9/+16
|
* qtdemux: use unsigned ints for node length and do more sanity checking of ↵Tim-Philipp Müller2009-09-231-10/+23
| | | | the atom length
* qtdemux: use GstByteReader for atom dumping and fix a few bugsTim-Philipp Müller2009-09-234-305/+455
|
* qtdemux: move stco, stts, stss and stps atom parsing over to GstByteReaderTim-Philipp Müller2009-09-231-121/+155
| | | | | | | | | | | Make sure we don't read beyond the atom boundary. Note that the code behaves slightly differently in the corner case where there is not enough atom data for the specified number of samples (n_samples_time) in the atom, but still enough data to fill the pre-allocated index of n_samples entries: before we would just stop parsing the stts data and continue, whereas now we will likely error out. This should not be a problem in practice though. We could maintain the old behaviour by doing reads with a size check inside the loop if needed.
* qtdemux: use bytereader to parse stsz and stsc atomsTim-Philipp Müller2009-09-231-32/+99
| | | | | | Use GstByteReader to parse stsz and stsc chunks, and check size of available data before parsing it, instead of blindly assuming there will be enough data. Fixes crashes with some fuzzed/broken files.
* qtdemux: add qt_atom_parser_get_offset() and optimise _peek_sub()Tim-Philipp Müller2009-09-231-2/+28
|
* qtdemux: add QtAtomParser, an inlined GstByteReader variantTim-Philipp Müller2009-09-233-0/+127
|
* matroskademux: use proper order for no-more-pads and newsegment and tag sendingMark Nauwelaerts2009-09-232-12/+48
|
* matroskademux: sprinkle a few branch prediction macrosMark Nauwelaerts2009-09-231-8/+7
|
* Fix compile warnings with gcc 4.0.1.Alessandro Decina2009-09-223-12/+12
|
* matroskamux: Don't get stuck in an infinite loop with DiracJan Schmidt2009-09-221-2/+7
| | | | | | At the end, Dirac streams have an EOS packet with 0 length. Don't ever sit in an infinite loop when processing one. Allows muxing Dirac into mkv to complete successfully.
* videomixer: fix up Makefile some moreTim-Philipp Müller2009-09-221-1/+1
| | | | | Remove CFLAGS from LIBADD and make order of the various CFLAGS and LIBS at least consistent with each other.
* videomixer: Add $(GST_PLUGINS_BASE_LIBS) to LDFLAGS for linking libgstvideoBrian Cameron2009-09-221-1/+1
| | | | Fixes bug #595897.
* avi: fix timestamps in push modeWim Taymans2009-09-211-6/+8
|
* avi: add some performance measurementsWim Taymans2009-09-211-4/+38
| | | | | Measure the performance of various index and header parsing steps to the PERFORMANCE debug category.
* avidemux: some logging cleanup to help understanding the index parsing overheadStefan Kost2009-09-181-14/+38
|
* rtpg729pay: Fix adapter leakOlivier Crête2009-09-151-1/+1
| | | | The adapter would be leaked if it was empty and the data could be pushed out directly.
* multifilesink: Add next-file propertyDavid Schleef2009-09-132-17/+131
| | | | | | | | Add a property to allow control over what event causes a file to finish being written and a new file start. The default is the same as before -- each buffer causes a new file to be written. Added is a case where buffers are written to the same file until a discontinuity in the stream.
* wavparse: treat a zero-sized data chunk as extending to the end of the file.Michael Smith2009-09-111-2/+7
| | | | | This fixes playback of some files that don't have a valid data chunk length, apparently some program creates these.
* spectrum: add post-messages propertyWim Taymans2009-09-112-8/+25
| | | | | Add a post-messages property and deprecate the less descriptive message property.
* multifilesink: rename silent to post-messagesWim Taymans2009-09-112-16/+16
| | | | | Use the post-messages property name instead of silent as it is more descriptive.
* multifilesink: post messages for each bufferWim Taymans2009-09-112-64/+187
| | | | | | | | | Add a silent property that can be set to FALSE to post messages on the bus for each written file. Do some more cleanups. Add some docs. Fixes #594663
* rtph263pay: Allocate Boundry structs on the stack instead of the heap to ↵Olivier Crête2009-09-111-63/+47
| | | | | | avoid leaks Fixes bug #594691.
* docs: fix gtk-doc warningsStefan Kost2009-09-102-4/+4
|
* videobox: Fix AYUV->I420 conversionSebastian Dröge2009-09-091-2/+2
| | | | | | | For this fix the averaging of the chroma values. It should't be (a/2 + b)/2 but just (a + b)/2. Fixes bug #594599.
* multipartmux: mark data buffer as delta-unitMarc-André Lureau2009-09-081-0/+1
| | | | | | So that multifdsink always start sending header buffer first Fixes #594520
* rtpbin: add ignore-pt parameterMarc Leeman2009-09-082-28/+79
| | | | | | | Add a parameter 'ignore-pt' that disables creating a gstrtpptdemux module and ghosts the pads of gstrtpjitterbuffer instead of the ones of gstrtpptdemux. Fixes #594490
* rtpbin: propagate payload-type-change signal from demuxerHåvard Graff2009-09-082-1/+39
| | | | fixes #594254
* jitterbuffer: change severity of clock-rate change debugHavard Graff2009-09-081-1/+7
| | | | | | Make log GST_DEBUG under normal circumstances, GST_WARNING otherwise. Fixes #594253
* jitterbuffer: avoid throwing reordered buffers with same timestampsHåvard Graff2009-09-081-3/+3
| | | | | | | | | | | When we receive a reordered packet with the same timestamp as the previous one (which can happen for fragmented packets) don't consider the packet as lost but instead wait for the reordered packet to arrive. Switch the warning-level, so that a reordering does not get a warning, only an actual produced lost-packet. Fixes #594251
* rtpjpegdepay: add missing math.h includeHavard Graff2009-09-081-0/+1
| | | | Fixes #594247
* rtspsrc: fix memory leakArnout Vandecappelle2009-09-081-0/+1
| | | | | | | | In gst_rtspsrc_parse_digest_challenge(), rtspsrc does a g_strndup of the auth header items and then passes them to gst_rtsp_connection_set_auth_param() without freeing. Fixes #594133
* rtpbin: make free_session() remove stream referencesStig Sandnes2009-09-081-0/+36
| | | | | | | | | | | When receiving a sync-packet, all sessions with the same cname will be compared and synced together. In this process, there could still be references to a session that has been shut down in the meanwhile. This patch makes sure that these references are removed when shutting down a session, so that the syncing can be done safely. Fixes #594283
* rtpbin: use locked state on internal binsHavard Graff2009-09-081-0/+6
| | | | | | | Set the locked state on internal elements to make sure that they don't change back to another state when shutting down. Fixes #594248
* y4menc: Add interlaced supportZaheer Merali2009-09-052-5/+29
| | | | | | Fixes #591713 Signed-off-by: David Schleef <ds@schleef.org>