platform/upstream/gstreamer.git
8 years agoutils: check the correct element's state on ghosting pads
Matthew Waters [Mon, 4 Apr 2016 10:28:18 +0000 (10:28 +0000)]
utils: check the correct element's state on ghosting pads

Checking the current element's state when we're adding pads to
the parent element is checking the wrong thing.

Silences a 'attempting to add an inactive pad to a running element'
warning when adding a ghost pad to a running parent bin of the parent
bin of the element.

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

8 years agoutils: expose pad_link_maybe_ghosting
Matthew Waters [Fri, 25 Mar 2016 01:28:18 +0000 (01:28 +0000)]
utils: expose pad_link_maybe_ghosting

This is a useful function to automatically add ghost pads when linking
two elements across bin boundaries without know their exact parentage.

e.g. when using gst_parse_bin_from_description (with or without it ghosting pads),
one can simply retreive the src/sink pads from the bin to link to another pad.

Similar functionality is provided by gst_element_link_pads{_full}() however only
by pad name rather than by actual pads.

API: gst_pad_link_maybe_ghosting_full

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

8 years agodocs/design/part-states.txt: spelling fix
Reynaldo H. Verdejo Pinochet [Mon, 4 Apr 2016 06:35:46 +0000 (23:35 -0700)]
docs/design/part-states.txt: spelling fix

8 years agoGST_REFCOUNTING: Add logging of pointer address for dispose, finalize, etc messages
Mark Combellack [Fri, 15 May 2015 12:36:04 +0000 (13:36 +0100)]
GST_REFCOUNTING: Add logging of pointer address for dispose, finalize, etc messages

Updated the GST_REFCOUNTING logging so that it includes the pointer
address of the object that is being disposed or finalized.

With this change is is then possible to match up GST_REFCOUNTING log messages
for object allocation/disposal/finalization. This can help with diagnosing
"memory leaks" in applications that have not correctly disposed of all the
GStreamer objects it creates.

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

8 years agoinfo: only open log file when adding it to the log function
Luis de Bethencourt [Thu, 31 Mar 2016 10:46:03 +0000 (11:46 +0100)]
info: only open log file when adding it to the log function

This avoids the leak of opening it and then not passing it or closing it
before it goes out of scope.

8 years agoclock: Return FALSE in all paths that don't set out parameters in gst_clock_add_obser...
Sebastian Dröge [Fri, 1 Apr 2016 19:41:51 +0000 (22:41 +0300)]
clock: Return FALSE in all paths that don't set out parameters in gst_clock_add_observation_unapplied()

It returned TRUE when regression failed, while not setting any of the out
parameters. This caused uninitialized data from the stack to be used for
setting the clock calibration.

8 years agopad: rework probe's hook_marshall function
Thiago Santos [Thu, 24 Mar 2016 20:34:20 +0000 (17:34 -0300)]
pad: rework probe's hook_marshall function

PUSH and PULL mode have opposite scenarios for IDLE and BLOCK
probes.

For PUSH it will BLOCK with some data type and IDLE won't have a type.
For PULL it will BLOCK before getting some data and will be IDLE when
some data is obtained.

The check in hook_marshall was specific for PUSH mode and would cause
PULL probes to fail to be called. Adding different checks for the mode
to fix this issue.

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

8 years agotests: pad: extra tests for pad pull probes
Thiago Santos [Thu, 24 Mar 2016 20:34:40 +0000 (17:34 -0300)]
tests: pad: extra tests for pad pull probes

For BUFFER and IDLE probes

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

8 years agopad: Add test for blocking pull probe
Matej Knopp [Thu, 28 Jan 2016 15:22:17 +0000 (16:22 +0100)]
pad: Add test for blocking pull probe

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

8 years agopad: consider PROBE_TYPE_EVENT_FLUSH when using PROBE_TYPE_ALL_BOTH
Thiago Santos [Thu, 24 Mar 2016 15:13:39 +0000 (12:13 -0300)]
pad: consider PROBE_TYPE_EVENT_FLUSH when using PROBE_TYPE_ALL_BOTH

When GST_PAD_PROBE_EVENT_FLUSH is used, the probes already have
a data type and it is not needed to automatically add the default
types.

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

