platform/upstream/gstreamer.git
15 years agocontroller: Use ordered GSequence instead of GList
Sebastian Dröge [Thu, 14 May 2009 20:11:57 +0000 (22:11 +0200)]
controller: Use ordered GSequence instead of GList

This makes lookups and insertions O(log n) instead of
always O(n) for insertions and O(n) in worst case for
lookups.

Fixes bug #582564.

15 years agodocs: rename and delete some design docs
Wim Taymans [Thu, 14 May 2009 10:30:23 +0000 (12:30 +0200)]
docs: rename and delete some design docs

15 years agogst-launch: Print the path string for message sources
Sebastian Dröge [Thu, 14 May 2009 10:30:04 +0000 (12:30 +0200)]
gst-launch: Print the path string for message sources

This reduces confusion if the message source is a pad
and only "src" is printed as source.

15 years agoelement: Set the originating pad as message source in gst_element_found_tags_for_pad ()
Sebastian Dröge [Thu, 14 May 2009 10:25:20 +0000 (12:25 +0200)]
element: Set the originating pad as message source in gst_element_found_tags_for_pad ()

Fixes bug #582588.

15 years agoelement: add gst_element_lost_state_full()
Wim Taymans [Thu, 14 May 2009 09:36:28 +0000 (11:36 +0200)]
element: add gst_element_lost_state_full()

Add a gst_element_lost_state_full() with an extra argument to control
distribution of a new base_time. We will need this for flushing step
operations.

API: GstElement::gst_element_lost_state_full()

15 years agoadapter: don't use realloc, it does a memcpy
Wim Taymans [Wed, 13 May 2009 21:52:02 +0000 (23:52 +0200)]
adapter: don't use realloc, it does a memcpy

Don't use realloc to grow the scratch area because we don't want the memcpy the
old useless data into the new area before we write our new stuff in it.

15 years agodocs: update trickmode document
Wim Taymans [Wed, 13 May 2009 21:38:08 +0000 (23:38 +0200)]
docs: update trickmode document

15 years agoadapter: use g_realloc for resizing the buffer
Wim Taymans [Wed, 13 May 2009 20:51:18 +0000 (22:51 +0200)]
adapter: use g_realloc for resizing the buffer

Use g_realloc for resizing the internal buffer instead of a
less fancy _free/_malloc pair.

15 years agoadapter: move new member to private struct
Wim Taymans [Wed, 13 May 2009 19:35:23 +0000 (21:35 +0200)]
adapter: move new member to private struct

Move the new members to a private struct because we don't have enough padding
anymore on 32-bits platforms.

15 years agoadapter: update some docs
Wim Taymans [Wed, 13 May 2009 16:50:23 +0000 (18:50 +0200)]
adapter: update some docs

15 years agotests: add another test for adapter timestamps
Wim Taymans [Wed, 13 May 2009 15:09:32 +0000 (17:09 +0200)]
tests: add another test for adapter timestamps

15 years agotests: add new timestamp unit test
Wim Taymans [Wed, 13 May 2009 14:48:38 +0000 (16:48 +0200)]
tests: add new timestamp unit test

15 years agodefs: add new symbol
Wim Taymans [Wed, 13 May 2009 14:26:00 +0000 (16:26 +0200)]
defs: add new symbol

15 years agoadapter: add method to keep track of timestamps
Wim Taymans [Wed, 13 May 2009 14:09:20 +0000 (16:09 +0200)]
adapter: add method to keep track of timestamps

Keep track of the timestamp and offset associated with the current head of the
adapter.

API: GstAdapter::gst_adapter_prev_timestamp()

15 years agoadapter: small cleanups
Wim Taymans [Wed, 13 May 2009 14:20:26 +0000 (16:20 +0200)]
adapter: small cleanups

15 years agodebugutils: show more pad-details
Stefan Kost [Wed, 13 May 2009 08:03:27 +0000 (11:03 +0300)]
debugutils: show more pad-details

Show pad activation mode and pad-flags inside the pad. Write down some ideas
about how we could improve the caps layout.

15 years agodebugutils: layout improvement
Stefan Kost [Tue, 12 May 2009 21:29:57 +0000 (00:29 +0300)]
debugutils: layout improvement

