Commit graph

1742 commits

Author SHA1 Message Date
Edward Hervey
8986d3f33e libs/gst/controller/gstcontroller.*: Added GList* version of _remove_properties() in order to be able to wrap it in b...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
* libs/gst/controller/gstcontroller.h:
Added GList* version of _remove_properties() in order to be able to wrap
it in bindings.
2005-10-11 12:42:23 +00:00
Wim Taymans
fd1a66e8b5 docs/design/part-states.txt: Some more docs.
Original commit message from CVS:
* docs/design/part-states.txt:
Some more docs.

* gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
(gst_bin_change_state_func), (bin_bus_handler):
Doc updates. Don't distribute the same clock over and over again.

* gst/gstclock.c:
* gst/gstclock.h:
Doc updates.

* gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
(gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
(gst_pad_send_event):
* gst/gstpad.h:
Make probe emission threadsafe again.
Register quarks and move _get_name() from utils.
Doc updates.

* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
Only redistribute the clock of it changed.

* gst/gstsystemclock.h:
Doc updates.

* gst/gstutils.c:
* gst/gstutils.h:
Moved the _flow_get_name() to GstPad.
2005-10-11 11:08:52 +00:00
Thomas Vander Stichele
7eeb3ca879 fix more valgrind warnings before turning up the heat
Original commit message from CVS:
fix more valgrind warnings before turning up the heat
2005-10-10 23:55:39 +00:00
Thomas Vander Stichele
1b27dd60dd gst/parse/grammar.y: some cleanup before the hacking
Original commit message from CVS:

* gst/parse/grammar.y:
some cleanup before the hacking
2005-10-10 22:49:42 +00:00
Thomas Vander Stichele
e2af9ca6c6 gst/base/gstbasesrc.c: use conversions
Original commit message from CVS:

* gst/base/gstbasesrc.c: (gst_base_src_query):
use conversions
* gst/gstutils.c: (gst_guint64_to_gdouble),
(gst_gdouble_to_guint64), (gst_util_uint64_scale):
* gst/gstutils.h:
externalize, basesrc uses it
obviously the implementation needs testing
2005-10-10 18:16:37 +00:00
Wim Taymans
e2a946395a tests/sched/:
Original commit message from CVS:
* tests/sched/Makefile.am:
* tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
(make_pipeline3), (make_pipeline4), (print_elem), (main):
2005-10-10 16:43:32 +00:00
Thomas Vander Stichele
0d129e5757 gst/gstutils.c: apparently converting from guint64 to double is not implemented on MSVC
Original commit message from CVS:

* gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
apparently converting from guint64 to double is not implemented
on MSVC
2005-10-10 16:38:59 +00:00
Wim Taymans
2153c45964 check/: Check fixes, use API as stated in design docs, remove hacks.
Original commit message from CVS:
* check/Makefile.am:
* check/generic/states.c: (GST_START_TEST):
* check/gst/gstbin.c: (GST_START_TEST):
* check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
* check/states/sinks.c: (GST_START_TEST):
* check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
(main):
Check fixes, use API as stated in design docs, remove hacks.

* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_change_state):
Catch stopping our task while we're shutting down.

* gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
(gst_bin_remove_func), (gst_bin_get_state_func),
(gst_bin_recalc_state), (gst_bin_change_state_func),
(bin_bus_handler):
* gst/gstbin.h:
* gst/gstelement.c: (gst_element_init),
(gst_element_get_state_func), (gst_element_abort_state),
(gst_element_commit_state), (gst_element_lost_state),
(gst_element_set_state), (gst_element_change_state),
(gst_element_change_state_func):
* gst/gstelement.h:
New state change algorithm (see #318116)

* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_init), (gst_pipeline_set_property),
(gst_pipeline_get_property), (do_pipeline_seek),
(gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
* gst/gstpipeline.h:
Remove crude state change hacks.

* gst/gstutils.h:
Remove crude hacks.

* tools/gst-launch.c: (main):
Fixes for state change. Needs some more work to fully use the
new stuff.
2005-10-10 16:38:26 +00:00
Andy Wingo
b77f6b0e50 tests/Makefile.am (noinst_PROGRAMS): No more init.c.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* tests/Makefile.am (noinst_PROGRAMS): No more init.c.
2005-10-10 16:20:41 +00:00
Andy Wingo
e415bd9957 gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires this flag, but it's not even in GLib 2.6. Odd. Hack ar...
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
this flag, but it's not even in GLib 2.6. Odd. Hack around the
issue.
2005-10-10 16:04:28 +00:00
Tim-Philipp Müller
29e78cb4b0 gst/gstiterator.c: Fix my previous commit: GTypes passed to gst_iterator_new() can be fundamental types.
Original commit message from CVS:
* gst/gstiterator.c: (gst_iterator_new):
Fix my previous commit: GTypes passed to gst_iterator_new()
can be fundamental types.
2005-10-10 15:58:32 +00:00
Wim Taymans
63f02ce9ad gst/gstelement.c: Use src/sink pads lists for the respective iterators instead of filtering.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_iterate_pad_list),
(gst_element_iterate_pads), (gst_element_iterate_src_pads),
(gst_element_iterate_sink_pads):
Use src/sink pads lists for the respective iterators instead
of filtering.
2005-10-10 15:55:37 +00:00
Ronald
ac8289c7a9 Merged in popt removal + GOption addition patch from Ronald, bug #169772.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