8 years agogstpad tests: Add a test for flush event only probes
Linus Svensson [Fri, 19 Feb 2016 15:18:12 +0000 (16:18 +0100)]
gstpad tests: Add a test for flush event only probes

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

8 years agodebugutils: fix enum/flag properties printing for elements
Tim-Philipp Müller [Sat, 26 Mar 2016 17:21:51 +0000 (17:21 +0000)]
debugutils: fix enum/flag properties printing for elements

We want to use the flag/enum nicks here, not only because they
are shorter but also because in case of element-specific enums
and flags we abuse the enum/flag name field for the description,
and we don't want that printed in the dot file.

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

8 years agoalloctrace: print size and allocator details for buffers and memories
Tim-Philipp Müller [Wed, 23 Mar 2016 10:31:46 +0000 (10:31 +0000)]
alloctrace: print size and allocator details for buffers and memories

8 years agoinfo: make it possible to remove default log handler before gst_init()
Tim-Philipp Müller [Mon, 29 Feb 2016 19:04:16 +0000 (19:04 +0000)]
info: make it possible to remove default log handler before gst_init()

Make sure it's not even added then, so that we never output
anything via the default log handler then.

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

8 years agominiobject, memory, uri: warn on unused return value of some funcs
Tim-Philipp Müller [Sat, 5 Mar 2016 14:27:35 +0000 (14:27 +0000)]
miniobject, memory, uri: warn on unused return value of some funcs

Make compiler issue a warning for common beginner mistakes such as:

  ...
  gst_buffer_make_writable (buf);
  gst_buffer_map (buf, &map, GST_MAP_WRITE);
  ...

and similar. Only do this for some functions for now.

8 years ago.gitignore new netclock-replay testing tool binary
Tim-Philipp Müller [Sat, 26 Mar 2016 11:17:02 +0000 (11:17 +0000)]
.gitignore new netclock-replay testing tool binary

8 years agoregistry: allow plugin and feature filter funcs to call registry API
Tim-Philipp Müller [Sat, 17 Oct 2015 17:01:47 +0000 (18:01 +0100)]
registry: allow plugin and feature filter funcs to call registry API

Don't keep the registry locked whilst iterating over the plugins
or features with a filter function. This would deadlock if the
callback tried to access the registry from the function. Instead,
make a copy of the feature/plugin list and then filter it without
holding the registry lock. This is still considerably faster than
the alternative which would be to use a GstIterator.

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

8 years agoconfigure: Remove unneeded parenthesis from AG_GST_CHECK_CHECKS
Sebastian Dröge [Fri, 25 Mar 2016 10:59:57 +0000 (12:59 +0200)]
configure: Remove unneeded parenthesis from AG_GST_CHECK_CHECKS

8 years agovalve: Fix unit test by sending caps before buffers
Sebastian Dröge [Fri, 25 Mar 2016 10:05:41 +0000 (12:05 +0200)]
valve: Fix unit test by sending caps before buffers

Unexpected critical/warning: gstpad.c:4400:gst_pad_push_data:<'':src> Got data flow before segment event

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

8 years agonetclock: Link the replay example to GIO
Sebastian Dröge [Fri, 25 Mar 2016 08:23:46 +0000 (10:23 +0200)]
netclock: Link the replay example to GIO

8 years agotests: Add some code to replay and analyse netclientclock
Arun Raghavan [Thu, 3 Mar 2016 16:15:54 +0000 (21:45 +0530)]
tests: Add some code to replay and analyse netclientclock

This takes readings in the form of ...

<local_1> <remote_1> <remote_2> <local_2>

... with one observation per line, and then replays it using the
netclientclock code.

The output is the statistics structure emitted by the netclientclock,
which can then be analysed and tuned once we get those readings for
potential edge-cases.

It should be possible to find some inputs with "bad" data and convert
this into a unit test for future tweaks to run against.

8 years agonetclientclock: Always dump clock observations in logs
Arun Raghavan [Thu, 3 Mar 2016 16:14:35 +0000 (21:44 +0530)]
netclientclock: Always dump clock observations in logs

This makes it possible to examine what values we get in logs, and
potentially tune our filtering/extrapolation in various scenarios.

