platform/upstream/gstreamer.git
11 years agoUpdate docs for gst_pad_create_stream_id_printf()
David Schleef [Tue, 26 Mar 2013 01:11:54 +0000 (18:11 -0700)]
Update docs for gst_pad_create_stream_id_printf()

To indicate that format strings should be alpha sortable.

11 years agocaps: Add unit test for GST_CAPS_{ANY,NONE} and GST_STATIC_CAPS_{ANY,NONE}
Sebastian Dröge [Mon, 25 Mar 2013 08:16:05 +0000 (09:16 +0100)]
caps: Add unit test for GST_CAPS_{ANY,NONE} and GST_STATIC_CAPS_{ANY,NONE}

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

11 years agocaps: Fix gst_static_caps_get(GST_STATIC_CAPS_NONE)
Sebastian Dröge [Mon, 25 Mar 2013 08:19:24 +0000 (09:19 +0100)]
caps: Fix gst_static_caps_get(GST_STATIC_CAPS_NONE)

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

11 years agobasesrc: Don't send error if negotiate fails because we are flushing
Nicolas Dufresne [Fri, 22 Mar 2013 01:00:54 +0000 (21:00 -0400)]
basesrc: Don't send error if negotiate fails because we are flushing

Negotiation may be aborted by a flush from another thread that need to
stop the task (i.e. seek). Check that case and silently pause the task.

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

11 years agotoc: some documentation updates
Tim-Philipp Müller [Sun, 24 Mar 2013 17:53:35 +0000 (17:53 +0000)]
toc: some documentation updates

11 years agodocs: fix typo in query function example in Plugin Writer's Guide
Tim-Philipp Müller [Fri, 22 Mar 2013 20:02:57 +0000 (20:02 +0000)]
docs: fix typo in query function example in Plugin Writer's Guide

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

11 years agotests: fix spurious failure in test_collect collectpads test
Jonas Holmberg [Thu, 7 Mar 2013 11:11:30 +0000 (12:11 +0100)]
tests: fix spurious failure in test_collect collectpads test

pop() in collected callback.

There were three threads in the test cases that hanged: the test thread and two
threads that push buffers. Each thread push one buffer on one pad. There are
two pads in the collectpads so the second buffer will trigger the
collect-callback.

This is what happens when the hang occurs:

The first thread pushes a buffer and initializes a cookie to the value of a
counter in the collectpads object and waits on a cond for the counter to change
and for someone to consume the buffer (i.e. _pop() it).

The second thread pushes a buffer and calls the collected callback, which
signals the cond that the test thread is waiting for.

The test thread pops both buffers (without holding any lock). Each call to
_pop() increases the counter broadcasts the condition that the first thread is
now waiting for. It then joins both threads (hangs).

The first thread wakes up and returns, since its buffer has been consumed.

The second thread starts executing again. When the callback, called by the
second thread, has returned it initializes a cookie to the value of a counter,
which has already prematurely been increased by the test thread when it popped
the buffers, and wait's on a cond for the counter to change and for someone to
consume the buffer (i.e. _pop() it). Since the buffer has already been poped
and the counter has already been increased it will be stuck forever.

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

11 years agogst-uninstalled: remove ffmpeg libs from dynamic linker paths
Tim-Philipp Müller [Sat, 16 Mar 2013 12:05:39 +0000 (12:05 +0000)]
gst-uninstalled: remove ffmpeg libs from dynamic linker paths

We link those libs into the plugin statically, or use external
system libs, but never the internal snapshot dynamically.

11 years agogst-uninstalled: add gst-editing-serves to GI_TYPELIB_PATH
Tim-Philipp Müller [Sat, 16 Mar 2013 12:00:55 +0000 (12:00 +0000)]
gst-uninstalled: add gst-editing-serves to GI_TYPELIB_PATH

So pygi can find it.

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

11 years agoutils: make sure slow GST_READ_UINT* variants don't have unexpected side effects
Tim-Philipp Müller [Tue, 12 Mar 2013 13:53:57 +0000 (13:53 +0000)]
utils: make sure slow GST_READ_UINT* variants don't have unexpected side effects