dot does not take the head/tail labels into account. For unfixed caps they get
quite large. Double the padding to make it sort of readable in more cases. Also
make normal font bigger and caps-label font smaller to increase our luck.

15 years agochecks: check for enum types not class_ref'ed in gst_init() in 'make check'
Tim-Philipp Müller [Tue, 12 May 2009 20:00:15 +0000 (21:00 +0100)]
checks: check for enum types not class_ref'ed in gst_init() in 'make check'

15 years agoInitialise some more types in gst_init(), esp. the new enum types
Tim-Philipp Müller [Tue, 12 May 2009 19:58:32 +0000 (20:58 +0100)]
Initialise some more types in gst_init(), esp. the new enum types

Possibly fixes GObject class creation/unref race conditions when
creating the last-message string in fakesink for events with
structures that have fields with these enum types.

15 years agosystemclock: remove duplicate _get_type() function for GstClockType
Tim-Philipp Müller [Tue, 12 May 2009 19:56:06 +0000 (20:56 +0100)]
systemclock: remove duplicate _get_type() function for GstClockType

Remove the static gst_clock_type_get_type() function in the
systemclock code in favour of the public one in gstenumtypes.c.

15 years agoghostpad: remove deprecated API
Stefan Kost [Wed, 22 Apr 2009 07:53:37 +0000 (10:53 +0300)]
ghostpad: remove deprecated API

_internal_link_function() is deprecated and _iterate_internal_links_function()
is already provided.

15 years agoparse-launch: allow specifying GstElement properties via gst_parse_bin_from_description
Stefan Kost [Tue, 21 Apr 2009 08:33:43 +0000 (11:33 +0300)]
parse-launch: allow specifying GstElement properties via gst_parse_bin_from_description

If deserializing a property fails, check if the value type is a string and if so
attempt to create a bin from the string value. This allows to e.g. specify
audio-sink/video-sink for playbin on gst-launch commandline.

15 years agodocs: add some docs about buffer lists
Wim Taymans [Tue, 12 May 2009 15:29:15 +0000 (17:29 +0200)]
docs: add some docs about buffer lists

15 years agobufferlist: make objects opaque
Wim Taymans [Tue, 12 May 2009 14:18:48 +0000 (16:18 +0200)]
bufferlist: make objects opaque

15 years agobufferlist: fix a comment
Wim Taymans [Tue, 12 May 2009 13:33:25 +0000 (15:33 +0200)]
bufferlist: fix a comment

15 years agobufferlist: hook up the pad functions
Jonas Holmberg [Tue, 12 May 2009 11:10:55 +0000 (13:10 +0200)]
bufferlist: hook up the pad functions

Reuse buffer code for bufferlists. Not sure if this measurably impacts performance
for the simple buffer case, if it does after doing some benchmarks, we can
decouple it later.

Fixes #572285

15 years agobufferlist: add docs/build/debug/unittest
Jonas Holmberg [Tue, 12 May 2009 10:08:56 +0000 (12:08 +0200)]
bufferlist: add docs/build/debug/unittest

See #572285

15 years agobufferlist: add bufferlist code
Jonas Holmberg [Tue, 12 May 2009 09:51:37 +0000 (11:51 +0200)]
bufferlist: add bufferlist code

Buffer lists are a means to manage disjoint buffers as one buffer. It's also
possible to put many of those buffers into a list.

The idea is that when support is added to various elements, we will be able to
more efficiently slice and dice buffers, reduce the amount of memcpy and also
reduce data passing overhead.

The implementation is kept simple on purpose, reusing all of the memory
management features we have for miniobjects and buffers.

Access to the bufferlist object is done with an iterator, which allows for
efficient iteration and modification of the list.

See #572285

15 years agogstbuffer: copy new buffer flags when copying metadata.
Edward Hervey [Mon, 11 May 2009 05:49:34 +0000 (07:49 +0200)]
gstbuffer: copy new buffer flags when copying metadata.

15 years agoadapter: optimize taking the headbuffer
Wim Taymans [Mon, 27 Apr 2009 08:13:01 +0000 (10:13 +0200)]
adapter: optimize taking the headbuffer

When a are requested to take a buffer from the adapter that is exactly the
headbuffer, don't make a subbuffer of it but return that head buffer.

Add a unit-test for this new optimisation.

