platform/upstream/gstreamer.git
13 years agomatroskamux: make default framerate optional per stream
Alexey Fisher [Tue, 11 Oct 2011 00:07:13 +0000 (02:07 +0200)]
matroskamux: make default framerate optional per stream

there is at least two use cases where default frame rate
should or may be disabled:
- vp8 stream with altref frame enabled. If default frame rate
is enabled, some players will missinterprete it (critical!)
- for webm container, to reduce micro overhead
- for stream with variable frame rate.

Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
13 years agorippletv: fix CLAMP end-values
Stefan Sauer [Wed, 30 Nov 2011 21:13:11 +0000 (22:13 +0100)]
rippletv: fix CLAMP end-values

13 years agodocs: update docs
Tim-Philipp Müller [Wed, 30 Nov 2011 19:25:37 +0000 (19:25 +0000)]
docs: update docs

13 years agosplitfilesrc: specify filenames via normal wildcards instead of regular expressions
Tim-Philipp Müller [Wed, 30 Nov 2011 19:00:42 +0000 (19:00 +0000)]
splitfilesrc: specify filenames via normal wildcards instead of regular expressions

Less cracktastic in the end.

13 years agosplitfilesrc: check bytes actually read, just in case
Tim-Philipp Müller [Mon, 10 Oct 2011 17:28:11 +0000 (18:28 +0100)]
splitfilesrc: check bytes actually read, just in case

Handle corner case where we try to read beyond the end of the
last file part, in which case we want to return a short read.
If we get fewer bytes than expected for any other file part,
we should just error out, since something fishy's going on
then.

13 years agosplitfilesrc: set offsets on buffers
Tim-Philipp Müller [Thu, 6 Oct 2011 07:33:19 +0000 (08:33 +0100)]
splitfilesrc: set offsets on buffers

Looks like some parsers (in some versions at least) expect the
offsets to be set, and behave weird if that's not the case
(e.g. off-by-one in h264parse).

13 years agomultifile: add splitfilesrc element
Tim-Philipp Müller [Thu, 28 Jul 2011 19:19:56 +0000 (20:19 +0100)]
multifile: add splitfilesrc element

Add new splitfilesrc element that presents multiple files
(selectable via a location regex) as one single contiguous
file.

13 years agoRevert "pulseaudiosink: fix caps leak"
Thiago Santos [Tue, 29 Nov 2011 20:34:10 +0000 (17:34 -0300)]
Revert "pulseaudiosink: fix caps leak"

This reverts commit d6a9de9e2aedc8b66ab3219902b5a37e8d65ada2.

setcaps functions aren't supposed to take ownership of the caps passed

13 years agovarious: fix pad template leaks
Vincent Penquerc'h [Mon, 28 Nov 2011 12:58:44 +0000 (12:58 +0000)]
various: fix pad template leaks

https://bugzilla.gnome.org/show_bug.cgi?id=662664

13 years agotaginject: set gap-aware
Chad [Mon, 28 Nov 2011 10:47:11 +0000 (11:47 +0100)]
taginject: set gap-aware

The element does not modify the data anyway.

13 years agoequalizer: also sync the parameters for the filter bands
Stefan Sauer [Sat, 26 Nov 2011 20:39:33 +0000 (21:39 +0100)]
equalizer: also sync the parameters for the filter bands

13 years agomatroskademux: initialise seen_markup_tag field on subtitle stream context
Tim-Philipp Müller [Sat, 26 Nov 2011 16:06:59 +0000 (16:06 +0000)]
matroskademux: initialise seen_markup_tag field on subtitle stream context

13 years agoismlmux: Use iso-fragmented as variant type
Thiago Santos [Fri, 25 Nov 2011 22:28:55 +0000 (19:28 -0300)]
ismlmux: Use iso-fragmented as variant type

Using 'iso' conflicts with mp4mux variant type, ismlmux now
uses iso-fragmented

Fixes #656823

13 years agopulsesrc: Implement GstStreamVolume interface
Arun Raghavan [Thu, 24 Nov 2011 06:35:33 +0000 (12:05 +0530)]
pulsesrc: Implement GstStreamVolume interface

PulseAudio 1.0 supports per-source-output volumes, and this exposes the
functionality via the GstStreamVolume interface.