Fixes unit test on systems where unaligned memory access is not possible.

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

11 years agolaunch: don't exit the loop on buffering in paused
Wim Taymans [Tue, 5 Mar 2013 10:14:41 +0000 (11:14 +0100)]
launch: don't exit the loop on buffering in paused

When we receive a buffering message of 100% in the paused state, we exit
the event_loop and move to the PLAYING state. What should happen is that
we wait for both ASYNC-DONE and 100% buffering before continueing.

11 years agodesign: update controller design and add some thoughs for future stuff
Stefan Sauer [Fri, 8 Mar 2013 12:15:32 +0000 (13:15 +0100)]
design: update controller design and add some thoughs for future stuff

11 years agodocs: mention clipping of values in control-binding docs
Stefan Sauer [Fri, 8 Mar 2013 07:13:06 +0000 (08:13 +0100)]
docs: mention clipping of values in control-binding docs

11 years agocontroller: code cleanups
Stefan Sauer [Fri, 8 Mar 2013 07:10:20 +0000 (08:10 +0100)]
controller: code cleanups

Use a property for accessing the control-source on the binding. Drop base_init
on the test object.

11 years agoquery: gst_query_get_n_allocation_params() returns a new ref to the allocator
Sebastian Dröge [Thu, 7 Mar 2013 10:46:33 +0000 (11:46 +0100)]
query: gst_query_get_n_allocation_params() returns a new ref to the allocator

11 years agocontroller: remove a bogus test
Stefan Sauer [Thu, 7 Mar 2013 10:35:03 +0000 (11:35 +0100)]
controller: remove a bogus test

We previously forgot to initilize the amplitde property to the default and thus it was 0.0. Therefore a default lfo controlsource returned a series of 0.0 and the test was asserting on that.

11 years agocontrolbinding: relax the pspec for the control-source
Stefan Sauer [Thu, 7 Mar 2013 08:15:14 +0000 (09:15 +0100)]
controlbinding: relax the pspec for the control-source

We can change control sources on controlbindings.

11 years agolfo: set a sensible lower boundary for the frequency
Stefan Sauer [Thu, 7 Mar 2013 08:12:59 +0000 (09:12 +0100)]
lfo: set a sensible lower boundary for the frequency

Use DBL_MIN, which is a the smalles double greater than zero that is not in
denormal format. This exposes the limit better than the runtime check.

11 years agoAutomatic update of common submodule
Tim-Philipp Müller [Wed, 6 Mar 2013 23:59:28 +0000 (23:59 +0000)]
Automatic update of common submodule

From 2de221c to 04c7a1e

11 years agolfocontrolsource: init the amplitude to the default and update the docs
Stefan Sauer [Wed, 6 Mar 2013 15:40:27 +0000 (16:40 +0100)]
lfocontrolsource: init the amplitude to the default and update the docs

11 years agogst-uninstalled: Add all the base/bad libraries and remove obsolete ones
Sebastian Dröge [Tue, 5 Mar 2013 10:30:22 +0000 (11:30 +0100)]
gst-uninstalled: Add all the base/bad libraries and remove obsolete ones

11 years agobasesink: fix use of uninitialized variable
Tim-Philipp Müller [Sun, 3 Mar 2013 16:00:11 +0000 (16:00 +0000)]
basesink: fix use of uninitialized variable

Running suite(s): GstBaseSink
==22023== Conditional jump or move depends on uninitialised value(s)
==22023==    at 0x505FFCE: gst_base_sink_get_sync_times (gstbasesink.c:1936)
==22023==    by 0x5068C80: gst_base_sink_do_sync (gstbasesink.c:2379)
==22023==    by 0x506BCD2: gst_base_sink_default_wait_event (gstbasesink.c:2903)
==22023==    by 0x50633A4: gst_base_sink_default_event (gstbasesink.c:2918)
==22023==    by 0x6F5C216: gst_fake_sink_event (gstfakesink.c:383)
==22023==    by 0x505F164: gst_base_sink_event (gstbasesink.c:3108)
==22023==    by 0x52FA090: gst_pad_send_event_unchecked (gstpad.c:4822)
==22023==    by 0x5303756: gst_pad_send_event (gstpad.c:4984)
==22023==    by 0x40165B: basesink_test_gap (basesink.c:148)

