platform/upstream/gstreamer.git
12 years agopango: fix bad unref and crashes with multiple text overlays
Tim-Philipp Müller [Tue, 21 Aug 2012 21:51:38 +0000 (22:51 +0100)]
pango: fix bad unref and crashes with multiple text overlays

gst_element_class_get_pad_template() does not return a ref,
so we mustn't unref the template returned. Fixes crashes
when switching back and forth between different types of
subtitle streams.

12 years agowin32: add new video align API to .def file
Tim-Philipp Müller [Tue, 21 Aug 2012 09:04:41 +0000 (10:04 +0100)]
win32: add new video align API to .def file

12 years agovideo/x-dvd-subpicture -> subpicture/x-dvd
Tim-Philipp Müller [Mon, 20 Aug 2012 20:35:03 +0000 (21:35 +0100)]
video/x-dvd-subpicture -> subpicture/x-dvd

12 years agovideo-frame: only copy the visible region
Wim Taymans [Mon, 20 Aug 2012 14:17:27 +0000 (16:17 +0200)]
video-frame: only copy the visible region

Make sure to only copy the visible region instead of assuming that the complete
stride is visible (which is not the case when padding is used).

12 years agovideometa: add more debug
Wim Taymans [Mon, 20 Aug 2012 14:14:07 +0000 (16:14 +0200)]
videometa: add more debug

12 years agoX11: add unpadded width/height as videometa
Wim Taymans [Mon, 20 Aug 2012 14:13:00 +0000 (16:13 +0200)]
X11: add unpadded width/height as videometa

We need to add the real width/height as the values in the video metadata instead
of the padded values.

12 years agoX11: use new alignment function
Wim Taymans [Mon, 20 Aug 2012 09:19:37 +0000 (11:19 +0200)]
X11: use new alignment function

Remove some custom padding and alignment functions and replace with the new
align function from the video library.

12 years agovideo-info: update padding
Wim Taymans [Mon, 20 Aug 2012 09:12:31 +0000 (11:12 +0200)]
video-info: update padding

Update the alignement structure with the new padding values because they could
have been changed when the padding was increased to align the strides.

12 years agovideo: expose gst_video_info_align
Wim Taymans [Mon, 20 Aug 2012 08:50:59 +0000 (10:50 +0200)]
video: expose gst_video_info_align

Expose the gst_video_info_align function that adds padding and does stride
alignment on a GstVideoInfo. Move this previously private function to
video-info.co
Move the definition of the alignment structure to video.h where it can be picked
up by both the bufferpool and the video-info.

12 years agovideopool: improve alignment
Wim Taymans [Mon, 20 Aug 2012 08:16:59 +0000 (10:16 +0200)]
videopool: improve alignment

Check the alignment of the strides in gst_video_info_align and increase the
padding on the frame until the strides are aligned.

12 years agovideopool: improve alignment
Wim Taymans [Mon, 20 Aug 2012 08:03:09 +0000 (10:03 +0200)]
videopool: improve alignment

Align each plane instead of each component, we might otherwise apply the
alignment adjustement twice if a plane contains multiple components.

12 years agovideo-format: fix docs a little
Wim Taymans [Mon, 13 Aug 2012 14:42:32 +0000 (16:42 +0200)]
video-format: fix docs a little

12 years agotoos: fix build and distcheck some more
Tim-Philipp Müller [Sun, 19 Aug 2012 16:05:04 +0000 (17:05 +0100)]
toos: fix build and distcheck some more

The .in file is gone now.

12 years agotools: remove gst-visualise script
Tim-Philipp Müller [Sat, 18 Aug 2012 20:36:09 +0000 (21:36 +0100)]
tools: remove gst-visualise script

Bit pointless really and clearly unused since the 0.8 days.
Also simplify Makefile while we're at it.

12 years agovideoscale: mark Lanczos method as experimental/unstable
Tim-Philipp Müller [Sat, 18 Aug 2012 20:33:38 +0000 (21:33 +0100)]
videoscale: mark Lanczos method as experimental/unstable

It's known to crash in some circumstances.