15 years agotypefind: don't leak the force-caps property
Arnout Vandecappelle [Tue, 5 May 2009 15:41:24 +0000 (17:41 +0200)]
typefind: don't leak the force-caps property

Fixes #581321

15 years agoelement: fix posting of async-start messages
Wim Taymans [Tue, 28 Apr 2009 17:20:31 +0000 (19:20 +0200)]
element: fix posting of async-start messages

When an element lost its state but was busy doing a state change, still post the
async-start message with the base_time reset flag or else we might end up with
an old base_time.

this can happen when a sink is goin async to paused and then a flushing seek is
performed. This would cause the base_time to remain unmodified because the
async-start message was not sent.

15 years agoAdd new functions to the win32 exports
Sebastian Dröge [Sun, 10 May 2009 15:28:36 +0000 (17:28 +0200)]
Add new functions to the win32 exports

15 years agoRun libtoolize before aclocal
Marc-Andre Lureau [Sun, 10 May 2009 09:17:27 +0000 (11:17 +0200)]
Run libtoolize before aclocal

This unbreaks the build in some cases. Fixes bug #582021

15 years agoAPI: Add gst_plugin_register_static_full()
José Alburquerque [Thu, 7 May 2009 14:37:37 +0000 (16:37 +0200)]
API: Add gst_plugin_register_static_full()

This is mainly useful for bindings that need to provide
some additional user data to the registration function.

Fixes bug #545787.

15 years agofilesrc: Improve debugging a bit on invalid URIs
Sebastian Dröge [Thu, 7 May 2009 14:01:57 +0000 (16:01 +0200)]
filesrc: Improve debugging a bit on invalid URIs

15 years agodocs: Add new functions to the docs
Sebastian Dröge [Thu, 7 May 2009 08:36:50 +0000 (10:36 +0200)]
docs: Add new functions to the docs

15 years agotags: API: Add functions to add single tags to GstTagList or GstTagSetter
Sebastian Dröge [Thu, 7 May 2009 07:31:01 +0000 (09:31 +0200)]
tags: API: Add functions to add single tags to GstTagList or GstTagSetter

The new functions are gst_tag_setter_add_tag_value()
and gst_tag_list_add_value()). This fixes bug #581198.

15 years agoGstURIHandler: Use get_type_full() vmethod if specified instead of get_type()
Sebastian Dröge [Thu, 7 May 2009 07:28:15 +0000 (09:28 +0200)]
GstURIHandler: Use get_type_full() vmethod if specified instead of get_type()

This fixes bug #581281 and makes it easier for bindings to
implement GstURIHandlers. get_protocols_full() was already used
like this.

15 years agopo: update .po files for new strings from container-format tag
Tim-Philipp Müller [Tue, 12 May 2009 00:48:36 +0000 (01:48 +0100)]
po: update .po files for new strings from container-format tag

15 years agodocs: small update to release docs
Tim-Philipp Müller [Tue, 12 May 2009 00:30:13 +0000 (01:30 +0100)]
docs: small update to release docs

15 years agoconfigure: rename CVS -> git in a couple of places
Tim-Philipp Müller [Tue, 12 May 2009 00:13:02 +0000 (01:13 +0100)]
configure: rename CVS -> git in a couple of places

15 years agoconfigure: bump the GLib requirement to GLib >= 2.16
Tim-Philipp Müller [Mon, 11 May 2009 23:47:46 +0000 (00:47 +0100)]
configure: bump the GLib requirement to GLib >= 2.16

as per the New Regime (see wiki).

15 years agoxmlregistry: remove the old xml registry
Tim-Philipp Müller [Mon, 11 May 2009 23:09:58 +0000 (00:09 +0100)]
xmlregistry: remove the old xml registry

No point in keeping it around really. Fixes #577926.

15 years agotags: add a tag for the container format
Tim-Philipp Müller [Thu, 7 May 2009 15:08:43 +0000 (16:08 +0100)]
tags: add a tag for the container format

API: add GST_TAG_CONTAINER_FORMAT

15 years agobin: fix debug message
Tim-Philipp Müller [Fri, 8 May 2009 15:28:03 +0000 (16:28 +0100)]
bin: fix debug message

Make the debug message show what's actually happening (the message
replaced here is not necessarily of the same type as the one that
replaces it).

