Commit graph

3665 commits

Author SHA1 Message Date
Jan Schmidt
6876d64a29 Back out patch until after the release.
Original commit message from CVS:
* gst/gstbuffer.c:
* gst/gstbuffer.h:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_prepare_output_buf):
* plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
* tests/check/gst/gstbuffer.c: (gst_test_suite):
Back out patch until after the release.
2006-01-16 15:42:08 +00:00
Jan Schmidt
06b99ec3ae gst/gstminiobject.c: Spelling fix in docs.
Original commit message from CVS:
* gst/gstminiobject.c:
Spelling fix in docs.
* ChangeLog - remove conflict indicator
2006-01-16 14:37:54 +00:00
Jan Schmidt
c7506c8b0a gst/gstbuffer.*: Add gst_buffer_(is|make)_metadata_writable as analogues of gst_buffer_(is|make)_writable.
Original commit message from CVS:
Reviewed By: Andy Wingo

* gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
(gst_buffer_make_metadata_writable):
* gst/gstbuffer.h:
Add gst_buffer_(is|make)_metadata_writable as analogues of
gst_buffer_(is|make)_writable.

* libs/gst/base/gstbasetransform.c:
(gst_base_transform_prepare_output_buf):
* plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
Use name gst_buffer_(is|make)_metadata_writable functions.

* tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
Test gst_buffer_(is|make)_metadata_writable

(Closes: #324162)
2006-01-16 14:32:33 +00:00
Sébastien Moutte
3c5c1d29ea libs/gst/base/gstbasesink.c: *cur = (now - base) * basesink->segment.abs_rate + time; replaced by
Original commit message from CVS:
* libs/gst/base/gstbasesink.c:
*cur = (now - base) * basesink->segment.abs_rate + time; replaced by
*cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
* win32/common/config.h:
added some defines GST_MAJORMINOR and HOST_CPU
* win32/common/libgstbase.def:
* win32/common/libgstreamer.def:
added some exported functions
2006-01-12 22:04:58 +00:00
Jan Schmidt
3b1dfa5fec gst/gstbuffer.c: gst_buffer_span should copy the timestamp of the first buffer if they were both originally overlappi...
Original commit message from CVS:
* gst/gstbuffer.c: (gst_buffer_span):
gst_buffer_span should copy the timestamp of the first buffer
if they were both originally overlapping subbuffers of the
same parent, using the same logic as the 'slow copy' case.
2006-01-12 16:07:50 +00:00
Stefan Kost
08501e5b3a docs/random/ensonic/media-device-daemon.txt: more ideas (dbus)
Original commit message from CVS:
* docs/random/ensonic/media-device-daemon.txt:
more ideas (dbus)
* gst/gstbuffer.c:
fix doc example, add clarification
* tools/gst-launch.1.in:
add initial info about GST_PLUGIN_PATH, needs more work
2006-01-11 19:18:27 +00:00
Thomas Vander Stichele
2dedb46c7e gst/gstvalue.c: make the G_TYPE_DATE instantiation work if debug is disabled
Original commit message from CVS:

* gst/gstvalue.c: (_gst_value_initialize):
make the G_TYPE_DATE instantiation work if debug is disabled
2006-01-07 10:04:36 +00:00
Tim-Philipp Müller
53040a8d23 gst/gstmessage.c: Don't crash when return location for error/warning debug string is NULL; add fact that return locat...
Original commit message from CVS:
* gst/gstmessage.c: (gst_message_parse_tag),
(gst_message_parse_error), (gst_message_parse_warning):
Don't crash when return location for error/warning debug
string is NULL; add fact that return locations can be
NULL to docs where appropriate.
2006-01-06 17:16:40 +00:00
Wim Taymans
80d706f806 gst/gstplugin.c: Replace strdup by g_strdup as suggested by Ser-ver.
Original commit message from CVS:
* gst/gstplugin.c: (gst_plugin_load_file):
Replace strdup by g_strdup as suggested by Ser-ver.
2006-01-05 10:43:02 +00:00
Tim-Philipp Müller
76da1081b6 gst/gstutils.h: Add prototype for _get_type() function to GST_BOILERPLATE_FULL macro, so that gcc doesn't complain if...
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* gst/gstutils.h:
Add prototype for _get_type() function to GST_BOILERPLATE_FULL
macro, so that gcc doesn't complain if the -Wmissing-prototypes
compiler switch is being used (#325429).
2006-01-02 20:26:06 +00:00
Tim-Philipp Müller
f3b5a1952c gst/gstbin.c: Disable duration query caching in bins until it gets fixed (see #324807).
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_query):
Disable duration query caching in bins until it gets
fixed (see #324807).
2005-12-29 16:47:27 +00:00
Tim-Philipp Müller
aee739e875 gst/gst.c: Init tags stuff and some other things before loading any static plugins (there may be other static plugins...
Original commit message from CVS:
* gst/gst.c: (init_post):
Init tags stuff and some other things before loading
any static plugins (there may be other static plugins
than just the GStreamer ones, and they may want to
register their own tags or formats or whatever, and
preferably without segfaulting).
* plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
Print at least a warning in the debug logs if we drop a
query just because we don't know how to adjust the value
in the particular format.
2005-12-27 12:11:19 +00:00
Edward Hervey
bd97cc0541 gst/gstcaps.*: Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
Original commit message from CVS:
* gst/gstcaps.c: (gst_static_caps_get_type):
* gst/gstcaps.h:
Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
* gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
* gst/gstpadtemplate.h:
Added gpointer GType for GstStaticPadTemplate so we can wrap them in
bindings.
2005-12-20 11:12:53 +00:00
Stefan Kost
e6a78b9709 gst/: change some char* into char[]
Original commit message from CVS:
* gst/gst.c:
* gst/gst_private.h:
change some char* into char[]
2005-12-16 21:59:12 +00:00
Wim Taymans
ab0fa35575 gst/gstregistryxml.c: Cleanups.
Original commit message from CVS:
* gst/gstregistryxml.c: (load_feature):
Cleanups.
Don't use g_object_unref on GstObjects so that we avoid
leaks on unsafe glibs.
2005-12-16 19:24:24 +00:00
Wim Taymans
0a12d6a308 gst/gstbin.c: Small doc updates.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_recalc_state):
Small doc updates.
2005-12-16 18:20:58 +00:00
Thomas Vander Stichele
9b87fae395 gst/gst.c: make the registry cache file HOST_CPU-dependent
Original commit message from CVS:

* gst/gst.c: (init_post):
make the registry cache file HOST_CPU-dependent
2005-12-16 17:34:19 +00:00
Tim-Philipp Müller
8ea948df92 gst/gstminiobject.c: Fix lcopy for mini objects, the mini object needs to be ref'ed.
Original commit message from CVS:
* gst/gstminiobject.c: (gst_value_mini_object_lcopy):
Fix lcopy for mini objects, the mini object needs to be ref'ed.
* tests/check/gst/gstminiobject.c: (my_foo_init),
(my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
(test_value_collection), (gst_mini_object_suite):
Add test to ensure refcounts end up as expected when passing
GstMiniObjects through g_object_get() and g_object_set().
2005-12-15 12:22:38 +00:00
Jan Schmidt
bcdfacaf5d gst/gstpad.c: Don't allow activation of a srcpad in pull_range if it has no getrange function.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
Don't allow activation of a srcpad in pull_range if it has no
getrange function.
Change some debug statements to be a little clearer

* plugins/elements/gsttypefindelement.c:
(gst_type_find_handle_src_query):
Check that we have a peer before executing queries thereupon.

* tests/examples/metadata/read-metadata.c: (message_loop):
Use gst_bus_pop instead of gst_bus_poll when we just want it to
immediately return us any available message with 0 timeout.
2005-12-14 10:09:35 +00:00
Michael Smith
83a815e648 gst/gsttypefindfactory.c: Don't unref factories after calling them.
Original commit message from CVS:
* gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
Don't unref factories after calling them.
* libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
* plugins/elements/gsttypefindelement.c:
(gst_type_find_element_chain):
Free lists of factories after using them. Fixing typefinding memory
leaks.
2005-12-12 19:09:49 +00:00
Stefan Kost
86deff7b5b gst/gstpluginfeature.c: more meaningful debug output
Original commit message from CVS:
* gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
(gst_plugin_feature_load):
more meaningful debug output
* configure.ac:
* tests/Makefile.am:
* tests/old/examples/Makefile.am:
make make distcheck happy again
2005-12-12 18:12:13 +00:00
Wim Taymans
8666c1597d gst/gstsegment.c: Added more documentation.
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_init),
(gst_segment_set_last_stop), (gst_segment_set_seek),
(gst_segment_set_newsegment), (gst_segment_to_stream_time),
(gst_segment_to_running_time):
Added more documentation.
Make sure the last_pos value is updated properly.
Make sure to_stream_time and to_running_time don't
operate on wrong values.

* tests/check/gst/gstsegment.c: (GST_START_TEST):
Update check.
2005-12-12 12:48:35 +00:00
Thomas Vander Stichele
ef7dedbfc8 gst/gstvalue.c: floor is not needed, F is always positive; this obviates the need for adding -lm when building withou...
Original commit message from CVS:

* gst/gstvalue.c: (gst_value_transform_double_fraction):
floor is not needed, F is always positive; this obviates the
need for adding -lm when building without libxml
2005-12-12 10:59:12 +00:00
Wim Taymans
d16ce65df7 gst/gstbuffer.c: Small docs update.
Original commit message from CVS:
* gst/gstbuffer.c:
Small docs update.

* gst/gstcaps.c: (gst_caps_is_equal):
Don't assert on NULL <--> X. Fixes #323260

* gst/gstminiobject.c: (gst_mini_object_replace):
If we're doing atomic operations, we might just as well use
the proper way to get an atomic pointer.

* libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
Clean up debugging.
2005-12-07 15:16:43 +00:00
Michael Smith
4e8cd3c843 gst/parse/grammar.y: Remove handling of { } for threads.
Original commit message from CVS:
* gst/parse/grammar.y:
Remove handling of { } for threads.
2005-12-07 11:52:05 +00:00
Thomas Vander Stichele
288f61d21f expand tabs
Original commit message from CVS:
expand tabs
2005-12-06 19:29:15 +00:00
Thomas Vander Stichele
ccd5fa2866 remove deprecation guard from docstring
Original commit message from CVS:
remove deprecation guard from docstring
2005-12-05 14:14:02 +00:00
Thomas Vander Stichele
4477b7090b fix docs
Original commit message from CVS:
fix docs
2005-12-05 13:06:37 +00:00
Wim Taymans
4f28ca8331 libs/gst/base/gstbasetransform.c (gst_base_transform_prepare_output_buf)
Original commit message from CVS:
2005-12-05  Andy Wingo  <wingo@pobox.com>

patch by: Wim Taymans <wim@fluendo.com>

* libs/gst/base/gstbasetransform.c
(gst_base_transform_prepare_output_buf)
(gst_base_transform_buffer_alloc):
* plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
alloc_buffer_and_set_caps.

* gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
set_caps on the source pad.
(gst_pad_alloc_buffer_and_set_caps): New function, does what
alloc_buffer used to do. Fixes #322874.

* docs/gst/gstreamer-sections.txt:
* docs/design/part-negotiation.txt:
* docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
changes.
2005-12-05 13:01:35 +00:00
Wim Taymans
0aa5cea288 Back out previous code changes, leave doc updates, file bugs instead.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_is_equal):
* plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
(gst_fake_src_create):
Back out previous code changes, leave doc updates, file bugs
instead.
2005-12-05 10:59:17 +00:00
Wim Taymans
39e0ac7465 gst/gstcaps.c: Comparing NULL against !NULL yields different caps, not a failure.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_is_equal):
Comparing NULL against !NULL yields different caps, not a
failure.
2005-12-05 10:22:55 +00:00
Wim Taymans
9d8037eed8 gst/gstpipeline.c: Fix small typo in docs.
Original commit message from CVS:
* gst/gstpipeline.c:
Fix small typo in docs.
2005-12-05 10:18:27 +00:00
Thomas Vander Stichele
9def80ce05 gst/gst.c (init_post): remove hard-coded 0.9 location for registries/plugins with a MAJORMINOR one.
Original commit message from CVS:
2005-12-05  Andy Wingo  <wingo@pobox.com>

patch by: Thomas Vander Stichele  <thomas at apestaart dot org>

* gst/gst.c (init_post): remove hard-coded 0.9 location for
registries/plugins with a MAJORMINOR one.
(plugin_desc): Rename library from gstcoreleements to
staticelements. Fixes #323222.
2005-12-05 09:53:54 +00:00
Thomas Vander Stichele
057de1f845 add tests that seem to show that the guint64/gdouble conversions are correct.
Original commit message from CVS:
* gst/gstutils.c: (gst_util_guint64_to_gdouble),
(gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
* gst/gstutils.h:
* tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
add tests that seem to show that the guint64/gdouble conversions
are correct.
2005-12-04 09:57:11 +00:00
Wim Taymans
381742562f gst/: Fix docs again.
Original commit message from CVS:
* gst/gstregistry.c: (gst_registry_add_path):
* gst/gstregistry.h:
* gst/gstregistryxml.c:
Fix docs again.
Removed old code from gstregistryxml.c
2005-12-02 12:34:47 +00:00
Wim Taymans
db2b4d916c gst/gstutils.c: Small cleanup.
Original commit message from CVS:
* gst/gstutils.c: (gst_util_uint64_scale_int64),
(gst_util_uint64_scale_int):
Small cleanup.

* libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
Add debug log line.

* libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
Add FIXME.
2005-12-02 11:36:50 +00:00
Michael Smith
b32059fdc6 gst/gst.c: Escape a % to make gtkdoc happier; bug 322958.
Original commit message from CVS:
* gst/gst.c:
Escape a % to make gtkdoc happier; bug 322958.
2005-12-01 23:57:07 +00:00
Andy Wingo
a5820445bf gst/gstevent.h (struct _GstEvent): Meant to remove the extra padding here before, but it missed the commit.
Original commit message from CVS:
2005-12-01  Andy Wingo  <wingo@pobox.com>

* gst/gstevent.h (struct _GstEvent): Meant to remove the extra
padding here before, but it missed the commit.
2005-12-01 12:00:56 +00:00
Thomas Vander Stichele
9c28102415 fix the docs build
Original commit message from CVS:
fix the docs build
2005-11-30 19:36:54 +00:00
Thomas Vander Stichele
870761131b various fixes to make
Original commit message from CVS:

* configure.ac:
* gst/Makefile.am:
* gst/gst.c:
* gst/gstplugin.h:
* gst/gstregistry.h:
* tests/benchmarks/complexity.c:
* tests/benchmarks/mass-elements.c:
* tests/check/Makefile.am:
* tools/Makefile.am:
* tools/gst-inspect.c:
* tools/gst-xmlinspect.c:
various fixes to make
--disable-nls --disable-registry --disable-loadsave           --disable-parse --disable-gst-debug
work and get the core .so down to 360444 bytes after stripping
2005-11-30 19:01:53 +00:00
Thomas Vander Stichele
9055674a03 add some explicit casts update dsp files; also installs the debug build in \gstreamer\debug to separate it from the n...
Original commit message from CVS:
add some explicit casts
update dsp files; also installs the debug build in \gstreamer\debug to separate it from the non-debug build
2005-11-30 10:13:54 +00:00
Thomas Vander Stichele
6802a8b4ba docs/gst/gstreamer-sections.txt: remove double entries from the docs
Original commit message from CVS:

* docs/gst/gstreamer-sections.txt:
remove double entries from the docs
* gst/gst_private.h:
* gst/gstinfo.c: (_gst_debug_init):
remove the THREAD debug category
* gst/Makefile.am:
* gst/gstqueue.c:
* gst/gstqueue.h:
* docs/gst/gstreamer.types:
* plugins/elements/gstqueue.c: (gst_queue_get_type),
(gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
completely move queue and fix up debugging categories
2005-11-30 09:59:04 +00:00
Thomas Vander Stichele
aa56b376a7 gst/gstclock.c: remove crack non-portable handrolled DEBUG macro
Original commit message from CVS:
2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>

* gst/gstclock.c: (do_linear_regression):
remove crack non-portable handrolled DEBUG macro
2005-11-30 09:18:15 +00:00
Edward Hervey
0db5df88fc gst/: Fix memory leak in GstTypeFindFactory.
Original commit message from CVS:
* gst/gsttypefind.c: (gst_type_find_register):
* gst/gsttypefind.h:
* gst/gsttypefindfactory.c: (gst_type_find_factory_init),
(gst_type_find_factory_dispose):
* gst/gsttypefindfactory.h:
Fix memory leak in GstTypeFindFactory.
2005-11-29 23:56:20 +00:00
Thomas Vander Stichele
2011345b96 move queue from core to the elements plugin ç
Original commit message from CVS:

* gst/gst.c:
* plugins/elements/Makefile.am:
* plugins/elements/gstelements.c:
* plugins/elements/gstqueue.c:
move queue from core to the elements plugin

ç
2005-11-29 19:47:00 +00:00
Andy Wingo
a08a8d8fea libs/gst/base/: en-LARGE the padding.
Original commit message from CVS:
2005-11-29  Andy Wingo  <wingo@pobox.com>

* libs/gst/base/gstbasetransform.h:
* libs/gst/base/gstbasesrc.h:
* libs/gst/base/gstbasesink.h: en-LARGE the padding.

* gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
of pointers by which to pad very extensible base classes (like the
ones in libs/gst/base).
2005-11-29 19:37:49 +00:00
Thomas Vander Stichele
a0c4c4812c CVS surgery + support to move base, check, and net out of gst and into libs/gst
Original commit message from CVS:
CVS surgery + support to move base, check, and net out of gst
and into libs/gst
2005-11-29 19:12:30 +00:00
Andy Wingo
65ce5ed080 gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
Original commit message from CVS:
2005-11-29  Andy Wingo  <wingo@pobox.com>

* gst/gstevent.h (struct _GstEvent): Only one pointer of padding.

* gst/gststructure.h (struct _GstStructure): Only one pointer of
padding.

* gst/gstquery.h (struct _GstQuery): Only one pointer of padding.

* gst/gstpluginfeature.h: Remove a comment in PluginFeature.

* gst/gstplugin.h (struct _GstPluginClass): Add some padding.

* gst/gstobject.h: (struct _GstObject): Only one pointer of
padding; reduces object size by about 30%. We don't expect
anything else to go into gstobject.

* gst/gstminiobject.h (struct _GstMiniObject)
(struct _GstMiniObjectClass): Only one pointer of padding; the
payload is only a pointer and two ints anyway. For the class there
are only two methods as well.

* gst/gstelement.h (struct _GstElementClass): Removed
the state_changed signal callback, it is not used.
2005-11-29 18:57:59 +00:00
Thomas Vander Stichele
9389a2f8b3 check/Makefile.am: look in the right place for elements, a lot more chance of success
Original commit message from CVS:

* check/Makefile.am:
look in the right place for elements, a lot more chance of
success
* gst/Makefile.am:
remove indexers and elements subdirs
* plugins/Makefile.am:
make indexers conditional
2005-11-29 18:14:35 +00:00
Thomas Vander Stichele
8c96632081 remove moved dirs
Original commit message from CVS:
remove moved dirs
2005-11-29 18:03:52 +00:00
Thomas Vander Stichele
233e55299e remove empty dirs
Original commit message from CVS:
remove empty dirs
2005-11-29 18:02:45 +00:00
Andy Wingo
41f439b0a1 Rename gstnet-tempname to gstnet. Fixes #322257.
Original commit message from CVS:
2005-11-29  Andy Wingo  <wingo@pobox.com>

* check/Makefile.am:
* pkgconfig/gstreamer-net-uninstalled.pc.in:
* pkgconfig/gstreamer-net.pc.in:
* gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
#322257.
2005-11-29 17:47:06 +00:00
Thomas Vander Stichele
3ea45adb90 gst/gstevent.*: fix #320529 - clean up new_segment API and structure.
Original commit message from CVS:

* gst/gstevent.c: (gst_event_new_new_segment),
(gst_event_parse_new_segment):
* gst/gstevent.h:
fix #320529 - clean up new_segment API and structure.
Let's hope everyone was using the methods, and not the structure.
2005-11-29 17:23:56 +00:00
Edward Hervey
c4d1ffa5c7 gst/base/gstbasesink.c: Properly handle non GST_FORMAT_TIME segment
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_event), (gst_base_sink_do_sync),
(gst_base_sink_activate_pull), (gst_base_sink_change_state):
Properly handle non GST_FORMAT_TIME segment
* gst/elements/gstidentity.c: (gst_identity_transform_ip):
Properly handle non GST_FORMAT_TIME segment
* gst/gstsegment.c:
This function is valid if the accumulator is 0 and the format
is different from the requested format.
2005-11-29 17:13:44 +00:00
Jan Schmidt
aff648ab66 gst/base/gstbasetransform.c: Treat a pad alloc with new caps the same as if we were not negotiated, in order to allow...
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
Treat a pad alloc with new caps the same as if we were not
negotiated, in order to allow a changing upstream output
to produce a new format of data.
2005-11-29 15:12:22 +00:00
Edward Hervey
33a15d5e67 gst/base/gstbasetransform.c: The event virtual method is now properly implemented, with a default handler
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_class_init),
(gst_base_transform_event), (gst_base_transform_eventfunc):
The event virtual method is now properly implemented, with a default
handler
Sub classes should call the parent_class event method. They should
return FALSE if they had a problem handling the given event, or don't
want GstBaseTransform to send that even downstream
* gst/elements/gstidentity.c: (gst_identity_class_init),
(gst_identity_init), (gst_identity_event),
(gst_identity_transform_ip), (gst_identity_set_property),
(gst_identity_get_property):
* gst/elements/gstidentity.h:
Added the single-segment boolean property.
If set to TRUE, it will output a single segment of data, starting from
0, will eat up all incoming newsegment, and modify the timestamp of the
buffers accordingly
2005-11-29 14:47:07 +00:00
Tim-Philipp Müller
696cf53af5 gst/gstghostpad.c: Don't ref NULL target pad (#322751). Improve docs.
Original commit message from CVS:
* gst/gstghostpad.c: (gst_proxy_pad_get_target):
Don't ref NULL target pad (#322751). Improve docs.
2005-11-29 13:10:38 +00:00
Michael Smith
9bc0e85dce gst/gstregistryxml.c: Don't crash if we failed to load a feature from a plugin.
Original commit message from CVS:
* gst/gstregistryxml.c: (load_plugin):
Don't crash if we failed to load a feature from a plugin.
2005-11-29 11:07:54 +00:00
Thomas Vander Stichele
eaf17081ca Makefile.am: don't run checks if we don't have check
Original commit message from CVS:
* Makefile.am:
don't run checks if we don't have check
* common/check.mak:
remove the registry when running make torture
* docs/gst/gstreamer-sections.txt:
remove second multiply
* gst/gstqueue.c: (gst_queue_loop):
fix a compile warning when disabling debug
2005-11-28 19:58:56 +00:00
Jan Schmidt
9f5ea35423 gst/gstinfo.h: Hey! Let's print the pad name if the pointer != NULL instead of when it == NULL :-)
Original commit message from CVS:
* gst/gstinfo.h:
Hey! Let's print the pad name if the pointer != NULL instead
of when it == NULL :-)
2005-11-28 19:43:27 +00:00
Wim Taymans
2dc0ef57fd check/gst/gstutils.c: Updated check, add some scaling accuracy checking code.
Original commit message from CVS:
* check/gst/gstutils.c: (GST_START_TEST):
Updated check, add some scaling accuracy checking code.