12 years agotools: remove man page for tool that no longer exists
Tim-Philipp Müller [Sat, 18 Aug 2012 20:18:57 +0000 (21:18 +0100)]
tools: remove man page for tool that no longer exists

12 years agotools: remove obsolete filterstamp.sh script
Tim-Philipp Müller [Sat, 18 Aug 2012 20:15:24 +0000 (21:15 +0100)]
tools: remove obsolete filterstamp.sh script

There's gst-element-maker in -bad now.

12 years agotools: add basic man page for gst-discoverer
Tim-Philipp Müller [Sat, 18 Aug 2012 20:13:01 +0000 (21:13 +0100)]
tools: add basic man page for gst-discoverer

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

12 years agodiscoverer: remove unused 'silent' command line option
Tim-Philipp Müller [Fri, 17 Aug 2012 21:54:13 +0000 (22:54 +0100)]
discoverer: remove unused 'silent' command line option

12 years agovisual: enable commented out code again.
Stefan Sauer [Fri, 17 Aug 2012 21:03:52 +0000 (23:03 +0200)]
visual: enable commented out code again.

Finish the last change and reenable the shader code.

12 years agodocs: Add new video API to the docs
Sebastian Dröge [Thu, 16 Aug 2012 10:12:54 +0000 (12:12 +0200)]
docs: Add new video API to the docs

12 years agovideo: Add methods to return a list of all pending GstVideoCodecFrames
Sebastian Dröge [Thu, 16 Aug 2012 10:12:06 +0000 (12:12 +0200)]
video: Add methods to return a list of all pending GstVideoCodecFrames

12 years agofft: shouldn't ever call exit()
Tim-Philipp Müller [Wed, 15 Aug 2012 23:11:00 +0000 (00:11 +0100)]
fft: shouldn't ever call exit()

Libraries shouldn't ever just call exit().

Let's hope we'll remember to cherry-pick this commit again
if we ever update these files.

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

12 years agostreamsynchronizer: Handle stream switching
Edward Hervey [Tue, 14 Aug 2012 16:53:52 +0000 (18:53 +0200)]
streamsynchronizer: Handle stream switching

* Update outgoing segment.base with accumulated time, ensuring all
  streams are synchronized.
* Only consider streams as "new" is they have a STREAM_START event
  with a different seqnum.
* Use GstStream segment.base instead of separate variable to store
  the past running time.
* Disable passthrough
* Switch to glib 2.32 GMutex/GCond
* Avoid getting pad parent the expensive way
* Minor other fixes

12 years agocheck: Add streamsynchronizer unit test
Edward Hervey [Tue, 14 Aug 2012 16:50:39 +0000 (18:50 +0200)]
check: Add streamsynchronizer unit test

12 years agoaudiobasesink: Avoid resetting ringbuffer when not needed
Edward Hervey [Tue, 14 Aug 2012 16:53:04 +0000 (18:53 +0200)]
audiobasesink: Avoid resetting ringbuffer when not needed

If the ringbuffer was configured to the same caps as previously, we
don't need to reconfigure it.

12 years agoaudio/video: Add new API to the docs
Sebastian Dröge [Tue, 14 Aug 2012 13:48:45 +0000 (15:48 +0200)]
audio/video: Add new API to the docs

12 years agoaudiodecoder: getter for allocator
Víctor Manuel Jáquez Leal [Tue, 7 Aug 2012 15:24:33 +0000 (17:24 +0200)]
audiodecoder: getter for allocator

Sometimes the decoder would use the allocator for something else than just
allocating output buffers, for example, querying different parameters.

This patch expose a getter accessor for the negotiated memory allocator.

12 years agoaudioencoder: getter for allocator
Víctor Manuel Jáquez Leal [Tue, 7 Aug 2012 15:21:53 +0000 (17:21 +0200)]
audioencoder: getter for allocator

Sometimes the encoder would use the allocator for something else than just
allocating output buffers, for example, querying different parameters.

This patch expose a getter accessor for the negotiated memory allocator.