8 years agovalve: don't send sticky events as a direct response to upstream events
Havard Graff [Wed, 16 Mar 2016 14:13:39 +0000 (15:13 +0100)]
valve: don't send sticky events as a direct response to upstream events

Also refactor the existing valve test to actually test the valve,
and not just test the EOS mechanism of a pad.

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

8 years agoparse-launch: Add flag for placing elements in a bin instead of a pipeline
Carlos Rafael Giani [Fri, 11 Mar 2016 08:23:04 +0000 (09:23 +0100)]
parse-launch: Add flag for placing elements in a bin instead of a pipeline

By default, gst_parse_launch_full() creates a GstPipeline if there's more
than one toplevel element. Add a flag to let it use a GstBin instead.

Also fix the parser to let it use this flag for GST_TYPE_ELEMENT property
values, to avoid having GstPipelines inside other GstPipelines.

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

8 years agocapsfilter: optimisation: avoid unnecessary gst_pad_has_current_caps() checks
Tim-Philipp Müller [Tue, 8 Mar 2016 19:08:16 +0000 (19:08 +0000)]
capsfilter: optimisation: avoid unnecessary gst_pad_has_current_caps() checks

No need to do this for every input buffer, since it involves
locking and iterating of the sticky events array and such.

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

8 years agogstreamer: use new gst_element_class_add_static_pad_template()
Vineeth TM [Thu, 3 Mar 2016 05:15:00 +0000 (14:15 +0900)]
gstreamer: use new gst_element_class_add_static_pad_template()

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

8 years agoqueue: Use full running time for level calculation
Edward Hervey [Wed, 2 Mar 2016 16:47:33 +0000 (17:47 +0100)]
queue: Use full running time for level calculation

Ensures we have proper time level estimation for the cases where
the incoming buffers have PTS/DTS outside of the segment start/stop
values.

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

8 years agopad: Fix race between gst_element_remove_pad and state change
Stian Selnes [Wed, 27 Jan 2016 10:46:06 +0000 (11:46 +0100)]
pad: Fix race between gst_element_remove_pad and state change

When going from READY to NULL all element pads are deactivated. If
simultaneously the pad is being removed from the element with
gst_element_remove_pad() and the pad is unparented, there is a race
where the deactivation will assert (g_critical) if the parent is lost at
the wrong time.

The proposed fix will check parent only once and retain it to avoid the
race.

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

8 years agocollectpads: Assume PTS is equal DTS if PTS is missing
Nicolas Dufresne [Thu, 3 Mar 2016 02:11:51 +0000 (21:11 -0500)]
collectpads: Assume PTS is equal DTS if PTS is missing

This is the best guess we can make if such a buffer reached the collect
pad. This is uncommon, we do expect parsers to have tried and fixed that
if possible (or needed).

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

8 years agoBack to development
Sebastian Dröge [Thu, 24 Mar 2016 11:32:41 +0000 (13:32 +0200)]
Back to development

8 years agotypefind: Remove redundant assignment
Sebastian Dröge [Thu, 24 Mar 2016 09:49:44 +0000 (11:49 +0200)]
typefind: Remove redundant assignment

CID 1357158

8 years agoRelease 1.8.0
Sebastian Dröge [Thu, 24 Mar 2016 09:49:08 +0000 (11:49 +0200)]
Release 1.8.0

8 years agoUpdate .po files
Sebastian Dröge [Thu, 24 Mar 2016 09:35:26 +0000 (11:35 +0200)]
Update .po files

8 years agolibcompat.h: strsignal() should be not be decleared const
Anthony G. Basile [Sun, 13 Mar 2016 15:05:29 +0000 (11:05 -0400)]
libcompat.h: strsignal() should be not be decleared const

POSIX standards requires strsignal() to return a pointer to a char,
not a const pointer to a char. [1]  On uClibc, and possibly other
libc's, that do not HAVE_DECL_STRSIGNAL, libcompat.h declares
const char *strsignal (int sig) which causes a type error.

[1] man 3 strsignal

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

8 years agopreset: Use GST_PRESET_PATH as an extension of the system path, not a replacement...
Sebastian Dröge [Tue, 22 Mar 2016 17:04:59 +0000 (19:04 +0200)]
preset: Use GST_PRESET_PATH as an extension of the system path, not a replacement of the user path