* gst/gstutils.c: (gst_util_div128_64),
(gst_util_uint64_scale_int64), (gst_util_uint64_scale),
(gst_util_uint64_scale_int):
Fix 6 times faster division code. Optimize for common
1/1 and less common X/1 cases.
2005-11-28 18:44:11 +00:00
Thomas Vander Stichele
597335c574 doc updates
Original commit message from CVS:
doc updates
2005-11-28 17:59:25 +00:00
Wim Taymans
870d272630 check/gst/gstutils.c: More checks.
Original commit message from CVS:
* check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
More checks.

* gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
(do_linear_regression), (gst_clock_add_observation):
Cleanups.
Release lock when the clock cannot be slaved.
Catch the case where the regression returned an invalid denominator.

* gst/gstutils.c: (gst_util_div128_64_iterate),
(gst_util_div128_64), (gst_util_uint64_scale_int64),
(gst_util_uint64_scale), (gst_util_uint64_scale_int):
Add protentially more performant non-iterative 128/64 divide function
that unfortunatly does not work yet.
Shortcut the trivial 0/X = 0 case.
Remove the warnings on overflow.
2005-11-28 16:05:35 +00:00
Thomas Vander Stichele
faa56ab3a8 gst/gstplugin.c: everything causing a plugin not to load should be at least a WARNING
Original commit message from CVS:
* gst/gstplugin.c: (gst_plugin_register_func):
everything causing a plugin not to load should be at least a WARNING
2005-11-28 14:18:22 +00:00
Thomas Vander Stichele
275498ed35 log caps
Original commit message from CVS:
log caps
2005-11-28 14:02:54 +00:00
Thomas Vander Stichele
b3ac5a0f4e fix docs
Original commit message from CVS:
fix docs
2005-11-28 14:01:52 +00:00
Andy Wingo
3cf09efb92 gst/gstpad.c (fixate_value): Use array functions for arrays.
Original commit message from CVS:
2005-11-28  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (fixate_value): Use array functions for arrays.
2005-11-28 10:04:45 +00:00
Thomas Vander Stichele
9e3259dd14 gst/Makefile.am: don't try and build net if we don't even have <sys/socket.h>
Original commit message from CVS:
* gst/Makefile.am:
don't try and build net if we don't even have <sys/socket.h>
2005-11-28 08:20:48 +00:00
Jan Schmidt
84279849a8 check/: Add tests for fdsrc seekability
Original commit message from CVS:
* check/Makefile.am:
* check/elements/fdsrc.c: (event_func), (setup_fdsrc),
(cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
Add tests for fdsrc seekability

* gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
(gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
(gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
(gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
* gst/elements/gstfdsrc.h:
fdsrc should not be a 'live' source.
Implement seeking on seekable fd's.

* gst/gstquery.c: (gst_query_new_seeking),
(gst_query_parse_seeking):
* gst/gstquery.h:
Implement SEEKING query functions:
*_new_seeking and *_parse_seeking
2005-11-27 22:50:09 +00:00
Stefan Kost
7b347681d5 gst/gstelement.c: don't loop forever
Original commit message from CVS:
* gst/gstelement.c: (gst_element_dispose):
don't loop forever
* gst/gstiterator.c:
* gst/gststructure.c:
doc fixes
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstinterpolation.c:
(interpolate_none_get_enum_value_array):
support controlling enums
2005-11-27 22:43:08 +00:00
Tim-Philipp Müller
676421cf07 gst/gstvalue.c: Improve documentation for gst_value_union().
Original commit message from CVS:
* gst/gstvalue.c:
Improve documentation for gst_value_union().
* gst/gstvalue.h:
Change return value for union, intersect and subtract functions
from gint to gboolean.
2005-11-27 19:52:49 +00:00
Tim-Philipp Müller
abaf6b22f1 gst/gstvalue.*: Use gint, gdouble and gchar in our API instead of int, double and char (and make usage in gstvalue.c ...
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_serialize_any_list),
(gst_value_transform_any_list_string),
(gst_value_deserialize_list), (gst_value_deserialize_array),
(gst_value_set_int_range), (gst_value_deserialize_int_range),
(gst_value_set_double_range), (gst_value_deserialize_double_range),
(gst_value_set_fraction_range_full),
(gst_value_deserialize_fraction_range),
(gst_value_deserialize_caps), (gst_value_deserialize_buffer),
(gst_value_deserialize_boolean),
(gst_value_deserialize_int_helper), (gst_value_deserialize_double),
(gst_value_serialize_float), (gst_value_deserialize_float),
(gst_string_wrap), (gst_value_deserialize_string),
(gst_value_deserialize_enum), (gst_value_deserialize_flags),
(gst_value_union_int_range_int_range),
(gst_value_intersect_int_range_int_range),
(gst_value_intersect_double_range_double_range),
(gst_value_create_new_range), (gst_value_subtract_int_range_int),
(gst_value_subtract_int_range_int_range),
(gst_value_subtract_double_double_range),
(gst_value_subtract_double_range_double_range),
(gst_value_deserialize_fraction):
* gst/gstvalue.h:
Use gint, gdouble and gchar in our API instead of int, double and
char (and make usage in gstvalue.c more consistent).
2005-11-27 18:11:02 +00:00
Thomas Vander Stichele
d65ec49ee9 add undefined for core
Original commit message from CVS:
add undefined for core
2005-11-27 17:05:38 +00:00
Thomas Vander Stichele
f496f75765 update LDFLAGS use some more
Original commit message from CVS:

* configure.ac:
* gst/Makefile.am:
* gst/base/Makefile.am:
* gst/check/Makefile.am:
* gst/elements/Makefile.am:
* gst/net/Makefile.am:
update LDFLAGS use some more
2005-11-27 15:15:35 +00:00
Edward Hervey
8a5411d0be gst/gstpluginfeature.c: This shouldn't issue a g_warning since it returns NULL if it couldn't find the plugin, and al...
Original commit message from CVS:
* gst/gstpluginfeature.c: (gst_plugin_feature_load):
This shouldn't issue a g_warning since it returns NULL if it
couldn't find the plugin, and all functions using this behave
properly on a NULL return. Switching to a GST_WARNING.
2005-11-26 11:28:32 +00:00
Jan Schmidt
4b3455b7a8 gst/gstbin.c: Don't leak clock messages.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_handle_message_func):
Don't leak clock messages.
2005-11-25 17:06:36 +00:00
Wim Taymans
7386cce105 gst/gstutils.c: Optimisations, remove unneeded vars.
Original commit message from CVS:
* gst/gstutils.c: (gst_util_uint64_scale_int64),
(gst_util_uint64_scale_int):
Optimisations, remove unneeded vars.
2005-11-25 11:38:38 +00:00
Wim Taymans
fb7302fc41 check/gst/gstutils.c: Added more checks for the high precision uint64 cases.
Original commit message from CVS:
* check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
Added more checks for the high precision uint64 cases.

* gst/gstutils.c: (gst_util_uint64_scale_int64),
(gst_util_uint64_scale), (gst_util_uint64_scale_int):
Implement high precission (guint64 * guint64) / guint64.
2005-11-25 00:02:05 +00:00
Wim Taymans
d0c276b717 gst/base/gstbasesrc.c: Fix wrong percentage query.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_query):
Fix wrong percentage query.

* gst/gstutils.c: (gst_util_uint64_scale),
(gst_util_uint64_scale_int):
Add some more common cases that can be handled
efficiently to _scale.
2005-11-24 19:06:58 +00:00
Thomas Vander Stichele
888bf79853 check/gst/gstminiobject.c: don't use check calls from threads; check probably isn't threadsafe and using a lock to ma...
Original commit message from CVS:

* check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
(gst_mini_object_suite):
don't use check calls from threads; check probably isn't
threadsafe and using a lock to make it threadsafe would
defeat the purpose of this check
* gst/check/gstcheck.c:
* gst/check/gstcheck.h:
use GST_DEBUG some more
2005-11-24 18:40:58 +00:00
Wim Taymans
6ceca6153b gst/gstutils.c: Chain trivial case to _scale_int.
Original commit message from CVS:
* gst/gstutils.c: (gst_util_uint64_scale),
(gst_util_uint64_scale_int):
Chain trivial case to _scale_int.
2005-11-24 18:03:15 +00:00
Wim Taymans
fbf5f16d69 check/gst/gstutils.c: Added test for scaling.
Original commit message from CVS:
* check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
Added test for scaling.

* gst/gstclock.h:
Small doc fix.

* gst/gstutils.c: (gst_util_uint64_scale_int):
Implemented high precision scaling code.
2005-11-24 17:44:57 +00:00
Stefan Kost
9cd1643368 gst/gstinfo.h: do not crash on pad==NULL
Original commit message from CVS:
* gst/gstinfo.h:
do not crash on pad==NULL
2005-11-24 16:56:28 +00:00
Michael Smith
836eb1dd02 gst/base/gstbasesink.c: Unlock the PREROLL_LOCK in a failure case.
Original commit message from CVS:
2005-11-24  Michael Smith <msmith@fluendo.com>

* gst/base/gstbasesink.c: (gst_base_sink_handle_object):
Unlock the PREROLL_LOCK in a failure case.
2005-11-24 12:44:25 +00:00
Wim Taymans
a9f7f7b7b6 Doc fixes.
Original commit message from CVS:
Doc fixes.
2005-11-24 09:44:07 +00:00
Wim Taymans
ca6f8f5387 Doc updates.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/glib-compat.c:
* gst/gsttagsetter.c:
* gst/gstvalue.c:
* gst/net/gstnetclientclock.c:
* gst/net/gstnettimepacket.h:
Doc updates.
2005-11-23 16:10:38 +00:00
Thomas Vander Stichele
3dfcce5a99 remove mentions of sinesrc
Original commit message from CVS:
remove mentions of sinesrc
2005-11-23 15:49:06 +00:00
Michael Smith
f1819a7a28 docs/gst/gstreamer-sections.txt: Update for new API and API changes.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
Update for new API and API changes.
* gst/gstobject.h:
Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
* gst/gstvalue.c:
Documentation typo fix.
* gst/net/gstnettimepacket.c:
Documentation fixes for arguments.
2005-11-23 14:52:31 +00:00
Jan Schmidt
cfc78f21ec API Changes.
Original commit message from CVS:
* gst/gststructure.c: (gst_structure_get_fraction),
(gst_structure_parse_value),
(gst_structure_fixate_field_nearest_fraction):
* gst/gststructure.h:
* gst/gstutils.c: (gst_util_uint64_scale_int):
* gst/gstutils.h:
* scripts/update-funcnames:
API Changes.
Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
Make gst_structure_fixate_field_nearest_fraction take a numerator
and denominator argument instead of a GValue
add gst_structure_get_fraction helper function.
2005-11-23 13:22:21 +00:00
Wim Taymans
9e0575c379 docs/design/part-TODO.txt: Update TODO.
Original commit message from CVS:
* docs/design/part-TODO.txt:
Update TODO.

* gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
* gst/net/gstnetclientclock.h:
Use parent fields for timeout and window_size.
2005-11-23 13:14:46 +00:00
Christian Schaller
269d554be4 add missing cvsignores so CVS shuts up
Original commit message from CVS:
add missing cvsignores so CVS shuts up
2005-11-23 12:39:36 +00:00
Andy Wingo
da72aaa235 check/net/gstnetclientclock.c (test_functioning): Adjust to rate_num/rate_denom change.
Original commit message from CVS:
2005-11-23  Andy Wingo  <wingo@pobox.com>

* check/net/gstnetclientclock.c (test_functioning): Adjust to
rate_num/rate_denom change.

* gst/net/gstnetclientclock.c
(gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
OBJECT_LOCK. Don't call add_observation with the lock.

* gst/gstclock.c (gst_clock_init): Initialize the rate as a
fraction.
(gst_clock_adjust_unlocked): Adjust using uint64_scale and the
rate fraction.
(gst_clock_set_calibration, gst_clock_get_calibration): Change to
deal with rate as a fraction whose numerator and denominator are
GstClockTime values.
(gst_clock_set_master): Only use the OBJECT_LOCK to set the
master; the other fields are protected by the SLAVE_LOCK.
(do_linear_regression): Note that this must be called with the
SLAVE_LOCK.
(gst_clock_add_observation): Take the SLAVE_LOCK, not the
OBJECT_LOCK. Call set_calibration instead of touching the
variables directly.
(gst_clock_set_property, gst_clock_get_property): Protect
master/slave parameters with the SLAVE_LOCK.

* gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
note that all of the instance variables that add_observation and
the set_master functions use are protected by that lock and not
the OBJECT_LOCK.
(GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.

* gst/gstclock.c (gst_clock_add_observation): No longer requires
the caller to take the object lock.
2005-11-23 12:36:00 +00:00
Wim Taymans
79991c29b1 gst/gsterror.*: Add error for clock stuff.
Original commit message from CVS:
* gst/gsterror.c: (_gst_core_errors_init):
* gst/gsterror.h:
Add error for clock stuff.

* gst/gstpipeline.c: (gst_pipeline_change_state),
(gst_pipeline_set_clock):
Post clock error when clock cannot be used in a pipeline.
2005-11-23 11:22:39 +00:00
Stefan Kost
df00e2ede5 docs/gst/gstreamer-sections.txt: make two symbols from gstinfo private for the docs
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
make two symbols from gstinfo private for the docs
* gst/base/gstcollectpads.h:
* gst/gstutils.c:
fix doc typos, update docs
2005-11-23 11:05:37 +00:00
Wim Taymans
cf925ebb6f gst/base/gstbasesink.*: No need to store the clock, the parent element class already has it.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_class_init),
(gst_base_sink_wait), (gst_base_sink_do_sync),
(gst_base_sink_handle_event):
* gst/base/gstbasesink.h:
No need to store the clock, the parent element class already
has it.

* gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
Updates for clock_set returning a gboolean

* gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
(gst_clock_id_wait_async), (gst_clock_class_init),
(gst_clock_init), (gst_clock_finalize),
(gst_clock_get_internal_time), (gst_clock_get_time),
(gst_clock_slave_callback), (gst_clock_set_master),
(gst_clock_get_master), (do_linear_regression),
(gst_clock_add_observation), (gst_clock_set_property),
(gst_clock_get_property):
* gst/gstclock.h:
Implement master/slave. When setting a clock as a slave, a
periodic timeout is scheduled to sample master and slave times.
Then the slave clock is recalibrated to match offset and rate
of the master clock.
Update logging a bit.
Add flag so that a clock can state that is cannot be slaved to
another clock.

* gst/gstelement.c: (gst_element_set_clock):
* gst/gstelement.h:
The set_clock returns a gboolean for when an element cannot
deal with the selected clock in the pipeline.

* gst/gstpipeline.c: (gst_pipeline_change_state),
(gst_pipeline_set_clock):
* gst/gstpipeline.h:
Handle the case where the selected clock cannot be set on
the pipeline.

* gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
(gst_net_client_clock_init), (gst_net_client_clock_finalize),
(gst_net_client_clock_set_property),
(gst_net_client_clock_get_property),
(gst_net_client_clock_observe_times):
* gst/net/gstnetclientclock.h:
Use regression code in GstClock parent, remove duplicated
functionality.
2005-11-22 18:28:44 +00:00
Michael Smith
59ac39499a Add underscores
Original commit message from CVS:
Add underscores
2005-11-22 16:31:08 +00:00
Thomas Vander Stichele
54f5eb6c8a gst/: correctly fix GEnumValues so that nick is the short lowercase dashed tag
Original commit message from CVS:

* gst/elements/Makefile.am:
* gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
* gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
(gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
(gst_fake_src_init), (gst_fake_src_prepare_buffer),
(gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
* gst/elements/gstfakesrc.h:
* gst/gstqueue.c: (queue_leaky_get_type):
correctly fix GEnumValues so that nick is the short lowercase
dashed tag
* tools/gst-inspect.c: (print_element_properties_info):
also show the nick, since it's useful to use from parse_launch
syntax
Fixes #322139
2005-11-22 15:52:03 +00:00
Michael Smith
4a36e535e9 Add util method for scaling a clocktime by a fraction. Useful implementation is left as an exercise for the reader.
Original commit message from CVS:
* gst/gstutils.c: (gst_util_clocktime_scale):
* gst/gstutils.h:
* docs/gst/gstreamer-sections.txt:
Add util method for scaling a clocktime by a fraction. Useful
implementation is left as an exercise for the reader.
2005-11-22 15:15:53 +00:00
Jan Schmidt
2e248d331c gst/gstvalue.c: If needed, allocate storage in the destination value during collection.
Original commit message from CVS:

* gst/gstvalue.c: (gst_value_collect_fraction_range):
If needed, allocate storage in the destination value during
collection.
2005-11-22 14:29:10 +00:00
Edward Hervey
891d05bc03 Removed GstURI , closes bug #321061
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/Makefile.am:
* gst/gst.h:
* gst/gsturitype.c:
* gst/gsturitype.h:
* gst/gstutils.c: (gst_util_set_object_arg):
* tools/gst-compprep.c: (main):
* tools/gst-inspect.c: (print_element_properties_info):
Removed GstURI , closes bug #321061
2005-11-22 13:58:00 +00:00
Jan Schmidt
5f54f34216 Oops, broke automatic string type parsing.
Original commit message from CVS:
* check/gst/gststructure.c: (GST_START_TEST):
* gst/gststructure.c: (gst_structure_parse_value):
Oops, broke automatic string type parsing.
Add a test to catch it in future.
2005-11-22 13:14:51 +00:00
Andy Wingo
ba9fadac70 gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
Original commit message from CVS:
2005-11-22  Andy Wingo  <wingo@pobox.com>

* gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
(gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
Actually rename the function implementations. Grr.
2005-11-22 13:02:12 +00:00
Jan Schmidt
32538f9ed2 check/gst/capslist.h: Comment test cases
Original commit message from CVS:

* check/gst/capslist.h:
Comment test cases
* check/gst/gststructure.c: (GST_START_TEST),
(gst_structure_suite):
Test automatic value type detection in gst_structure_from_string.
* gst/gststructure.c: (gst_structure_parse_value):
Add fraction as a type we try and guess automatically in
caps/structure strings.
2005-11-22 12:35:42 +00:00
Torsten Schoenfeld
c9bce50d33 gst/gsttagsetter.*: (gst_tag_setter_merge_tags) (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values) (gst_tag_set...
Original commit message from CVS:
2005-11-22  Andy Wingo  <wingo@pobox.com>

patch by: Torsten Schoenfeld <kaffeetisch gmx de>

* gst/gsttagsetter.h:
* gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
(gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
(gst_tag_setter_add_tag_valist)
(gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
_add_values, _add_valist, and _add_valist_values. Since this is an
interface the function suffixes should be more explicit so
language binding don't end up with element.add_valist ->
gst_tag_setter_add_valist, for example. Fixes #322069.
2005-11-22 12:20:04 +00:00
Jan Schmidt
ba0d715dc8 check/gst/gstcaps.c: Extend caps string tests to check that a caps to string conversion is reversible and produces th...
Original commit message from CVS:
* check/gst/gstcaps.c: (GST_START_TEST):
Extend caps string tests to check that a caps to string
conversion is reversible and produces the same caps.

* gst/gststructure.c: (gst_structure_value_get_generic_type):
Output "fraction" as the generic type fraction range, so caps
serialisation and deserialisation works.
* check/gst/capslist.h:
* gst/gstvalue.c: (gst_value_deserialize_fraction):
Support 'MIN' and 'MAX' for deserialising fractions.
2005-11-22 11:56:01 +00:00
Michael Smith
48d1473e3d Minor doc fix.
Original commit message from CVS:
Minor doc fix.
2005-11-22 11:50:12 +00:00
Andy Wingo
19858fd9f0 gst/gstevent.h (gst_event_new_new_segment) (gst_event_parse_new_segment, gst_event_new_buffer_size)
Original commit message from CVS:
2005-11-22  Andy Wingo  <wingo@pobox.com>

* gst/gstevent.h (gst_event_new_new_segment)
(gst_event_parse_new_segment, gst_event_new_buffer_size)
(gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
Renamed from *_newsegment, *_buffersize, *_notarget.

* scripts/update-funcnames: New script, performs the changes
listed above.
2005-11-22 11:48:58 +00:00
Wim Taymans
e9606ada93 gst/base/gstbasesink.c: Make sure the GstFlowReturn is returned.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object):
Make sure the GstFlowReturn is returned.

* gst/gstbus.c: (gst_bus_add_signal_watch_full),
(gst_bus_add_signal_watch):
* gst/gstbus.h:
add gst_bus_add_signal_watch_full.

* gst/gstplugin.c: (gst_plugin_load_file):
Small style cleanup.
2005-11-22 11:25:01 +00:00
Jan Schmidt
97d08eb1a3 Fix subtraction.
Original commit message from CVS:
* check/gst/gstvalue.c: (GST_START_TEST):
* gst/gstvalue.c: (gst_value_fraction_subtract):
Fix subtraction.
2005-11-22 09:42:17 +00:00
Stefan Kost
f6afcd058c gst/gst.h: include "gstchildproxy.h"
Original commit message from CVS:
* gst/gst.h:
include "gstchildproxy.h"
* gst/gstchildproxy.h:
* libs/gst/controller/gstcontroller.h:
use G_GNUC_NULL_TERMINATED
2005-11-22 09:35:25 +00:00
Jan Schmidt
506aa94ce2 Implement fraction ranges and extend GstFraction to support arithmetic subtraction, as well as deserialization from i...
Original commit message from CVS:
* check/gst/capslist.h:
* check/gst/gstcaps.c: (GST_START_TEST):
* check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
* gst/gststructure.c: (gst_structure_parse_range),
(gst_structure_fixate_field_nearest_fraction):
* gst/gststructure.h:
* gst/gstvalue.c: (gst_value_init_fraction_range),
(gst_value_free_fraction_range), (gst_value_copy_fraction_range),
(gst_value_collect_fraction_range),
(gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
(gst_value_set_fraction_range_full),
(gst_value_get_fraction_range_min),
(gst_value_get_fraction_range_max),
(gst_value_serialize_fraction_range),
(gst_value_transform_fraction_range_string),
(gst_value_compare_fraction_range),
(gst_value_deserialize_fraction_range),
(gst_value_intersect_fraction_fraction_range),
(gst_value_intersect_fraction_range_fraction_range),
(gst_value_subtract_fraction_fraction_range),
(gst_value_subtract_fraction_range_fraction),
(gst_value_subtract_fraction_range_fraction_range),
(gst_value_collect_fraction), (gst_value_fraction_multiply),
(gst_value_fraction_subtract), (gst_value_deserialize_fraction),
(gst_value_transform_string_fraction), (_gst_value_initialize):
* gst/gstvalue.h:
Implement fraction ranges and extend GstFraction to support
arithmetic subtraction, as well as deserialization from integer
strings such as "100"
Add a testsuite as for int and double range set operations
2005-11-21 23:54:59 +00:00
Andy Wingo
f641e8a9fe gst/: Add glib-compat.h.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gsttaglist.h:
* gst/gstcaps.h:
* gst/gststructure.h: Add glib-compat.h.
2005-11-21 19:58:23 +00:00
Wim Taymans
5252cefbed gst/gstbin.c: Fix for #321595
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_change_state_func):
Fix for #321595
2005-11-21 19:13:13 +00:00
Wim Taymans
1cbf6f7027 gst/gstsegment.h: And add a nice define too.
Original commit message from CVS:
* gst/gstsegment.h:
And add a nice define too.
2005-11-21 19:00:28 +00:00
Wim Taymans
5be62b88b8 gst/gstsegment.*: Make binding friendly.
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
(gst_segment_new), (gst_segment_free), (gst_segment_init),
(gst_segment_set_duration), (gst_segment_set_last_stop),
(gst_segment_set_seek), (gst_segment_set_newsegment),
(gst_segment_to_stream_time), (gst_segment_to_running_time),
(gst_segment_clip):
* gst/gstsegment.h:
Make binding friendly.
2005-11-21 18:53:06 +00:00
Andy Wingo
fd6ca0191b gst/: Sprinkle NULL_TERMINATED to taste.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gsttagsetter.h:
* gst/gsttaglist.h:
* gst/gststructure.h:
* gst/gstcaps.h:
* gst/gstutils.h: Sprinkle NULL_TERMINATED to taste.
2005-11-21 18:41:39 +00:00
Andy Wingo
102575f27e gst/gsterror.*: New error category.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gsterror.c (_gst_core_errors_init):
* gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
category.
2005-11-21 18:27:26 +00:00
Andy Wingo
169841756a gst/Makefile.am (gst_headers): Add glib-compat.h. noinst the -private.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/Makefile.am (gst_headers): Add glib-compat.h.
(noinst_HEADERS): noinst the -private.
2005-11-21 18:16:00 +00:00
Michael Smith
468d8b8034 gst/: Remove unimplemented declarations for which we can see no sensible use.
Original commit message from CVS:
* gst/gstplugin.h:
* gst/gstregistry.h:
Remove unimplemented declarations for which we can see no sensible
use.
2005-11-21 18:10:13 +00:00
Andy Wingo
ef7787ed72 gst/gst.h: Include glib-compat.h.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gst.h: Include glib-compat.h.

* gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.

* gst/glib-compat.c: Include the public and the private header.

* gst/glib-compat-private.h: Copied here from glib-compat.h.

* gst/gstvalue.c:
* gst/gstpad.c:
* gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
2005-11-21 18:03:22 +00:00
Andy Wingo
153931fa86 check/gst/gstevent.c (create_custom_events): Check that
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* check/gst/gstevent.c (create_custom_events): Check that
FLUSH_STOP is serialized.

* check/elements/identity.c (event_func):
* check/elements/fakesrc.c (event_func): No stream lock, the core
takes it.

* gst/base/gstbasetransform.c (gst_base_transform_event): No more
stream lock taking, yay.

* gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
ensure that core takes the stream lock.

* gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
lock name change.

* gst/base/gstbasesink.c (gst_base_sink_event): No need to take
the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
it already. For the flush start we do take it though so we get the
right preroll state change messages.

* gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
the stream lock here, the core does it for us.

* gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
GST_STREAM_GET_LOCK.
(GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
(GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
(GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
(GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
(GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
(GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.

* gst/gstpad.c: Update for stream lock name change.

* gst/base/gstbasesink.c: Update for preroll lock name change.
2005-11-21 17:21:15 +00:00
Wim Taymans
e6bbe0ddb2 gst/: Convert Clock flags to object flags.
Original commit message from CVS:
* gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
(gst_clock_get_master):
* gst/gstclock.h:
* gst/gstsystemclock.c: (gst_system_clock_init):
Convert Clock flags to object flags.
Added methods to manage master/slave clocks.
2005-11-21 17:12:50 +00:00
Wim Taymans
a35882df1f More segment updates, replace code in plugins with segment helper functions.
Original commit message from CVS:
* check/gst/gstsegment.c: (GST_START_TEST):
* docs/design/part-TODO.txt:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_event), (gst_base_sink_do_sync),
(gst_base_sink_activate_pull), (gst_base_sink_get_position),
(gst_base_sink_query), (gst_base_sink_change_state):
* gst/base/gstbasesink.h:
* gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
(gst_base_src_default_newsegment),
(gst_base_src_configure_segment), (gst_base_src_do_seek),
(gst_base_src_get_range), (gst_base_src_loop),
(gst_base_src_change_state):
* gst/base/gstbasesrc.h:
* gst/base/gstbasetransform.c:
(gst_base_transform_prepare_output_buf),
(gst_base_transform_event), (gst_base_transform_change_state):
* gst/base/gstbasetransform.h:
* gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
(gst_collect_pads_event):
* gst/base/gstcollectpads.h:
* gst/elements/gstfakesrc.c: (gst_fake_src_init),
(gst_fake_src_create):
* gst/elements/gstfakesrc.h:
* gst/elements/gstidentity.c: (gst_identity_transform_ip):
* gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
(gst_segment_set_last_stop), (gst_segment_set_seek),
(gst_segment_set_newsegment), (gst_segment_to_stream_time),
(gst_segment_to_running_time), (gst_segment_clip):
* gst/gstsegment.h:
More segment updates, replace code in plugins with segment
helper functions.
2005-11-21 17:09:45 +00:00
Jan Schmidt
9409e07440 gst/elements/gstfdsrc.c: Don't ignore sscanf results
Original commit message from CVS:
* gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
Don't ignore sscanf results
2005-11-21 16:46:07 +00:00
Andy Wingo
ad7585d432 gst/gstpad.h (GST_IS_PAD_FAST): Removed.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.h (GST_IS_PAD_FAST): Removed.
2005-11-21 16:41:16 +00:00
Andy Wingo
44c548b205 *.*: Ran scripts/update-macros. Oh yes. gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* *.h:
* *.c: Ran scripts/update-macros. Oh yes.

* gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
(GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
GST_GET_LOCK, etc.

* scripts/update-macros: New script. Run it on your files to
change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
well.
2005-11-21 16:34:26 +00:00
Stefan Kost
32d6280888 more docs fixes, add new api to the docs
Original commit message from CVS:
* docs/gst/Makefile.am:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/gstreamer-sections.txt:
* docs/gst/gstreamer.types:
* gst/gstinfo.h:
more docs fixes, add new api to the docs
2005-11-21 15:47:09 +00:00
Andy Wingo
eb8cc5ab32 gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this state_broadcast call.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
state_broadcast call.
2005-11-21 15:01:48 +00:00
Andy Wingo
7f0bef0423 gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
2005-11-21 14:53:34 +00:00
Julien Moutte
9185b7092c gst/gstvalue.c: Fix wrong function calls for arrays.
Original commit message from CVS:
2005-11-21  Julien MOUTTE  <julien@moutte.net>

* gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
function calls for arrays.
2005-11-21 14:52:56 +00:00
Stefan Kost
b06c505f1c docs/random/ensonic/media-device-daemon.txt: wild idea, can this be done?
Original commit message from CVS:
* docs/random/ensonic/media-device-daemon.txt:
wild idea, can this be done?
* docs/gst/gstreamer-sections.txt:
* gst/gsterror.h:
* gst/gstfilter.c:
* gst/gstfilter.h:
* gst/gstplugin.h:
* gst/gstpluginfeature.c:
* gst/gsttrace.c:
* gst/gstvalue.c:
* gst/gstvalue.h:
doc fixes and additions
2005-11-21 14:50:22 +00:00
Andy Wingo
a8560f7b3b gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL) (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND) (...
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
(GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
(GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
(GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
private to the basesrc implementation.
2005-11-21 14:41:26 +00:00
Andy Wingo
e53432c9bb gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on behalf of event function if necessary. It should no ...
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
behalf of event function if necessary. It should no longer be
necessary to take the stream lock in pad's event functions. Fixes
#320299.
2005-11-21 14:34:07 +00:00
Jan Schmidt
3e17fdcbf9 Rename gst_caps_structure_fixate_* to gst_structure_fixate_* (#322027)
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
(gst_structure_fixate_field_nearest_double),
(gst_structure_fixate_field_boolean):
* gst/gststructure.h:
* win32/common/libgstreamer.def:
* win32/gstreamer.def:

Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
(#322027)
2005-11-21 14:28:21 +00:00
Jan Schmidt
58acf5f046 gst/elements/gstfdsrc.*: Port fd:// URI handler from 0.8 to fdsrc
Original commit message from CVS:
* gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
(gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
(gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
(gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
(gst_fdsrc_uri_handler_init):
* gst/elements/gstfdsrc.h:
Port fd:// URI handler from 0.8 to fdsrc
2005-11-21 14:25:21 +00:00
Wim Taymans
29ea4a0bb0 More segment updates and more checks.
Original commit message from CVS:
* check/gst/gstsegment.c: (GST_START_TEST), (gstsegments_suite),
(main):
* gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
(gst_segment_set_last_stop), (gst_segment_set_seek),
(gst_segment_set_newsegment), (gst_segment_to_stream_time),
(gst_segment_to_running_time), (gst_segment_clip):
* gst/gstsegment.h:
More segment updates and more checks.
2005-11-21 13:26:51 +00:00
Tim-Philipp Müller
d1d6357de1 gst/gstvalue.*: Drop leading '%' from GST_FOURCC_FORMAT, thus making it consistent with our other format defines (#32...
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_transform_fourcc_string),
(gst_value_serialize_fourcc):
* gst/gstvalue.h:
Drop leading '%' from GST_FOURCC_FORMAT, thus making it
consistent with our other format defines (#320324).
2005-11-21 13:26:40 +00:00
Tim-Philipp Müller
5012a8fddc gst/gstvalue.c: Revert previous commit. Value lists are by definition not fixed, as they are a list of possible values.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_is_fixed):
Revert previous commit. Value lists are by definition
not fixed, as they are a list of possible values.
2005-11-21 13:12:18 +00:00
Andy Wingo
e4b8378ba4 gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back during the stable series if we need it. Fixes #319178.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
during the stable series if we need it. Fixes #319178.

* gst/gstevent.c (gst_event_new_filler): Removed.

* check/gst/gstevent.c: Update comment about filler events.
2005-11-21 13:03:36 +00:00
Tim-Philipp Müller
8759556717 gst/gstvalue.c: Should handle both value arrays and value lists.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_is_fixed):
Should handle both value arrays and value lists.
2005-11-21 12:42:41 +00:00
Alessandro Dessina
9dc3c08477 gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array functions to access arrays. Fixes #321962.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

patch by: Alessandro Dessina <alessandro nnva org>

* gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
functions to access arrays. Fixes #321962.
2005-11-21 12:27:01 +00:00
Tim-Philipp Müller
d5ce5ad5e8 docs/gst/gstreamer.types: gst_collectpads_get_type => gst_collect_pads_get_type.
Original commit message from CVS:
* docs/gst/gstreamer.types:
gst_collectpads_get_type => gst_collect_pads_get_type.
* gst/base/gstbasetransform.c:
Remove unused SIGNAL_HANDOFF enum.
2005-11-21 11:26:07 +00:00
Andy Wingo
33d5749b88 gst/gstevent.h (GstEventTypeFlags): New data type, the flags of the event type (upstream, downstream, serialized). Re...
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
the event type (upstream, downstream, serialized). Renamed
GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
(GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.

* gst/gstevent.c: Update for new CUSTOM event names.

* check/gst/gstevent.c: Update check for new CUSTOM event names.

* gst/gstevent.h:
* gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
bug #319392.
2005-11-21 11:06:42 +00:00
Tim-Philipp Müller
60c50e8f11 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document unimplemented functions as unimplemented (#320766).
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* win32/common/libgstbase.def:
* win32/libgstbase.def:
* gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
(gst_collect_pads_class_init), (gst_collect_pads_init),
(gst_collect_pads_finalize), (gst_collect_pads_new),
(gst_collect_pads_set_function), (gst_collect_pads_add_pad),
(gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
(gst_collect_pads_collect), (gst_collect_pads_collect_range),
(gst_collect_pads_start), (gst_collect_pads_stop),
(gst_collect_pads_peek), (gst_collect_pads_pop),
(gst_collect_pads_available), (gst_collect_pads_read),
(gst_collect_pads_flush), (gst_collect_pads_event),
(gst_collect_pads_chain):
* gst/base/gstcollectpads.h:
Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
unimplemented functions as unimplemented (#320766).
2005-11-21 11:00:03 +00:00
Tim-Philipp Müller
65ae960c53 gst/gstmessage.c: Improve docs for DURATION message (usage of duration parameter) (#320113)
Original commit message from CVS:
* gst/gstmessage.c:
Improve docs for DURATION message (usage of duration parameter)
(#320113)
2005-11-21 10:41:03 +00:00
Wim Taymans
2754334f05 Added segment helper structure and methods. Not fully implemented yet.
Original commit message from CVS:
* check/Makefile.am:
* check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
(main):
* gst/Makefile.am:
* gst/gst.h:
* gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
(gst_segment_set_seek), (gst_segment_set_newsegment),
(gst_segment_to_stream_time), (gst_segment_to_running_time),
(gst_segment_clip):
* gst/gstsegment.h:
Added segment helper structure and methods. Not fully implemented
yet.
Added segment check.
2005-11-20 19:11:09 +00:00
Jan Schmidt
c05ba2d666 check/gst/gstvalue.c: Add a deserialisation test for fractions
Original commit message from CVS:
* check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
Add a deserialisation test for fractions
* examples/metadata/read-metadata.c: (message_loop),
(make_pipeline), (main):
Fix up metadata reading sample.
* gst/base/gstbasesink.c: (gst_base_sink_do_sync):
Debug format fix
* gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
Don't try and fixate empty caps
* gst/gst_private.h:
Wrap in G_BEGIN_DECLS/G_END_DECLS
* gst/gstvalue.c: (gst_value_collect_fraction),
(gst_value_set_fraction), (gst_value_get_fraction_denominator),
(gst_value_transform_string_fraction),
(gst_value_compare_fraction):
Add some extra guards to ensure that we don't end up
with an invalid denominator of 0 in a gstfraction and
that fractions always get reduced.
2005-11-20 17:12:49 +00:00
Wim Taymans
10a32af38d Doc fixes.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstbuffer.h:
* gst/gstelement.c:
* gst/gstformat.c:
* gst/gstformat.h:
* gst/gstindex.h:
* gst/gstquery.c:
* gst/gstquery.h:
* gst/gstvalue.c:
Doc fixes.
2005-11-20 14:50:43 +00:00
Wim Taymans
deacfd8e89 Make a proper enum of the flag.
Original commit message from CVS:
* docs/design/part-TODO.txt:
* gst/gstcaps.h:
Make a proper enum of the flag.
2005-11-20 13:28:11 +00:00
Wim Taymans
8d46970ed8 Add type to quark and type to string conversions.
Original commit message from CVS:
* docs/design/part-TODO.txt:
* gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
(gst_format_to_quark), (gst_format_register):
* gst/gstformat.h:
* gst/gstquery.c: (_gst_query_initialize),
(gst_query_type_get_name), (gst_query_type_to_quark),
(gst_query_type_register):
* gst/gstquery.h:
Add type to quark and type to string conversions.
2005-11-19 18:57:00 +00:00
Andy Wingo
9192ae50e0 gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes #320097.
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
#320097.
2005-11-19 18:32:01 +00:00
Wim Taymans
5209b1b0a2 Make message handling overridable.
Original commit message from CVS:
* docs/design/part-TODO.txt:
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
(gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
(gst_bin_handle_message_func):
* gst/gstbin.h:
Make message handling overridable.
2005-11-19 18:28:40 +00:00
Andy Wingo
5061adaf5f gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
2005-11-19 18:26:35 +00:00
Andy Wingo
f082cb34a4 gst/gstclock.*: Change resolution to be a GstClockTime.
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gst/gstclock.h:
* gst/gstclock.c (GstClock, GstClockClass): Change resolution to
be a GstClockTime.
(gst_clock_set_resolution, gst_clock_get_resolution): Resolution
is a GstClockTime. Fixes #321710.
2005-11-19 18:17:29 +00:00
Andy Wingo
c0b753f74f gst/gstclock.h (GstClock): Remove offset property. Add internal_calibration and external_calibration. Fix padding. Pa...
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gst/gstclock.h (GstClock): Remove offset property. Add
internal_calibration and external_calibration. Fix padding. Pad
also by GstClockTime so we don't run into problems.

* gst/gstclock.c (gst_clock_set_rate_offset): Remove.
(gst_clock_get_rate_offset): Remove.
(gst_clock_set_time_adjust): Remove. Fixes #321712.
2005-11-19 18:06:56 +00:00
Andy Wingo
5748aa1156 gst/gstutils.h: gst/gstutils.c (g_static_rec_cond_wait)
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gst/gstutils.h:
* gst/gstutils.c (g_static_rec_cond_wait)
(g_static_rec_cond_timed_wait): Removed, no longer needed.

* gst/gstbin.c: Remove terrible continue_state prototype.

* gst/gstelement.h (gst_element_continue_state): Make public.

* gst/gstelement.h:
* gst/gstelement.c (gst_element_commit_state): Removed, replaced
by continue_state. Fixes #319389.
2005-11-19 17:50:52 +00:00
Andy Wingo
4bccc99723 gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
Really fixes #168438. However I don't see anywhere where the
filter function is called... stupid GStreamer...
2005-11-19 17:28:58 +00:00
Andy Wingo
4a61de0e11 gst/gstindex.h (GstIndex): Add field for user_data_destroy. We don't have a dispose function, so it won't get called ...
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
don't have a dispose function, so it won't get called when the
object is unreffed, but oh well!

* gst/gstindex.c (gst_index_set_filter_full): New API function,
allows a destroy function to be set so user_data can be freed.
Fixes #168438.
(gst_index_set_filter): Call gst_index_set_filter_full.
2005-11-19 17:26:27 +00:00
Andy Wingo
77d95482f6 check/gst/gstvalue.c (test_string): Add test for bug #165650.
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* check/gst/gstvalue.c (test_string): Add test for bug #165650.

* gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
string should produce an error, given the lack of a way to
represent NULL strings. Fixes #165650.
2005-11-19 17:08:23 +00:00
Andy Wingo
0ae103aff3 gst/gstvalue.h: gst/gstvalue.c (gst_value_array_append_value) (gst_value_array_prepend_value, gst_value_array_get_size)
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gst/gstvalue.h:
* gst/gstvalue.c (gst_value_array_append_value)
(gst_value_array_prepend_value, gst_value_array_get_size)
(gst_value_array_get_value): New API, copied from
gst_value_list_*, only operates on arrays.
(gst_value_list_append_value, gst_value_list_prepend_value)
(gst_value_list_concat, gst_value_list_get_size)
(gst_value_list_get_value): Only operate on lists. Fixes #156633.

* gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
init_list, because it works on both.
(copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
(gst_value_copy_list_or_array): Renamed from copy_list.
(gst_value_free_list_or_array): Renamed from free_list.
(gst_value_collect_list_or_array): Renamed from collect_list.
(gst_value_lcopy_list_or_array): Renamed from lcopy_list.
(gst_value_list_or_array_peek_pointer): Renamed from
list_peek_pointer.
(_gst_value_array_value_table, _gst_value_list_value_table):
Update value table functions.
(gst_value_compare_list_or_array): Renamed from compare_list.
2005-11-19 16:46:30 +00:00
Andy Wingo
ff1eca9d57 gsttaglist.h: Whoops, foreach function returns void. Also fix some constness.
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gsttaglist.h: Whoops, foreach function returns void. Also fix
some constness.
2005-11-19 16:05:11 +00:00
Andy Wingo
e89aaa7e30 gst/gsttaglist.*: Operates on a const
Original commit message from CVS:
2005-11-19  Andy Wingo  <wingo@pobox.com>

* gst/gsttaglist.c:
* gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
GstTagList*. Fixes #143472.

* gst/gststructure.h: Clarify what the foreach/map functions can
or can't do to their arguments.
2005-11-19 15:51:41 +00:00
Wim Taymans
3eb5b03dfd gst/gstclock.c: Doc and API fixes.
Original commit message from CVS:
* gst/gstclock.c: (gst_clock_set_calibration),
(gst_clock_get_calibration):
Doc and API fixes.
Callibration can be set with internal time equal to current
internal time too.
2005-11-18 19:21:50 +00:00
Thomas Vander Stichele
8e3ad00950 gst/gsterror.*: document
Original commit message from CVS:

* gst/gsterror.c:
* gst/gsterror.h:
document
2005-11-18 18:55:24 +00:00
Stefan Kost
dff771f1b7 gst/: docs fixes
Original commit message from CVS:
* gst/gstcaps.c:
* gst/gstghostpad.c:
* gst/gsttrace.c:
* gst/gstvalue.c:
* gst/gstvalue.h:
docs fixes
2005-11-18 16:04:28 +00:00
Andy Wingo
a1ac7b668a gst/net/gstnetclientclock.c: Turn off debugging.
Original commit message from CVS:
2005-11-18  Andy Wingo  <wingo@pobox.com>

* gst/net/gstnetclientclock.c: Turn off debugging.

* check/net/gstnetclientclock.c (test_functioning): Assert that the
times connverge somewhat. Can't make a real test.
2005-11-18 15:52:24 +00:00
Andy Wingo
fa09daa3d2 gst/net/gstnetclientclock.c (do_linear_regression): Use all integer arithmetic. Return the minimum of the domain, whi...
Original commit message from CVS:
2005-11-18  Andy Wingo  <wingo@pobox.com>

* gst/net/gstnetclientclock.c (do_linear_regression): Use all
integer arithmetic. Return the minimum of the domain, which can be
set as "internal" for gst_clock_set_calibration.
(gst_net_client_clock_observe_times): Call _set_calibration.
(gst_net_client_clock_new): Call _set_calibration instead of
rate_offset.

* check/net/gstnetclientclock.c (test_functioning): Use the right
adjustment api.

* gst/gstclock.h:
* gst/gstclock.c (gst_clock_get_calibration)
(gst_clock_set_calibration): New functions, obsolete the ones I
added yesterday. Doh. Precision issues mean we have to extrapolate
from a point in the more recent past than 1970.
(gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
obsolete.
(gst_clock_adjust_unlocked): Use the right calibration data.
2005-11-18 15:30:18 +00:00
Edward Hervey
d32702193e gst/base/gstbasesink.c: Also reset the ->current_* values in READY->PAUSED
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_change_state):
Also reset the ->current_* values in READY->PAUSED
2005-11-18 14:49:28 +00:00
Andy Wingo
24fc208196 gst/net/gstnetclientclock.c (gst_net_client_clock_thread): Whoops, check the right fd. Also add some debugging.
Original commit message from CVS:
2005-11-18  Andy Wingo  <wingo@pobox.com>

* gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
Whoops, check the right fd. Also add some debugging.
(gst_net_client_clock_observe_times): Adjust for int64 offset.
(do_linear_regression): Add a crapload of debugging. Subtract off
the minimum values from the input series to discard unneeded bits.
Use only int arithmetic. There is still double arithmetic when
calculating the intercept that needs fixing. Return boolean to
indicate success; FALSE would mean the domain or range is too
great. Still needs fixes.
2005-11-18 14:13:28 +00:00
Wim Taymans
d72c6e95ed gst/base/gstbasesink.c: For the current position in stream time, we need to subtract accumulated time.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_get_position):
For the current position in stream time, we need to subtract
accumulated time.

* gst/gstsystemclock.c: (gst_system_clock_async_thread):
Release lock before calling the callback function of async
entries.
2005-11-18 13:18:44 +00:00
Andy Wingo
d8b2273583 gst/net/gstnetclientclock.c (gst_net_client_clock_class_init): Port goes all the way to MAXUINT16.
Original commit message from CVS:
2005-11-18  Andy Wingo  <wingo@pobox.com>

* gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
Port goes all the way to MAXUINT16.

* gst/net/gstnettimeprovider.c: Make the port range the same as
for the kernel: 0 assigns, otherwise ports are less than
MAXUINT16.

* check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
port change.

* check/net/gstnetclientclock.c (test_functioning): Add the start
of another test.
2005-11-18 11:57:30 +00:00
Wim Taymans
02253f5807 gst/gstbin.*: Removing a clock provider from a bin, triggers a clock lost message so that a new clock will be selected.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
(gst_bin_remove_func), (bin_bus_handler):
* gst/gstbin.h:
Removing a clock provider from a bin, triggers a clock lost message
so that a new clock will be selected.
Adding a clock to a bin triggers a clock provider message.
Make sure we reselect a clock when we received a clock lost message.
Keep a reference to the element that provided the clock.
2005-11-18 11:03:10 +00:00
Andy Wingo
9188f69f3c gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust the clock initially so it produces values around the b...
Original commit message from CVS:
2005-11-18  Andy Wingo  <wingo@pobox.com>

* gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
the clock initially so it produces values around the base time.
(gst_net_client_clock_class_init): Typo fix.
(gst_net_client_clock_thread): Add note on when the socket gets
closed.
2005-11-18 10:54:55 +00:00
Wim Taymans
48d140df6f gst/net/gstnetclientclock.c: Free remote and local time arrays.
Original commit message from CVS:
* gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
Free remote and local time arrays.
2005-11-17 18:50:14 +00:00
Wim Taymans
363f1bfd4a gst/net/gstnetclientclock.c: Fix compilation, uninitialized vars and a forgotten continue.
Original commit message from CVS:
* gst/net/gstnetclientclock.c: (do_linear_regression),
(gst_net_client_clock_do_select), (gst_net_client_clock_thread):
Fix compilation, uninitialized vars and a forgotten continue.
2005-11-17 18:18:41 +00:00
Andy Wingo
d56b83f662 check/: Add a most minimal test for the net client clock. More to come later.
Original commit message from CVS:
2005-11-17  Andy Wingo  <wingo@pobox.com>

* check/Makefile.am (check_PROGRAMS):
* check/net/gstnetclientclock.c: Add a most minimal test for the
net client clock. More to come later.

* gst/net/gstnet.h:
* gst/net/Makefile.am: Add netclientclock.

* gst/net/gstnetclientclock.h:
* gst/net/gstnetclientclock.c: New files, implement an untested
GstClock that takes its time from a network time provider.
Implements the algorithm in network-clock.scm.

* tests/network-clock.scm (*window-size*): Rename from
*queue-length*.
* tests/network-clock.scm (network-time):
* tests/network-clock-utils.scm (q-push): Update callers.
2005-11-17 17:55:17 +00:00
Wim Taymans
40e4311d94 gst/gstbin.c: And unref the child too..
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_provide_clock_func),
(gst_bin_sort_iterator_new):
And unref the child too..
2005-11-17 16:02:48 +00:00
Wim Taymans
a1aa83c759 gst/gstbin.c: Refactor the sort iterator so it can be used while holding the
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
(gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
Refactor the sort iterator so it can be used while holding the
LOCK too.
Make clock selection select a clock closest to the source.
2005-11-17 14:51:11 +00:00
Michael Smith
3f80a0d393 gst/gstclock.*: Anonymous structs are a gcc (and some other compilers) extension, so don't use them. Since this is on...
Original commit message from CVS:
* gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
(gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
* gst/gstclock.h:
Anonymous structs are a gcc (and some other compilers) extension, so
don't use them. Since this is only for ABI-compatibility, and our
API/ABI freeze is over in a few days, this whole thing will only
last a few days, so don't bother trying to think up a meaningful
name for the struct.
2005-11-17 12:36:30 +00:00
Andy Wingo
c557e030a9 gst/gstclock.h (GstClock): Add rate and offset properties, preserving ABI stability. Add rate/offset accessors. Will ...
Original commit message from CVS:
2005-11-17  Andy Wingo  <wingo@pobox.com>

* gst/gstclock.h (GstClock): Add rate and offset properties,
preserving ABI stability. Add rate/offset accessors. Will file bug
for the freeze break.

* gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
and offset, trying to keep precision and avoiding
underflow/overflow.
(gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
functions. Make gst_clock_set_time_adjust obsolete.
(gst_clock_set_time_adjust): Note that this function is obsolete.
Will file bug soon.

* gst/base/gstbasetransform.h: Make the ABI-stability hack
greppable by using GST_PADDING-1+1.
2005-11-17 11:51:49 +00:00
Tim-Philipp Müller
3278ca54a7 gst/gstmessage.c: Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* gst/gstmessage.c: (gst_message_parse_clock_lost):
Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
* gst/gstpadtemplate.h:
* gst/gstpluginfeature.h:
Don't use c++ style comments in headers (#321638).
2005-11-17 09:37:55 +00:00
Andy Wingo
b6db554627 gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free buffer.
Original commit message from CVS:
2005-11-16  Andy Wingo  <wingo@pobox.com>

* gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
buffer.
2005-11-16 18:37:57 +00:00
Andy Wingo
7d720ecb63 fix
Original commit message from CVS:
fix
2005-11-16 17:53:54 +00:00
Andy Wingo
fec8e1db7d gst/net/: Use the timepacket stuff in the provider, include it from gstnet.h, and add it to the build.
Original commit message from CVS:
2005-11-16  Andy Wingo  <wingo@pobox.com>

* gst/net/Makefile.am:
* gst/net/gstnet.h:
* gst/net/gstnettimeprovider.c:
* gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
provider, include it from gstnet.h, and add it to the build.

* gst/net/gstnettimepacket.h:
* gst/net/gstnettimepacket.c: New files, abstracts out the packet
sending and receiving.
2005-11-16 17:52:04 +00:00
Wim Taymans
578f2ae633 check/Makefile.am: Enable valgrind check.
Original commit message from CVS:
* check/Makefile.am:
Enable valgrind check.

* gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
(gst_fake_src_alloc_buffer):
Fix memleak.
2005-11-16 17:35:07 +00:00
Wim Taymans
f2646a0fc9 gst/net/gstnettimeprovider.c: Call parent finalize too.
Original commit message from CVS:
* gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
Call parent finalize too.
2005-11-16 17:22:36 +00:00
Wim Taymans
b9eaa6aebe check/Makefile.am: Enable valgrind check that should work fine now.
Original commit message from CVS:
* check/Makefile.am:
Enable valgrind check that should work fine now.

* gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
* gst/gstqueue.c: (gst_queue_init):
Fix memleaks in pad allocation.
2005-11-16 17:18:34 +00:00
Andy Wingo
4258474de2 gst/net/: New part of core to hold network elements and objects. Put in core because it exposes API that applications...
Original commit message from CVS:
2005-11-16  Andy Wingo  <wingo@pobox.com>

* gst/net/Makefile.am:
* gst/net/gstnet.h: New part of core to hold network elements and
objects. Put in core because it exposes API that applications want
to use. The library is named libgstnet-tempname right now because
of the existing libgstnet in gst-plugins-base. Solution is
probably to rename the one in plugins-base; will file a bug for
the freeze break.

* gst/net/gstnettimeprovider.c:
* gst/net/gstnettimeprovider.h: New object to export a GstClock's
get_time call over the network.

* configure.ac:
* gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.

* check/Makefile.am:
* check/net/gstnettimeprovider.c: A most minimal test suite. Will
get additions shortly.
2005-11-16 16:49:49 +00:00
Thomas Vander Stichele
533a6eacb0 gst/gstpad.*: add gst_pad_new_from_static_template functions
Original commit message from CVS:

* gst/gstpad.c: (gst_pad_new_from_static_template):
* gst/gstpad.h:
add gst_pad_new_from_static_template functions
* gst/check/gstcheck.c: (gst_check_setup_src_pad),
(gst_check_setup_sink_pad):
* gst/elements/gsttee.c: (gst_tee_init):
and use them
2005-11-16 16:09:49 +00:00
Wim Taymans
c96f128c88 gst/gstpad.c: Removed warning, it's not realy an error either.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_pause_task):
Removed warning, it's not realy an error either.
2005-11-16 16:06:06 +00:00
Wim Taymans
514648a970 gst/base/gstbasetransform.c: Check if the caps are NULL, this can happen if the element is shutting down and the pad ...
Original commit message from CVS:
* gst/base/gstbasetransform.c:
(gst_base_transform_prepare_output_buf),
(gst_base_transform_event):
Check if the caps are NULL, this can happen if the element
is shutting down and the pad caps are set to NULL.
2005-11-16 14:27:20 +00:00
Thomas Vander Stichele
ed4d1cee0e fix pad tempalte leak in tee
Original commit message from CVS:
fix pad tempalte leak in tee
2005-11-16 12:57:51 +00:00
Thomas Vander Stichele
d5497ccd53 gst/: use gst_object_ref when setting the pad template; this will trigger the pad template leaks on GLib 2.6 and the ...
Original commit message from CVS:

* gst/glib-compat.c: (g_value_dup_gst_object):
* gst/glib-compat.h:
* gst/gstpad.c: (gst_pad_set_property):
use gst_object_ref when setting the pad template; this will
trigger the pad template leaks on GLib 2.6 and the slaves
2005-11-16 12:40:18 +00:00
Thomas Vander Stichele
403099819f gst/: remove functions copied from GLib 2.6
Original commit message from CVS:

* gst/glib-compat.c: (gst_flags_get_first_value):
* gst/glib-compat.h:
* gst/gstregistryxml.c:
remove functions copied from GLib 2.6
2005-11-16 12:25:22 +00:00
Michael Smith
c7d92fc08e gst/Makefile.am: Don't link against VALGRIND_LIBS. That was always the wrong thing to do, but only breaks with newer ...
Original commit message from CVS:
* gst/Makefile.am:
Don't link against VALGRIND_LIBS. That was always the wrong thing to
do, but only breaks with newer valgrind versions. We're not a
valgrind tool, we have no link-time dependencies on libcoregrind.
2005-11-16 11:29:57 +00:00
Thomas Vander Stichele
f22d0bce47 gst/base/gstbasesrc.c: some debug changes
Original commit message from CVS:

* gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
some debug changes
* gst/gstmessage.h:
typo fixes
2005-11-16 11:06:07 +00:00
Thomas Vander Stichele
74546e0323 Revert all these unrefs, they don't even pass make check !
Original commit message from CVS:
Revert all these unrefs, they don't even pass make check !
2005-11-15 23:53:08 +00:00
Johan Dahlin
8a9bd6aac8 And gst_object_unref here too
Original commit message from CVS:
And gst_object_unref here too
2005-11-15 19:48:40 +00:00
Johan Dahlin
ba68a823c9 gst/: Free pad templates, fixes a couple of leaks.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_init):
* gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
* gst/gstqueue.c: (gst_queue_init):
Free pad templates, fixes a couple of leaks.
2005-11-15 19:31:05 +00:00
Tim-Philipp Müller
57f0a5b232 gst/gstpad.c: GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* gst/gstpad.c: (gst_pad_get_property):
GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
(#321452)
2005-11-15 19:24:46 +00:00
Wim Taymans
30bb9cee7e gst/gstevent.c: Small doc update.
Original commit message from CVS:
* gst/gstevent.c:
Small doc update.
2005-11-15 18:34:28 +00:00
Andy Wingo
2124c0fded gst/gstelement.c (gst_element_set_base_time): Add debugging.
Original commit message from CVS:
2005-11-15  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_set_base_time): Add debugging.

* gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
using GST_CLOCK_TIME_NONE to disable base time management.
(do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
time if it was NONE before.
(gst_pipeline_change_state): Only munge the base time if
stream_time != GST_CLOCK_TIME_NONE.

* check/gst/gstpipeline.c (test_base_time): Punt around the
problem of the probe not being called, because that's not the
issue I'm looking at. Add a check that setting stream_time to NONE
disables base time management.
2005-11-15 17:57:51 +00:00
Wim Taymans
b0233e7b7f gst/base/gstbasesink.c: segment_stop == -1 at startup.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_change_state):
segment_stop == -1 at startup.

* gst/base/gstbasetransform.c: (gst_base_transform_event),
(gst_base_transform_change_state):
Init segment values at start.
2005-11-15 17:18:10 +00:00
Wim Taymans
eb29555a92 gst/base/gstbasesink.c: 0 segment values are 0 in any format.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object):
0 segment values are 0 in any format.

* gst/base/gstbasetransform.c: (gst_base_transform_event):
* gst/base/gstbasetransform.h:
Parse newsegment correctly in basetransform

* gst/elements/gstidentity.c: (gst_identity_transform_ip):
Sync to clock using updated segment values.
2005-11-15 16:47:07 +00:00
Andy Wingo
7688db602f gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an error if the user selected "no clock" as the clocking me...
Original commit message from CVS:
2005-11-15  Andy Wingo  <wingo@pobox.com>

* gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
error if the user selected "no clock" as the clocking method.
2005-11-15 12:35:45 +00:00
Andy Wingo
58a5b2f5fa check/gst/gstpipeline.c (test_base_time): New test for buffer timestamps with live capture.
Original commit message from CVS:
2005-11-15  Andy Wingo  <wingo@pobox.com>

* check/gst/gstpipeline.c (test_base_time): New test for buffer
timestamps with live capture.

* gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
is 0 but we are a live source, timestamp the buffers using the
element's clock.
2005-11-15 12:29:07 +00:00
Stefan Kost
1d176e0439 more section docs
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gsterror.c:
* gst/gstghostpad.c:
* gst/gstobject.h:
* gst/gstxml.c:
more section docs
2005-11-14 15:15:43 +00:00
Andy Wingo
6da40a32f4 gst/gstpad.c (gst_pad_set_active): Change docs; parent's
Original commit message from CVS:
2005-11-14  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_set_active): Change docs; parent's
STATE_LOCK not necessary. Fixes #311489.
2005-11-14 12:43:43 +00:00
Andy Wingo
3e08b586e7 gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes #305291.
Original commit message from CVS:
2005-11-14  Andy Wingo  <wingo@pobox.com>

* gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
#305291.
2005-11-14 12:17:46 +00:00
Andy Wingo
a307a7fc43 gst/gstindex.c (gst_index_add_object): Note in the docs that this function is not implemented.
Original commit message from CVS:
2005-11-14  Andy Wingo  <wingo@pobox.com>

* gst/gstindex.c (gst_index_add_object): Note in the docs that
this function is not implemented.
2005-11-14 11:58:44 +00:00
Julien Moutte
be483e517b gst/base/gstbasetransform.c: Ref the source pad caps while we need them.
Original commit message from CVS:
2005-11-14  Julien MOUTTE  <julien@moutte.net>

* gst/base/gstbasetransform.c:
(gst_base_transform_prepare_output_buf):
Ref the source pad caps while we need them.
Fixes (#321386)
2005-11-14 10:49:35 +00:00
Thomas Vander Stichele
9648a41fa7 debug task join
Original commit message from CVS:
debug task join
2005-11-12 10:03:08 +00:00
Wim Taymans
b2ff4bd747 docs/gst/gstreamer-sections.txt: Added some docs for GstCollectData.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
Added some docs for GstCollectData.

* gst/base/gstadapter.c:
Some small code example fix.

* gst/base/gstcollectpads.c:
* gst/base/gstcollectpads.h:
Document some more.
2005-11-11 20:12:42 +00:00
Wim Taymans
93e4477d56 gst/gstbuffer.c: Copy more flags.
Original commit message from CVS:
* gst/gstbuffer.c: (_gst_buffer_copy):
Copy more flags.

* gst/gstcaps.c: (gst_caps_is_equal):
Fix some docs.
Make _is_equal fast in the trivial cases.

* gst/gstminiobject.c:
* gst/gstminiobject.h:
More docs. Spifify .h file.

* gst/gstutils.c:
Small doc update.
2005-11-11 18:25:50 +00:00
Wim Taymans
1a87f97de7 gst/base/gstbasetransform.c: Small cleanups.
Original commit message from CVS:
* gst/base/gstbasetransform.c:
(gst_base_transform_prepare_output_buf),
(gst_base_transform_handle_buffer):
Small cleanups.
If we're processing a buffer and need to allocate an output
buffer, we cannot accept a format change. If we did get a
format change, we have to alloc a buffer ourselves of the
right size.
2005-11-11 16:37:11 +00:00
Wim Taymans
e39c2beaae gst/gstpad.c: While checking the flag for reentrancy in the gstcaps function is nice to detect recursive invocations,...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
While checking the flag for reentrancy in the gstcaps function
is nice to detect recursive invocations, it also makes it
impossible to call getcaps from multiple threads, which must be
possible. So, checking for recursive calls has to go.
2005-11-11 16:34:15 +00:00
Michael Smith
6b2425e5a4 gst/base/gstbasesink.c: Don't sync on buffers that fall partially outside our current segment. Prevents an assertion ...
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_do_sync):
Don't sync on buffers that fall partially outside our current
segment. Prevents an assertion failure/abort playing some files.
2005-11-11 15:19:37 +00:00
Andy Wingo
c4740f0b48 check/gst/gstbin.c (test_message_state_changed_children): Style fix..
Original commit message from CVS:
2005-11-10  Andy Wingo  <wingo@pobox.com>

* check/gst/gstbin.c (test_message_state_changed_children): Style
fix..

* gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
gst_bus_poll with the signal watch. Ensures that poll and a signal
watch see the same messages.

* check/gst/gstbus.c (test_watch_with_poll): New test, checks that
a poll and a watch at the same time get the same messages.
2005-11-10 18:15:24 +00:00
Thomas Vander Stichele
529c727a5c gst/: Don't call gst_caps_do_simplify - it doesn't respect order of caps and it's not needed.
Original commit message from CVS:

* gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
* gst/gstcaps.c: (gst_caps_intersect):
Don't call gst_caps_do_simplify - it doesn't respect order of caps
and it's not needed.
2005-11-10 17:37:39 +00:00
Wim Taymans
d5a2005e0c gst/base/: Implement clock sync in base class.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_do_sync):
* gst/base/gstbasesrc.c: (gst_base_src_wait),
(gst_base_src_do_sync), (gst_base_src_get_range):
Implement clock sync in base class.
2005-11-10 14:45:27 +00:00
Tim-Philipp Müller
a144ca207c gst/gststructure.c: Forward-port a 0.8 patch to handle escaped spaces in structure string, so that gst_parse...
Original commit message from CVS:

patch by: Tim-Philipp Müller <tim at centricular dot net>

* gst/gststructure.c: (gst_structure_parse_field),
(gst_structure_from_string):
Forward-port a 0.8 patch to handle escaped spaces in structure string,          so that gst_parse_launch() can deal with spaces in filtered link
caps (fixes #164479)
* check/gst/capslist.h:
* check/gst/gststructure.c: (GST_START_TEST):
add unit tests for this change
2005-11-10 12:32:57 +00:00
Wim Taymans
a56bdf2768 Fix docs, move some STATE macros to private.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstelement.c:
* gst/gstelement.h:
Fix docs, move some STATE macros to private.
2005-11-10 11:17:26 +00:00
Michael Smith
96936912f3 Further improve query docs. Still not happy with this.
Original commit message from CVS:
Further improve query docs. Still not happy with this.
2005-11-10 10:17:01 +00:00
Wim Taymans
8bf3884cbb check/gst/gstghostpad.c: Added check for bug #317341
Original commit message from CVS:
* check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
Added check for bug #317341

* gst/gstbuffer.c:
* gst/gstbuffer.h:
Some more spiffifying.

* gst/gstghostpad.c: (gst_ghost_pad_do_link):
Call peer linkfunction if we are a source pad. Totally fixes
#317341

* gst/gstpad.c:
Update docs, source pads should call the peer linkfunction
so they can atomically perform the pad link.
2005-11-10 09:19:12 +00:00
Michael Smith
67e2017f50 Improve/fix documentation for GstQuery.
Original commit message from CVS:
Improve/fix documentation for GstQuery.
This still needs some more work to explain what the queries actually mean.
2005-11-09 19:32:32 +00:00
Michael Smith
a28a3fdd04 Slightly polish docs for GstAdapter.
Original commit message from CVS:
Slightly polish docs for GstAdapter.
2005-11-09 18:41:53 +00:00
Wim Taymans
7f6d267bdc gst/gstbuffer.*: Uber-spiffy-spiffify some more.
Original commit message from CVS:
* gst/gstbuffer.c:
* gst/gstbuffer.h:
Uber-spiffy-spiffify some more.
2005-11-09 18:10:53 +00:00
Tim-Philipp Müller
fc387bfd46 gst/: Use GST_DEBUG_FUNCPTR() more extensively.
Original commit message from CVS:
* gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
* gst/elements/gstfilesink.c: (gst_file_sink_init):
* gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
* gst/gstghostpad.c: (gst_ghost_pad_set_internal),
(gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
* gst/gstpad.c: (gst_pad_init):
Use GST_DEBUG_FUNCPTR() more extensively.
2005-11-09 17:55:13 +00:00
Wim Taymans
8eb4781bdd gst/gstobject.*: Documentation fixes.
Original commit message from CVS:
* gst/gstobject.c: (gst_object_class_init):
* gst/gstobject.h:
Documentation fixes.
2005-11-09 17:32:10 +00:00
Edward Hervey
acf209c871 gst/gsttypefindfactory.c: Fix docs.
Original commit message from CVS:
* gst/gsttypefindfactory.c:
Fix docs.
2005-11-09 17:06:20 +00:00
Edward Hervey
04b5f119c6 gst/:
Original commit message from CVS:
* gst/base/gsttypefindhelper.c:
* gst/gsttypefind.c:
* gst/gsttypefind.h:
2005-11-09 16:44:40 +00:00
Wim Taymans
5151ea3d9b gst/gstiterator.c: Fix revision data.
Original commit message from CVS:
* gst/gstiterator.c:
Fix revision data.

* gst/gsttask.c:
* gst/gsttask.h:
Fix docs.
2005-11-09 16:32:49 +00:00
Wim Taymans
27daf02ce6 gst/: Fix docs.
Original commit message from CVS:
* gst/gstevent.h:
* gst/gsturi.h:
Fix docs.
2005-11-09 16:16:41 +00:00
Wim Taymans
16731bd8c1 docs/gst/gstreamer-sections.txt: Moved the message async delivery private lock and cond to the private section.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
Moved the message async delivery private lock and cond
to the private section.

* gst/gstmessage.c:
* gst/gstmessage.h:
Fixed docs.
2005-11-09 16:00:05 +00:00
Edward Hervey
18c654dac4 Document GstURIHandler
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gsturi.c:
* gst/gsturi.h:
Document GstURIHandler
2005-11-09 15:34:46 +00:00
Wim Taymans
6938d93206 gst/gstiterator.*: Fix iterator docs.
Original commit message from CVS:
* gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
(gst_iterator_find_custom):
* gst/gstiterator.h:
Fix iterator docs.
2005-11-09 15:31:08 +00:00
Wim Taymans
dd937f3fea gst/gstbin.h: Document another field.
Original commit message from CVS:
* gst/gstbin.h:
Document another field.

* gst/gststructure.c:
* gst/gststructure.h:
Document.
2005-11-09 15:10:32 +00:00
Wim Taymans
27e5e2480f gst/gstbin.h: Documented structs.
Original commit message from CVS:
* gst/gstbin.h:
Documented structs.
2005-11-09 13:14:27 +00:00
Wim Taymans
a628e6f4be docs/gst/gstreamer-sections.txt: Added some new macros.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
Added some new macros.

* gst/gstclock.c:
* gst/gstclock.h:
* gst/gstobject.h:
Docs updates.
2005-11-09 12:36:17 +00:00
Wim Taymans
692ec0dd30 docs/design/part-TODO.txt: Some more items for the TODO
Original commit message from CVS:
* docs/design/part-TODO.txt:
Some more items for the TODO

* gst/gstcaps.c:
* gst/gstcaps.h:
Document GstCaps.
2005-11-09 12:01:46 +00:00
Andy Wingo
179f6c4f3b gst/base/gstbasesink.c: Add the beginning of docs here -- have to work on something else now tho...
Original commit message from CVS:
2005-11-09  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesink.c: Add the beginning of docs here -- have
to work on something else now tho...
2005-11-09 10:06:30 +00:00
Andy Wingo
0ae7675f7e gst/elements/gstfilesink.c (gst_file_sink_start)
Original commit message from CVS:
2005-11-09  Andy Wingo  <wingo@pobox.com>

* gst/elements/gstfilesink.c (gst_file_sink_start)
(gst_file_sink_stop): New functions, replace the state change
handler.
(gst_file_sink_class_init): Hook up the start and stop functions.
(gst_file_sink_base_init): Don't set the state change handler any
more. It was a bit ugly too, being set from here...
(gst_file_sink_get_property, gst_file_sink_set_property):
Cleanups...
(gst_file_sink_set_location): More robust check that doesn't call
GST_STATE. Ugggggg.
2005-11-09 09:48:16 +00:00
Andy Wingo
2d000e0460 gst/elements/gstfilesink.c (gst_file_sink_start)
Original commit message from CVS:
2005-11-09  Andy Wingo  <wingo@pobox.com>

* gst/elements/gstfilesink.c (gst_file_sink_start)
(gst_file_sink_stop): New functions, replace the state change
handler.
(gst_file_sink_class_init): Hook up the start and stop functions.
(gst_file_sink_base_init): Don't set the state change handler any
more. It was a bit ugly too, being set from here...
(gst_file_sink_get_property, gst_file_sink_set_property):
Cleanups...
(gst_file_sink_set_location): More robust check that doesn't call
GST_STATE. Ugggggg.
2005-11-09 09:47:12 +00:00
Tim-Philipp Müller
a80ccecd5b gst/base/gstbasetransform.c: Hold STREAM_LOCK while pushing newsegment or tag events as well.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_event):
Hold STREAM_LOCK while pushing newsegment or tag events as well.
2005-11-08 12:33:09 +00:00
Wim Taymans
5bb924622f gst/: Avoid excessive typechecking in macros.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
(gst_base_sink_do_sync), (gst_base_sink_handle_event),
(gst_base_sink_chain), (gst_base_sink_change_state):
* gst/base/gstbasesink.h:
* gst/base/gstbasesrc.h:
* gst/gstelement.h:
* gst/gstevent.h:
Avoid excessive typechecking in macros.

* gst/gstminiobject.c: (gst_mini_object_get_type),
(gst_mini_object_init), (gst_mini_object_new),
(gst_mini_object_free):
* gst/gstobject.c: (gst_object_class_init), (gst_object_init),
(gst_object_finalize):
Remove cruft code, optimize alloc_trace.
2005-11-08 11:13:07 +00:00
Wim Taymans
b03c54d446 gst/base/gstbasesrc.c: Set the segment_end to -1 initially. Fixed typefind.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_init),
(gst_base_src_get_range):
Set the segment_end to -1 initially. Fixed typefind.
2005-11-07 10:33:07 +00:00
Tim-Philipp Müller
9fa579c299 gst/base/gstadapter.c: Debug category should be 'adapter', not 'GstAdapter'.
Original commit message from CVS:
* gst/base/gstadapter.c:
Debug category should be 'adapter', not 'GstAdapter'.
* gst/base/gstcollectpads.c: (gst_collectpads_base_init),
(gst_collectpads_class_init), (gst_collectpads_init),
(gst_collectpads_peek), (gst_collectpads_pop),
(gst_collectpads_event), (gst_collectpads_chain):
Add debug category and some debugging output. Use boilerplate
macros. Remove some extraneous words from docs.
2005-11-07 10:13:47 +00:00
Andy Wingo
fe7eeac197 gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate macro.
Original commit message from CVS:
2005-11-05  Andy Wingo  <wingo@pobox.com>

* gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
macro.
2005-11-05 15:14:33 +00:00
Stefan Kost
fd15eb56af more docs added
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstcaps.h:
* gst/gstinfo.c:
* gst/gstminiobject.h:
* gst/gstobject.h:
* gst/gstutils.h:
more docs added
2005-11-04 20:12:01 +00:00
Wim Taymans
875b25482c gst/base/gstbasesrc.c: Small update to stop at the configured segment_end position.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_get_range):
Small update to stop at the configured segment_end
position.
2005-11-04 15:33:40 +00:00
Stefan Kost
77a1cfd244 gst/gstregistry.*: added missing docs
Original commit message from CVS:
* gst/gstregistry.c:
* gst/gstregistry.h:
added missing docs
2005-11-04 15:02:48 +00:00
Edward Hervey
0315b43942 gst/base/gstbasesrc.c: Check if we are doing a segment seek and have arrived at the end of that segment.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_get_range):
Check if we are doing a segment seek and have arrived at the
end of that segment.
2005-11-04 14:35:10 +00:00
Wim Taymans
bb6d55f37c gst/gstbus.c: Don't leak a mutex unlock in case of an error.
Original commit message from CVS:
* gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
Don't leak a mutex unlock in case of an error.

* gst/gstbus.h:
Doc fixes.
2005-11-04 12:08:19 +00:00
Wim Taymans
ea9dd6099a gst/gstbus.c: Get the context to wake up only once.
Original commit message from CVS:
* gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
(gst_bus_post):
Get the context to wake up only once.
2005-11-04 11:43:10 +00:00
Wim Taymans
82a38aff77 check/states/sinks.c: Uncomment fixed check.
Original commit message from CVS:
* check/states/sinks.c: (GST_START_TEST):
Uncomment fixed check.

* docs/design/part-TODO.txt:
Updated TODO.

* gst/base/gstbasesink.c: (gst_base_sink_commit_state),
(gst_base_sink_handle_object), (gst_base_sink_do_sync),
(gst_base_sink_get_position):
If we are going to PLAYING, post the right pending state
when we post the intermediate paused message.

* gst/gstelement.c: (gst_element_continue_state),
(gst_element_set_state_func), (gst_element_change_state):
Don't post state changes that were between the same state
and were not ASYNC.
2005-11-03 20:14:24 +00:00
Stefan Kost
87df15ff58 doc fixes
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstelement.c:
* gst/gstminiobject.c:
doc fixes
2005-11-03 19:38:48 +00:00
Wim Taymans
43fe0b06e9 check/states/sinks.c: Added some more checks. Specifically the case where NO_PREROLL elements are in the pipeline.
Original commit message from CVS:
* check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
Added some more checks. Specifically the case where NO_PREROLL
elements are in the pipeline.

* gst/base/gstbasesink.c: (gst_base_sink_commit_state),
(gst_base_sink_handle_object), (gst_base_sink_do_sync),
(gst_base_sink_get_position):
Post READY->PAUSED state change messages too.
Fix bug where VOID was posted as pending state...

* gst/gstbin.c: (gst_bin_recalc_state):
use _element_continue_state() to continue the state change.

* gst/gstelement.c: (gst_element_continue_state),
(gst_element_commit_state), (gst_element_set_state_func),
(gst_element_change_state), (gst_element_change_state_func):
Lots of state change cleanups, assign the STATE_RETURN in
a new continue_state() function that also propagates the
last return value from a state change to the app.
Update some debug statements with proper category.
2005-11-03 17:12:00 +00:00
Wim Taymans
c4abf79f02 docs/: Small docs updates.
Original commit message from CVS:
* docs/design/part-events.txt:
* docs/design/part-gstpipeline.txt:
* docs/design/part-messages.txt:
* docs/design/part-overview.txt:
* docs/design/part-seeking.txt:
* docs/design/part-states.txt:
* docs/design/part-trickmodes.txt:
* docs/manual/advanced-position.xml:
Small docs updates.

* gst/gstobject.h:
People think !! is ugly, this looks better.

* gst/gstpad.c: (gst_pad_set_blocked_async):
Remove !! since it's fixed elsewhere now.
2005-11-03 14:22:44 +00:00
Tim-Philipp Müller
22993965c7 gst/: Add !! to _FLAG_IS_SET macros to make the result boolean.
Original commit message from CVS:
* gst/gstminiobject.h:
* gst/gstobject.h:
Add !! to _FLAG_IS_SET macros to make the result boolean.
2005-11-03 13:52:59 +00:00
Edward Hervey
7c1da7fee0 gst/gstpad.c: comparing a flag and a gboolean rarely returns coherent results...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_blocked_async):
comparing a flag and a gboolean rarely returns coherent results...
Added two characters (!!) to make that work correctly.
2005-11-03 12:48:30 +00:00
Tim-Philipp Müller
5c2af06cc5 gst/gstbus.c: Fix some typos.
Original commit message from CVS:
* gst/gstbus.c: (gst_bus_class_init):
Fix some typos.
* gst/gstqueue.c: (gst_queue_loop):
Don't assume a miniobject that isn't a buffer is an
event (it could be that there is a refcounting
problem somewhere and the pointer is stale and
refers to an already destroyed miniobject).
2005-11-03 12:16:49 +00:00
Julien Moutte
e4f8d3b6de gst/gstpad.c: Fix some typos.
Original commit message from CVS:
2005-11-03  Julien MOUTTE  <julien@moutte.net>

* gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
2005-11-03 10:56:23 +00:00
Tim-Philipp Müller
215a6a26e0 docs/manual/advanced-position.xml: Update seek example and explanations to current 0.9 API.
Original commit message from CVS:
* docs/manual/advanced-position.xml:
Update seek example and explanations to current 0.9 API.
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_activate):
Remove FIXME comment now that the found caps
are unreffed.
2005-11-03 09:18:53 +00:00
Thomas Vander Stichele
102c29b3b8 Add another GST_STR_NULL instance
Original commit message from CVS:
Add another GST_STR_NULL instance
2005-11-03 00:39:54 +00:00
Edward Hervey
3b80a92550 gst/gstpad.c: Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
Original commit message from CVS:
* gst/gstpad.c: (handle_pad_block):
Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
2005-11-02 19:04:20 +00:00
Wim Taymans
563477a64e gst/gstbin.c: Fix typo in docs.
Original commit message from CVS:
* gst/gstbin.c:
Fix typo in docs.

* gst/gstelement.c: (gst_element_commit_state):
Remove unused value.

* gst/gstiterator.c:
Mention that the returned element is reffed in the docs.
2005-11-02 18:44:20 +00:00
Wim Taymans
feca07fdd7 gst/gstpad.c: Unlock blocked pads when they are flushed.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
(gst_pad_push), (gst_pad_push_event):
Unlock blocked pads when they are flushed.
2005-11-02 18:33:00 +00:00
Thomas Vander Stichele
d581d5c976 doc updates
Original commit message from CVS:

* docs/README:
* docs/gst/gstreamer-sections.txt:
* gst/gstbin.c:
doc updates
* gst/gstregistry.c: (gst_registry_scan_path_level):
fix for a nasty little missed situation where an installed plug-in
which was in the cache did not get overridden by an uninstalled one
which was earlier in the plugin path because the newly created plugin
for the uninstalled one (not in the registry) didn't get its
->registered set to TRUE
2005-11-02 15:34:23 +00:00
Tim-Philipp Müller
3e5676f6a8 gst/base/gstcollectpads.c: Guard public API with assertions.
Original commit message from CVS:
* gst/base/gstcollectpads.c: (gst_collectpads_set_function),
(gst_collectpads_add_pad), (gst_collectpads_remove_pad),
(gst_collectpads_is_active), (gst_collectpads_collect),
(gst_collectpads_collect_range), (gst_collectpads_start),
(gst_collectpads_stop), (gst_collectpads_peek),
(gst_collectpads_pop), (gst_collectpads_available),
(gst_collectpads_read), (gst_collectpads_flush):
Guard public API with assertions.
* gst/gstpad.c:
Fix docs for gst_pad_set_link_function().
2005-11-02 15:08:05 +00:00
Johan Dahlin
c49861f331 gst/elements/gsttypefindelement.c (gst_type_find_element_activate): Unref found_caps after we used it.
Original commit message from CVS:
* gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
Unref found_caps after we used it.
2005-11-02 14:28:02 +00:00
Tim-Philipp Müller
327501d2bd gst/base/gstcollectpads.c: Don't try to ref NULL.
Original commit message from CVS:
* gst/base/gstcollectpads.c: (gst_collectpads_peek):
Don't try to ref NULL.
2005-11-02 12:20:54 +00:00
Thomas Vander Stichele
4652cba829 more doc updates
Original commit message from CVS:
more doc updates
2005-11-01 19:16:58 +00:00
Luca Ognibene
f06f22ef8d gst/gst.c: fix docs. popt is death, long live GOption.
Original commit message from CVS:
* gst/gst.c:
fix docs. popt is death, long live GOption.
2005-11-01 17:45:46 +00:00
Wim Taymans
45a69909bc gst/gstbuffer.h: Small doc fix.
Original commit message from CVS:
* gst/gstbuffer.h:
Small doc fix.
2005-10-31 11:44:32 +00:00
Andy Wingo
4a9df820e3 Boo!
Original commit message from CVS:
2005-10-31  Andy Wingo  <wingo@pobox.com>

* Boo!

* gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.

* gst/gstobject.c (gst_object_dispatch_properties_changed): No
need to serialize property notifications on GLib 2.8. GLib 2.6 has
the possibility of deadlocks here if code calling notify() or
set() has a lock that can be taken in another notify handler (ABBA
with class lock and e.g. python GIL state lock).
2005-10-31 09:52:13 +00:00
Julien Moutte
6f63540ea4 gst/gstbus.c: Doc updates.
Original commit message from CVS:
2005-10-28  Julien MOUTTE  <julien@moutte.net>

* gst/gstbus.c: Doc updates.
2005-10-28 18:18:23 +00:00
Wim Taymans
a71cbb326b Doc updates.
Original commit message from CVS:
* docs/design/part-TODO.txt:
* gst/gstiterator.c:
* gst/gstsystemclock.c:
* gst/gstsystemclock.h:
Doc updates.
2005-10-28 18:14:24 +00:00
Thomas Vander Stichele
4a8451a360 Documentation updates.
Original commit message from CVS:
Documentation updates.
2005-10-28 17:35:43 +00:00
Wim Taymans
55bf3d095b Documented the clocks.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstclock.c:
* gst/gstclock.h:
Documented the clocks.
2005-10-28 17:35:05 +00:00
Michael Smith
55c8e8b41e Work around gtkdoc deficiencies, document a macro differently.
Original commit message from CVS:
Work around gtkdoc deficiencies, document a macro differently.
2005-10-28 17:20:45 +00:00
Michael Smith
f6021bd73c Improve GstBuffer documentation. It's now 100% Spiffier.
Original commit message from CVS:
Improve GstBuffer documentation. It's now 100% Spiffier.
2005-10-28 17:01:14 +00:00
Stefan Kost
0572e3c3ae docs/gst/gstreamer-sections.txt: move some macros to private sections
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
move some macros to private sections
* gst/gstminiobject.c:
* gst/gstminiobject.h:
add descriptions provided by ds and some more
* gst/gstpad.h:
mark macro as to be removed
2005-10-28 16:46:58 +00:00
Wim Taymans
b3354de0b7 docs/design/part-TODO.txt: Add an item to TODO.
Original commit message from CVS:
* docs/design/part-TODO.txt:
Add an item to TODO.

* gst/gstiterator.c: (gst_iterator_fold),
(gst_iterator_find_custom):
* gst/gstiterator.h:
Add iterator docs.
2005-10-28 16:21:29 +00:00
Wim Taymans
8ce45b472d gst/base/gstbasetransform.c: Don't leak class.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_class_init),
(gst_base_transform_init):
Don't leak class.

* gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
An EOS event marks the queue as completely filled.
2005-10-28 10:45:33 +00:00
Wim Taymans
f2e8f7198f gst/base/gstbasesink.c: Some more debugging.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_do_sync), (gst_base_sink_get_position):
Some more debugging.

* gst/base/gstbasetransform.c: (gst_base_transform_finalize),
(gst_base_transform_init), (gst_base_transform_buffer_alloc),
(gst_base_transform_event), (gst_base_transform_getrange),
(gst_base_transform_chain):
* gst/base/gstbasetransform.h:
Fix debugging,
Protect transform and concurrent buffer alloc with a new lock.
Try not to break ABI/API.
2005-10-27 20:59:00 +00:00
Wim Taymans
2e7411e8b8 gst/base/gstbasesrc.c: Move some stuff around and cleanup things.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_init), (gst_base_src_query),
(gst_base_src_default_newsegment),
(gst_base_src_configure_segment), (gst_base_src_do_seek),
(gst_base_src_send_event), (gst_base_src_event_handler),
(gst_base_src_pad_get_range), (gst_base_src_loop),
(gst_base_src_unlock), (gst_base_src_default_negotiate),
(gst_base_src_start), (gst_base_src_deactivate),
(gst_base_src_activate_push), (gst_base_src_change_state):
Move some stuff around and cleanup things.
2005-10-27 19:37:25 +00:00
Tim-Philipp Müller
27918022a2 gst/base/gstbasesrc.c: Add missing break statements.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_query):
Add missing break statements.
2005-10-27 15:48:56 +00:00
Wim Taymans
67b27a2c01 check/gst/gstbin.c: An extra refcount is taken in basesrc.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
An extra refcount is taken in basesrc.

* gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
(gst_base_src_get_range), (gst_base_src_pad_get_range),
(gst_base_src_loop):
Small cleanups, check for flushing after being unlocked from the
LIVE_LOCK. take refcounts correctly (not yet everywhere).
Don't send out EOS when going to READY.
2005-10-27 13:47:33 +00:00
Wim Taymans
7f22710f65 gst/base/gstbasesink.c: Some more debug.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_get_position):
Some more debug.

* gst/gstbin.c: (message_check), (bin_replace_message),
(bin_remove_messages), (is_eos), (gst_bin_add_func),
(update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
(bin_query_duration_init), (bin_query_duration_fold),
(bin_query_duration_done), (bin_query_generic_fold),
(gst_bin_query):
* tools/gst-launch.c: (main):
Remove old option.
2005-10-27 08:55:44 +00:00
Stefan Kost
349aa7e2e6 fixing examples fixing docs typos changing log priority in error situations
Original commit message from CVS:
* examples/controller/audio-example.c: (main):
* examples/queue/queue.c: (event_loop):
* gst/base/gstbasetransform.h:
* gst/gstelement.c: (gst_element_send_event):
* gst/gstevent.h:
* gst/gstpad.c: (gst_pad_send_event):
fixing examples
fixing docs typos
changing log priority in error situations
2005-10-26 18:57:43 +00:00
Wim Taymans
ef17d9b6bb gst/gstbin.c: Some doc and debug updates.
Original commit message from CVS:
* gst/gstbin.c: (message_check), (bin_replace_message),
(bin_remove_messages), (is_eos), (gst_bin_add_func),
(update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
(bin_query_duration_init), (bin_query_duration_fold),
(bin_query_duration_done), (bin_query_generic_fold),
(gst_bin_query):
Some doc and debug updates.
Cache previously requested query DURATION for speed. invalidate
cached duration if element posts a DURATION message.
2005-10-25 17:41:24 +00:00
Wim Taymans
2803a5587e docs/design/part-TODO.txt: Update TODO.
Original commit message from CVS:
* docs/design/part-TODO.txt:
Update TODO.

* gst/gstbin.c: (message_check), (bin_replace_message),
(bin_remove_messages), (is_eos), (gst_bin_add_func),
(update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
(bin_query_duration_init), (bin_query_duration_fold),
(bin_query_duration_done), (bin_query_generic_fold),
(gst_bin_query):
Handle SEGMENT_START/DONE messages correctly.
More evolved query algorithm that handles duration queries
correctly.

* gst/gstelement.c: (gst_element_send_event), (gst_element_query),
(gst_element_get_state_func), (gst_element_abort_state),
(gst_element_commit_state), (gst_element_lost_state):
Some more debugging.

* gst/gstmessage.h:
Added doc.
2005-10-25 15:39:36 +00:00
Wim Taymans
b204604572 gst/base/gstbasesink.c: Don't use invalid stream_time.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_get_position):
Don't use invalid stream_time.

* gst/gstevent.c: (gst_event_new_newsegment):
stream_time in newsegment cannot be undefined.
2005-10-25 10:15:45 +00:00
Wim Taymans
bb8289979b gst/gstbus.c: Doc fix.
Original commit message from CVS:
* gst/gstbus.c:
Doc fix.

* gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
(gst_queue_loop):
Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
2005-10-24 15:41:48 +00:00
Michael Smith
3d0989e9ef Fix some minor documentation typos
Original commit message from CVS:
Fix some minor documentation typos
2005-10-24 09:13:27 +00:00
Tim-Philipp Müller
7d5fda88d4 gst/elements/gstfilesink.c: Use fseeko() and ftello() if available. When falling back on lseek() to get the current o...
Original commit message from CVS:
* gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
(gst_file_sink_get_current_offset):
Use fseeko() and ftello() if available. When falling back on
lseek() to get the current offset, fflush() first to make sure
everything is up-to-date and we get the right offset.
2005-10-23 10:29:51 +00:00
Thomas Vander Stichele
013e3acc3d remove prematurely added error category and clean up the instances
Original commit message from CVS:
remove prematurely added error category and clean up the instances
2005-10-23 09:08:44 +00:00
Wim Taymans
62cfdde715 gst/base/gstbasesink.c: Simply set the right flag when going to playing, that's all we need to do instead of calling ...
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_commit_state),
(gst_base_sink_get_position), (gst_base_sink_query),
(gst_base_sink_change_state):
Simply set the right flag when going to playing, that's all
we need to do instead of calling a function inside the object
lock (that could take the lock as well and deadlock)
2005-10-21 17:53:31 +00:00
Wim Taymans
c1f08609d1 gst/base/gstbasesrc.c: Don't warn, the peer element knows what to do best when the seek failed, it might try somethin...
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_do_seek),
(gst_base_src_loop):
Don't warn, the peer element knows what to do best when
the seek failed, it might try something else.
2005-10-21 16:18:54 +00:00
Wim Taymans
5b63b6489e gst/base/gstbasesrc.c: Fix seeking.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_init),
(gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
Fix seeking.
2005-10-21 16:14:34 +00:00