Commit graph

12096 commits

Author SHA1 Message Date
Tim-Philipp Müller
76fc67b18c tests: remove silly test_fail_abstract_new check
Our check would make sure that GLib segfaults when
someone tries to instantiate an abstract type, which
is an extremely useful thing to check for.

In newer GLibs this is fixed and we get an abort with
a g_error() now it seems, so let's just remove this
check entirely.
2013-09-05 16:51:23 +01:00
Kerrick Staley
60516f4798 parse: make grammar.y work with Bison 3
YYLEX_PARAM is no longer supported in Bison 3.

https://bugzilla.gnome.org/show_bug.cgi?id=706462
2013-09-05 16:41:25 +01:00
Sebastian Dröge
fa4da8fe6b basetransform: Fix handling of reverse caps negotiation if this element alone is not enough to do the transform
For example if downstream wants a new width/height and color format and
there's first a videoscale and then a ffmpegcolorspace. ffmpegcolorspace
could do the color format conversion, but not the width/height and the
other way around.
2013-05-24 22:59:18 +02:00
Mark Nauwelaerts
65c69c60ed docs: no TOC design to dist 2013-05-04 12:23:08 +02:00
Tim-Philipp Müller
1bcabb9a23 Automatic update of common submodule
From 9bca01f to 2585de9
2013-03-10 23:19:28 +00:00
Tim-Philipp Müller
c1fa5ba9fd configure: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS
AM_CONFIG_HEADER has been removed in the just-released automake 1.13:
https://lists.gnu.org/archive/html/automake/2012-12/msg00038.html

https://bugzilla.gnome.org/show_bug.cgi?id=690881
2013-03-10 08:27:58 +01:00
Tim-Philipp Müller
dba8921842 gst-uninstalled: gst-openmax -> gst-omx 2013-03-04 15:47:03 +00:00
Nate Bogdanowicz
f4bf6ee5ce 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
2013-02-05 14:28:09 +01:00
Thibault Saunier
7c4c552acf Automatic update of common submodule
From 3baf58a to 9bca01f
2013-01-24 10:54:57 -03:00
Sebastian Dröge
935db833e2 element: Hide the struct padding as zero-sized arrays cause some compilers to complain 2012-12-20 12:40:47 +01:00
Tim-Philipp Müller
401f9b3de7 value: avoid duplicates when intersecting lists
Fixes negotiation taking a ridiculous amount of
time (multiple 10s of seconds on a core2) when
there are duplicate entries in lists.

Could have a negative performance impact on other
scenarios because we now have to iterate the
dest list to avoid duplicates, but we don't
have a lot of lists any more these days, and
they tend to be small anyway. The negatives
are hopefully countered by the positive effects
of reducing the list length early on in the
process. And in any case, it's the right thing
to do.

Based on patch by Andre Moreira Magalhaes.

https://bugzilla.gnome.org/show_bug.cgi?id=684981
2012-12-11 10:52:43 +00:00
Wim Taymans
8914ccad3f plugin: protect against NULL filename in debug
See https://bugzilla.gnome.org/show_bug.cgi?id=689948
2012-12-10 11:56:05 +01:00
Luis de Bethencourt
be4120db9e add gst-editing-services to PKG_CONFIG_PATH 2012-11-27 12:57:43 -05:00
Olivier Crête
eb83421048 Document GST_DEBUG_FILE 2012-11-06 18:31:54 +01:00
Sebastian Dröge
4f311b16e7 info: Don't use GST_DEBUG() in gst_debug_add_log_function() and related functions unconditionally
If GStreamer was not initialized yet this will cause g_warnings().

Conflicts:
	gst/gstinfo.c
2012-10-22 10:27:41 +02:00
Sebastian Dröge
09743e0ac9 element: API: Add GstElement::post_message() vfunc 2012-10-16 12:31:50 +02:00
Tim-Philipp Müller
bbec3d4e2f queue2: fix possible data corruption in ring buffer mode when seeking
Fix race that could cause data corruption when seeking in ring buffer
mode.