12 years agovideoencoder: getter for allocator
Víctor Manuel Jáquez Leal [Tue, 7 Aug 2012 15:19:05 +0000 (17:19 +0200)]
videoencoder: getter for allocator

Sometimes the encoder would need to use the allocator for something else than
just allocating output buffers, for example, querying different parameters.

This patch expose a getter accessor for the negotiated memory allocator.

12 years agovideodecoder: getters for pool and allocator
Víctor Manuel Jáquez Leal [Mon, 6 Aug 2012 18:18:30 +0000 (20:18 +0200)]
videodecoder: getters for pool and allocator

Sometimes the decoder would need to use the pool or the allocator for
something else than just allocating output buffers. For example, the querying
for different parameters, such as asking for a bigger number of buffers to
allocate in the pool.

This patch expose a two getters accessors: one for the buffer pool and the
other for the memory allocator.

12 years agoaudioencoder: return TRUE from _set_output_format() if all is good
Tim-Philipp Müller [Mon, 13 Aug 2012 22:32:59 +0000 (23:32 +0100)]
audioencoder: return TRUE from _set_output_format() if all is good

Fixes not-negotiated errors in wavpackenc unit test.

12 years agovisual: add support for GstVideoFrame
Wim Taymans [Mon, 13 Aug 2012 11:47:01 +0000 (13:47 +0200)]
visual: add support for GstVideoFrame

Add support for GstVideoMeta and GstVideoFrame.
Remove some redundant fields that are also in GstVideoInfo
Disable the shader code, it looks broken.

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

12 years agovisualizer: small cleanup
Wim Taymans [Mon, 13 Aug 2012 09:55:58 +0000 (11:55 +0200)]
visualizer: small cleanup

12 years agovisual: remove channel mask
Wim Taymans [Mon, 13 Aug 2012 09:51:45 +0000 (11:51 +0200)]
visual: remove channel mask

We don't really care about what's inside those channels. This also makes the
caps valid because now it's no longer possible to have channels=1 and a mask
of 0x3.

12 years agodiscovere: also parse encoded formats
Wim Taymans [Mon, 13 Aug 2012 09:27:47 +0000 (11:27 +0200)]
discovere: also parse encoded formats

The video library can now also parse encoded formats so use this to fill up the
width/height and other properties.

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

12 years agodiscoverer: remove \n from debug statement
Wim Taymans [Mon, 13 Aug 2012 09:27:26 +0000 (11:27 +0200)]
discoverer: remove \n from debug statement

12 years agotests: update structure sizes for ABI test for i386
Tim-Philipp Müller [Sun, 12 Aug 2012 17:10:02 +0000 (18:10 +0100)]
tests: update structure sizes for ABI test for i386

12 years agooggmux: remove superflous assignment
Stefan Sauer [Sun, 12 Aug 2012 07:57:11 +0000 (09:57 +0200)]
oggmux: remove superflous assignment

12 years agovisual: add a FIXME as the discussion in IRC discontinued
Stefan Sauer [Mon, 30 Jul 2012 13:38:45 +0000 (15:38 +0200)]
visual: add a FIXME as the discussion in IRC discontinued

12 years agooggdemux: set HEADER flag on header packets
Tim-Philipp Müller [Sat, 11 Aug 2012 09:18:37 +0000 (10:18 +0100)]
oggdemux: set HEADER flag on header packets

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

12 years agooggmux: don't leak dropped seek event
Tim-Philipp Müller [Sat, 11 Aug 2012 08:53:49 +0000 (09:53 +0100)]
oggmux: don't leak dropped seek event

12 years agotests: update libsABI test to new structure sizes
Tim-Philipp Müller [Sat, 11 Aug 2012 07:14:27 +0000 (08:14 +0100)]
tests: update libsABI test to new structure sizes

The offset field addition in GstSegment has added
a few bytes.

12 years agodocs: expand GstDiscoverer::discovered signal docs a little
Tim-Philipp Müller [Fri, 10 Aug 2012 16:08:31 +0000 (17:08 +0100)]
docs: expand GstDiscoverer::discovered signal docs a little