11 years agobuffer: Fix memory copying logic in copy_into()
Sebastian Dröge [Sun, 3 Mar 2013 11:06:36 +0000 (12:06 +0100)]
buffer: Fix memory copying logic in copy_into()

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

11 years agoregistrychunks: Use correct print format specifiers to fix compiler warnings
Sebastian Dröge [Sun, 3 Mar 2013 10:28:32 +0000 (11:28 +0100)]
registrychunks: Use correct print format specifiers to fix compiler warnings

11 years agoFix misspellings of 'continuous'
David Schleef [Fri, 22 Feb 2013 22:22:01 +0000 (14:22 -0800)]
Fix misspellings of 'continuous'

11 years agocollectpads: take DTS into account
David Schleef [Fri, 22 Feb 2013 22:56:49 +0000 (14:56 -0800)]
collectpads: take DTS into account

Importantly, this patch converts DTS to running time.  Less importantly,
and possibly a problem for some muxers, is that it orders buffers by
DTS (if it is valid, otherwise PTS).  This is generally correct, but
might be somewhat surprising to muxers.

Also note that once converted to running time, DTS can end up negative.

11 years agomanual: improve the controller docs a little more
Stefan Sauer [Thu, 28 Feb 2013 21:59:43 +0000 (22:59 +0100)]
manual: improve the controller docs a little more

Reword some sections. Explain value mappings better.

11 years agogst-uninstalled: add gst-libav to pkg-config path
Tim-Philipp Müller [Thu, 28 Feb 2013 19:40:32 +0000 (19:40 +0000)]
gst-uninstalled: add gst-libav to pkg-config path

11 years agoseeking: add more logging for seeking
Stefan Sauer [Wed, 27 Feb 2013 21:15:48 +0000 (22:15 +0100)]
seeking: add more logging for seeking

Especially add logging to error code paths.

11 years agobuffer: Gracefully handle gst_memory_copy() returning NULL without crashing
Sebastian Dröge [Wed, 27 Feb 2013 09:09:56 +0000 (10:09 +0100)]
buffer: Gracefully handle gst_memory_copy() returning NULL without crashing

gst_buffer_copy_into() and gst_buffer_resize_range() can now fail.

11 years agoallocator: small internal cleanups
Wim Taymans [Tue, 26 Feb 2013 16:33:30 +0000 (17:33 +0100)]
allocator: small internal cleanups

Rename System memory allocator to GstAllocatorSysmem and the memory to
GstMemorySystem.

11 years agomemory: add method to check memory type
Wim Taymans [Tue, 26 Feb 2013 14:37:24 +0000 (15:37 +0100)]
memory: add method to check memory type

Add a method to check if a memory was allocated from an allocator of
a given type.

API: gst_memory_is_type()

11 years agodocs: improve docs a little
Wim Taymans [Tue, 26 Feb 2013 14:36:10 +0000 (15:36 +0100)]
docs: improve docs a little

11 years agouse GST_MESSAGE_DURATION_CHANGED in docs and code
Wim Taymans [Tue, 26 Feb 2013 14:32:25 +0000 (15:32 +0100)]
use GST_MESSAGE_DURATION_CHANGED in docs and code

11 years agomemory: don't unref allocator too soon
Wim Taymans [Tue, 26 Feb 2013 13:40:38 +0000 (14:40 +0100)]
memory: don't unref allocator too soon

Unref the allocator *after* we have freed the memory. We also need to keep
a ref to the allocator around because following the now freed memory would
lead to crashes.