When compiled against pre-1.0 PulseAudio, the interface is not
implemented, and the "volume" or "mute" properties are not available.
This bit of ugliness will go away when we can depend on PulseAudio 1.0
or greater.

https://bugzilla.gnome.org/show_bug.cgi?id=595055

13 years agopulsesrc: Trivial comment copy-paste-o fix
Arun Raghavan [Sun, 11 Sep 2011 04:21:38 +0000 (21:21 -0700)]
pulsesrc: Trivial comment copy-paste-o fix

13 years agopulseaudiosink: Remove redundant code
Arun Raghavan [Mon, 14 Nov 2011 07:13:27 +0000 (12:43 +0530)]
pulseaudiosink: Remove redundant code

13 years agopulseaudiosink: Clean up refcounting in event probe
Arun Raghavan [Mon, 14 Nov 2011 07:11:41 +0000 (12:41 +0530)]
pulseaudiosink: Clean up refcounting in event probe

Makes sure we don't leak a refcount if the object is disposed before a
NEWSEGMENT turns up.

13 years agoflvdemux: fix seeking
Vincent Penquerc'h [Thu, 24 Nov 2011 16:31:38 +0000 (16:31 +0000)]
flvdemux: fix seeking

Which I accidentally broke when fixing flv videos breaking on
spurious timestamp discontinuities in broken files.

https://bugzilla.gnome.org/show_bug.cgi?id=631430

13 years agoeffectv: repair color modes in radioactv by taking rgb,bgr into account
Stefan Sauer [Fri, 25 Nov 2011 12:13:47 +0000 (13:13 +0100)]
effectv: repair color modes in radioactv by taking rgb,bgr into account

13 years agoradioactv: add one more set of caps
Stefan Sauer [Fri, 25 Nov 2011 10:44:49 +0000 (11:44 +0100)]
radioactv: add one more set of caps

It also work in this format. Avoids the need for conversion.

13 years agoeffecttv: fix reverse negotiation
Stefan Sauer [Fri, 25 Nov 2011 10:44:18 +0000 (11:44 +0100)]
effecttv: fix reverse negotiation

The plugins were using _fixed_caps_ and thus not adjusting to new upstream
sizes. Spotted by Tim Müller.

13 years agowarptv: remove not needed ifdef
Stefan Sauer [Fri, 25 Nov 2011 10:43:16 +0000 (11:43 +0100)]
warptv: remove not needed ifdef

13 years agorippletv: clean up the rendering code a bit
Stefan Sauer [Fri, 25 Nov 2011 09:15:35 +0000 (10:15 +0100)]
rippletv: clean up the rendering code a bit

This is corrrupts the memoy when resizing. Add a FIXME to make it resizeable
once that is solved.

13 years agoeffecttv: fix reverse negotiation
Stefan Sauer [Thu, 24 Nov 2011 19:42:49 +0000 (20:42 +0100)]
effecttv: fix reverse negotiation

The plugins were using _fixed_caps_ and thus not adjusting to new upstream
sizes. Spotted by Tim Müller.

13 years agomultifilesink: Fix leak of filename strings
Thiago Santos [Thu, 24 Nov 2011 17:14:53 +0000 (14:14 -0300)]
multifilesink: Fix leak of filename strings

Do not forget to free the filename strings when deleting
the list of files.

13 years agomultifile: fix build of tests
Thiago Santos [Thu, 24 Nov 2011 17:11:33 +0000 (14:11 -0300)]
multifile: fix build of tests

Tests fail to build because g_mkdtemp is available from glib since
2.26.

This patch adds a condition around the redefinition of
g_mkdtemp on the tests to only build it if glib is older than
2.26.

13 years agowavparse: skip id32 tags
Vincent Penquerc'h [Tue, 27 Sep 2011 15:49:45 +0000 (16:49 +0100)]
wavparse: skip id32 tags

This allows decoding at least one sample where something has
stuffed some ID3 tag before the (supposedly initial) FMT\ .

https://bugzilla.gnome.org/show_bug.cgi?id=660249

13 years agoedgetv: trivial comment fix for clarity
Vincent Penquerc'h [Mon, 31 Oct 2011 17:06:18 +0000 (17:06 +0000)]
edgetv: trivial comment fix for clarity

https://bugzilla.gnome.org/show_bug.cgi?id=661841