15 years agoGstTask: fix compilation
Wim Taymans [Mon, 11 May 2009 22:34:44 +0000 (00:34 +0200)]
GstTask: fix compilation

15 years agotests: set the latency-time to something low
Wim Taymans [Fri, 24 Apr 2009 17:32:33 +0000 (19:32 +0200)]
tests: set the latency-time to something low

15 years agotests: improve the example
Wim Taymans [Fri, 24 Apr 2009 11:55:13 +0000 (13:55 +0200)]
tests: improve the example

15 years agoTaskPool: remove _set_func()
Wim Taymans [Fri, 24 Apr 2009 10:35:08 +0000 (12:35 +0200)]
TaskPool: remove _set_func()

Remove the static function set on the TaskPool before _prepare() is called and
allow for assigning a function to a Task when we _push().
Update the examples

15 years agotests: add example of custom taskpools
Wim Taymans [Thu, 23 Apr 2009 17:42:47 +0000 (19:42 +0200)]
tests: add example of custom taskpools

Add an example to demonstrate the use of a custom taskpool and how to configure
it on the task. Currently the taskpool does not do much yet but it'll create
some custom threads later on.

15 years agotaskpool: fix a comment
Wim Taymans [Thu, 23 Apr 2009 17:41:36 +0000 (19:41 +0200)]
taskpool: fix a comment

15 years agotests: cleanup some code
Wim Taymans [Thu, 23 Apr 2009 17:41:01 +0000 (19:41 +0200)]
tests: cleanup some code

15 years agoPad: post STREAM_STATUS_TYPE_CREATE
Wim Taymans [Thu, 23 Apr 2009 15:48:08 +0000 (17:48 +0200)]
Pad: post STREAM_STATUS_TYPE_CREATE

Post a stream-status message indicating that a new task was created so that the
application has a chance to change the properties of the task.

Fix unit test to take into account the new ref of the message.

15 years agodefs: add new task methods
Wim Taymans [Thu, 23 Apr 2009 15:24:58 +0000 (17:24 +0200)]
defs: add new task methods

15 years agoGstTask: add methods for configuring the pool
Wim Taymans [Thu, 23 Apr 2009 15:19:11 +0000 (17:19 +0200)]
GstTask: add methods for configuring the pool

Add getter and setter for configuring the GstTaskPool to use for a GstTask.

15 years agoTask: remember pool
Wim Taymans [Thu, 23 Apr 2009 15:05:21 +0000 (17:05 +0200)]
Task: remember pool

Remember the pool we currently have our task running so that we can use it to
join the task later on.
Fix a leak of the taskpool.

15 years agodefs: update .defs file with taskpool methods
Wim Taymans [Thu, 23 Apr 2009 14:53:34 +0000 (16:53 +0200)]
defs: update .defs file with taskpool methods

15 years agotask: fix deadlock due to typo
Wim Taymans [Thu, 23 Apr 2009 14:53:14 +0000 (16:53 +0200)]
task: fix deadlock due to typo

15 years agoGstTask: use GstTaskPool for managing threads
Wim Taymans [Mon, 11 May 2009 22:25:11 +0000 (00:25 +0200)]
GstTask: use GstTaskPool for managing threads

Use the new GstTaskPool to handle streaming threads.

15 years agotaskpool: fix docs, make push/join generic
Wim Taymans [Thu, 23 Apr 2009 14:00:56 +0000 (16:00 +0200)]
taskpool: fix docs, make push/join generic

Fix some more docs.
Make _push() return a generic id (this can be something else than a GThread in
some cases) and make _join() use that generic id.

15 years agotaskpool: add new object to manage threads
Wim Taymans [Thu, 23 Apr 2009 13:44:13 +0000 (15:44 +0200)]
taskpool: add new object to manage threads

Add a new object GstTaskPool to manage the streaming threads.
This will allow us to create and use custom configured threads.

15 years agoexamples: set bus handler before state change
Wim Taymans [Wed, 22 Apr 2009 10:04:36 +0000 (12:04 +0200)]
examples: set bus handler before state change

We need to set the bus handler before starting the pipeline or we might just
miss the message we are looking for.

15 years agotests: add example app for stream-status
Wim Taymans [Wed, 22 Apr 2009 08:16:26 +0000 (10:16 +0200)]
tests: add example app for stream-status