11 years agobuffer: Fix inverted logic for deciding if memory should be shared or copied
Sebastian Dröge [Tue, 26 Feb 2013 08:08:49 +0000 (09:08 +0100)]
buffer: Fix inverted logic for deciding if memory should be shared or copied

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

11 years agoporting: mention segment accumulation in the porting guide
Stefan Sauer [Tue, 26 Feb 2013 06:50:13 +0000 (07:50 +0100)]
porting: mention segment accumulation in the porting guide

This needs more detail, but at least gives people a hint on the issue.

11 years agodocs: s/start/done/ copy'n'paste mistake
Stefan Sauer [Tue, 26 Feb 2013 06:48:35 +0000 (07:48 +0100)]
docs: s/start/done/ copy'n'paste mistake

11 years agoquery: Add new API to remove allocation params and pools from the allocation query
Sebastian Dröge [Mon, 25 Feb 2013 12:57:43 +0000 (13:57 +0100)]
query: Add new API to remove allocation params and pools from the allocation query

11 years agoquery: Document that the first allocator in the allocation query should allow mapping...
Sebastian Dröge [Mon, 25 Feb 2013 12:24:33 +0000 (13:24 +0100)]
query: Document that the first allocator in the allocation query should allow mapping to system memory

11 years agomemory: Keep a reference to the allocator
Sebastian Dröge [Sun, 24 Feb 2013 08:24:26 +0000 (09:24 +0100)]
memory: Keep a reference to the allocator

Otherwise the allocator might get freed while it's still used
by the memory

11 years agobuffer: If sharing a GstMemory fails, fall back to copying it
Sebastian Dröge [Sun, 24 Feb 2013 08:33:03 +0000 (09:33 +0100)]
buffer: If sharing a GstMemory fails, fall back to copying it

11 years agodocs: porting-to-1.0.txt: some element names have changed
Tim-Philipp Müller [Sat, 23 Feb 2013 18:36:15 +0000 (18:36 +0000)]
docs: porting-to-1.0.txt: some element names have changed

11 years agomemory: It's contiguous, not continous
Sebastian Dröge [Sat, 23 Feb 2013 07:19:48 +0000 (08:19 +0100)]
memory: It's contiguous, not continous

11 years agomemory: Add new memory flag to specify that memory can't be mapped
Sebastian Dröge [Fri, 22 Feb 2013 11:41:09 +0000 (12:41 +0100)]
memory: Add new memory flag to specify that memory can't be mapped

11 years agomemory: Add memory flag to mark physically continous memory
Sebastian Dröge [Fri, 22 Feb 2013 08:02:22 +0000 (09:02 +0100)]
memory: Add memory flag to mark physically continous memory

11 years agobasetransform: don't pass NULL outcaps to transform_size on shutdown
Tim-Philipp Müller [Sat, 16 Feb 2013 23:02:21 +0000 (23:02 +0000)]
basetransform: don't pass NULL outcaps to transform_size on shutdown

gst_pad_get_current_caps() on the source pad might yield NULL caps
if we're being shut down and the source pad has already been
deactivated by the other thread that's changing state. Just bail
out in that case, instead of passing NULL caps to the transform_size
function, which it might not expect.

Fixes spurious warnings in audioresample shutdown unit test.

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

11 years agogst-uninstalled: Add ORC
Sebastian Dröge [Thu, 21 Feb 2013 09:18:14 +0000 (10:18 +0100)]
gst-uninstalled: Add ORC

11 years agoutils: avoid unexpected side-effects of GST_WRITE_* macros
Tim-Philipp Müller [Tue, 19 Feb 2013 18:00:48 +0000 (18:00 +0000)]
utils: avoid unexpected side-effects of GST_WRITE_* macros

Make sure the data argument is only evaluated once.

11 years agocheck: add some more fail_unless_*() macros for convenience
Tim-Philipp Müller [Tue, 19 Feb 2013 17:36:50 +0000 (17:36 +0000)]
check: add some more fail_unless_*() macros for convenience