12 years agoappsink, appsrc: skip set_callbacks APIs for introspection
Evan Nemerson [Fri, 29 Jun 2012 22:46:46 +0000 (15:46 -0700)]
appsink, appsrc: skip set_callbacks APIs for introspection

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

12 years agox11: fix alignment in non-XSHM case
Wim Taymans [Fri, 10 Aug 2012 14:58:47 +0000 (16:58 +0200)]
x11: fix alignment in non-XSHM case

Align the allocated memory to 16 bytes. When doing XSHM we are already aligned
to a page boundary but without, we use plain g_malloc, which could allocate
aligned on 8 bytes only.

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

12 years agox11: don't block in buffer acquire
Wim Taymans [Fri, 10 Aug 2012 09:45:38 +0000 (11:45 +0200)]
x11: don't block in buffer acquire

Don't ever block when acquiring a buffer from the bufferpool in the fallback
mode. If we block, we might deadlock when going to PAUSED because we never
unlock when going to paused.

The acquire can block when there are no more buffers in the pool, this is a
sign that the pool is too small. Since we are the only ones using the pool in
the fallback case and because we scale the buffer, someone else must be using
our pool as well and is doing something bad.

12 years agooggmux: pick delta pad earlier during header parsing and based on video/non-video
Tim-Philipp Müller [Fri, 10 Aug 2012 09:45:09 +0000 (10:45 +0100)]
oggmux: pick delta pad earlier during header parsing and based on video/non-video

Pick delta pad earlier during header parsing, and pick it based
on whether it's a video stream or not rather than some rather
byzantine signalling from theoraenc etc. which would set the delta
flag on header packets which oggmux would then pick up and determine
that this is a "delta-able" stream.

Since the new videodecoder-based theoraenc didn't do that any more,
we would only see the first delta flag on the second video packet,
which is after we've already muxed a few audio packets flagged as
key units, which trips up the unit test.

Fixes pipelines/oggmux unit test.

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

12 years agovideodecoder: fix seeking again
Tim-Philipp Müller [Thu, 9 Aug 2012 18:57:49 +0000 (19:57 +0100)]
videodecoder: fix seeking again

Add missing break in FLUSH_STOP case.

12 years agoaudioencoder: Let global tag events be handled the same way as other events
Sebastian Dröge [Thu, 9 Aug 2012 15:06:31 +0000 (17:06 +0200)]
audioencoder: Let global tag events be handled the same way as other events

12 years agoaudiodecoder: Let global tag events be handled the same way as other events
Sebastian Dröge [Thu, 9 Aug 2012 14:55:19 +0000 (16:55 +0200)]
audiodecoder: Let global tag events be handled the same way as other events

12 years agoaudio: Merge upstream stream tags
Sebastian Dröge [Thu, 9 Aug 2012 14:24:47 +0000 (16:24 +0200)]
audio: Merge upstream stream tags

12 years agovideo: Merge upstream stream tags
Sebastian Dröge [Thu, 9 Aug 2012 14:19:32 +0000 (16:19 +0200)]
video: Merge upstream stream tags

12 years agotheoradec: Use new video decoder tag API
Sebastian Dröge [Thu, 9 Aug 2012 14:09:46 +0000 (16:09 +0200)]
theoradec: Use new video decoder tag API

12 years agodocs: Add new video API to the docs
Sebastian Dröge [Thu, 9 Aug 2012 14:03:25 +0000 (16:03 +0200)]
docs: Add new video API to the docs

12 years agovideodecoder: Add API to conveniently handle tags
Sebastian Dröge [Thu, 9 Aug 2012 14:02:42 +0000 (16:02 +0200)]
videodecoder: Add API to conveniently handle tags

12 years agovideoencoder: Add API to conveniently handle tags
Sebastian Dröge [Thu, 9 Aug 2012 14:02:15 +0000 (16:02 +0200)]
videoencoder: Add API to conveniently handle tags

12 years agoaudio: Always keep a complete taglist around
Sebastian Dröge [Thu, 9 Aug 2012 13:48:03 +0000 (15:48 +0200)]
audio: Always keep a complete taglist around