First load all system presets, then all from the environment variable, then
from the app directory, then from the user directory. Any one in the chain
with the highest version completely replaces all previous ones, later ones
with lower versions are merged in without replacing existing presets.

This is basically the same behaviour as before, just that GST_PRESET_PATH is
inserted as another source of directories between the system and app presets.

It was added in ca08af1f17d2ce36b83998a0ba3a7b8bcafd7872, but was
accidentially overriding the user preset path there. Which caused inconsistent
behaviour as new presets were still stored in the system path, just not loaded
from there. Meaning you could store a new preset (in the user path), just for
GstPreset to not find it anymore later (because it only looked in the
GST_PRESET_PATH instead of the user path).

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

8 years agoutils: add 'transfer full' annotation to gst_pad_peer_query_caps
Aurélien Zanelli [Sat, 19 Mar 2016 11:55:09 +0000 (12:55 +0100)]
utils: add 'transfer full' annotation to gst_pad_peer_query_caps

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

8 years agopad: add 'transfer full' and 'nullable' annotations to gst_pad_get_current_caps
Aurélien Zanelli [Sat, 19 Mar 2016 11:39:18 +0000 (12:39 +0100)]
pad: add 'transfer full' and 'nullable' annotations to gst_pad_get_current_caps

and also change the description accordingly since function returns an
incremented caps object or NULL if there is no caps set.

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

8 years agoutils: fix gir annotation for gst_element_query_convert()
Ben Iofel [Fri, 18 Mar 2016 20:02:43 +0000 (16:02 -0400)]
utils: fix gir annotation for gst_element_query_convert()

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

8 years agotests: Check multiqueue not-linked EOS handling
Jan Schmidt [Wed, 16 Mar 2016 14:42:55 +0000 (01:42 +1100)]
tests: Check multiqueue not-linked EOS handling

Add a test which checks that not-linked pads continue
to output data after linked pads have gone EOS

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

8 years agomultiqueue: Fix not-linked pad handling at EOS
Jan Schmidt [Thu, 17 Mar 2016 16:08:39 +0000 (03:08 +1100)]
multiqueue: Fix not-linked pad handling at EOS

Ensure that not-linked pads will drain out at EOS by
correctly detecting the EOS condition based on the EOS
pad flag (which indicates we actually pushed an EOS),
and make sure that not-linked pads are woken when doing
EOS processing on linked pads.

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

8 years agotypefind: Allow caps query in "have-type" signal handlers
Romain Picard [Tue, 15 Mar 2016 15:37:33 +0000 (16:37 +0100)]
typefind: Allow caps query in "have-type" signal handlers

If an application calls gst_pad_query_caps from its "have-type" signal handler,
then the query fails because typefind->caps has not been set yet.

This patch sets typefind->caps in the object method handler, before the signal
handlers are called.

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

8 years agoRelease 1.7.91
Sebastian Dröge [Tue, 15 Mar 2016 09:56:10 +0000 (11:56 +0200)]
Release 1.7.91

8 years agoUpdate .po files
Sebastian Dröge [Tue, 15 Mar 2016 09:44:03 +0000 (11:44 +0200)]
Update .po files

8 years agopo: Update translations
Sebastian Dröge [Tue, 15 Mar 2016 09:39:42 +0000 (11:39 +0200)]
po: Update translations

8 years agotypefind: Store caps on the pad before emitting have-type but send it downstream...
Sebastian Dröge [Fri, 11 Mar 2016 12:17:13 +0000 (14:17 +0200)]
typefind: Store caps on the pad before emitting have-type but send it downstream only in the default signal handler

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

8 years agobaseparse: Recheck after pre_push_frame() if there are tags pending
Sebastian Dröge [Sun, 13 Mar 2016 08:33:53 +0000 (10:33 +0200)]
baseparse: Recheck after pre_push_frame() if there are tags pending

Many parsers are storing tags only in pre_push_frame(), if we wouldn't check
afterwards we would push buffers before those tags and a lot of code assumes that
tags are available before preroll.

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

8 years agoconcat: Fix comment typo
Carlos Rafael Giani [Mon, 14 Mar 2016 10:15:07 +0000 (11:15 +0100)]
concat: Fix comment typo