API: fail_unless_equals_int_hex
API: assert_equals_int_hex
API: fail_unless_equals_int64_hex
API: assert_equals_int64_hex
API: fail_unless_equals_uint64_hex
API: assert_equals_uint64_hex
API: fail_unless_equals_pointer
API: assert_equals_pointer

11 years agoscripts: add new -base allocators library to gst-uninstalled search paths
Tim-Philipp Müller [Tue, 19 Feb 2013 12:42:32 +0000 (12:42 +0000)]
scripts: add new -base allocators library to gst-uninstalled search paths

11 years agocollectpads: add two more tests using collectpads within an element
Stefan Sauer [Mon, 18 Feb 2013 19:47:04 +0000 (20:47 +0100)]
collectpads: add two more tests using collectpads within an element

Add a static plugin with a rudimentary element using collectpads and do some
pipeline based tests.

11 years agodocs: Fix some ambiguous wording
David Schleef [Sun, 17 Feb 2013 20:50:03 +0000 (12:50 -0800)]
docs: Fix some ambiguous wording

11 years agotriggercontrolsource: add missing end_iter check for sequence
Stefan Sauer [Sun, 17 Feb 2013 18:53:55 +0000 (19:53 +0100)]
triggercontrolsource: add missing end_iter check for sequence

Avoid accessing the end-iter, this is a marker without a data field.

11 years agodocs: link to the appropriate messages from gst_elements_set_state() docs
Stefan Sauer [Sun, 17 Feb 2013 12:20:20 +0000 (13:20 +0100)]
docs: link to the appropriate messages from gst_elements_set_state() docs

For an async state change return one would wait for ASYNC_DONE or STATE_CHANGED.

11 years agobuffer: add since marker for new COPY_DEEP buffer flag
Tim-Philipp Müller [Sat, 16 Feb 2013 14:20:06 +0000 (14:20 +0000)]
buffer: add since marker for new COPY_DEEP buffer flag

11 years agobuffer: add option to deep copy a buffer
Wim Taymans [Sat, 16 Feb 2013 13:59:02 +0000 (14:59 +0100)]
buffer: add option to deep copy a buffer

Add a buffer copy flag to force a memory copy in all cases.

11 years agoRevert "utils: Use gst_pad_get_pad_template() in gst_element_get_compatible_pad_templ...
Tim-Philipp Müller [Thu, 14 Feb 2013 14:09:13 +0000 (14:09 +0000)]
Revert "utils: Use gst_pad_get_pad_template() in gst_element_get_compatible_pad_template()"

This reverts commit 1a1a9e143fb0e155d7627aa8e489cd5d04bc093c.

This breaks the pipelines/tagschecking unit test for some reason
(fakesrc ! capsfilter ! qtmux linking fails now). It might be
a bug in the unit test of course, but someone will need to
investigate this. Reverting for now.

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

11 years agoallocator: improve fallback copy function
Wim Taymans [Fri, 15 Feb 2013 12:08:18 +0000 (13:08 +0100)]
allocator: improve fallback copy function

Only use the allocator of the copied memory when we can use the default
_alloc function on it. Otherwise we will have to use the default
allocator for the copy.

11 years agodocs: fix location in user's home directory where GStreamer looks for plugins
Tim-Philipp Müller [Thu, 14 Feb 2013 13:55:10 +0000 (13:55 +0000)]
docs: fix location in user's home directory where GStreamer looks for plugins

It's based on the xdg user data dir now in 1.0.

11 years agoutils: Use gst_pad_get_pad_template() in gst_element_get_compatible_pad_template()
Niv Sardi [Fri, 25 Jan 2013 09:50:27 +0000 (06:50 -0300)]
utils: Use gst_pad_get_pad_template() in gst_element_get_compatible_pad_template()

motivation comes from: /* FIXME: why not gst_pad_get_pad_template (pad); */
this code path is quite nicer, we now only revert to creating the template
if gst_pad_get_pad_template fails.

with this fork, we gain a non-allocation of GstCaps *templcaps

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

