Commit graph

14584 commits

Author SHA1 Message Date
Thiago Santos
35deb7b9c2 query: add some missing 'transfer none' gi annotations
The current documentation is controverse, while it states that the
returned value is valid only while the query is is valid, which presumes
a 'transfer none' policy. But the tooltip for the 'out' annotation
states the default is 'transfer-full'.

Add the missing 'transfer none' annotations to fix this.

Conflicts:
	gst/gstquery.c
2013-08-26 12:30:45 +01:00
Tim-Philipp Müller
ce7aef3def buffer: fix Since: marker for new gst_buffer_extract_dup() 2013-08-18 11:48:09 +02:00
Olivier Crête
2560624fb0 buffer: Add annotations and pygi friendly extraction function
API: gst_buffer_extract_dup

Conflicts:
	gst/gstbuffer.h
2013-08-18 11:47:38 +02:00
Tim-Philipp Müller
c329cc3aeb pipeline: g-i: allow clock to be NULL in gst_pipeline_use_clock()
https://bugzilla.gnome.org/show_bug.cgi?id=705751
2013-08-10 11:34:52 +01:00
Tim-Philipp Müller
f3c4f74554 Release 1.0.9 2013-07-30 11:03:58 +01:00
Sebastian Dröge
7392c42263 typefind: Only advance offset by the number of bytes we actually read
There might be a short read at EOS.
2013-07-29 13:19:42 +01:00
Sebastian Dröge
80431b497d structure: gst_structure_copy() returns a new structure with (transfer full) 2013-07-22 08:35:40 +02:00
Sebastian Dröge
229592b71f query: gst_query_get_n_allocation_params() returns a new ref to the allocator 2013-07-19 18:54:36 +01:00
Tim-Philipp Müller
06978dac05 timeprovider: g-i: allow None as address for gst_net_time_provider_new()
Conflicts:
	libs/gst/net/gstnettimeprovider.c
2013-07-17 18:46:23 +01:00
Wim Taymans
5691ef8575 basesink: call state change in all cases
When we asynchronously go from READY to PLAYING, also call the
state change function so that subclasses can update their state for PLAYING.
Because the PREROLL lock is not recursive, we can't make this without
races and we must assume for now that the subclass can handle concurrent calls
to PAUSED->PLAYING and PLAYING->PAUSED. We can make this assumption because not
many elements actually do something in those state changes and the ones that
did would be broken even more without this change.

https://bugzilla.gnome.org/show_bug.cgi?id=702282
2013-07-15 22:33:37 +01:00
Tim-Philipp Müller
566ce86238 Release 1.0.8 2013-07-12 00:25:09 +01:00
Tim-Philipp Müller
c062bf9ae8 allocator: fix type of gst_memory_alignment to match declaration
Fixes compiler warnings such as
gstallocator.c:61:8: error: conflicting types for 'gst_memory_alignment'
../gst/gstallocator.h:52:18: note: previous declaration of 'gst_memory_alignment' was here
2013-07-08 15:28:28 +01:00
Thibault Saunier
592fbfb043 basesrc: Do not lock a mutex that does not exist
The GST_LIVE_LOCK is on GstBaseSrc, not on its source pad.
2013-07-05 19:34:49 +01:00
Sebastian Dröge
25c2e54518 buffer: Add unit test for map_range()
https://bugzilla.gnome.org/show_bug.cgi?id=702617
2013-07-05 19:08:20 +01:00
Paul HENRYS
53e3b87fcb buffer: Fix wrong size/index handling when merging memory
https://bugzilla.gnome.org/show_bug.cgi?id=702617
2013-07-05 19:08:12 +01:00
Nicolas Dufresne
2616feed42 Add few missing allow-none annotation
https://bugzilla.gnome.org/show_bug.cgi?id=703562

Conflicts:
	gst/gstmessage.c
2013-07-03 14:28:39 -04:00
Wim Taymans
2d75c08d6a check: fix position unit test 2013-05-30 07:13:06 +02:00
Wim Taymans
8374517c45 basesink: improve position reporting without clock
When no base time or when sync is disabled, use the same logic as
in paused to report position. The logic in PLAYING assumes we use the
clock.
2013-05-30 07:12:58 +02:00
Nicolas Dufresne
209055ea35 valve: Don't read sticky flag from unrefed event 2013-05-28 18:51:16 -04:00
Sebastian Dröge
4137391174 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
2013-05-28 14:11:20 +02:00
Olivier Crête
e16197a6c0 buffer: fix gobject-introspection annotations, esp. for gst_buffer_fill 2013-05-22 23:40:22 +01:00
Tim-Philipp Müller
6fee4c44e1 buffer: allow calling _fill() with a NULL data pointer if size is 0 bytes 2013-05-18 11:01:27 +01:00
Tim-Philipp Müller
158bc017ca typefind: fix caps leak when used in connection with uridecodebin and playbin
Don't leak forced sink caps.
2013-05-04 11:25:01 +01:00
Sebastian Dröge
0a1f57538c Release 1.0.7 2013-04-26 12:11:02 +02:00
Sebastian Dröge
653fe3d6cf inputselector: Try to not push read-only buffers
We should only increase the refcount before pushing if we're
really going to use the buffer afterwards.
2013-04-26 08:19:33 +02:00
Thibault Saunier
b133903093 controller: Fix element-type annotations 2013-04-26 08:19:32 +02:00
Sebastian Dröge
26add2d13c gst: Add better support for static plugins
API: GST_PLUGIN_STATIC_DECLARE()
API: GST_PLUGIN_STATIC_REGISTER()