8 years agoRevert "typefind: Store caps on the pad before emitting have-type but send it downstr...
Sebastian Dröge [Sat, 12 Mar 2016 10:56:28 +0000 (12:56 +0200)]
Revert "typefind: Store caps on the pad before emitting have-type but send it downstream only in the default signal handler"

This reverts commit 0835c3d6569dde0ec9e5524436367c7678cc4a4a.

It causes deadlocks in decodebin, which currently would deadlock if the caps
are already on the pad in have-type and are forwarded while copying the sticky
events (while holding the decodebin lock)... as that might cause the next
element to expose pads, which then calls back into decodebin and takes the
decodebin lock.

This needs some more thoughts.

8 years agotypefind: Store caps on the pad before emitting have-type but send it downstream...
Sebastian Dröge [Fri, 11 Mar 2016 12:17:13 +0000 (14:17 +0200)]
typefind: Store caps on the pad before emitting have-type but send it downstream only in the default signal handler

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

8 years agodocs: Flesh out element and object macro accessor docs a bit
Carlos Rafael Giani [Thu, 10 Mar 2016 09:35:40 +0000 (10:35 +0100)]
docs: Flesh out element and object macro accessor docs a bit

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

8 years agonetclientclock: Remove some obsolete code that can cause warnings
Sebastian Dröge [Wed, 9 Mar 2016 14:06:58 +0000 (16:06 +0200)]
netclientclock: Remove some obsolete code that can cause warnings

8 years agonetclientclock: Don't reset calibration of internal clock whenever a new netclient...
Sebastian Dröge [Wed, 9 Mar 2016 11:44:24 +0000 (13:44 +0200)]
netclientclock: Don't reset calibration of internal clock whenever a new netclient clock is created

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

8 years agogstbuffer: fix GstParentBufferMeta GType name
Víctor Manuel Jáquez Leal [Fri, 4 Mar 2016 17:23:18 +0000 (18:23 +0100)]
gstbuffer: fix GstParentBufferMeta GType name

The alias define GST_TYPE_PARENT_BUFFER_META_API_TYPE is wrong and
breaks the usage of gst_buffer_get_parent_buffer_meta().

This patch fixes the GType alias and make another alias to keep the API
compatibility guarded by GST_DISABLE_DEPRECATED.

Also added a unit test.

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

8 years agotracerrecord: Remove useless NULL check and add assertion for making assumptions...
Sebastian Dröge [Wed, 2 Mar 2016 08:37:09 +0000 (10:37 +0200)]
tracerrecord: Remove useless NULL check and add assertion for making assumptions explicit

gst_structure_new_empty() is not returning NULL in any valid scenarios,
checking for NULL here is useless. Especially because we would dereference any
NULL right after the NULL check again.
CID 1352037.

We previously check if the string ends on .class, as such strrchr() should
return something non-NULL. Add an assertion for that.
CID 1349642.

8 years agoelement: minor docs fix
Tim-Philipp Müller [Tue, 1 Mar 2016 19:50:26 +0000 (19:50 +0000)]
element: minor docs fix

Make gtk-doc happy.

8 years agoRelease 1.7.90
Sebastian Dröge [Tue, 1 Mar 2016 16:14:03 +0000 (18:14 +0200)]
Release 1.7.90

8 years agopo: Update translations
Sebastian Dröge [Tue, 1 Mar 2016 14:52:41 +0000 (16:52 +0200)]
po: Update translations

8 years agoRevert "bus: change GstBusSource to hold a weak ref to GstBus"
Sebastian Dröge [Mon, 29 Feb 2016 21:33:03 +0000 (23:33 +0200)]
Revert "bus: change GstBusSource to hold a weak ref to GstBus"

This reverts commit 894c67e642c0f858b5b18097fa7c995bf3cc50c1.

8 years agoRevert "bus: Make sure to remove the GPollFD from the GSources when destroying the...
Sebastian Dröge [Mon, 29 Feb 2016 21:32:58 +0000 (23:32 +0200)]
Revert "bus: Make sure to remove the GPollFD from the GSources when destroying the bus"

This reverts commit 05700a7082c145057ccc0be763067bcc263239eb.