13 years agoedgetv: don't leave bits of the output buffer uninitialized
Vincent Penquerc'h [Mon, 31 Oct 2011 17:04:23 +0000 (17:04 +0000)]
edgetv: don't leave bits of the output buffer uninitialized

Let's initialize them to zero. It looks alright, but then it
also looks alright with v3, or with the corresponding pixels
from the source. I don't know what the original intent would
be, and the original effectv source also has this bug/feature.

https://bugzilla.gnome.org/show_bug.cgi?id=661841

13 years agoaudioparse: Use the sinkpad template caps as fallback, not the srcpad ones
Sebastian Dröge [Thu, 24 Nov 2011 09:25:02 +0000 (10:25 +0100)]
audioparse: Use the sinkpad template caps as fallback, not the srcpad ones

13 years agompegaudioparse: Implement ::get_sink_caps vfunc to propagate downstream caps constrai...
Sebastian Dröge [Thu, 24 Nov 2011 08:59:40 +0000 (09:59 +0100)]
mpegaudioparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream

13 years agoflacparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints...
Sebastian Dröge [Thu, 24 Nov 2011 08:57:57 +0000 (09:57 +0100)]
flacparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream

13 years agodcaparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints...
Sebastian Dröge [Thu, 24 Nov 2011 08:55:47 +0000 (09:55 +0100)]
dcaparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream

13 years agoamrparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints...
Sebastian Dröge [Thu, 24 Nov 2011 08:53:18 +0000 (09:53 +0100)]
amrparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream

13 years agoamrparse: Mark some more functions as static
Sebastian Dröge [Thu, 24 Nov 2011 08:49:27 +0000 (09:49 +0100)]
amrparse: Mark some more functions as static

13 years agoac3parse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints...
Sebastian Dröge [Thu, 24 Nov 2011 08:48:33 +0000 (09:48 +0100)]
ac3parse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream

13 years agoaacparse: Mark some functions as static and remove unused function declarations
Sebastian Dröge [Thu, 24 Nov 2011 08:44:58 +0000 (09:44 +0100)]
aacparse: Mark some functions as static and remove unused function declarations

13 years agoaacparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints...
Sebastian Dröge [Thu, 24 Nov 2011 08:43:14 +0000 (09:43 +0100)]
aacparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream

13 years agotests: add basic unit test for matroskaparse
Tim-Philipp Müller [Wed, 23 Nov 2011 00:57:39 +0000 (00:57 +0000)]
tests: add basic unit test for matroskaparse

13 years agomatroskaparse: don't leak stream headers
Tim-Philipp Müller [Wed, 23 Nov 2011 00:56:26 +0000 (00:56 +0000)]
matroskaparse: don't leak stream headers

https://bugzilla.gnome.org/show_bug.cgi?id=664548

13 years agospeexenc: ensure to free allocated padded data
Mark Nauwelaerts [Wed, 16 Nov 2011 18:08:05 +0000 (19:08 +0100)]
speexenc: ensure to free allocated padded data

13 years agospeexenc: reset tag setter interface when appropriate
Mark Nauwelaerts [Wed, 16 Nov 2011 17:57:38 +0000 (18:57 +0100)]
speexenc: reset tag setter interface when appropriate

13 years agoflacenc: reset tag setter interface when appropriate
Mark Nauwelaerts [Wed, 16 Nov 2011 17:57:21 +0000 (18:57 +0100)]
flacenc: reset tag setter interface when appropriate

13 years agoflacparse: detect when a file lies about fixed block size
Vincent Penquerc'h [Mon, 14 Nov 2011 15:34:57 +0000 (15:34 +0000)]
flacparse: detect when a file lies about fixed block size

If the sample/block number happens to be the same as the block
size, we assume variable block size, and thus counters in samples
in the headers. This can only get us a false positive for a block
size of 1, which is invalid. We can get false negatives more
often though (eg, if not starting at the start of the stream),
but then that's already GIGO.

13 years agogstrtpsession: Add special mode to use FIR as repair as Google does
Olivier Crête [Fri, 2 Sep 2011 23:20:07 +0000 (19:20 -0400)]
gstrtpsession: Add special mode to use FIR as repair as Google does

https://bugzilla.gnome.org/show_bug.cgi?id=658419

13 years agortpsession: Send FIR requests in response to key unit requests with all-headers=TRUE
Olivier Crête [Thu, 1 Sep 2011 21:47:38 +0000 (17:47 -0400)]
rtpsession: Send FIR requests in response to key unit requests with all-headers=TRUE