Merged in popt removal + GOption addition patch from Ronald, bug
#169772.

* docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
GstElement macros around, remove popt-related symbols, add goption
stuff.

* configure.ac: Remove popt checks, require GLib 2.6 for GOption.

* docs/gst/Makefile.am:
* docs/libs/Makefile.am: No POPT_CFLAGS.

* examples/manual/Makefile.am:
* docs/manual/basics-init.xml: Doc updates with an example.

* gst/gst.c: (gst_init_get_option_group), (gst_init_check),
(gst_init), (parse_one_option), (parse_goption_arg):
* gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
bit of hand merging and debugging to get the GOption stuff working
tho.

* tests/Makefile.am:
* tools/Makefile.am:
* tools/gst-inspect.c: (main):
* tools/gst-launch.c: (main):
* tools/gst-run.c: (main):
* tools/gst-xmlinspect.c: (main): Thanks Ronald!
2005-10-10 15:53:59 +00:00
Tim-Philipp Müller
a1702b7646 gst/gstiterator.c: Add assertions to make sure passed GType is likely to really be a GType (as the compiler won't cat...
Original commit message from CVS:
* gst/gstiterator.c: (gst_iterator_new):
Add assertions to make sure passed GType is likely to really
be a GType (as the compiler won't catch it if the size and
GType arguments get mixed up, see #318447).
2005-10-10 15:30:45 +00:00
Tim-Philipp Müller
ee379a13b6 gst/gstbin.c: Pass GType and size arguments to gst_iterator_new() in the right order (maybe we should make _new() tak...
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* gst/gstbin.c: (gst_bin_iterate_sorted):
Pass GType and size arguments to gst_iterator_new() in the right
order (maybe we should make _new() take the GType as first argument
just like _new_list()?) (#318447).
2005-10-10 15:27:12 +00:00
Wim Taymans
9e17ca91dd gst/gstelement.c: And free the GStaticRecMutex too
Original commit message from CVS:
* gst/gstelement.c: (gst_element_finalize):
And free the GStaticRecMutex too
2005-10-10 15:17:35 +00:00
Andy Wingo
cfd14e0fd3 gst/gstelement.c (gst_element_init, gst_element_finalize): Allocate and free the mutex properly.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_init, gst_element_finalize):
Allocate and free the mutex properly.

* gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
New macros.
(GstElement): The state_lock is now recursive. Rebuild your
plugins, suckers. Old macros adapted.
2005-10-10 14:33:13 +00:00
Andy Wingo
5efcf702e4 changelog
Original commit message from CVS:
changelog
2005-10-10 14:23:57 +00:00
Andy Wingo
16dfb8d4df docs/gst/gstreamer-sections.txt: Doc updates.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* docs/gst/gstreamer-sections.txt: Doc updates.

* gst/gstutils.h:
* gst/gstutils.c (g_static_rec_cond_timed_wait)
(g_static_rec_cond_wait): Ported from state changes patch, while
we wait on bug #317802 to be solved in a well-distributed GLib.
2005-10-10 14:23:26 +00:00
Andy Wingo
addf0c460b gst/gstelement.c (gst_element_change_state_func): Renamed from gst_element_change_state, variable name changes.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_change_state_func): Renamed from
gst_element_change_state, variable name changes.
(gst_element_change_state): Split out of gst_element_set_state in
preparation for the state change merge. Doesn't pay attention to
the 'transition' argument.
(gst_element_set_state): Updates, hopefully purely cosmetic.
(gst_element_sync_state_with_parent): MT-safety. Ported from the
state change patch.
(gst_element_get_state_func): Renamed from get_state, cosmetic
changes.
2005-10-10 14:03:25 +00:00
Sebastien Moutte
b4e68ab0a3 updates for the win32 build (patch from Sebastien Moutte)
Original commit message from CVS:

* gst/elements/gstelements.c:
* win32/GStreamer.vcproj:
* win32/config.h:
* win32/dirent.c: (_tseekdir):
* win32/gst-inspect.vcproj:
* win32/gst-launch.vcproj:
* win32/gstconfig.h:
* win32/gstelements.vcproj:
* win32/gstenumtypes.c: (gst_object_flags_get_type):
* win32/gstreamer.def:
* win32/msvc71.sln:
updates for the win32 build (patch from Sebastien Moutte)
2005-10-10 13:52:18 +00:00
Andy Wingo
933bf92949 gst/gstbin.c (gst_bin_get_state_func): Renamed from gst_bin_get_state, cleaned up (but no logic changes).
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c (gst_bin_get_state_func): Renamed from
gst_bin_get_state, cleaned up (but no logic changes).
(bin_element_is_sink): Comment updates.
(sink_iterator_filter): Remove needless cast.
(gst_bin_iterate_sinks): Doc update.
(gst_bin_change_state_func): Renamed from gst_bin_change_state,
cleaned up (but no logic changes).
2005-10-10 11:52:58 +00:00
Andy Wingo
a7d07e2b7e check/states/sinks.c (test_src_sink): Cleanups from the state change patch.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* check/states/sinks.c (test_src_sink): Cleanups from the state
change patch.
(test_livesrc_sink): Sync on the state.
2005-10-10 11:04:55 +00:00
Andy Wingo
4353da375f check/pipelines/simple_launch_lines.c (run_pipeline): Merge from the state change patch.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
the state change patch.
2005-10-10 10:59:33 +00:00
Andy Wingo
d2e605454e check/gst/gstghostpad.c (test_ghost_pads): Merge from the state change patch.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
change patch.
2005-10-10 10:57:40 +00:00
Andy Wingo
81b2269099 check/gst/gstbin.c: Merge in some style fixes and additional checks from Wim's state change patch.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* check/gst/gstbin.c: Merge in some style fixes and additional
checks from Wim's state change patch.
2005-10-10 10:50:12 +00:00
Tim-Philipp Müller
b846fed997 gst/base/gsttypefindhelper.c: Check whether we have the requested data already in our list of cached buffers before p...
Original commit message from CVS:
* gst/base/gsttypefindhelper.c: (helper_find_peek),
(gst_type_find_helper):
Check whether we have the requested data already in our list of
cached buffers before pulling a new buffer; also make the buffer
list a GSList. Speeds up typefinding by ca. 5-10% altogether.
2005-10-10 10:43:15 +00:00
Thomas Vander Stichele
2b7c3ac5e5 gst/: doc updates
Original commit message from CVS:

* gst/gstcaps.c:
* gst/gstevent.c:
doc updates
* gst/gstvalue.c: (gst_value_deserialize_int_helper):
don't use long long, it's not portable.  Replacing with
gint64 seems to work; let's hope no skeletons fall out of the closet.
2005-10-10 09:48:21 +00:00
Andy Wingo
0f03b8eef6 autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
2005-10-10 08:51:59 +00:00
Stefan Kost
f9c812c51c more docs, fix compilation
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstevent.c:
* gst/gstevent.h:
* gst/gstinfo.c:
* gst/gstinfo.h:
* gst/gstmessage.c: (gst_message_parse_state_changed):
* gst/gstpad.c:
* gst/gstpad.h:
more docs, fix compilation
2005-10-09 20:49:46 +00:00
Philippe Kalaf
b6ea453bc1 gst/gstmessage.c: Fixed a few forgotten variables on previous commit
Original commit message from CVS:
2005-10-09  Philippe Khalaf <burger@speedy.org>
* gst/gstmessage.c:
Fixed a few forgotten variables on previous commit
2005-10-09 20:19:48 +00:00
Tim-Philipp Müller
2b41c044a2 gst/base/gsttypefindhelper.c: Fix evil typefind crasher: getrange() might return a short buffer at the end of a file,...
Original commit message from CVS:
* gst/base/gsttypefindhelper.c: (helper_find_peek):
Fix evil typefind crasher: getrange() might return a short
buffer at the end of a file, but gst_type_find_peek() must
either return the full data as requested or NULL, but
never a short buffer.
2005-10-09 17:59:08 +00:00
Thomas Vander Stichele
d8efd5cc51 gst/gstmessage.*: don't use new, it's a C++ keyword
Original commit message from CVS:

* gst/gstmessage.c: (gst_message_new_state_changed),
(gst_message_parse_state_changed):
* gst/gstmessage.h:
don't use new, it's a C++ keyword
2005-10-09 17:53:33 +00:00
Wim Taymans
e823f47cdd gst/: Small docs and debug updates.
Original commit message from CVS:
* gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
* gst/gstelement.c: (gst_element_post_message):
* gst/gstpipeline.c: (gst_pipeline_change_state):
Small docs and debug updates.
2005-10-08 18:21:20 +00:00
Stefan Kost
796a232d59 more docs
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstelementfactory.c:
* gst/gstevent.c:
* gst/gsttaglist.c:
more docs
2005-10-08 18:07:20 +00:00
Wim Taymans
ae25867a05 gst/gstbin.c: Fix typos, add comments.
Original commit message from CVS:
* gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
(gst_bin_dispose), (bin_bus_handler):
Fix typos, add comments.
Clear EOS list when going to PAUSED from any direction and do it
in a threadsafe way.
Get base time in a threadsafe way too.
Fix confusing debug in the change_state function.
Various other mall cleanups.

* gst/gstelement.c: (gst_element_post_message):
Fix very verbose bus posting code.

* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_set_property), (gst_pipeline_get_property),
(gst_pipeline_change_state):
Small ARG_ -> PROP_ cleanup
2005-10-08 18:01:04 +00:00
Wim Taymans
3988477b17 gst/gstbin.c: Do a less CPU demanding EOS check because we can.
Original commit message from CVS:
* gst/gstbin.c: (is_eos), (bin_bus_handler):
Do a less CPU demanding EOS check because we can.
2005-10-08 17:30:29 +00:00
Wim Taymans
075142af6e libs/gst/dataprotocol/: It's about time we bump the version number.
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
(gst_dp_packet_from_event):
* libs/gst/dataprotocol/dataprotocol.h:
* libs/gst/dataprotocol/dp-private.h:
It's about time we bump the version number.
Since event types don't fit in the guint8 anymore describing
the payload type, make payload type 16 bits wide.
2005-10-08 17:17:25 +00:00
Wim Taymans
5b4e6c33c8 docs/design/: Many doc updates.
Original commit message from CVS:
* docs/design/part-TODO.txt:
* docs/design/part-clocks.txt:
* docs/design/part-events.txt:
* docs/design/part-gstbin.txt:
* docs/design/part-gstelement.txt:
* docs/design/part-gstpipeline.txt:
* docs/design/part-live-source.txt:
* docs/design/part-messages.txt:
* docs/design/part-overview.txt:
* docs/design/part-states.txt:
Many doc updates.
2005-10-08 16:49:15 +00:00
Wim Taymans
bed8c238f0 gst/gstevent.*: Fix event quark registration.
Original commit message from CVS:
* gst/gstevent.c:
* gst/gstevent.h:
Fix event quark registration.
Add some space between events so we can insert them in the
right groups.
2005-10-08 16:13:50 +00:00
Wim Taymans
06bc343e3f gst/base/gstbasesink.c: Better log message.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_handle_buffer):
Better log message.