11 years agogst-launch: Use g_unix_signal_add() to handle keyboard interruption
Krzysztof Konopko [Wed, 13 Feb 2013 00:27:28 +0000 (00:27 +0000)]
gst-launch: Use g_unix_signal_add() to handle keyboard interruption

Current implementation uses a traditional signal handler and a 250ms
timeout callback in the event loop.  Adding a GSource with
g_unix_signal_add() to the GMainLoop is a much more elegant solution.
The signal handler with this approach can send a message to the bus
directly rather than set a flag as all dispatching intricacies are handled
by GLib.

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

11 years agodocs: flesh our 'Running GStreamer' bits a bit
Tim-Philipp Müller [Thu, 14 Feb 2013 00:07:22 +0000 (00:07 +0000)]
docs: flesh our 'Running GStreamer' bits a bit

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

11 years agodocs: flesh out gst-launch-1.0 man page a little
Tim-Philipp Müller [Wed, 13 Feb 2013 23:27:16 +0000 (23:27 +0000)]
docs: flesh out gst-launch-1.0 man page a little

Fix up default location of the registry.

Mention more options for GST_DEBUG (wildcards and
named debug levels).

Explain what to do with the dot files that can be
produced by setting GST_DEBUG_DUMP_DOT_DIR.

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

11 years agodocs: fix advanced-metadata code example in manual
Gert Michael Kulyk [Wed, 26 Dec 2012 23:03:06 +0000 (00:03 +0100)]
docs: fix advanced-metadata code example in manual

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

11 years agomessage: accept NULL error argument in gst_message_parse_{error,warning,info}
Tim-Philipp Müller [Wed, 13 Feb 2013 16:52:13 +0000 (16:52 +0000)]
message: accept NULL error argument in gst_message_parse_{error,warning,info}

And simplify code a bit while at it.

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

11 years agovalue: Remove set-style bitmask intersection/union/subtraction functions
Sebastian Dröge [Wed, 13 Feb 2013 16:00:23 +0000 (17:00 +0100)]
value: Remove set-style bitmask intersection/union/subtraction functions

Set operations on the bitmasks don't make much sense and result
in invalid caps when used as a channel-mask. They are now handled
exactly like integers.

This functionality was not used anywhere except for tests.

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

11 years agobin: The latency query should return TRUE by default, different to other queries
Sebastian Dröge [Wed, 13 Feb 2013 10:19:06 +0000 (11:19 +0100)]
bin: The latency query should return TRUE by default, different to other queries

Fixes unit test failures caused by f3d268de7f7fb1161778a9a95e0d54d8c89ef626

11 years agostructure: Make sure that subsets have all fields of the superset
Sebastian Dröge [Wed, 13 Feb 2013 09:46:37 +0000 (10:46 +0100)]
structure: Make sure that subsets have all fields of the superset

"video/x-h264,parsed=(boolean)true" is not a superset of
"video/x-h264,stream-format=(string)byte-stream,alignment=(string)nal"
for example.

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

11 years agoupdate exports for baseparse API changes
David Schleef [Tue, 12 Feb 2013 20:32:23 +0000 (12:32 -0800)]
update exports for baseparse API changes

11 years agobaseparse: Fix doc typo
David Schleef [Tue, 12 Feb 2013 20:31:42 +0000 (12:31 -0800)]
baseparse: Fix doc typo

11 years agobaseparse: add gst_base_parse_set_ts_at_offset()
David Schleef [Tue, 12 Feb 2013 00:51:48 +0000 (16:51 -0800)]
baseparse: add gst_base_parse_set_ts_at_offset()

Sets the buffer timestamps based on last seen timestamps at a
particular offset into the frame.

API: gst_base_parse_set_ts_at_offset()

11 years agoadapter: Add gst_adapter_prev_[pd]ts_at_offset()
David Schleef [Tue, 12 Feb 2013 00:42:41 +0000 (16:42 -0800)]
adapter: Add gst_adapter_prev_[pd]ts_at_offset()

Original patch written by Michael Smith <msmith@rdio.com>.

API: gst_adapter_prev_pts_at_offset()
API: gst_adapter_prev_dts_at_offset()