Add an example application that adjusts the thread priority of a task using the
stream-status messages.

15 years agoTask: add method to set the priority
Wim Taymans [Tue, 21 Apr 2009 17:15:48 +0000 (19:15 +0200)]
Task: add method to set the priority

Add a method to configure a priority for the threads used by GstTask.

15 years agotests: add a unit-test for the stream-status
Wim Taymans [Tue, 21 Apr 2009 14:30:34 +0000 (16:30 +0200)]
tests: add a unit-test for the stream-status

Add a unit test for the STREAM_STATUS messages.

15 years agoGstTask: improve documentation
Wim Taymans [Mon, 11 May 2009 22:05:12 +0000 (00:05 +0200)]
GstTask: improve documentation

Improve the documentation for the callbacks.

15 years agotests: fix unit-tests for new stream-status
Wim Taymans [Tue, 21 Apr 2009 13:25:12 +0000 (15:25 +0200)]
tests: fix unit-tests for new stream-status

Fix the unit-tests so that they don't fail on the new stream-status messages
that are emited now.

15 years agoGstPad: install thread callbacks of the task
Wim Taymans [Tue, 21 Apr 2009 12:46:29 +0000 (14:46 +0200)]
GstPad: install thread callbacks of the task

Install thread status callbacks on the task object of a pad and post
STREAM_STATUS messages.

15 years agomessage: clarify some docs
Wim Taymans [Wed, 22 Apr 2009 08:14:46 +0000 (10:14 +0200)]
message: clarify some docs

15 years agoTask: call leave_thread before signaling
Wim Taymans [Tue, 21 Apr 2009 12:42:05 +0000 (14:42 +0200)]
Task: call leave_thread before signaling

Call the leave_thread callback before we signal the thread performing the _join
so that we can be sure that the listener still has valid info in the callback.

15 years agoGstMessage: Add STREAM_STATUS message methods
Wim Taymans [Tue, 21 Apr 2009 11:42:01 +0000 (13:42 +0200)]
GstMessage: Add STREAM_STATUS message methods

Add methods to handle the stream_status message types.

15 years agoquark: add "object" quark
Wim Taymans [Tue, 21 Apr 2009 11:05:17 +0000 (13:05 +0200)]
quark: add "object" quark

Add the object quark that will be used for the STREAM_STATUS messages.

15 years agoTask: remove create/join methods
Wim Taymans [Mon, 11 May 2009 21:44:42 +0000 (23:44 +0200)]
Task: remove create/join methods

Prepare for using the GstTaskPool object. We don't need the create and join
callbacks anymore, they will be handled by the pool.

15 years agoGstTask: add private data, fix parent_class
Wim Taymans [Mon, 20 Apr 2009 15:07:50 +0000 (17:07 +0200)]
GstTask: add private data, fix parent_class

Use the parent class that the glib macro gave us
Actually add the private data to the task.

15 years agoGstTask: hook up enter/leave/notify callbacks
Wim Taymans [Mon, 20 Apr 2009 15:19:21 +0000 (17:19 +0200)]
GstTask: hook up enter/leave/notify callbacks

Hoop up the notify/enter/leave callbacks.

15 years agodefs: add new symbol to defs file
Wim Taymans [Mon, 11 May 2009 21:23:20 +0000 (23:23 +0200)]
defs: add new symbol to defs file

15 years agoGstTask: allow setting callbacks
Wim Taymans [Mon, 11 May 2009 21:19:53 +0000 (23:19 +0200)]
GstTask: allow setting callbacks

Allow setting thread callbacks that will allow us to control the threads used by
the task.

15 years agobasesrc: don't ignore pad_start return value
Wim Taymans [Thu, 23 Apr 2009 17:40:11 +0000 (19:40 +0200)]
basesrc: don't ignore pad_start return value

15 years agodesign: more STREAM_STATUS updates
Wim Taymans [Tue, 21 Apr 2009 11:34:18 +0000 (13:34 +0200)]
design: more STREAM_STATUS updates

Pass the thread object in a GValue, which would allow the application to figure
out the type of the object instead of us having to explicitly code it in a
message field.

15 years agodesign: update stream-status document some more
Wim Taymans [Tue, 21 Apr 2009 07:45:08 +0000 (09:45 +0200)]
design: update stream-status document some more

