Tim-Philipp Müller
d93ebba58b
meson: add option to disable tracer hooks
2017-07-05 13:27:48 +01:00
Tim-Philipp Müller
736efc2d9e
tests: memory: skip test that depends on debug system if it's disabled
2017-07-05 13:19:00 +01:00
Tim-Philipp Müller
d0c956adac
tracing: fix build with tracer hooks disabled
2017-07-05 13:17:49 +01:00
Tim-Philipp Müller
cce18426f7
miniobject: make refcount tracing and debug logging reliable
...
Tracing of the refcounts wasn't thread-safe, and log output of
the refcount values before/after wasn't reliable.
https://bugzilla.gnome.org/show_bug.cgi?id=784383
2017-07-05 13:15:22 +01:00
Tim-Philipp Müller
f29082bfe1
plugin: clarify code that deduces plugin name from file name
...
Make the final else branch explicit for clarity.
https://bugzilla.gnome.org/show_bug.cgi?id=783333
2017-07-05 11:15:43 +01:00
Stefan Sauer
c6bd520b8b
docs: add a missing const in bytereader docs
...
This syncs the prototype with gstbytereader.h
2017-06-29 21:08:01 +02:00
Nicolas Dufresne
dd5905c31a
basesrc: Removed unused private member qos_enabled
2017-06-29 10:51:33 -04:00
Nicolas Dufresne
2be51ba60c
basesrc: Don't reallocate buffers when flushing
...
Instead of using gst_buffer_pool_set_active() when flushing, use
gst_buffer_pool_set_flushing(), this avoids uneeded reallocation of the
buffers.
2017-06-29 10:51:33 -04:00
Nicolas Dufresne
523de1a9dc
basesrc: Don't hold LIVE_LOCK in create/alloc/fill
...
Holding this lock on live source prevents the source from changing
the caps in ::create() without risking a deadlock. This has consequences
as the LIVE_LOCK was replacing the STREAM_LOCK in many situation. As a
side effect:
- We no longer need to unlock when doing play/pause as the LIVE_LOCK
isn't held. We then let the create() call finish, but will block if
the state have changed meanwhile. This has the benefit that
wait_preroll() calls in subclass is no longer needed.
- We no longer need to change the state to unlock, simplifying the
set_flushing() interface
- We need different handling for EOS depending if we are in push or pull
mode.
This patch also document the locking of each private class member and
the locking order.
https://bugzilla.gnome.org/show_bug.cgi?id=783301
2017-06-29 10:51:33 -04:00
Nicolas Dufresne
946622ec3f
basesrc: Protect access to pool and allocator
...
This was only partly protected by the object lock. Always take the
object lock to access the currently configured pool and allocator.
https://bugzilla.gnome.org/show_bug.cgi?id=783301
2017-06-29 10:51:33 -04:00
Jimmy Ohn
a8acba142f
gst-inspect: Fix memory leak in print_pad_templates_info
...
gst_static_caps_get function returned allocated memory.
So, It should be free using gst_caps_unref.
https://bugzilla.gnome.org/show_bug.cgi?id=784311
2017-06-29 15:26:36 +01:00
Tim-Philipp Müller
a405aedde8
meson: check for ppoll() as well
2017-06-29 09:10:04 +01:00
Thibault Saunier
55ccfd4760
meson: Add configinc as include_directory in tools/
...
Otherwise when the glib is used as a subproject config.h is the glib
one, not ours.
2017-06-28 09:38:35 -04:00
Thibault Saunier
992c54b774
meson: Allow using glib as a subproject
2017-06-28 09:36:48 -04:00
Xabier Rodriguez Calvar
bda8440f1f
protection: add function to filter system ids
...
gst_protection_filter_systems_by_available_decryptors() takes an array
of strings and returns a new array of strings filtered by the available
decryptors for them so the ones you get are the ones that you should be
able to decrypt.
https://bugzilla.gnome.org/show_bug.cgi?id=770107
2017-06-28 10:52:11 +01:00
Tim-Philipp Müller
3683a0753a
meson: fix with-package-name option
...
https://bugzilla.gnome.org/show_bug.cgi?id=784082
2017-06-23 11:11:44 +01:00
Matej Knopp
c9c2902604
gstplugin: remove gst prefix when loading plugin on MSVC
...
When building with Meson and MSVC, our plugins don't have a 'libgst'
suffix and are just 'gstfoo.dll', so look for that too.
https://bugzilla.gnome.org/show_bug.cgi?id=783333
2017-06-23 14:40:48 +05:30
Nicolas Dufresne
632952be87
baseparse: sinkcaps can be NULL in default caps negotiation
...
This was causing harmless assertion about the unreffed caps not being of
type caps.
https://bugzilla.gnome.org/show_bug.cgi?id=784041
2017-06-22 16:00:45 -04:00
Thibault Saunier
ff38bfe0ee
win32: Update .def file
2017-06-20 11:13:18 -04:00
Thibault Saunier
3a1f2c22dc
utils: Add a function to get a string representation of GstStateChange
...
API:
gst_state_change_get_name
https://bugzilla.gnome.org/show_bug.cgi?id=783798
2017-06-20 09:33:31 -04:00
Thibault Saunier
54e16cc34e
element: Add missing values for "to same" state changes
...
And handle newly added GstStateChange values in GstPipeline
https://bugzilla.gnome.org/show_bug.cgi?id=783798
2017-06-20 09:33:25 -04:00
Heekyoung Seo
c30c39b5ad
utils: Fix leak in failed case of regression overflow checking
...
https://bugzilla.gnome.org/show_bug.cgi?id=783978
2017-06-20 10:55:49 +03:00
Heekyoung Seo
d32afe3f71
registrychunk: Fix leak in failed case of reading plugin dependency string
...
https://bugzilla.gnome.org/show_bug.cgi?id=783978
2017-06-20 10:55:49 +03:00
Sebastian Dröge
848dee060b
controller: Export boxed type copy/free functions for GstControlPoint
2017-06-20 10:00:16 +03:00
Sebastian Dröge
35b426ff19
base: Export boxed type copy/free functions for the remaining types
2017-06-20 09:57:01 +03:00
Andrejs Vasiljevs
d99c9d9944
ptp: Unref timeout GSource for delay requests
...
https://bugzilla.gnome.org/show_bug.cgi?id=783864
2017-06-16 17:57:35 +03:00
Tim-Philipp Müller
25bf82a187
meson: fix tests build with --werror
...
Need to pass -DGST_DISABLE_DEPRECATED to avoid warnings when
testing deprecated API such as gst_uri_construct().
Also remove #ifndef GST_DISABLE_DEPRECATED guard from header
file, we don't use those any more for functions, the
GST_DEPRECATED_FOR macro is enough.
2017-06-15 10:53:11 +01:00
Dimitrios Katsaros
688d79033f
gsturi: Fixed incorrect escaping of path as a generic string
...
The gst_uri_construct function was escaping the location string
as a generic uri string. This is incorrect since the slash('/')
characters are reserved for use in this exact case. The patch
changes the escape_string function mode to handle the path correctly.
I have deleted the escape_string function since it is no longer being
used and have created a unit test for the function. I have also
deprecated this function in favour of the GstUri API.
https://bugzilla.gnome.org/show_bug.cgi?id=783787
2017-06-15 11:39:00 +03:00
Thibault Saunier
d4032d9e0f
meson: Do not use path separator in test names
...
Avoiding warnings like:
WARNING: Target "elements/audioamplify" has a path separator in its name.
2017-06-07 11:42:28 -04:00
Sebastian Dröge
5f5caffa70
bin: Put correct annotations on gst_bin_add() too
2017-05-31 20:40:00 +03:00
Olivier Crête
67a496c0c2
basesrc: Hold object lock while updating latency
...
Otherwise in gst_base_src_query_latency(), it ended up
sometimes thinking it wasn't -1 when it was actually.
2017-05-23 00:51:49 +02:00
Sebastian Dröge
3a23b518d4
object: Add missing annotations to get_value_array() / get_value_g_array()
...
Same as already used in GstControlBinding.
2017-05-22 12:01:41 +03:00
Tim-Philipp Müller
8174c82a49
meson: actually remove config.h.meson as well
2017-05-21 18:14:01 +01:00
Sebastian Dröge
d4f2ae611b
protection: Fix annotations for gst_protection_select_system()
2017-05-21 19:17:15 +03:00
Olivier Crête
156ce96296
plugin: Stop plugin symbol name at first .
...
This is because the python plugin ends up named
libgstpython.cpython-35m-x86_64-linux-gnu.so so we need to stop
at the first dot.
https://bugzilla.gnome.org/show_bug.cgi?id=782924
2017-05-21 17:06:24 +02:00
Tim-Philipp Müller
f6b42d1f56
meson: don't need config.h.meson any more
...
Meson does the largefile support automatically nowadays, and
can generate a config.h from configuration_data() without a
template as input.
2017-05-21 14:31:56 +01:00
Tim-Philipp Müller
fe5111e71d
meson: make C++ compiler optional
...
It's only used to build tests to see if our headers are C++ clean.
2017-05-21 09:02:54 +01:00
Tim-Philipp Müller
ce439995c0
meson: check: generate .gir file
...
https://bugzilla.gnome.org/show_bug.cgi?id=782173
2017-05-20 17:58:21 +01:00
Sebastian Dröge
f322740ef9
parse: Make gst_parse_context_copy() public for bindings
2017-05-20 19:43:18 +03:00
Tim-Philipp Müller
9f05e66154
tools: dist new gst-stats man page
...
Fixes meson build from tarball.
2017-05-20 16:44:56 +01:00
Tim-Philipp Müller
a14a468fd0
Dist meson ptp helper install script
...
Fixes meson build from tarball.
2017-05-20 16:44:50 +01:00
Thibault Saunier
bd73551cc0
leaks: Handle subclasses in filters even for unhandled/lazy loaded types
...
Using typename in the set of unhandled types instead of the quark so
that we also handle subclasses as with other filters.
2017-05-20 15:42:16 +02:00
Matthew Waters
e3ab5e4df9
debugutils: add missing E character to the legend
...
The E character on pads indicates the presence of the EOS flag.
2017-05-19 19:22:27 +02:00
Matej Knopp
d59e26d37d
gst-plugin: allow '-' in plugin file name
...
'-' will be translated to underscore when determining symbol name
https://bugzilla.gnome.org/show_bug.cgi?id=782756
2017-05-17 20:55:18 -04:00
Christoph Reiter
9bf46a1065
gst: ref_sink() some more floating references returned by g_object_new()
...
https://bugzilla.gnome.org/show_bug.cgi?id=743062
2017-05-17 15:36:12 +03:00
Sebastian Dröge
f119e93b47
gst: Clear floating flag in constructor of all GstObject subclasses that are not owned by any parent
...
I.e. most of them unfortunately.
https://bugzilla.gnome.org/show_bug.cgi?id=743062
2017-05-17 10:40:37 +03:00
Sebastian Dröge
888fc33bc2
allocator: ref_sink() the global sysmem allocator after creation
...
It's not owned by the first one to ask for it, but by this very code.
https://bugzilla.gnome.org/show_bug.cgi?id=743062
2017-05-17 10:40:37 +03:00
Sebastian Dröge
daa98fc02a
gst: Don't ref_sink() GstObject subclasses in instance_init/constructor
...
This is something bindings can't handle and it causes leaks. Instead
move the ref_sink() to the explicit, new() constructors.
This means that abstract classes, and anything that can have subclasses,
will have to do ref_sink() in their new() function now. Specifically
this affects GstClock and GstControlSource.
https://bugzilla.gnome.org/show_bug.cgi?id=743062
2017-05-17 10:40:37 +03:00
Sebastian Dröge
30f871d274
gst: Correctly annotate functions taking floating reference parameters and returning floating references
...
https://bugzilla.gnome.org/show_bug.cgi?id=702960
2017-05-17 10:40:37 +03:00
Sebastian Dröge
2e4c82d850
gst: Handle floating references consistently
...
If a function takes a floating reference parameter, it should also be
sinked in error cases. Otherwise the function behaves differently
between error and normal cases, which is impossible for bindings to
handle.
https://bugzilla.gnome.org/show_bug.cgi?id=747990
2017-05-17 10:40:37 +03:00