Based on a patch by Håvard Graff <havard.graff@tandberg.com>.

This now allows GST_PLUGIN_DEFINE() to create a static plugin if
GST_PLUGIN_BUILD_STATIC is defined. The resulting plugin can be
statically linked or dynamically linked during compilation but
can't be dynamically loaded during runtime.

Also adds GST_PLUGIN_STATIC_DECLARE() and GST_PLUGIN_STATIC_REGISTER(),
which allows to register a static linked plugin easily.
It is still required to manually register every single statically linked
plugin from inside the application as this can't be automated in a portable
way.

A new configure parameter --enable-static-plugins was added that allows
to build all plugins we build here as static plugins.

Fixes bug #667305.
2013-04-15 16:09:39 +02:00
Sebastian Dröge
c4ce6a4ffa caps: Add unit test for GST_CAPS_{ANY,NONE} and GST_STATIC_CAPS_{ANY,NONE}
https://bugzilla.gnome.org/show_bug.cgi?id=696435
2013-04-15 08:20:40 +02:00
Sebastian Dröge
c942fb3848 caps: Fix gst_static_caps_get(GST_STATIC_CAPS_NONE)
https://bugzilla.gnome.org/show_bug.cgi?id=696435
2013-04-15 08:20:04 +02:00
Nicolas Dufresne
9ce8e5b7ff 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
2013-04-15 08:19:55 +02:00
Wim Taymans
7452a47c71 taglist: avoid triggering an assertion
When deserialization of the structure fails, return a NULL taglist instead of
asserting.
2013-04-13 12:08:55 +01:00
Tim-Philipp Müller
f9a10c4dca gst-inspect: only add a '*' for non-'gpointer' pointers
Spotted by Jose Antonio Santos Cadena.

https://bugzilla.gnome.org/show_bug.cgi?id=697791
2013-04-13 12:08:18 +01:00
Jose Antonio Santos Cadenas
52a5bd9b4b gst-inspect: add pointer mark to signal and action return types that are pointers
When the return type of a signal or action is a pointer, it
should have an asterisk to mark it as such.

https://bugzilla.gnome.org/show_bug.cgi?id=697791
2013-04-13 12:08:12 +01:00
Tim-Philipp Müller
5ef30a7019 netclientclock: bind socket before querying local address
Fails on windows otherwise.

https://bugzilla.gnome.org/show_bug.cgi?id=697608
2013-04-13 12:07:37 +01:00
Wim Taymans
e9d7f8cb37 bufferpool: fix docs 2013-04-04 16:40:22 +02:00
Nicolas Dufresne
c697912fcb segment: Fix seeking when position is slightly outside the segment
Very often, when the end of a segment is detected by demuxer, the position
is slightly outside the segment boundaries. Currently, if that is the case
the base will be set to NONE instead of normal accumulation. This would
break non-flushing seeks in oggdemux and most likely other demuxers.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696899
2013-04-04 10:12:37 +02:00
Tim-Philipp Müller
a45d8c9d00 Release 1.0.6 2013-03-22 12:33:48 +00:00
Tim-Philipp Müller
74c3fa2347 po: update for new translatable string 2013-03-22 09:53:58 +00:00
Tim-Philipp Müller
9f3d06c4d4 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
2013-02-21 11:36:55 +00:00
Tim-Philipp Müller
f3293d37ce 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
2013-02-13 16:56:12 +00:00
Tim 'mithro' Ansell
926719a0bc gstvalue: Adding offset to GstSegment serialize/deserialize.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=693587
2013-02-11 14:21:49 +01:00
Wim Taymans
d5f6642cd7 bin: remove old comment
The iterators now return a GValue and not the object directly anymore.
2013-02-07 12:55:21 +01:00
Wim Taymans
40e150ba8d bin: reset GValue from iterator after usage 2013-02-07 12:55:14 +01:00
Stefan Sauer
030103596e 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.
2013-02-05 18:42:43 +00:00
Stefan Sauer
e52bebfa57 docs: update the controller docs
Add the control bindings to the docs. Add a little more detail.
2013-02-05 18:42:43 +00:00
Stefan Sauer
bb6bbd4a0b porting: a few updates for the porting guide 2013-02-05 18:42:43 +00:00
Wim Taymans
2aaacfc66b tests: add basesink test 2013-02-05 17:37:22 +01:00
Wim Taymans
0b72d1af1a 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

Conflicts:
	libs/gst/base/gstbasesink.c
2013-02-05 17:37:13 +01:00
Nate Bogdanowicz
25c6490109 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:36 +01:00
Tim-Philipp Müller
5180ff7c54 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.

Conflicts:
	plugins/elements/gstdataqueue.c
2013-01-30 13:19:09 +00:00