https://bugzilla.gnome.org/show_bug.cgi?id=658419

13 years agortpsession: Put the PLI requests in each RTPSource
Olivier Crête [Thu, 1 Sep 2011 20:25:21 +0000 (16:25 -0400)]
rtpsession: Put the PLI requests in each RTPSource

Also refactor a bit and put all the keyframe request code in one
place inside rtpsession.c

https://bugzilla.gnome.org/show_bug.cgi?id=658419

13 years agortpsession: Hack to FIR because Google doesn't set the sender ssrc correctly
Olivier Crête [Wed, 31 Aug 2011 18:35:33 +0000 (14:35 -0400)]
rtpsession: Hack to FIR because Google doesn't set the sender ssrc correctly

https://bugzilla.gnome.org/show_bug.cgi?id=658419

13 years agortpsession: Process received Full Intra Requests
Olivier Crête [Tue, 30 Aug 2011 23:06:13 +0000 (19:06 -0400)]
rtpsession: Process received Full Intra Requests

Process FIR requests according to RFC 5104

https://bugzilla.gnome.org/show_bug.cgi?id=658419

13 years agov4l2: Set pixel-aspect-ratio to 1/1
Sjoerd Simons [Mon, 7 Nov 2011 18:43:26 +0000 (18:43 +0000)]
v4l2: Set pixel-aspect-ratio to 1/1

We don't currently support setting the pixel-aspect-ratio from V4L2. So
simply set it to be 1/1 in the caps to prevent negotiation failures when
fixating to weird values (e.g. when the downstream caps has
pixel-aspect-ratio = [ MIN, MAX ] )

https://bugzilla.gnome.org/show_bug.cgi?id=663580

13 years agopulseaudiosink: fix caps leak
Thiago Santos [Fri, 11 Nov 2011 13:06:25 +0000 (10:06 -0300)]
pulseaudiosink: fix caps leak

13 years agopulsesink: do not leak clientname when setting up property
Mark Nauwelaerts [Fri, 11 Nov 2011 13:55:48 +0000 (14:55 +0100)]
pulsesink: do not leak clientname when setting up property

13 years agopulse: Chain up dispose() in pulseaudiosink
Arun Raghavan [Fri, 11 Nov 2011 12:35:35 +0000 (18:05 +0530)]
pulse: Chain up dispose() in pulseaudiosink

13 years agoavidemux: fix wrong stride when inverting uncompressed video
Vincent Penquerc'h [Tue, 8 Nov 2011 15:35:26 +0000 (15:35 +0000)]
avidemux: fix wrong stride when inverting uncompressed video

Such frames have a stride multiple of 4, see
http://lscube.org/pipermail/ffmpeg-issues/2010-April/010247.html.

This showed up on a sample using a odd width of 24 bit video.

https://bugzilla.gnome.org/show_bug.cgi?id=652288

13 years agoqtdemux: minimal sanity check on creation datetime
Mark Nauwelaerts [Wed, 9 Nov 2011 09:32:06 +0000 (10:32 +0100)]
qtdemux: minimal sanity check on creation datetime

13 years agortph263ppay: Return the sink pad template as sink caps, not the src's
Olivier Crête [Wed, 2 Nov 2011 16:58:12 +0000 (12:58 -0400)]
rtph263ppay: Return the sink pad template as sink caps, not the src's

https://bugzilla.gnome.org/show_bug.cgi?id=577784

13 years agortph263ppay: Also implement size/framerate restrictions in getcaps
Olivier Crête [Sun, 15 Mar 2009 23:26:48 +0000 (19:26 -0400)]
rtph263ppay: Also implement size/framerate restrictions in getcaps

https://bugzilla.gnome.org/show_bug.cgi?id=577784

13 years agortph263ppay: Implement getcaps following RFC 4629, picks the right annexes
Olivier Crête [Thu, 5 Mar 2009 01:50:19 +0000 (20:50 -0500)]
rtph263ppay: Implement getcaps following RFC 4629, picks the right annexes

https://bugzilla.gnome.org/show_bug.cgi?id=577784

13 years agoqtdemux: also set segment stop at startup rather than only post seek
Mark Nauwelaerts [Tue, 8 Nov 2011 13:31:34 +0000 (14:31 +0100)]
qtdemux: also set segment stop at startup rather than only post seek

