Commit graph

7171 commits

Author SHA1 Message Date
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