8 years agoelement: Remove GST_STATE_LOCK_FULL() / UNLOCK_FULL()
Sebastian Dröge [Mon, 29 Feb 2016 15:06:36 +0000 (17:06 +0200)]
element: Remove GST_STATE_LOCK_FULL() / UNLOCK_FULL()

There is no corresponding API for that in GLib and nobody could've ever used
these macros without compiler errors anyway.

8 years agobus: Make sure to remove the GPollFD from the GSources when destroying the bus
Sebastian Dröge [Mon, 29 Feb 2016 08:01:50 +0000 (10:01 +0200)]
bus: Make sure to remove the GPollFD from the GSources when destroying the bus

Otherwise the GSource can look into our already destroyed bus where the
GPollFD is stored.

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

8 years agotests: ghostpad: Fix memory leaks
Vineeth TM [Mon, 29 Feb 2016 02:06:50 +0000 (11:06 +0900)]
tests: ghostpad: Fix memory leaks

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

8 years agotaglist: add guard to check writability when removing tags from a taglist
Tim-Philipp Müller [Sun, 28 Feb 2016 13:59:48 +0000 (13:59 +0000)]
taglist: add guard to check writability when removing tags from a taglist

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

8 years agoelements: use new gst_element_class_add_static_pad_template()
Tim-Philipp Müller [Sat, 27 Feb 2016 15:36:28 +0000 (15:36 +0000)]
elements: use new gst_element_class_add_static_pad_template()

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

8 years agoelement: add gst_element_class_add_static_pad_template()
Tim-Philipp Müller [Sat, 27 Feb 2016 15:28:49 +0000 (15:28 +0000)]
element: add gst_element_class_add_static_pad_template()

Pretty much every single element does

  gst_element_class_add_pad_template (element_class,
      gst_static_pad_template_get (&some_templ));

which is both confusing and unnecessary. We might just
as well add a function to do that in one step.

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

8 years agotypefind: fix indentation
Tim-Philipp Müller [Sat, 27 Feb 2016 15:32:19 +0000 (15:32 +0000)]
typefind: fix indentation

8 years agoAutomatic update of common submodule
Sebastian Dröge [Fri, 26 Feb 2016 10:40:55 +0000 (12:40 +0200)]
Automatic update of common submodule

From b64f03f to 6f2d209

8 years agobus: Prevent gst_bus_add_watch_full_unlocked from a segfault if priv->poll == NULL
James Stevenson [Thu, 25 Feb 2016 22:36:14 +0000 (22:36 +0000)]
bus: Prevent gst_bus_add_watch_full_unlocked from a segfault if priv->poll == NULL

This happens if the process runs out of file descriptors. Better print
a critical warning instead of just crashing.

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

8 years agobus: change GstBusSource to hold a weak ref to GstBus
Thiago Santos [Wed, 24 Feb 2016 13:56:24 +0000 (10:56 -0300)]
bus: change GstBusSource to hold a weak ref to GstBus

When holding a regular ref it will cause the GstBus to never
reach 0 references and it won't be destroyed unless the application
explicitly calls gst_bus_remove_signal_watch().

Switching to weakref will allow the GstBus to be destroyed.
The application is still responsible for destroying the
GSource.

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

8 years agoidentity: Add a " " after pts: in the silent=false output
Sebastian Dröge [Thu, 25 Feb 2016 12:11:34 +0000 (14:11 +0200)]
identity: Add a " " after pts: in the silent=false output

8 years agomanual: Fix examples to check for gst_buffer_map return values
Edward Hervey [Wed, 16 Apr 2014 09:42:18 +0000 (11:42 +0200)]
manual: Fix examples to check for gst_buffer_map return values

Otherwise people reading the manual will expect it to always
succeed :)

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

8 years agogstcheck: Check return value of gst_buffer_map
Edward Hervey [Wed, 16 Apr 2014 09:40:46 +0000 (11:40 +0200)]
gstcheck: Check return value of gst_buffer_map

We can't check contents if we don't have access to it

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

8 years agoplugins: Check return values of gst_buffer_map()
Edward Hervey [Wed, 16 Apr 2014 09:39:15 +0000 (11:39 +0200)]
plugins: Check return values of gst_buffer_map()

They can fail for various reasons.