Otherwise updates to the tags will cause non-updated
tags to be lost downstream.

12 years agodocs: Add new audio base classes API to the docs
Sebastian Dröge [Thu, 9 Aug 2012 13:30:30 +0000 (15:30 +0200)]
docs: Add new audio base classes API to the docs

12 years agoaudioencoder: Add negotiate vfunc that is used to negotiate with downstream
Sebastian Dröge [Thu, 9 Aug 2012 13:27:33 +0000 (15:27 +0200)]
audioencoder: Add negotiate vfunc that is used to negotiate with downstream

The default implementation negotiates a buffer pool and allocator
with downstream.

12 years agoaudioencoder: Decouple setting of output format and downstream negotiation
Sebastian Dröge [Thu, 9 Aug 2012 13:20:45 +0000 (15:20 +0200)]
audioencoder: Decouple setting of output format and downstream negotiation

This makes the audio encoder base class more similar to the video
encoder base class.

12 years agoaudiodecoder: Add negotiate vfunc that is used to negotiate with downstream
Sebastian Dröge [Thu, 9 Aug 2012 13:07:18 +0000 (15:07 +0200)]
audiodecoder: Add negotiate vfunc that is used to negotiate with downstream

The default implementation negotiates a buffer pool and allocator
with downstream.

12 years agoaudiodecoder: Decouple setting of output format and downstream negotiation
Sebastian Dröge [Thu, 9 Aug 2012 13:02:27 +0000 (15:02 +0200)]
audiodecoder: Decouple setting of output format and downstream negotiation

This makes the audio decoder base class more similar to the video
decoder base class.

12 years agovideoencoder: Add negotiate vfunc that is used to negotiate with downstream
Sebastian Dröge [Thu, 9 Aug 2012 12:39:18 +0000 (14:39 +0200)]
videoencoder: Add negotiate vfunc that is used to negotiate with downstream

The default implementation negotiates a buffer pool and allocator
with downstream.

12 years agovideodecoder: Add negotiate vfunc that is used to negotiate with downstream
Sebastian Dröge [Thu, 9 Aug 2012 12:35:22 +0000 (14:35 +0200)]
videodecoder: Add negotiate vfunc that is used to negotiate with downstream

The default implementation negotiates a buffer pool and allocator
with downstream.

12 years agotests: fix vorbisdec test
Tim-Philipp Müller [Wed, 8 Aug 2012 23:54:30 +0000 (00:54 +0100)]
tests: fix vorbisdec test

There won't be a tag messages on the bus, because tags
are now sent downstream for sinks to post on the bus,
and there's no sink involved here that would do that.
Secondly, the audio decoder base class only sends the
tags out once it has received some non-header data as
input, which is not something we're providing here.

12 years agogst: Set alignment at the correct place of GstAllocationParams
Sebastian Dröge [Wed, 8 Aug 2012 14:12:20 +0000 (16:12 +0200)]
gst: Set alignment at the correct place of GstAllocationParams

12 years agooggdemux: add proper cast for print
Andoni Morales Alastruey [Wed, 8 Aug 2012 13:07:49 +0000 (15:07 +0200)]
oggdemux: add proper cast for print

12 years agovideoencoder: add proper format for gsize
Andoni Morales Alastruey [Wed, 8 Aug 2012 12:59:49 +0000 (14:59 +0200)]
videoencoder: add proper format for gsize

12 years agortpbuffer: use proper format for gsize
Andoni Morales Alastruey [Wed, 8 Aug 2012 12:55:56 +0000 (14:55 +0200)]
rtpbuffer: use proper format for gsize

12 years agovideoencoder: Always propose a video buffer pool when the subclass didn't provide one
Sebastian Dröge [Wed, 8 Aug 2012 13:28:52 +0000 (15:28 +0200)]
videoencoder: Always propose a video buffer pool when the subclass didn't provide one

And also request 16-byte aligned buffers if the subclass didn't
set anything else.

12 years agoBack to development
Tim-Philipp Müller [Wed, 8 Aug 2012 15:21:22 +0000 (16:21 +0100)]
Back to development