11 years agobin: query sink elements and source pads of the bin
Philippe Normand [Sat, 9 Feb 2013 17:14:09 +0000 (18:14 +0100)]
bin: query sink elements and source pads of the bin

gst_bin_query() now forwards the query to the source pads as well if
none of the sinks of the bin satisfied the query. This helps in the
case of DURATION queries done a bin containing a source element.

Fixes bug 638749

11 years agobin: Let gst_bin_send_event() send events to ghost pads as well
Alexander Schrab [Thu, 7 Feb 2013 11:47:02 +0000 (12:47 +0100)]
bin: Let gst_bin_send_event() send events to ghost pads as well

11 years agocompat: kill more uses of gst_pad_set_caps()
Stefan Sauer [Mon, 11 Feb 2013 21:52:25 +0000 (22:52 +0100)]
compat: kill more uses of gst_pad_set_caps()

11 years agogstvalue: Adding offset to GstSegment serialize/deserialize.
Tim 'mithro' Ansell [Mon, 11 Feb 2013 13:08:51 +0000 (00:08 +1100)]
gstvalue: Adding offset to GstSegment serialize/deserialize.

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

11 years agobaseparse: improve PTS interpolating
Mark Nauwelaerts [Sat, 9 Feb 2013 11:32:02 +0000 (12:32 +0100)]
baseparse: improve PTS interpolating

... and tracking of DTS.  Fixes cases where PTS is locked on to the
DTS of an incoming buffer with no PTS with invalid data, leading to
no outgoing PTS (since it is not allowed smaller than DTS).

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

11 years agodocs: add more porting details
Stefan Sauer [Fri, 8 Feb 2013 20:28:18 +0000 (21:28 +0100)]
docs: add more porting details

11 years agocontrolbinding: error handling for binding controlsources to wrong properties
Stefan Sauer [Fri, 8 Feb 2013 20:21:48 +0000 (21:21 +0100)]
controlbinding: error handling for binding controlsources to wrong properties

Add warning if property is not suitable for controlling. When adding a control-
binding check that pspec!=NULL.

11 years agoelement: remove old docs about iterators
Wim Taymans [Thu, 7 Feb 2013 12:08:49 +0000 (13:08 +0100)]
element: remove old docs about iterators

11 years agobin: remove old comment
Wim Taymans [Thu, 7 Feb 2013 11:52:26 +0000 (12:52 +0100)]
bin: remove old comment

The iterators now return a GValue and not the object directly anymore.

11 years agobin: reset GValue from iterator after usage
Wim Taymans [Thu, 7 Feb 2013 11:50:08 +0000 (12:50 +0100)]
bin: reset GValue from iterator after usage

11 years agotests: add basesink test
Wim Taymans [Tue, 5 Feb 2013 16:15:37 +0000 (17:15 +0100)]
tests: add basesink test

11 years agobasesink: handle sync of EOS after item without duration
Wim Taymans [Tue, 5 Feb 2013 16:19:50 +0000 (17:19 +0100)]
basesink: handle sync of EOS after item without duration

After a buffer or GAP without duration, an EOS event should be rendered
immediately instead of waiting for the end of the segment.

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

11 years agogstpipeline: fix failed assertion caused by seeking pipeline with NULL clock
Nate Bogdanowicz [Sat, 2 Feb 2013 19:55:52 +0000 (11:55 -0800)]
gstpipeline: fix failed assertion caused by seeking pipeline with NULL clock

Under certain GST_STATE_CHANGED_PAUSED_TO_PLAYING transitions, a pipeline with
a NULL clock will fail an assertion due to an unchecked call to gst_object_ref().
This is fixed by simply adding a check and only ref-ing if the clock is not NULL.

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

11 years agostructure: change argument name for docs
Wim Taymans [Tue, 5 Feb 2013 12:44:06 +0000 (13:44 +0100)]
structure: change argument name for docs