... so as to ensure consistent playback with or without seek, especially
in presence of some bogus edit list entries.

13 years agogst/flv/: add amfdefs.h to noinst_HEADERS
Raul Gutierrez Segales [Wed, 2 Nov 2011 17:02:54 +0000 (17:02 +0000)]
gst/flv/: add amfdefs.h to noinst_HEADERS

https://bugzilla.gnome.org/show_bug.cgi?id=663334

13 years agoflvdemux: detect large pts gaps and resync
Vincent Penquerc'h [Mon, 3 Oct 2011 16:50:43 +0000 (17:50 +0100)]
flvdemux: detect large pts gaps and resync

Should work on multiple gaps, but tested on only one.

https://bugzilla.gnome.org/show_bug.cgi?id=631430

13 years agoflacdec: fix off by one between granpos and last_stop
Vincent Penquerc'h [Mon, 22 Aug 2011 09:40:45 +0000 (10:40 +0100)]
flacdec: fix off by one between granpos and last_stop

13 years agoflacparse: fix last frame timestamp in fixed block size mode
Vincent Penquerc'h [Fri, 7 Oct 2011 18:41:35 +0000 (19:41 +0100)]
flacparse: fix last frame timestamp in fixed block size mode

The last block may have a different block size, so we should not
use it to scale or we'll end up with a wrong timestamp.
See comment and quote from the FLAC format documentation in the code.

Fixes looped playback of FLAC files (via about-to-finish).

https://bugzilla.gnome.org/show_bug.cgi?id=661215

13 years agocairotextoverlay: add a 'silent' property to skip rendering
Vincent Penquerc'h [Thu, 27 Oct 2011 14:52:47 +0000 (15:52 +0100)]
cairotextoverlay: add a 'silent' property to skip rendering

https://bugzilla.gnome.org/show_bug.cgi?id=662856

13 years agomatroskamux: fix regression causing malformed files
René Stadler [Mon, 7 Nov 2011 11:00:12 +0000 (12:00 +0100)]
matroskamux: fix regression causing malformed files

This was caused by me in 1b213d. It seems I was too focused on 0.11 when I did
this and tested the wrong branch.

The problem was reported by Alexey Fisher.

13 years agortp: use GLib's G_BIG_ENDIAN define instead of BIG_ENDIAN
Tim-Philipp Müller [Thu, 3 Nov 2011 23:28:31 +0000 (23:28 +0000)]
rtp: use GLib's G_BIG_ENDIAN define instead of BIG_ENDIAN

Fixes compiler warning on mingw32

13 years agoqtmux: avoid shortcut evaluation when adding paired mp4 tag
Mark Nauwelaerts [Mon, 31 Oct 2011 15:18:32 +0000 (16:18 +0100)]
qtmux: avoid shortcut evaluation when adding paired mp4 tag

Fixes (part of) #638711.

13 years agomatroskamux: do not use unoffical V_MJPEG codec id
Mark Nauwelaerts [Mon, 31 Oct 2011 14:43:25 +0000 (15:43 +0100)]
matroskamux: do not use unoffical V_MJPEG codec id

... but as not spec'ed especially, consider it a VfW compatibility case.

Fixes #659837.

13 years agoflacenc: remove dead code from header
Tim-Philipp Müller [Sun, 30 Oct 2011 19:30:14 +0000 (19:30 +0000)]
flacenc: remove dead code from header

We require a new-enough libflac that this condition will never apply.

13 years agojpegdec: add sof-marker to template caps, so we don't get plugged for lossless jpeg
Tim-Philipp Müller [Fri, 28 Oct 2011 08:57:36 +0000 (09:57 +0100)]
jpegdec: add sof-marker to template caps, so we don't get plugged for lossless jpeg

jpegdec (using libjpeg 6.2/8) can't decode some lossless types of JPEG.

https://bugzilla.gnome.org/show_bug.cgi?id=556648

13 years agoqtdemux: elaborate some debug statements
Mark Nauwelaerts [Fri, 28 Oct 2011 10:30:33 +0000 (12:30 +0200)]
qtdemux: elaborate some debug statements

13 years agoflvdemux: be careful with negative cts
Stas Sergeev [Tue, 11 Oct 2011 16:56:51 +0000 (20:56 +0400)]
flvdemux: be careful with negative cts