15 years agodesign: add first version of stream-status
Wim Taymans [Mon, 20 Apr 2009 13:55:09 +0000 (15:55 +0200)]
design: add first version of stream-status

Add the first version of the STREAM_STATUS message design docs.
This message will be used to give applications more control over the
streaming threads.

15 years agoGstTask: add some more docs
Wim Taymans [Tue, 21 Apr 2009 15:53:07 +0000 (17:53 +0200)]
GstTask: add some more docs

15 years agoGstPad: use new task function
Wim Taymans [Tue, 21 Apr 2009 15:14:34 +0000 (17:14 +0200)]
GstPad: use new task function

Use the new task_set_state function and actually return its result to
the caller.

15 years agoGstTask: unify task state functions
Wim Taymans [Mon, 11 May 2009 20:59:35 +0000 (22:59 +0200)]
GstTask: unify task state functions

Add new gst_task_set_state() to change the state of the task instead of
duplicating the code in each function.

API: GstTask::gst_task_set_state()

15 years agoMessage: small indentation change.
Wim Taymans [Tue, 21 Apr 2009 11:37:22 +0000 (13:37 +0200)]
Message: small indentation change.

15 years agoAvoid unneeded type checks
Wim Taymans [Sat, 2 May 2009 12:43:11 +0000 (14:43 +0200)]
Avoid unneeded type checks

15 years agoregistry: avoid calling _get_name() too much
Wim Taymans [Sat, 2 May 2009 12:39:48 +0000 (14:39 +0200)]
registry: avoid calling _get_name() too much

Avoid calling gst_plugin_get_name() too many times but instead cache
the value.

15 years agoUse new _ref_sink when we can
Wim Taymans [Sat, 2 May 2009 12:36:50 +0000 (14:36 +0200)]
Use new _ref_sink when we can

15 years agogstobject: add gst_object_ref_sink
Wim Taymans [Sat, 2 May 2009 12:33:01 +0000 (14:33 +0200)]
gstobject: add gst_object_ref_sink

Add the gst_object_ref_sink() method to match the glib one.

API: GstObject::gst_object_ref_sink()

15 years agogstobject: avoid type checks
Wim Taymans [Sat, 2 May 2009 11:06:10 +0000 (13:06 +0200)]
gstobject: avoid type checks

15 years agogstbuffer: avoid typechecks in finalize
Wim Taymans [Sat, 2 May 2009 11:02:10 +0000 (13:02 +0200)]
gstbuffer: avoid typechecks in finalize

Avoid useless typechecking in the finalize of buffers and subbuffers.

15 years agofakesink: avoid typecheck
Wim Taymans [Sat, 2 May 2009 10:59:54 +0000 (12:59 +0200)]
fakesink: avoid typecheck

15 years ago-launch: connect to deep-notify with right name
Wim Taymans [Mon, 20 Apr 2009 12:01:01 +0000 (14:01 +0200)]
-launch: connect to deep-notify with right name

Connect to the right signal name with - instead of _.

15 years agoinfo: Support new printf extensions in glibc 2.10
Jan Schmidt [Fri, 24 Apr 2009 21:06:19 +0000 (22:06 +0100)]
info: Support new printf extensions in glibc 2.10

The printf extension mechanism changed in glibc 2.10, and the older
register_printf_function is deprecated. Detect and use the new
mechanism where available.

15 years agodocs: Fix a typo in the release script
Jan Schmidt [Mon, 20 Apr 2009 11:25:57 +0000 (12:25 +0100)]
docs: Fix a typo in the release script

15 years agoBack to development -> 0.10.23.1
Jan Schmidt [Mon, 11 May 2009 20:11:49 +0000 (21:11 +0100)]
Back to development -> 0.10.23.1

15 years agoRelease 0.10.23 RELEASE-0.10.23
Jan Schmidt [Sun, 10 May 2009 21:41:04 +0000 (22:41 +0100)]
Release 0.10.23

15 years agoUpdate .po files
Jan Schmidt [Sun, 10 May 2009 21:38:45 +0000 (22:38 +0100)]
Update .po files

15 years ago0.10.22.4 pre-release
Jan Schmidt [Wed, 6 May 2009 15:10:11 +0000 (16:10 +0100)]
0.10.22.4 pre-release