In perform_seek_to_offset(), called from the demuxer's pull_range
request, we drop the lock, tell upstream (usually a http source)
to seek to a different offset, then re-acquire the lock before we
do things to the ranges. However, between us sending the seek event
and re-acquiring the lock, the source thread might already have pushed
some data and moved along the range's writing_pos beyond the seek
offset. In that case we don't want to set the writing position back
to the requested seek position, as it would cause data to be written
to the wrong offset in the file or ring buffer.

Reproducible doing seek-emulated fast-forward/backward on 006653.
2012-09-12 12:31:04 +01:00
Tim-Philipp Müller
42b3e5565d tests: fix buffer leak in queue2 unit test 2012-09-12 12:28:06 +01:00
Stefan Sauer
30d11e413a preset: implement child_proxy support
Elements such as the GstIirEqualizerNBands would so far not store the properties
of their children. Now we also grab the properties of child elements and try to
restore them.
2012-08-17 15:01:41 +02:00
Sebastian Rasmussen
955693fc36 gststructure: Set lcopy string const exactly as glib's macro
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679534
2012-07-21 20:26:57 +05:30
Thijs Vermeir
91e6767c59 dataprotocol: also copy the MEDIA flags 2012-07-17 17:46:47 +02:00
Wim Taymans
cce71223d7 pad: don't call pad block callbacks multiple times
Ensure that when multiple threads try to block a pad, only one of the threads
calls the callback. We do this by checking if the callback was already called.
The previous version unconditionally called the callback and then checked if it
was already called...
Also only call the unblock callback once from the first thread that unblocks.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679950
2012-07-16 15:25:46 +02:00
Tim-Philipp Müller
9813876825 toc: remove TOC API again from 0.10
This has undergone significant changes in implementation and
design in 0.11, and we're just not going to backport this to
0.10, so let's just remove it again and continue to fix this
up in master/1.0.
2012-07-12 23:43:16 +01:00
Wim Taymans
68860526e9 basesink: handle step end correctly
when we have a new step event with a -1 amount, make sure that we follow the
regular code path so that the stop_end handler is called as usual. This takes
care of flushing the buffer in case of a flushing step and also posts a step end
message.

See https://bugzilla.gnome.org/show_bug.cgi?id=679378
2012-07-12 16:14:58 +02:00
Tim-Philipp Müller
7932f62891 docs: expand a bit more on GST_DEBUG docs 2012-06-28 14:47:22 +01:00
Javier Jardón
805674eed1 docs/gst/running.xml: Add info about the GST_TRACE environment variable
https://bugzilla.gnome.org/show_bug.cgi?id=679008
2012-06-28 14:34:03 +01:00
Javier Jardón
b348f1daad docs/gst/running.xml: GStreamer supports more debuggins levels
https://bugzilla.gnome.org/show_bug.cgi?id=679008
2012-06-28 14:34:00 +01:00
Idar Tollefsen
e6d6cbf5e3 build: Make sure AC_INCLUDES_DEFAULT is used
Without using AC_INCLUDES_DEFAULT explicitly,
certain platforms will complain that the header
was found, but not usable by the compiler.
This happens for instance on Solaris where certain
headers are needed to pull in proper defines.

Also upgrade to newer autoconf syntax and use proper quoting.

https://bugzilla.gnome.org/show_bug.cgi?id=667293
2012-06-27 21:18:24 +01:00
Lionel Landwerlin
c3ec487098 configure: add --disable-tools and --disable-benchmarks options
Add option to avoid build binaries. When building for platforms like
android, you might want to not link any "final" binary, mostly because
it requires special link flags or other parts of code that aren't
in the C library.

https://bugzilla.gnome.org/show_bug.cgi?id=677621
2012-06-26 23:17:54 +01:00
Wim Taymans
36c61df297 bin: always recurse into bins when doing state changes
Never skip the state change of a bin because it needs to update the base time of
its children when needed.
2012-06-25 12:20:54 -03:00
Thiago Santos
a396ba2bde inputselector: avoid notify-tags holding lock
unlock before issuing this notification to prevent
deadlocks when other elements reacts to new tags.