* gst/gstbus.h:
* gst/gstelement.h:
More docs.

* gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
(gst_queue_set_property), (gst_queue_get_property):
* gst/gstqueue.h:
Remove old unused properties.
2005-10-08 14:57:09 +00:00
Stefan Kost
8167fcdd78 lots of new docs and doc fixes
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstmessage.c:
* gst/gstmessage.h:
* gst/gstminiobject.c:
* gst/gstminiobject.h:
* gst/gstobject.h:
* gst/gstpad.h:
* gst/gstutils.h:
lots of new docs and doc fixes
2005-10-08 14:48:17 +00:00
Thomas Vander Stichele
871217319a gst/: Only ever load one plugin for a given plugin basename.
Original commit message from CVS:

* gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
* gst/gstplugin.h:
* gst/gstregistry.c: (gst_registry_lookup_locked),
(gst_registry_scan_path_level):
* gst/gstregistryxml.c: (load_plugin):
Only ever load one plugin for a given plugin basename.
This ensures correct overriding of GST_PLUGIN_PATH over
GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
system installed plugins.
2005-10-08 13:57:17 +00:00
Wim Taymans
5d5dbe9bc0 gst/base/gstbasesink.c: Prepare for doing QOS.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
Prepare for doing QOS.
2005-10-08 13:39:02 +00:00
Wim Taymans
39ca8a97a2 check/: Allow new clock message too.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
* check/pipelines/cleanup.c: (GST_START_TEST):
* check/pipelines/simple_launch_lines.c: (GST_START_TEST):
Allow new clock message too.
2005-10-08 13:10:34 +00:00
Wim Taymans
dafe104298 gst/gstmessage.*: Also carry the clock in question.
Original commit message from CVS:
* gst/gstmessage.c: (gst_message_new_error),
(gst_message_new_warning), (gst_message_new_tag),
(gst_message_new_state_changed), (gst_message_new_clock_provide),
(gst_message_new_clock_lost), (gst_message_new_new_clock),
(gst_message_new_segment_start), (gst_message_new_segment_done),
(gst_message_parse_state_changed),
(gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
(gst_message_parse_new_clock):
* gst/gstmessage.h:
Also carry the clock in question.
2005-10-08 12:56:37 +00:00
Wim Taymans
677becd06a gst/gstmessage.*: Clean up.
Original commit message from CVS:
* gst/gstmessage.c: (gst_message_new_custom),
(gst_message_new_eos), (gst_message_new_error),
(gst_message_new_warning), (gst_message_new_tag),
(gst_message_new_state_changed), (gst_message_new_clock_provide),
(gst_message_new_new_clock), (gst_message_new_segment_start),
(gst_message_new_segment_done), (gst_message_parse_state_changed),
(gst_message_parse_clock_provide), (gst_message_parse_new_clock):
* gst/gstmessage.h:
Clean up.
Added clock related messages.

* gst/gstpipeline.c: (gst_pipeline_change_state):
Post message when the clock changed.

* tools/gst-launch.c: (event_loop):
Print new clock.
2005-10-08 12:36:36 +00:00
Tim-Philipp Müller
8ad5e77140 tools/gst-inspect.c: Can't pass NULL strings to g_print() on windows.
Original commit message from CVS:
* tools/gst-inspect.c: (print_element_properties_info):
Can't pass NULL strings to g_print() on windows.
2005-10-08 11:16:03 +00:00
Thomas Vander Stichele
0a0d29d1b5 docs/: add a chapter on running GStreamer.
Original commit message from CVS:

* docs/Makefile.am:
* docs/gst/Makefile.am:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/running.xml:
* docs/version.entities.in:
add a chapter on running GStreamer.
document GST_DEBUG and GST_PLUGIN* env vars
2005-10-08 11:12:26 +00:00
Wim Taymans
d80f874fc8 gst/base/gstbasesink.*: Repost EOS message while going to PLAYING if still EOS.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
(gst_base_sink_handle_object), (gst_base_sink_event),
(gst_base_sink_wait), (gst_base_sink_handle_event),
(gst_base_sink_change_state):
* gst/base/gstbasesink.h:
Repost EOS message while going to PLAYING if still EOS.
Make sure that when receiving a FLUSH_START we don't attempt
to sync on the clock anymore.
2005-10-08 09:58:30 +00:00
Wim Taymans
c2691f6c80 tools/gst-launch.c: Better message printout.
Original commit message from CVS:
* tools/gst-launch.c: (event_loop):
Better message printout.
2005-10-08 09:38:19 +00:00
Wim Taymans
65006292ce gst/: Make ChildProxy threadsafe and fix mem leaks.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
(gst_bin_child_proxy_get_children_count):
* gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
(gst_child_proxy_lookup), (gst_child_proxy_get_property),
(gst_child_proxy_get_valist), (gst_child_proxy_set_property),
(gst_child_proxy_set_valist):
* gst/parse/grammar.y:
Make ChildProxy threadsafe and fix mem leaks.
2005-10-08 09:24:25 +00:00
Thomas Vander Stichele
9e539e0202 gst/gst.c: debug the GST_PLUGIN_ env vars
Original commit message from CVS:
* gst/gst.c: (init_post):
debug the GST_PLUGIN_ env vars
2005-10-08 09:09:55 +00:00
Wim Taymans
ce081d6341 Added extra field to STATE_CHANGE message with the pending state, which will be different from the new state soon.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
* check/gst/gstmessage.c: (GST_START_TEST):
* check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
* gst/gstelement.c: (gst_element_commit_state),
(gst_element_lost_state):
* gst/gstmessage.c: (gst_message_new_state_changed),
(gst_message_parse_state_changed):
* gst/gstmessage.h:
* tools/gst-launch.c: (event_loop):
Added extra field to STATE_CHANGE message with the pending
state, which will be different from the new state soon.
2005-10-08 08:58:45 +00:00
Wim Taymans
8e213e710b gst/: Small cleanups and doc updates.
Original commit message from CVS:
* gst/gstbus.c: (gst_bus_pop):
* gst/gstclock.c:
* gst/gstsystemclock.c: (gst_system_clock_async_thread):
Small cleanups and doc updates.
2005-10-08 08:00:37 +00:00
Thomas Vander Stichele
80ca485dad gst/: log distributing clocks and base time
Original commit message from CVS:

* gst/gst.c: (init_pre):
* gst/gstbin.c: (gst_bin_add_func):
log distributing clocks and base time
* gst/gstregistry.c: (gst_registry_add_plugin),
(gst_registry_scan_path_level), (gst_registry_scan_path):
clean up the debugging output a little
* gst/gstutils.c: (gst_element_state_get_name):
warn about a memleak (I've actually seen this be used, though
it was probably a bug)
2005-10-08 06:49:09 +00:00
Wim Taymans
5a74215411 gst/base/gstbasesrc.*: Make the newsegment event customizable by subclasses.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_init), (gst_base_src_default_newsegment),
(gst_base_src_newsegment), (gst_base_src_do_seek),
(gst_base_src_loop), (gst_base_src_start):
* gst/base/gstbasesrc.h:
Make the newsegment event customizable by subclasses.
2005-10-07 18:17:23 +00:00
Wim Taymans
c6ae655d0a gst/gstevent.*: New event for future idea.
Original commit message from CVS:
* gst/gstevent.c: (gst_event_new_buffersize),
(gst_event_parse_buffersize):
* gst/gstevent.h:
New event for future idea.
2005-10-07 18:02:14 +00:00
Andy Wingo
7fe57d86a0 gst/gstelement.c (gst_element_post_message): Doc update.
Original commit message from CVS:
2005-10-07  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_post_message): Doc update.
2005-10-07 16:28:56 +00:00
Andy Wingo
5ba9a47aaa docs/gst/gstreamer-sections.txt: Update.
Original commit message from CVS:
2005-10-07  Andy Wingo  <wingo@pobox.com>

