Stefan Sauer
8d816e9527
bus: fix the precondition for gst_bus_disable_sync_message_emission()
...
Use the right variable and invert the test. The precondition should catch
someone calling to once too often.
2013-04-10 21:50:53 +02:00
Olivier Crête
787d973fb2
capsfeatures: Init debug category before ever using it
2013-04-09 19:37:06 -04:00
Руслан Ижбулатов
e745a2bcf0
clock: Do use HAVE_CLOCK_GETTIME
...
Fixes #697549
2013-04-09 20:33:27 +02:00
Sebastian Dröge
f7532a7e13
capsfeatures: Copy ANY flag when copying caps features too
2013-04-06 22:10:58 +02:00
Sebastian Dröge
91b3890d70
caps: Handle ANY caps features properly in more places
2013-04-06 21:49:25 +02:00
Sebastian Dröge
db6ee700f2
caps: Properly handle ANY caps features in caps operations
2013-04-06 21:09:49 +02:00
Stefan Sauer
627d111eb6
bus: update signal docs for gst_bus_enable_sync_message_emission()
2013-04-05 21:24:19 +02:00
Tim-Philipp Müller
cf69475aeb
caps: fix caps feature leak
...
Fixes leaks in 14 core unit tests including
gst/gstcaps.
2013-04-04 23:14:13 +01:00
Wim Taymans
6c62146031
structure: simplify is_subset check
...
Iterate over the fields of the superset instead of those of the subset.
This way we can check the presence of the subset field and do the subset check
in one iteration.
2013-04-04 17:59:10 +02:00
Wim Taymans
d92ce924e6
caps: update docs, is_subset() works now
2013-04-04 17:46:09 +02:00
Wim Taymans
ff0deeed9a
bufferpool: fix docs
2013-04-04 16:39:23 +02:00
Wim Taymans
3e1a430c22
pad: add gst_pad_store_sticky_event()
...
Rewire some internal functions and expose a new
gst_pad_store_sticky_event() function.
API: gst_pad_store_sticky_event()
2013-04-04 16:36:26 +02:00
Wim Taymans
1457c9c499
pad: clarify docs
2013-04-04 15:45:23 +02:00
Wim Taymans
e857030232
pad: improve debug
2013-04-04 15:45:15 +02:00
Wim Taymans
95c6cd37a8
segment: don't WARN, just DEBUG
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696911
2013-04-04 10:17:30 +02:00
Nicolas Dufresne
ab44e14c52
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:10:24 +02:00
Wim Taymans
e9c48043d1
gst: add stream flags
2013-04-03 16:45:46 +02:00
Tim-Philipp Müller
24cac0afa3
docs: more since markers and other docs fixes
2013-04-02 23:51:06 +01:00
Tim-Philipp Müller
ce77032133
docs: add since markers to capsfeatures docs
2013-04-02 23:21:39 +01:00
Sebastian Dröge
65c650d7d4
capsfeatures: Add GST_CAPS_FEATURES_ANY
...
This is equal to any other caps features but results in unfixed caps. It
would be used by elements that only look at the buffer metadata or are
currently working in passthrough mode, and as such don't care about any
specific features.
2013-04-02 22:17:22 +02:00
Tim-Philipp Müller
0dd761101c
info: minor cosmetic changes
...
Let's not use ugly leading underscores for
static functions.
2013-04-01 22:17:20 +01:00
Tim-Philipp Müller
cef9018eaf
info: fix object printing of caps features in debug log
2013-04-01 21:23:21 +01:00
Stefan Sauer
6465dbd647
info: refactor pretty printing objects
...
Extract formatters into local functions. Change the structure filtering so that
it works for taglists too.
2013-04-01 16:39:18 +02:00
Stefan Sauer
28b0cb5721
element: make post_message and query more alike
2013-04-01 16:39:17 +02:00
Sebastian Dröge
a838e5aa75
capsfeatures: For copying features it's not required to have no parent refcount
2013-04-01 10:19:25 +02:00
Sebastian Dröge
efcb4023e6
caps: Set features' parent refcount in gst_caps_set_features() too
2013-04-01 10:19:01 +02:00
Sebastian Dröge
ccd2966f7a
caps: Set sysmem features if explicitely requested
2013-04-01 10:18:39 +02:00
Sebastian Dröge
7477b25df5
caps: Add new data type for handling caps features to the caps
...
These are meant to specify features in caps that are required
for a specific structure, for example a specific memory type
or meta.
Semantically they could be though of as an extension of the media
type name of the structures and are handled exactly like that.
2013-03-31 18:15:52 +02:00
Tim-Philipp Müller
caa06788c3
event: add SELECT and UNSELECT stream flags for stream-start event
...
So demuxers can signal which audio/video/subtitle streams should
be selected by default and which should not be selected
automatically.
API: GST_STREAM_FLAG_SELECT
API: GST_STREAM_FLAG_UNSELECT
https://bugzilla.gnome.org/show_bug.cgi?id=695968
https://bugzilla.gnome.org/show_bug.cgi?id=690911
2013-03-31 15:30:19 +01:00
Tim-Philipp Müller
0e5c1dcf64
event: add stream flags to stream-start event
...
API: gst_event_set_stream_flags()
API: gst_event_parse_stream_flags()
API: GST_STREAM_FLAG_NONE
API: GST_STREAM_FLAG_SPARSE
https://bugzilla.gnome.org/show_bug.cgi?id=600648
2013-03-31 11:47:40 +01:00
Sebastian Dröge
dd831b8114
element: Add API to get the last set context from an element
...
Elements should override GstElement::set_context() and also call
gst_element_set_context() to keep this context up-to-date with
the very latest context they internally use.
2013-03-31 11:26:32 +02:00
Sebastian Dröge
f23db94fef
pad: Let gst_pad_get_allowed_caps() pass the caps own caps as filter
...
This will reduce the number of caps created downstream and we don't
need to intersect in the very end with the pad's own caps.
2013-03-30 11:48:27 +01:00
Stefan Sauer
ba8c0f5e4b
childproxy: fix gir warning
2013-03-29 19:16:45 +01:00
Edward Hervey
418dcd7277
pad: Remove SEGMENT sticky events when flushing
...
When flushing, it is expected that upstream will send a SEGMENT
event afterwards.
This also avoids stray SEGMENT events from coming through after a
flush.
2013-03-29 18:43:21 +01:00
Sebastian Dröge
b909061031
gst: Add new GstContext miniobject for sharing contexts in a pipeline
2013-03-29 16:40:21 +01:00
Olivier Crête
ec16d6b0a4
buffer: Add annotations and pygi friendly extraction function
...
API: gst_buffer_extract_dup
2013-03-27 13:07:03 -04:00
David Schleef
700be18f11
Update docs for gst_pad_create_stream_id_printf()
...
To indicate that format strings should be alpha sortable.
2013-03-25 18:50:41 -07:00
Sebastian Dröge
7decc9bef7
caps: Fix gst_static_caps_get(GST_STATIC_CAPS_NONE)
...
https://bugzilla.gnome.org/show_bug.cgi?id=696435
2013-03-25 09:22:49 +01:00
Tim-Philipp Müller
a76885f333
toc: some documentation updates
2013-03-24 17:53:35 +00:00
Tim-Philipp Müller
1750620752
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
2013-03-12 14:41:01 +00:00
Sebastian Dröge
0936b506ab
query: gst_query_get_n_allocation_params() returns a new ref to the allocator
2013-03-07 11:47:04 +01:00
Stefan Sauer
ec55363da3
controlbinding: relax the pspec for the control-source
...
We can change control sources on controlbindings.
2013-03-07 09:18:26 +01:00
Sebastian Dröge
64affd3e61
buffer: Fix memory copying logic in copy_into()
...
https://bugzilla.gnome.org/show_bug.cgi?id=695035
2013-03-03 12:06:36 +01:00
Sebastian Dröge
3360299ef4
registrychunks: Use correct print format specifiers to fix compiler warnings
2013-03-03 11:28:32 +01:00
David Schleef
ac8ccf2c50
Fix misspellings of 'continuous'
2013-03-02 10:43:56 -08:00
Stefan Sauer
82f7bdd7bb
seeking: add more logging for seeking
...
Especially add logging to error code paths.
2013-02-27 22:17:17 +01:00
Sebastian Dröge
ce1c1cf214
buffer: Gracefully handle gst_memory_copy() returning NULL without crashing
...
gst_buffer_copy_into() and gst_buffer_resize_range() can now fail.
2013-02-27 10:11:23 +01:00
Wim Taymans
e52aa65ab7
allocator: small internal cleanups
...
Rename System memory allocator to GstAllocatorSysmem and the memory to
GstMemorySystem.
2013-02-26 17:33:30 +01:00
Wim Taymans
4df4fd33b1
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()
2013-02-26 15:37:24 +01:00
Wim Taymans
d7f15f542a
use GST_MESSAGE_DURATION_CHANGED in docs and code
2013-02-26 15:32:25 +01:00
Wim Taymans
f37fc1d299
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.
2013-02-26 14:40:38 +01:00
Sebastian Dröge
2ca0046934
buffer: Fix inverted logic for deciding if memory should be shared or copied
...
https://bugzilla.gnome.org/show_bug.cgi?id=694717
2013-02-26 09:09:25 +01:00
Stefan Sauer
24df8b92ea
docs: s/start/done/ copy'n'paste mistake
2013-02-26 08:36:51 +01:00
Sebastian Dröge
008b35f6ae
query: Add new API to remove allocation params and pools from the allocation query
2013-02-25 13:57:43 +01:00
Sebastian Dröge
e460be622d
query: Document that the first allocator in the allocation query should allow mapping to system memory
2013-02-25 13:24:33 +01:00
Sebastian Dröge
d50190ba55
memory: Keep a reference to the allocator
...
Otherwise the allocator might get freed while it's still used
by the memory
2013-02-24 09:46:01 +01:00
Sebastian Dröge
209f081ab8
buffer: If sharing a GstMemory fails, fall back to copying it
2013-02-24 09:46:01 +01:00
Sebastian Dröge
a093d8a8cd
memory: It's contiguous, not continous
2013-02-23 08:19:48 +01:00
Sebastian Dröge
5327545d56
memory: Add new memory flag to specify that memory can't be mapped
2013-02-22 12:41:09 +01:00
Sebastian Dröge
221b6fc479
memory: Add memory flag to mark physically continous memory
2013-02-22 09:04:57 +01:00
Tim-Philipp Müller
0cbe23995f
utils: avoid unexpected side-effects of GST_WRITE_* macros
...
Make sure the data argument is only evaluated once.
2013-02-19 18:00:48 +00:00
Stefan Sauer
f9ce7e711b
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.
2013-02-17 13:21:36 +01:00
Tim-Philipp Müller
e3a9e66985
buffer: add since marker for new COPY_DEEP buffer flag
2013-02-16 14:20:54 +00:00
Wim Taymans
1fcef378bd
buffer: add option to deep copy a buffer
...
Add a buffer copy flag to force a memory copy in all cases.
2013-02-16 14:59:02 +01:00
Tim-Philipp Müller
6c7573226e
Revert "utils: Use gst_pad_get_pad_template() in gst_element_get_compatible_pad_template()"
...
This reverts commit 1a1a9e143f
.
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
2013-02-15 12:40:39 +00:00
Wim Taymans
7e222212a8
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.
2013-02-15 13:13:40 +01:00
Niv Sardi
1a1a9e143f
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
2013-02-14 10:21:54 +01:00
Tim-Philipp Müller
5fc34add25
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:52:13 +00:00
Sebastian Dröge
fb3b53328f
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
2013-02-13 17:07:47 +01:00
Sebastian Dröge
e479d22040
bin: The latency query should return TRUE by default, different to other queries
...
Fixes unit test failures caused by f3d268de7f
2013-02-13 11:19:06 +01:00
Sebastian Dröge
171c79c9a7
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-02-13 10:46:37 +01:00
Philippe Normand
f3d268de7f
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
2013-02-12 10:33:40 +01:00
Alexander Schrab
983fb0f5da
bin: Let gst_bin_send_event() send events to ghost pads as well
2013-02-12 10:22:53 +01:00
Stefan Sauer
d211a2a67c
compat: kill more uses of gst_pad_set_caps()
2013-02-11 22:54:22 +01:00
Tim 'mithro' Ansell
bd65fc0036
gstvalue: Adding offset to GstSegment serialize/deserialize.
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=693587
2013-02-11 14:19:27 +01:00
Stefan Sauer
56f6f022e2
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.
2013-02-08 21:38:22 +01:00
Wim Taymans
474610b191
element: remove old docs about iterators
2013-02-07 13:08:49 +01:00
Wim Taymans
ed35f62458
bin: remove old comment
...
The iterators now return a GValue and not the object directly anymore.
2013-02-07 12:52:26 +01:00
Wim Taymans
209631789a
bin: reset GValue from iterator after usage
2013-02-07 12:50:08 +01:00
Nate Bogdanowicz
6b717600b5
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:23:20 +01:00
Wim Taymans
ea6b05d126
structure: change argument name for docs
2013-02-05 13:44:06 +01:00
Stefan Sauer
f989e6f2d7
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-04 10:31:46 +01:00
Stefan Sauer
fba696eb05
docs: update the controller docs
...
Add the control bindings to the docs. Add a little more detail.
2013-02-01 22:00:18 +01:00
Simon Feltman
d2b03a4537
g-i: add built enumtypes headers and sources to gir creation
...
Add gstenumtypes.h/c for inclusion with g-ir-scanner. This fixes
problems where introspection based bindings think GstState is
typeless due to the GType not being included as an annotation.
https://bugzilla.gnome.org/show_bug.cgi?id=691185
2013-01-27 20:55:38 +00:00
Niv Sardi
4b3aee5698
gst_pad_check_reconfigure: only remove flag if set.
...
the code ifed a debug statement, that can't be right. anyway, the way it is,
we don't really need that branch, as we set the flag to unset only if set
(and that can't fail) hence the end result is always to unset the flag.
Signed-off-by: Niv Sardi <xaiki@evilgiggle.com>
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=691985
2013-01-24 15:41:35 +01:00
Tim-Philipp Müller
c0926dc7cc
pad: add gst_pad_get_stream_id() utility function
...
API: gst_pad_get_stream_id()
2013-01-19 12:51:56 +00:00
Tim-Philipp Müller
64eee27ebc
Use GST_*_1_0 environment variables everywhere
...
The _1_0 suffixed environment variables override the
non-suffixed ones, so if we're in an environment that
sets the _1_0 suffixed ones, such as jhbuild, we need
to set those to make sure ours actually always get
used.
2013-01-15 13:47:32 +00:00
Tim-Philipp Müller
b836ddf8c6
pipeline: add allow-none annotation for gst_pipeline_new()'s name property
2013-01-15 09:42:20 +00:00
Stefan Sauer
5898042610
controlbinding: hide one unused typedef
...
This is not used internally.
2013-01-10 11:34:14 +01:00
Stefan Sauer
06cf9deafe
docs: improve api docs for controlsource and -binding
2013-01-10 11:33:42 +01:00
Tim-Philipp Müller
1506784215
docs: minor systemsclock doc fix
2013-01-04 12:27:38 +00:00
Tim-Philipp Müller
22036ef1c4
caps, structure, taglist: micro-optimisations
...
Avoid some unnecessary GValue copying by making use of
gst_structure_id_take_value() where possible.
2012-12-22 16:55:26 +00:00
Tim-Philipp Müller
172011d1f5
gstvalue: some micro-optimisations
...
Avoid unnecessary value copying, and unnecessary init/unset
cycles which all go through the value table. There's a bunch
of places where we copy a value and then unset it in the next
line, instead of just taking over the source value.
2012-12-22 16:38:58 +00:00
Wim Taymans
b163c09104
bin: add flag to disable resync state change
...
Add a GST_BIN_FLAG_NO_RESYNC that disables a resync when an element is added,
removed or linked in the bin. This is interesting for complex bins that
dynamically add elements to themselves and want to manage the state of those
elements without interference from resyncs.
See https://bugzilla.gnome.org/show_bug.cgi?id=690420
2012-12-21 16:36:37 +01:00
Wim Taymans
49344ecad4
systemclock: add OTHER clock type
...
Add an OTHER clock type so that subclasses are able to mark themselves as
using some other clock source than the realtime or monotonic clock.
2012-12-20 16:40:04 +01:00
Wim Taymans
5f2fbb6370
add debug category
...
Adding a debug category is nicer than logging to the default category
2012-12-14 11:09:30 +01:00
Wim Taymans
63cc762626
element: improve debug
2012-12-14 11:08:57 +01:00
Wim Taymans
21830d66c6
plugin: protect against NULL filename in debug
...
See https://bugzilla.gnome.org/show_bug.cgi?id=689948
2012-12-10 12:00:40 +01:00
Wim Taymans
064145c097
bufferpool: clarify docs
2012-12-06 09:48:08 +01:00
Wim Taymans
12f835ca43
caps: fix docs
2012-12-05 14:56:48 +01:00