Fixes #661477.

13 years agomatroskademux: tune non-update seek handling cases
Mark Nauwelaerts [Thu, 6 Oct 2011 11:04:54 +0000 (13:04 +0200)]
matroskademux: tune non-update seek handling cases

Fixes #661049.

13 years agovideomixer2: Use the clip function instead of the prepare_buffer function
Sebastian Dröge [Fri, 28 Oct 2011 08:40:36 +0000 (10:40 +0200)]
videomixer2: Use the clip function instead of the prepare_buffer function

13 years agovideomixer2: Use collectpads2 from core
Sebastian Dröge [Fri, 28 Oct 2011 07:36:17 +0000 (09:36 +0200)]
videomixer2: Use collectpads2 from core

13 years agodeinterlace: Don't pointlessly hold object lock over caps operations
Jan Schmidt [Thu, 27 Oct 2011 13:41:45 +0000 (00:41 +1100)]
deinterlace: Don't pointlessly hold object lock over caps operations

Avoids a deadlock when getcaps is recursive due to the getcaps being
reflected upstream/downstream. The lock isn't actually protecting
anything here.

13 years agoflvmux: add some comments and defines to clarify code.
Jan Schmidt [Wed, 26 Oct 2011 13:37:03 +0000 (00:37 +1100)]
flvmux: add some comments and defines to clarify code.

13 years agomatroska: refactor ebml-write to be more 0.11 friendly
René Stadler [Mon, 10 Oct 2011 13:36:14 +0000 (15:36 +0200)]
matroska: refactor ebml-write to be more 0.11 friendly

Switching to a more 0.11-friendly pattern, where getting the buffer's data
pointer and setting the size many times is less natural. This is of course in
preparation to the upcoming port of the plugin.

13 years agomatroska: remove stale floatcast include
René Stadler [Tue, 11 Oct 2011 19:45:46 +0000 (21:45 +0200)]
matroska: remove stale floatcast include

GDOUBLE_TO_BE was moved to core a long time ago.

13 years agomatroskamux: fix possible crash with malformed dirac codec_data
René Stadler [Tue, 11 Oct 2011 20:10:27 +0000 (22:10 +0200)]
matroskamux: fix possible crash with malformed dirac codec_data

Since size is unsigned, we need to safeguard against wrapping below zero.

13 years agoequalizer: remove avoidable call to gst_object_set_name
René Stadler [Fri, 21 Oct 2011 20:33:34 +0000 (22:33 +0200)]
equalizer: remove avoidable call to gst_object_set_name

13 years agodeinterlace: remove avoidable call to gst_object_set_name
René Stadler [Fri, 21 Oct 2011 20:32:38 +0000 (22:32 +0200)]
deinterlace: remove avoidable call to gst_object_set_name

13 years agopngenc: increase arbitrary resolution limits
René Stadler [Sun, 16 Oct 2011 18:30:25 +0000 (20:30 +0200)]
pngenc: increase arbitrary resolution limits

Apparently libpng can technically do up to 2^31-1 rows and columns. However it
imposes an (arbitrary) default limit of 1 million (that could theoretically be
lifted by using some additional API).

Moved array allocation to the heap now.

13 years agopngenc: don't unconditionally allocate 4096 pointers on the stack
René Stadler [Sun, 16 Oct 2011 18:25:41 +0000 (20:25 +0200)]
pngenc: don't unconditionally allocate 4096 pointers on the stack

Instead allocate as many as needed (on the stack still).

13 years agopngenc: ensure setcaps was called before chain function
René Stadler [Sun, 16 Oct 2011 18:05:28 +0000 (20:05 +0200)]
pngenc: ensure setcaps was called before chain function

This is needed to properly error out for e.g. "fakesrc ! pngenc ! fakesink".

13 years agopngenc: validate input buffer size
René Stadler [Sun, 16 Oct 2011 17:44:27 +0000 (19:44 +0200)]
pngenc: validate input buffer size

Just for safety; of course such mismatch represents a bug in another element.

13 years agopngenc: make setcaps more robust, use gstvideo functions
René Stadler [Sun, 16 Oct 2011 17:41:28 +0000 (19:41 +0200)]
pngenc: make setcaps more robust, use gstvideo functions