* docs/gst/gstreamer-sections.txt: Update.

* gst/gstmessage.c (gst_message_new_application): Made into a
function like honest API calls.
(gst_message_new_element): New message type.

* gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
2005-10-07 16:13:51 +00:00
Andy Wingo
ab96505bce check/elements/fakesrc.c (test_no_preroll): New check, checks that setting a live fakesrc to PAUSED returns NO_PREROL...
Original commit message from CVS:
2005-10-07  Andy Wingo  <wingo@pobox.com>

* check/elements/fakesrc.c (test_no_preroll): New check, checks
that setting a live fakesrc to PAUSED returns NO_PREROLL both
times.

* gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
NO_PREROLL from gst_element_change_state to fall through.
2005-10-07 15:22:38 +00:00
Wim Taymans
45867cc853 gst/gstghostpad.c: Activating a ghostpad with no internal pad in push mode is ok.
Original commit message from CVS:
* gst/gstghostpad.c: (gst_ghost_pad_get_internal),
(gst_ghost_pad_do_activate_push):
Activating a ghostpad with no internal pad in push mode
is ok.
2005-10-07 12:52:15 +00:00
Thomas Vander Stichele
100a96c969 gst/gstobject.h: there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
Original commit message from CVS:

* gst/gstobject.h:
there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
Fixes compilation on Windows.
2005-10-07 12:45:49 +00:00
Michael Smith
09fb8afea5 Print out feature and plugin count at the end when printing out all features.
Original commit message from CVS:
Print out feature and plugin count at the end when printing out
all features.