For non-fatal cases (such as the dump feature of identiy and fakesink),
we just silently skip it.

For other cases post an error message.

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

8 years agobuffer: Check return value of gst_memory_map()
Edward Hervey [Tue, 23 Feb 2016 16:23:43 +0000 (17:23 +0100)]
buffer: Check return value of gst_memory_map()

Only do memory operations if the memory was succesfully map'ed

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

8 years agotaglist: add GST_TAG_CONDUCTOR
Adam Miartus [Thu, 10 Dec 2015 14:32:27 +0000 (15:32 +0100)]
taglist: add GST_TAG_CONDUCTOR

This is useful for metadata which explicitely distinguishes
between artist/composer and conductor.

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

8 years agoevent: add some more documentation on stream-id
Mark Nauwelaerts [Mon, 22 Feb 2016 13:09:56 +0000 (14:09 +0100)]
event: add some more documentation on stream-id

... where it might end up being used for.

8 years agotracer: Initialize GstTracer _priv_tracers and quarks unconditionnally
Thibault Saunier [Fri, 22 Jan 2016 10:25:30 +0000 (11:25 +0100)]
tracer: Initialize GstTracer _priv_tracers and quarks unconditionnally

Some people might use tracer hooks even if GST_TRACER_PLUGINS is not
set.

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

8 years agodocs: manual: remove dead link from integration page
Tim-Philipp Müller [Sat, 20 Feb 2016 10:18:06 +0000 (10:18 +0000)]
docs: manual: remove dead link from integration page

8 years agodocs: manual: fix formatting
Tim-Philipp Müller [Sat, 20 Feb 2016 10:13:38 +0000 (10:13 +0000)]
docs: manual: fix formatting

advanced-dataaccess.xml:1210: element listitem: validity error : Element
listitem content does not follow the DTD, expecting (...),
got (para CDATA para )
      </listitem>

8 years agoscripts: check for git in create-uninstalled-setup.sh as well
Tim-Philipp Müller [Sat, 20 Feb 2016 00:55:30 +0000 (00:55 +0000)]
scripts: check for git in create-uninstalled-setup.sh as well

8 years agoWhenever we include windows.h, also define WIN32_LEAN_AND_MEAN
Nirbheek Chauhan [Fri, 19 Feb 2016 14:56:26 +0000 (20:26 +0530)]
Whenever we include windows.h, also define WIN32_LEAN_AND_MEAN

This reduces the number of symbols and code pulled in drastically

8 years agoprintf: On MSVC, also define HAVE_STDINT_H_WITH_UINTMAX
Nirbheek Chauhan [Sat, 13 Feb 2016 01:23:24 +0000 (06:53 +0530)]
printf: On MSVC, also define HAVE_STDINT_H_WITH_UINTMAX

MSVC provides stdint.h but not inttypes.h, and we need to include stdint.h to
get intmax_t

8 years agoptpclock: Only include unistd.h if found
Nirbheek Chauhan [Sat, 13 Feb 2016 01:12:06 +0000 (06:42 +0530)]
ptpclock: Only include unistd.h if found

unistd.h is not provided by the  Microsoft Visual C++ compiler. It instead
provides the necessary defines through io.h

8 years agoplugin: Only check for S_IFBLK if it is defined
Nirbheek Chauhan [Sat, 13 Feb 2016 00:49:52 +0000 (06:19 +0530)]
plugin: Only check for S_IFBLK if it is defined

Windows does not define S_IFBLK since it doesn't have block devices

8 years agowin32: update README and remove outdated build cruft
Tim-Philipp Müller [Fri, 19 Feb 2016 20:17:02 +0000 (20:17 +0000)]
win32: update README and remove outdated build cruft

This hasn't been touched for generations, doesn't work,
and is just causing confusion. We also don't want to
maintain these files manually.

8 years agomanual: Explain what happens if upstream elements are removed from the pipeline witho...
George Yunaev [Fri, 19 Feb 2016 08:43:00 +0000 (08:43 +0000)]
manual: Explain what happens if upstream elements are removed from the pipeline without draining them first

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

8 years agotests: fix indentation
Tim-Philipp Müller [Fri, 19 Feb 2016 14:41:55 +0000 (14:41 +0000)]
tests: fix indentation