A setcaps function needs to actually verify the caps carefully. In this case,
it was possible to e.g. link a video decoder with YUV+RGB template caps to
pngenc.  That would cause a crash when the decoder pushes a YUV buffer. Same
thing when pushing a valid buffer that exceeds the resolution limits.

Also, missing framerate caps field would cause a glib critical warning due to
invalid GValue. This fails hard now.

13 years agoebml: small correction to previous commit
René Stadler [Fri, 21 Oct 2011 08:01:43 +0000 (10:01 +0200)]
ebml: small correction to previous commit

Signal a short read with UNEXPECTED, exactly like the peek_bytes function.

13 years agoebml: Fix push-based behaviour
Edward Hervey [Wed, 19 Oct 2011 11:09:51 +0000 (13:09 +0200)]
ebml: Fix push-based behaviour

The 'peek' method was completely wrong (!?)

13 years agopulse: Get caps correctly on pad block
Arun Raghavan [Tue, 18 Oct 2011 13:01:17 +0000 (18:31 +0530)]
pulse: Get caps correctly on pad block

Instead of always going upstream, we should first see if already got
caps from a setcaps() call.

https://bugzilla.gnome.org/show_bug.cgi?id=661262

13 years agowavpackenc: don't unref buffer with gst_object_unref()
Tim-Philipp Müller [Tue, 18 Oct 2011 11:25:14 +0000 (12:25 +0100)]
wavpackenc: don't unref buffer with gst_object_unref()

13 years agopulsesink: only use is_pcm for 1.0 of pulseaudio
Wim Taymans [Tue, 18 Oct 2011 10:05:01 +0000 (12:05 +0200)]
pulsesink: only use is_pcm for 1.0 of pulseaudio

13 years agopulsesink: only disable trickmodes for !pcm
Wim Taymans [Tue, 18 Oct 2011 09:58:57 +0000 (11:58 +0200)]
pulsesink: only disable trickmodes for !pcm

Only disable trickmodes when we are not dealing with raw PCM samples.

13 years agovideomixer2: Fix a leak
Arun Raghavan [Fri, 14 Oct 2011 05:26:16 +0000 (10:56 +0530)]
videomixer2: Fix a leak

Buffers weren't being unref'ed in one case inside, causing memory usage
to blow up.

13 years agoset colour masks for video/x-raw-rgb in rtpvrawdepay
Marc Leeman [Fri, 14 Oct 2011 07:10:01 +0000 (09:10 +0200)]
set colour masks for video/x-raw-rgb in rtpvrawdepay

13 years agovideomixer2: Fix incorrect gst_buffer_replace() call
Arun Raghavan [Thu, 13 Oct 2011 11:29:50 +0000 (16:59 +0530)]
videomixer2: Fix incorrect gst_buffer_replace() call

This got exposed when gst_buffer_replace() was changed from a macro to a
function.

13 years agortpvrawpay: Only use 24 LSB for depth=24 RGB caps
Edward Hervey [Wed, 12 Oct 2011 09:26:50 +0000 (11:26 +0200)]
rtpvrawpay: Only use 24 LSB for depth=24 RGB caps

... and indent the masks for clarity

13 years agomatroskamux: fix segment handling, so we actually use running time
René Stadler [Tue, 11 Oct 2011 12:58:43 +0000 (14:58 +0200)]
matroskamux: fix segment handling, so we actually use running time

gst_matroska_mux_best_pad adjusts the buffer timestamp to running time using
the segment stored in the pad's collect data. However, the event handler didn't
pass the newsegment event on to collectpads' handler, so this segment was never
updated at all.

Re-fixes bug #432612.

13 years agogstrtpg722pay: Compensate for clockrate vs. samplerate difference
Sjoerd Simons [Mon, 10 Oct 2011 18:01:23 +0000 (19:01 +0100)]
gstrtpg722pay: Compensate for clockrate vs. samplerate difference

The RTP clock-rate used for G722 is 8000, even though the samplerate is
16000. Compensate for this by pretending G722 has 8 bits per sample
instead of the 4 bits as if it were a codec that ran at half the speed,
but with twice the number of bits. Fixes #661376

13 years agojpegdec: Implement upstream negotiation
Sjoerd Simons [Tue, 27 Sep 2011 18:25:53 +0000 (19:25 +0100)]
jpegdec: Implement upstream negotiation

Add upstream negotiation for jpegdec. Fixes #660275