Also add a changelog entry which I'd written but not committed?
2005-10-07 10:32:24 +00:00
Johan Dahlin
25a0f8c57f Add a GType to GstIterator, update callsites and tests.
Original commit message from CVS:
* check/gst/gstiterator.c: (GST_START_TEST):
* gst/gstbin.c: (gst_bin_iterate_elements),
(gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
* gst/gstelement.c: (gst_element_iterate_pads):
* gst/gstformat.c: (gst_format_iterate_definitions):
* gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
(gst_iterator_new_list), (gst_iterator_filter):
* gst/gstiterator.h:
* gst/gstquery.c: (gst_query_type_iterate_definitions):
Add a GType to GstIterator, update callsites and tests.
2005-10-07 00:14:45 +00:00
Thomas Vander Stichele
68e6852e0e gst/gstpad.c: give events a chance to be handled by event probes when the pad is not linked
Original commit message from CVS:

* gst/gstpad.c: (gst_pad_event_default_dispatch):
give events a chance to be handled by event probes when the pad
is not linked
2005-10-06 14:01:44 +00:00
Thomas Vander Stichele
37c3c87edb gst/gstevent.*: add string representations for event types
Original commit message from CVS:

* gst/gstevent.c: (gst_event_type_get_name),
(gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
* gst/gstevent.h:
add string representations for event types
2005-10-06 13:55:43 +00:00
Wim Taymans
cb64b2a586 gst/elements/gstfilesink.c: Don't use NULL pointers.
Original commit message from CVS:
* gst/elements/gstfilesink.c: (gst_file_sink_close_file):
Don't use NULL pointers.
2005-10-06 13:24:28 +00:00
Thomas Vander Stichele
93c6b88036 gst/: widen the debug category in output to fit the biggest one we have add a bus category and use it play with the c...
Original commit message from CVS:

* gst/gst_private.h:
* gst/gstbus.c:
* gst/gstelement.c:
* gst/gstinfo.c:
* gst/gstpluginfeature.c:
widen the debug category in output to fit the biggest one we have
add a bus category and use it
play with the colors
fix up some categories
2005-10-06 09:49:42 +00:00
Thomas Vander Stichele
f22af4c0bb gst/gstghostpad.c: add push activation of sink ghost pads.
Original commit message from CVS:
2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>

* gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
add push activation of sink ghost pads.
Andye, please verify
2005-10-06 07:13:01 +00:00
Thomas Vander Stichele
8b0f1ffe11 gst/gstutils.c: fix a bug in the case where neither element has a pad
Original commit message from CVS:
* gst/gstutils.c: (gst_element_link_pads):
fix a bug in the case where neither element has a pad
* check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
add a test for that case
2005-10-05 21:34:42 +00:00
Thomas Vander Stichele
06c7f2231b gst/gstpad.c: emit have-data before checking for peers. This allows for probe handlers to connect elements. This he...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
emit have-data before checking for peers.  This allows
for probe handlers to connect elements.  This helps autopluggers.
* check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
(gst_pad_suite):
add six checks, linked/unlinked with no/true/false probe
2005-10-05 16:16:58 +00:00
Wim Taymans
aabe6fe013 gst/elements/: Protect last_message with lock.
Original commit message from CVS:
* gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
(gst_fake_sink_event), (gst_fake_sink_preroll),
(gst_fake_sink_render), (gst_fake_sink_change_state):
* gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
(gst_fake_src_get_property), (gst_fake_src_create),
(gst_fake_src_stop):
* gst/elements/gstidentity.c: (gst_identity_stop):
Protect last_message with lock.
2005-10-04 18:46:09 +00:00
Edward Hervey
c07a5da265 gst/gstformat.h: Added precision in the comments for GST_FORMAT_DEFAULT
Original commit message from CVS:
* gst/gstformat.h:
Added precision in the comments for GST_FORMAT_DEFAULT
2005-10-04 15:04:50 +00:00
Tim-Philipp Müller
7d32a34c83 tools/gst-launch.c: Don't try to run erroneous pipelines.
Original commit message from CVS:
* tools/gst-launch.c: (main):
Don't try to run erroneous pipelines.
2005-10-04 11:51:37 +00:00
Julien Moutte
0a55c5f642 gst/gstbus.c: We don't need this header.
Original commit message from CVS:
2005-10-04  Julien MOUTTE  <julien@moutte.net>

* gst/gstbus.c: We don't need this header.
2005-10-04 11:09:41 +00:00
Thomas Vander Stichele
f5335baf9d back to head
Original commit message from CVS:
back to head
2005-10-03 17:57:32 +00:00
Thomas Vander Stichele
d9a0ee6061 release time
Original commit message from CVS:
release time
2005-10-03 17:47:21 +00:00
Andy Wingo
60f3c2b541 gst/gstpad.c (gst_pad_activate_push): There is a race condition whereby calling a pad's activatepush() function can s...
Original commit message from CVS:
2005-10-03  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_activate_push): There is a race condition
whereby calling a pad's activatepush() function can start a thread
that starts to push or pull before the pad gets the FLUSHING flag
unset. Hack around it by holding the stream lock until the flag is
set. Need to replace this with a proper solution. Together with
the ghost pad fixes, this fixes mp3 playing/tagreading.
2005-10-02 23:24:25 +00:00
Andy Wingo
7b469c4368 changelog
Original commit message from CVS:
changelog
2005-10-02 23:21:04 +00:00
Andy Wingo
381006822b gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
Original commit message from CVS:
2005-10-02  Andy Wingo  <wingo@pobox.com>

* gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
It is volatile, after all.

* docs/design/part-gstghostpad.txt: Flesh out activation with
ghost pads.

* gst/base/gstbasesrc.c (gst_base_src_init): Use
GST_DEBUG_FUNCPTR.
2005-10-02 18:57:07 +00:00
Tim-Philipp Müller
cfd31847d7 configure.ac: Fix (unused) AM_CONDITIONAL tests.
Original commit message from CVS:
* configure.ac:
Fix (unused) AM_CONDITIONAL tests.
2005-10-02 18:30:27 +00:00
Tim-Philipp Müller
5b5e1702fe gst/gstutils.c: Add assertion that makes sure src_val is >=0, just like gst_query_new_convert() has. (#315895)
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* gst/gstutils.c: (gst_pad_query_convert):
Add assertion that makes sure src_val is >=0, just like
gst_query_new_convert() has. (#315895)
2005-10-01 17:11:07 +00:00
Edward Hervey
6fcaf333b1 gst/elements/gsttee.c: Let's not iterate pads we're not interested in, it avoids getting sky-high refcounts on sinkpad.
Original commit message from CVS:
* gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
Let's not iterate pads we're not interested in, it avoids getting
sky-high refcounts on sinkpad.
2005-09-30 15:43:03 +00:00
Wim Taymans
93823de17e gst/gstelement.c: Small tweak, element in ASYNC remains ASYNC.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_set_state),
(gst_element_change_state):
Small tweak, element in ASYNC remains ASYNC.
2005-09-30 08:29:02 +00:00
Wim Taymans
2d3e9f6438 gst/base/gstbasesink.c: Only error is an error.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_change_state):
Only error is an error.

* gst/gstbin.c: (gst_bin_change_state):
Better debugging.

* gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
Also call pad_block in pad alloc.

* gst/gstutils.c: (gst_flow_get_name):
Better debugging.
2005-09-30 08:00:12 +00:00
Tim-Philipp Müller
428cf34142 gst/base/gstbasesrc.c: Fix documentation typos. Add some more debug info.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_get_range):
Fix documentation typos. Add some more debug info.
2005-09-29 20:26:12 +00:00
David Schleef
1ba0964a87 gst/gstplugin.c: Make some error messages more end-user friendly.
Original commit message from CVS:
* gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
more end-user friendly.
* tools/gst-inspect.c: (main): Check if command-line argument is
a file and attempt to load that file as a plugin.
2005-09-29 19:45:27 +00:00
Thomas Vander Stichele
18682cacc1 check/: fix tests for the new warning
Original commit message from CVS:

* check/gst/gstbin.c:
* check/states/sinks.c:
fix tests for the new warning
* check/gst/gstpipeline.c:
add a test for pipeline and bus interaction
* gst/gstelement.c:
elements should be NULL if they get disposed; add a warning if not
2005-09-29 18:37:48 +00:00
Thomas Vander Stichele
91e8b0bb91 gst/gstobject.c: for 2.6 refcounting, make debug log more correct by printing the actual refcounts at the time of swa...
Original commit message from CVS:

* gst/gstobject.c:
for 2.6 refcounting, make debug log more correct by printing
the actual refcounts at the time of swap (Wim)
2005-09-29 18:35:38 +00:00
Andy Wingo
d2c83dc282 changelog
Original commit message from CVS:
changelog
2005-09-29 16:06:18 +00:00
Edward Hervey
52b24de958 libs/gst/controller/gstcontroller.c: Better if we actually iterate the list :)
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
Better if we actually iterate the list :)
2005-09-29 15:39:22 +00:00
Wim Taymans
4d6a030306 check/gst/gstbin.c: Change for new bus API.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
Change for new bus API.

* check/gst/gstbus.c: (message_func_eos), (message_func_app),
(send_messages), (GST_START_TEST), (gstbus_suite):
Change for new bus signal API.

* gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
(gst_bus_source_prepare), (gst_bus_source_check),
(gst_bus_create_watch), (gst_bus_add_watch_full),
(gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
(gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
* gst/gstbus.h:
Remove support for multiple GSources operating on different
message types as it is too complex and unneeded when using
signals.
Added support for receiving signals from the bus.
2005-09-29 13:07:37 +00:00
Thomas Vander Stichele
482d36244d rename filter-caps to caps property
Original commit message from CVS:

* docs/libs/tmpl/gstdataprotocol.sgml:
* docs/manual/advanced-dataaccess.xml:
* gst/elements/gstcapsfilter.c:
* gst/gstutils.c:
rename filter-caps to caps property
2005-09-29 12:37:38 +00:00
Tim-Philipp Müller
fa0afcafb4 gst/gstvalue.c: More robust fraction string parsing.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_deserialize_fraction):
More robust fraction string parsing.
* docs/pwg/appendix-porting.xml:
Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
2005-09-29 12:05:51 +00:00
Tim-Philipp Müller
356893d5f8 gst/gstcaps.c: Thou shalt not free a structure and then continue using it in the next loop iteration.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_do_simplify):
Thou shalt not free a structure and then continue using it
in the next loop iteration.
* check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
(gst_caps_suite):
Add test case for caps simplification.
2005-09-29 10:56:57 +00:00
Wim Taymans
e2441a99b7 check/gst/gstbin.c: Oops.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
Oops.
2005-09-29 09:42:15 +00:00
Wim Taymans
92836e5172 check/gst/gstbin.c: Add bus to bin.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
Add bus to bin.

* gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
(add_to_queue), (clear_queue), (reset_degree), (update_degree),
(find_element), (gst_bin_sort_iterator_next),
(gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
(gst_bin_iterate_sorted), (gst_bin_element_set_state),
(gst_bin_change_state), (gst_bin_dispose):
A bin does not have a bus, it gets the bus from the parent.

* gst/gstelement.c: (gst_element_requires_clock),
(gst_element_provides_clock), (gst_element_is_indexable),
(gst_element_is_locked_state), (gst_element_change_state),
(gst_element_set_bus_func):
Small cleanups.

* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_init), (gst_pipeline_provide_clock_func):
The pipeline provides a bus.
2005-09-29 09:39:36 +00:00
Johan Dahlin
d52d4b4a4d gst/gstmessage.c (gst_message_parse_state_changed): Use gst_structure_get_enum instead of gst_structure_get_int
Original commit message from CVS:
* gst/gstmessage.c (gst_message_parse_state_changed): Use
gst_structure_get_enum instead of gst_structure_get_int

* gst/gststructure.c (gst_structure_get_enum): Impl.

* gst/gststructure.h (gst_structure_get_enum): Add

* docs/gst/gstreamer-sections.txt: Ditto
2005-09-29 02:32:37 +00:00
Johan Dahlin
bdb214775d gst/gstmessage.c (gst_message_new_state_changed): Use
Original commit message from CVS:
* gst/gstmessage.c (gst_message_new_state_changed): Use
GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
which does introspection.
Reviewed by Christian Schaller
2005-09-29 01:57:00 +00:00