8 years agoBack to development
Sebastian Dröge [Fri, 19 Feb 2016 10:38:21 +0000 (12:38 +0200)]
Back to development

8 years agoRelease 1.7.2
Sebastian Dröge [Fri, 19 Feb 2016 09:47:52 +0000 (11:47 +0200)]
Release 1.7.2

8 years agopo: Update translations
Sebastian Dröge [Fri, 19 Feb 2016 08:29:40 +0000 (10:29 +0200)]
po: Update translations

8 years agouninstalled.pc: add support for non libtool build systems
Julien Isorce [Thu, 18 Feb 2016 14:20:17 +0000 (14:20 +0000)]
uninstalled.pc: add support for non libtool build systems

Currently the .la path is provided which requires to use libtool as
mentioned in the GStreamer manual section-helloworld-compilerun.html.
It is fine as long as the application is built using libtool.

So currently it is not possible to compile a GStreamer application
within gst-uninstalled with CMake or other build system different
than autotools.

This patch allows to do the following in gst-uninstalled env:
gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0)
Previously it required to prepend libtool --mode=link

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

8 years agoRevert "pad: PULL probes are called without a buffer so don't require any of the...
Sebastian Dröge [Thu, 18 Feb 2016 09:43:22 +0000 (11:43 +0200)]
Revert "pad: PULL probes are called without a buffer so don't require any of the data flags to be set"

This reverts commit b89fa4786b3df6cb79f662c037dee74b3f7428d6.

The changes break various tests.

8 years agoRevert "pad: Add test for blocking pull probe"
Sebastian Dröge [Thu, 18 Feb 2016 09:43:04 +0000 (11:43 +0200)]
Revert "pad: Add test for blocking pull probe"

This reverts commit 17d30e944be0425ebb4fb6046f82d1f61701fe8f.

The PULL probe changes break various tests.

8 years agobuffer: Protect against failing to map input memory when merging memories
Sebastian Dröge [Thu, 18 Feb 2016 09:09:36 +0000 (11:09 +0200)]
buffer: Protect against failing to map input memory when merging memories

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

8 years agopad: Add test for blocking pull probe
Matej Knopp [Thu, 28 Jan 2016 15:22:17 +0000 (16:22 +0100)]
pad: Add test for blocking pull probe

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

8 years agopad: PULL probes are called without a buffer so don't require any of the data flags...
Sebastian Dröge [Wed, 17 Feb 2016 14:57:27 +0000 (16:57 +0200)]
pad: PULL probes are called without a buffer so don't require any of the data flags to be set

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

8 years agoRevert "element: Don't hold state lock all the time while sending an event"
Sebastian Dröge [Wed, 17 Feb 2016 14:41:02 +0000 (16:41 +0200)]
Revert "element: Don't hold state lock all the time while sending an event"

This reverts commit b427997119a2b6aacbeb550f729936f8b963e24b.

It breaks things that used to work before, even if the change by itself is
correct and the previous code is just working around deeper bugs in the async
state change code. Let's go back to what previously worked and then fix async
state changes in general.

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

8 years agoRevert "ghostpad: Do nothing in _internal_activate_push_default"
Edward Hervey [Wed, 17 Feb 2016 14:26:49 +0000 (15:26 +0100)]
Revert "ghostpad: Do nothing in _internal_activate_push_default"

That commit would break scheduling reconfiguration with ghostpads

This reverts commit ab55ad7eaad4fa2c0b16c789350e882cf70a27ed.

8 years agocheck: Add test for checking scheduling reconfiguration with ghostpads
Edward Hervey [Wed, 17 Feb 2016 14:25:08 +0000 (15:25 +0100)]
check: Add test for checking scheduling reconfiguration with ghostpads

Showcases the regression introduced by this commit:
Commit: ab55ad7eaad4fa2c0b16c789350e882cf70a27ed

Author: Stian Selnes <stian@pexip.com>
Date:   Wed Jan 27 13:20:23 2016 +0100

ghostpad: Do nothing in _internal_activate_push_default

8 years agoghostpad: add some tests for activation
Havard Graff [Wed, 17 Feb 2016 10:02:34 +0000 (11:02 +0100)]
ghostpad: add some tests for activation

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