Fixes #678220
2012-06-21 10:24:46 -03:00
Thiago Santos
dd38990717 gst-uninstalled: add gst-p-bad gst-libs to the path
Makes videoparsers and camerabins from bad usable from an uninstalled
environment at osx
2012-06-21 10:24:29 -03:00
Tim-Philipp Müller
fe83d4aa6a tools: remove pointless get_state() in gst-launch
State changes to NULL state are always sync.
2012-06-20 12:53:04 +01:00
Fabrizio Gennari
377d2363ce win32: update Visual Studio 2005 build files
https://bugzilla.gnome.org/show_bug.cgi?id=672492
2012-06-18 23:33:59 +01:00
David Svensson Fors
70a95ff5c7 gstfunnel: avoid access of freed pad
Save the value of the pad's got_eos in gst_funnel_release_pad,
before calling gst_element_remove_pad. This is because
gst_element_remove_pad may free the pad.

https://bugzilla.gnome.org/show_bug.cgi?id=678017
2012-06-14 14:09:57 +01:00
Vincent Penquerc'h
321af1ccb8 element: fix pad transfer annotation from none to full
since the pad will be unreffed.
2012-06-14 14:05:15 +01:00
Stefan Sauer
11c8ffb6fb childproxy: add a few more comments 2012-06-12 11:07:13 +02:00
Stefan Sauer
b3132da8c8 childproxy: no need to do expensive casts here 2012-06-11 21:17:24 +02:00
Edward Hervey
a1a1b144fb gstutils: Faster read macros
On platforms that can do unaligned read/write, we can read/write much faster
by just casting.

https://bugzilla.gnome.org/show_bug.cgi?id=599546
2012-06-08 14:15:51 +02:00
Edward Hervey
d58b0c4192 Update common submodule 2012-06-08 14:15:51 +02:00
Sebastian Dröge
36b8bee85e ghostpad: Add a fixed unit test for caps propagation and notify::caps events 2012-06-08 12:55:51 +02:00
Sebastian Dröge
d563379085 ghostpad: Don't change the ghostpad caps immediately when the peer caps change
This should only happen during data-flow.
2012-06-08 11:16:31 +02:00
Wim Taymans
6cdc416273 basesrc: release the object lock sooner
Release the object lock before we get the time of the clock because that code
might take other locks.
Fix potential clock refcount error because we released the object lock but
didn't ref the clock.
2012-06-07 15:33:47 +02:00
Edward Hervey
fa9f28ac12 check: Add a test for GST_READ_* macros 2012-06-07 14:02:59 +02:00
Edward Hervey
15385a681e Use the right common branch
Accidently used the master (and not 0.10) branch
2012-06-06 18:16:01 +02:00
Edward Hervey
d96ce2a6a7 registry: We name the registry after the target cpu
And not the host cpu
2012-06-06 18:11:50 +02:00
Edward Hervey
a68b0ded3e Switch to new master common for target cpu defines 2012-06-06 18:11:50 +02:00
Havard Graff
a4b9b79c96 Make sure that unlinked pads do not cause a return false on latency events.
Context: Latency configuration should not be
messed up because of not-linked pads. In general,
one return FALSE on latency distribution causes
the "overall" pipeline latency configuration to
fail. This shows up as noise in logs (warning).
2012-06-06 13:22:19 +02:00
Sebastian Dröge
9760c012f6 Revert "pad: Check via gst_pad_accept_caps() if a sinkpad accepts caps"
This reverts commit 7558fd21ee.

Many elements, like ac3parse, depend on the broken behaviour and
stop working after this change.
2012-06-05 08:33:28 +02:00
Sebastian Dröge
7558fd21ee pad: Check via gst_pad_accept_caps() if a sinkpad accepts caps
instead of just checking if the pad template caps would allow the caps.

The actually supported caps can be far more restrictive than the
template caps and only checking for the template caps can cause
incompatible caps to be set on a pad.

Fixes bug #677335.
2012-06-04 09:31:07 +02:00