12 years agoRelease 0.11.93
Tim-Philipp Müller [Wed, 8 Aug 2012 14:08:33 +0000 (15:08 +0100)]
Release 0.11.93

12 years agovideoconvert: fix example pipeline in docs
Sreerenj Balachandran [Wed, 8 Aug 2012 10:04:32 +0000 (13:04 +0300)]
videoconvert: fix example pipeline in docs

There is no more 'fourcc' typecast for format.

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

12 years agovideofilter: Really add a buffer pool if none was provided
Sebastian Dröge [Wed, 8 Aug 2012 10:19:31 +0000 (12:19 +0200)]
videofilter: Really add a buffer pool if none was provided

And also use the allocation parameters from the query if any
and if there are none set our own (16-byte alignment) on the
query.

12 years agovideofilter: Fix the crash in propose_allocation
Sreerenj Balachandran [Wed, 8 Aug 2012 09:06:45 +0000 (12:06 +0300)]
videofilter: Fix the crash in propose_allocation

Always set a buffer pool if none is provided and don't
set/unref a NULL buffer pool on the query.

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

12 years agoSilence some 'variable may be used uninitialized' compiler warnings
Tim-Philipp Müller [Wed, 8 Aug 2012 09:19:20 +0000 (10:19 +0100)]
Silence some 'variable may be used uninitialized' compiler warnings

when compiling with -DG_DISABLE_ASSERT

12 years agoNo statements with side-effects in g_assert() or g_return_*() please
Tim-Philipp Müller [Wed, 8 Aug 2012 09:11:48 +0000 (10:11 +0100)]
No statements with side-effects in g_assert() or g_return_*() please

12 years agoUpdate .gitignore
Tim-Philipp Müller [Wed, 8 Aug 2012 08:06:30 +0000 (09:06 +0100)]
Update .gitignore

12 years agotheoradec: Drop ignored headers
Olivier Crête [Tue, 7 Aug 2012 20:58:21 +0000 (13:58 -0700)]
theoradec: Drop ignored headers

Instead of finishing an empty frame, call drop_frame as we're
ignoring the header frame.

12 years agodocs: Add proper libraries to GST_LIBS instead (-base)
Руслан Ижбулатов [Mon, 6 Aug 2012 13:28:06 +0000 (17:28 +0400)]
docs: Add proper libraries to GST_LIBS instead (-base)

12 years agodiscoverer: Add source-setup signal for GstDiscoverer
Руслан Ижбулатов [Mon, 6 Aug 2012 11:23:51 +0000 (15:23 +0400)]
discoverer: Add source-setup signal for GstDiscoverer

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

12 years agotagdemux: Add stream-id to stream-start event
Sebastian Dröge [Sat, 4 Aug 2012 10:28:45 +0000 (12:28 +0200)]
tagdemux: Add stream-id to stream-start event

12 years agooggdemux: Add stream-id to the stream-start event
Sebastian Dröge [Sat, 4 Aug 2012 10:16:44 +0000 (12:16 +0200)]
oggdemux: Add stream-id to the stream-start event

12 years agotests: remove custom tcase_skip_broken_test define which is now in core
Tim-Philipp Müller [Sun, 5 Aug 2012 16:25:59 +0000 (17:25 +0100)]
tests: remove custom tcase_skip_broken_test define which is now in core

12 years agotests: silence FIXMEs when running videoscale unit test
Tim-Philipp Müller [Sun, 5 Aug 2012 16:21:31 +0000 (17:21 +0100)]
tests: silence FIXMEs when running videoscale unit test

12 years agoAutomatic update of common submodule
Tim-Philipp Müller [Sun, 5 Aug 2012 15:37:55 +0000 (16:37 +0100)]
Automatic update of common submodule

From 94ccf4c to 668acee

12 years agovideo: make sure g-i doesn't parse orc-generated video-orc.h file
Tim-Philipp Müller [Sun, 5 Aug 2012 13:39:01 +0000 (14:39 +0100)]
video: make sure g-i doesn't parse orc-generated video-orc.h file