11 years agodebugutils: fix order of caps on an unnegotiated link
Stefan Sauer [Mon, 4 Feb 2013 09:30:32 +0000 (10:30 +0100)]
debugutils: fix order of caps on an unnegotiated link

headlabel is the sink_pad (where the link points to) and not the other way around.

11 years agodocs: update the controller docs
Stefan Sauer [Fri, 1 Feb 2013 20:59:41 +0000 (21:59 +0100)]
docs: update the controller docs

Add the control bindings to the docs. Add a little more detail.

11 years agoporting: a few updates for the porting guide
Stefan Sauer [Fri, 1 Feb 2013 20:57:45 +0000 (21:57 +0100)]
porting: a few updates for the porting guide

11 years agodataqueue: can't pass a GType through GINT_TO_POINTER
Tim-Philipp Müller [Wed, 30 Jan 2013 13:06:44 +0000 (13:06 +0000)]
dataqueue: can't pass a GType through GINT_TO_POINTER

Use GSIZE_TO_POINTER instead. sizeof(GType) may be larger
than sizeof(gulong) and sizeof(int), so the casts may
chop off some bits from the GType value on some architectures.

11 years agotests: unit test to trigger the queue/flushing race condition bug for allocation...
Alexander Schrab [Tue, 29 Jan 2013 11:40:52 +0000 (12:40 +0100)]
tests: unit test to trigger the queue/flushing race condition bug for allocation queries

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

11 years agoqueue: remove query from queue if queue is flushing
Alexander Schrab [Mon, 28 Jan 2013 10:05:28 +0000 (11:05 +0100)]
queue: remove query from queue if queue is flushing

When querying a queue that is flushing we end up adding
a query to the queuearray without taking a reference to
that query (because the normal functionality is to block
until that query is done and discarded from the queue).
This later causes problem if the query is unreffed outside
of the queue before we discard the queue. There is a check
to avoid unreffing any lingering query-objects, but since
the query has been deleted that check fails.

This commit depends on other fixes done to gst_queue_array_find()
and gst_queue_array_drop_element().

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

11 years agoqueuearray: make _find() find the value if no compare function is provided
Tim-Philipp Müller [Wed, 30 Jan 2013 11:55:18 +0000 (11:55 +0000)]
queuearray: make _find() find the value if no compare function is provided

Allow NULL as compare function for direct value lookup.

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

11 years agotests: check return value of gst_queue_array_drop_element() too
Tim-Philipp Müller [Wed, 30 Jan 2013 11:34:15 +0000 (11:34 +0000)]
tests: check return value of gst_queue_array_drop_element() too

Was added when the API was made public in git master.

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

11 years agotests: one more test for gst_queue_array_drop_element()
Tim-Philipp Müller [Tue, 29 Jan 2013 22:54:21 +0000 (22:54 +0000)]
tests: one more test for gst_queue_array_drop_element()

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

Conflicts:
tests/check/libs/queuearray.c

11 years agoqueuearray: fix gst_queue_array_find()
Alexander Schrab [Mon, 28 Jan 2013 10:05:28 +0000 (11:05 +0100)]
queuearray: fix gst_queue_array_find()

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

11 years agoqueuearray: fix gst_queue_array_drop_element()
Alexander Schrab [Mon, 28 Jan 2013 10:05:28 +0000 (11:05 +0100)]
queuearray: fix gst_queue_array_drop_element()

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

Conflicts:
libs/gst/base/gstqueuearray.c

11 years agodocs: align the comments correctly with the declaration in bitreader docs
Sreerenj Balachandran [Tue, 29 Jan 2013 14:55:23 +0000 (16:55 +0200)]
docs: align the comments correctly with the declaration in bitreader docs

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

11 years agobasesrc: handle renegotiation correctly
Wim Taymans [Tue, 29 Jan 2013 08:45:23 +0000 (09:45 +0100)]
basesrc: handle renegotiation correctly

Don't retry to negotiate when we fail to negotiate but instead produce a
NOT_NEGOTIATED error. We only want to retry negotiation if the result from
gst_pad_push() returned NOT_NEGOTIATED.