It's not public API.

12 years agopbutils: use generic marshaller for discoverer's "discovered" signal
Tim-Philipp Müller [Sat, 4 Aug 2012 22:29:27 +0000 (23:29 +0100)]
pbutils: use generic marshaller for discoverer's "discovered" signal

If this change causes build issues, run git clean -x -d -f; ./autogen.sh

12 years agoencodebin: use generic marshaller for signal
Tim-Philipp Müller [Sat, 4 Aug 2012 22:09:06 +0000 (23:09 +0100)]
encodebin: use generic marshaller for signal

12 years agoadder: send CAPS event downstream fixing not-negotiated errors
Tim-Philipp Müller [Sat, 4 Aug 2012 23:41:10 +0000 (00:41 +0100)]
adder: send CAPS event downstream fixing not-negotiated errors

Make sure to send a CAPS event downstream when we get our
first input caps. This fixes not-negotiated errors and
adder use with downstream elements other than fakesink.

Even gst-launch-1.0 audiotestsrc ! adder ! pulsesink works now.

Also, flag the other sink pads as FIXED_CAPS when we receive
the first CAPS event on one of the sink pads (in addition to
setting those caps on the the sink pads), so that a caps query
will just return the fixed caps from now on.

There's still a race between other upstreams checking if
caps are accepted and sending a first buffer with possibly
different caps than the first caps we receive on some other
pad, but such is life.

Also need to take into account optional fields better/properly.

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

12 years agotests: add adder test to check that caps are sent downstream
Tim-Philipp Müller [Sat, 4 Aug 2012 21:25:08 +0000 (22:25 +0100)]
tests: add adder test to check that caps are sent downstream

12 years agovideoscale: fix 4-tap scaling for 64-bpp formats
Tim-Philipp Müller [Sat, 4 Aug 2012 19:45:02 +0000 (20:45 +0100)]
videoscale: fix 4-tap scaling for 64-bpp formats

Fix invalid memory access caused by broken pointer arithmetic.

If we have a uint16_t *tmpbuf and add n * dest->stride to it, we
skip twice as much as we intended to because dest->stride is in
bytes and not in pixels. This made us write beyond the end of
our allocated temp buffer, and made the unit test crash.

12 years agovideoscale: sprinkle some G_GNUC_INTERNAL
Tim-Philipp Müller [Sat, 4 Aug 2012 18:08:20 +0000 (19:08 +0100)]
videoscale: sprinkle some G_GNUC_INTERNAL

Not sure it actually makes any difference for plugins though.

12 years agovideoscale: make 4tap scanline funcs static
Tim-Philipp Müller [Sat, 4 Aug 2012 17:51:12 +0000 (18:51 +0100)]
videoscale: make 4tap scanline funcs static

12 years agoriff: fix build on big endian systems
Tim-Philipp Müller [Sat, 4 Aug 2012 18:33:32 +0000 (19:33 +0100)]
riff: fix build on big endian systems

12 years agoappsrc: send caps event when the user updates appsrc caps
Thiago Santos [Sun, 29 Jul 2012 03:49:31 +0000 (00:49 -0300)]
appsrc: send caps event when the user updates appsrc caps

As buffer don't have caps anymore, the caps event needs to be pushed
before buffers are pushed.

12 years agotag: fix month/day extraction in ID3v2 tags
Tim-Philipp Müller [Wed, 1 Aug 2012 16:46:46 +0000 (17:46 +0100)]
tag: fix month/day extraction in ID3v2 tags

We were passing month/day in the wrong order to
gst_date_time_new_ymd().

12 years agodiscoverer: fix discover_uri returning finalized info object
René Stadler [Mon, 30 Jul 2012 23:19:36 +0000 (01:19 +0200)]
discoverer: fix discover_uri returning finalized info object

12 years agotag: fix up EXIF writer for GstBuffer -> GstSample
Tim-Philipp Müller [Sat, 28 Jul 2012 10:54:38 +0000 (11:54 +0100)]
tag: fix up EXIF writer for GstBuffer -> GstSample