- 15 Jun, 2010 1 commit
-
-
Benjamin Gaignard authored
Fixes bug #621660.
-
- 24 Mar, 2010 1 commit
-
-
Benjamin Otte authored
Use gst_element_class_set_details_simple() instead. If you want to convert automatically, here's a script: for file in `git grep -l GstElementDetails`; do sed -i -n -r ' 1h 1!H $ { g s/((\/\*[^\n]*\*\/)?\n)*[^\n]*GstElementDetails .* =\s*GST_ELEMENT_DETAILS\s*\((\"[^\"]*\",\s*\"[^\"]*\",\s*\"[^\"]*\",\s*(\"[^\"]*\"\s*)*)\);\n*(.*)gst_element_class_set_details \(([^,]*),\s*[^)]*\)/\n\n\5gst_element_class_set_details_simple (\6, \3)/ s/((\/\*[^\n]*\*\/)?\n)*[^\n]*GstElementDetails .* =\s*\{\s*(\"[^\"]*\",\s*\"[^\"]*\",\s*\"[^\"]*\",\s*(\"[^\"]*\"\s*)*)\};\n*(.*)gst_element_class_set_details \(([^,]*),\s*[^)]*\)/\n\n\5gst_element_class_set_details_simple (\6, \3)/ p }' $file ~/gst/gstreamer/tools/gst-indent $file done
-
- 17 Mar, 2010 1 commit
-
-
Mart Raudsepp authored
-
- 14 Dec, 2009 1 commit
-
-
Stefan Kost authored
Take reviewed docs from docs/design/part-state to have that more prominent inside the api docs. Add a few sentences to link things better together.
-
- 09 Sep, 2009 1 commit
-
-
David Schleef authored
-
- 28 Aug, 2009 1 commit
-
-
Wim Taymans authored
-
- 29 May, 2009 1 commit
-
-
Wim Taymans authored
Add a start_time field and some methods. The start_time will contain the running_time of when the element last went to paused. This time can be user to report the position in PAUSED but also to do more correct clipping and stepping later.
-
- 21 May, 2009 1 commit
-
-
Wim Taymans authored
Change some instances where we wrongly refer to stream time where it should have been running time.
-
- 14 May, 2009 1 commit
-
-
Wim Taymans authored
Add a gst_element_lost_state_full() with an extra argument to control distribution of a new base_time. We will need this for flushing step operations. API: GstElement::gst_element_lost_state_full()
-
- 25 Jul, 2008 1 commit
-
-
Thijs Vermeir authored
Original commit message from CVS: * gst/gstelement.h: Fix link in documentation.
-
- 29 May, 2008 1 commit
-
-
Sebastian Dröge authored
gst/gstelement.*: Deprecated gst_element_get_pad() as it can't be used sanely. It's not clear of the reference to the... Original commit message from CVS: * gst/gstelement.c: * gst/gstelement.h: Deprecated gst_element_get_pad() as it can't be used sanely. It's not clear of the reference to the resulting pad must be released later or not, resulting in possible leaks. Fixes bug #533865.
-
- 02 Aug, 2007 1 commit
-
-
Tim-Philipp Müller authored
gst/gstelement.*: Make strings passed to gst_element_class_set_details_simple() constant, as they should be (#462752). Original commit message from CVS: * gst/gstelement.c: (gst_element_class_set_details_simple): * gst/gstelement.h: Make strings passed to gst_element_class_set_details_simple() constant, as they should be (#462752).
-
- 23 Jun, 2007 1 commit
-
-
Thomas Vander Stichele authored
Original commit message from CVS: 80 line fix
-
- 21 Jun, 2007 1 commit
-
-
Stefan Kost authored
Original commit message from CVS: * gst/gstelement.c: (gst_element_class_set_details_simple): * gst/gstelement.h: * gst/gstutils.c: (gst_type_register_static_full): * gst/gstutils.h: * plugins/elements/gstcapsfilter.c: (gst_capsfilter_base_init): * plugins/elements/gstfakesink.c: (gst_fake_sink_base_init): * plugins/elements/gstfakesrc.c: (gst_fake_src_base_init): * plugins/elements/gstfdsink.c: (gst_fd_sink_base_init): * plugins/elements/gstfdsrc.c: (gst_fd_src_base_init): * plugins/elements/gstfilesink.c: (gst_file_sink_base_init): * plugins/elements/gstfilesrc.c: (gst_file_src_base_init): * plugins/elements/gstidentity.c: (gst_identity_base_init): * plugins/elements/gstmultiqueue.c: (gst_multi_queue_base_init): * plugins/elements/gstqueue.c: (gst_queue_base_init), (apply_buffer), (gst_queue_chain): * plugins/elements/gsttee.c: (gst_tee_base_init): * plugins/elements/gsttypefindelement.c: (gst_type_find_element_base_init), (gst_type_find_element_class_init): Saving relocations for GTypeInfo and GstElementDetails. Fixes #437457.
-
- 19 Mar, 2007 1 commit
-
-
Wim Taymans authored
Original commit message from CVS: * docs/gst/gstreamer-sections.txt: Add new element field and method. * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (bin_remove_messages), (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state), (gst_bin_get_state_func), (gst_bin_element_set_state), (gst_bin_change_state_func), (gst_bin_continue_func), (bin_bus_handler), (bin_push_state_continue), (bin_handle_async_start), (bin_handle_async_done), (gst_bin_handle_message_func): Make async state changes a bit smarter by using new ASYNC_START and ASYNC_DONE messages. This reduces the number of times we run the state recalculation thread. Don't change state of element with a pending ASYNC_START message. Deprecate STATE_DIRTY messages. * gst/gstelement.c: (gst_element_init), (gst_element_send_event), (gst_element_get_state_func), (gst_element_continue_state), (gst_element_lost_state), (gst_element_set_state_func), (gst_element_change_state): * gst/gstelement.h: Keep the state that was last set by the app in a new element field. Don't allow state changes when handling an element event. Post ASYNC_START and ASYNC_DONE messages. Change lost_state so that we go to PAUSED and wait for the parent to set us to PLAYING again (so latency calculation can be performed) Export gst_element_change_state() method so that subclasses can use it. API: gst_element_change_state() API: GST_STATE_TARGET * gst/gstpipeline.c: (gst_pipeline_class_init), (reset_stream_time), (gst_pipeline_change_state), (gst_pipeline_handle_message), (gst_pipeline_set_new_stream_time): Using the new ASYNC_START message we can reset the base_time when needed. This can then be used to implement base_time redistribution in flushing seeks so that we can remove the explicit seek handling. Perform latency query and configuration when going to PLAYING. * libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state), (gst_base_sink_query), (gst_base_sink_change_state): Post new ASYNC_START/ASYNC_DONE messages. * tests/check/generic/sinks.c: (GST_START_TEST): Fix test because the bin will not set the async element to PLAYING right away. * tests/check/gst/gstbin.c: (pop_async_done), (GST_START_TEST): Make the message check a little stronger. Handle ASYNC messages. * tests/check/pipelines/cleanup.c: (GST_START_TEST): * tests/check/pipelines/simple-launch-lines.c: (GST_START_TEST): Expect ASYNC_DONE messages.
-
- 28 Feb, 2007 1 commit
-
-
Wim Taymans authored
Original commit message from CVS: * gst/gstelement.c: (gst_element_message_full), (gst_element_get_state_func): * gst/gstelement.h: Improve docs a little. Added Since: for new macro. * gst/gstobject.c: (gst_object_sink): * gst/gstpipeline.c: (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time): * gst/gstpipeline.h: Improve debugging and docs. * gst/gstutils.c: (gst_element_state_change_return_get_name): Improve debugging.
-
- 21 Feb, 2007 1 commit
-
-
Thomas Vander Stichele authored
Original commit message from CVS: * docs/gst/gstreamer-sections.txt: * gst/gstelement.h: Fix up documentation to link to the correct GstGError section. Add GST_ELEMENT_INFO macro since someone else added a Info message.
-
- 09 Jan, 2007 1 commit
-
-
Wim Taymans authored
Original commit message from CVS: * docs/design/draft-latency.txt: Updates. * gst/gstelement.h: * gst/gststructure.c: * gst/gsttrace.c: Small typo fixes.
-
- 16 Oct, 2006 1 commit
-
-
Tim-Philipp Müller authored
Original commit message from CVS: * gst/gstelement.h: Add casts to the correct return type to state <=> state transition macros.
-
- 13 Oct, 2006 1 commit
-
-
Yves Lefebvre authored
Original commit message from CVS: * gst/gstelement.h: Clarify _NO_PREROLL a bit more. * gst/gstevent.c: Fix docs. * gst/gstpad.c: (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked), (gst_pad_save_thyself), (handle_pad_block), (gst_pad_push_event), (gst_pad_send_event): Patch by: Yves Lefebvre <ivanohe at abacom dot com> Fix possible deadlock due to wrong locking order. Fixes #361769. Remove some redundant/misplaced checks in pad_block. * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position): For negative rates, count backwards from the duration.
-
- 08 Oct, 2006 1 commit
-
-
Tim-Philipp Müller authored
gst/gstelement.h: gcc versions prior to gcc 3.3 apparently complain about a NULL printf format string, so don't use G... Original commit message from CVS: * gst/gstelement.h: gcc versions prior to gcc 3.3 apparently complain about a NULL printf format string, so don't use G_GNUC_PRINTF for those versions.
-
- 05 Oct, 2006 1 commit
-
-
Tim-Philipp Müller authored
Add GST_USING_PRINTF_EXTENSION to gstconfig.h so that we know whether we can use G_GNUC_PRINTF in other header files ... Original commit message from CVS: * configure.ac: * docs/gst/gstreamer-sections.txt: * gst/gstconfig.h.in: * gst/gstelement.h: * gst/gstinfo.h: Add GST_USING_PRINTF_EXTENSION to gstconfig.h so that we know whether we can use G_GNUC_PRINTF in other header files and at least check the printf format/arguments of debug messages and GST_ELEMENT_ERROR messages when the printf extension is not being used. Replace more tabs with spaces in gstinfo.h and remove two spurious function declarations in GST_DISABLE_DEBUG part with macros.
-
- 06 Jun, 2006 1 commit
-
-
Thomas Vander Stichele authored
Original commit message from CVS: whitespace/width fixes
-
- 29 Nov, 2005 1 commit
-
-
Andy Wingo Wingo authored
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.
-
- 22 Nov, 2005 1 commit
-
-
Wim Taymans authored
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.
-
- 21 Nov, 2005 1 commit
-
-
Andy Wingo Wingo authored
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.
-
- 19 Nov, 2005 1 commit
-
-
Andy Wingo Wingo authored
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.
-
- 10 Nov, 2005 1 commit
-
-
Wim Taymans authored
Original commit message from CVS: * docs/gst/gstreamer-sections.txt: * gst/gstelement.c: * gst/gstelement.h: Fix docs, move some STATE macros to private.
-
- 08 Nov, 2005 1 commit
-
-
Wim Taymans authored
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.
-
- 24 Oct, 2005 1 commit
-
-
Michael Smith authored
Original commit message from CVS: Fix some minor documentation typos
-
- 21 Oct, 2005 1 commit
-
-
Wim Taymans authored
Original commit message from CVS: * docs/gst/gstreamer-docs.sgml: * docs/gst/gstreamer-sections.txt: * gst/gstelement.h: * gst/gstevent.c: * gst/gstevent.h: * gst/gstmessage.h: * gst/gstpad.h: * gst/gstparse.h: * gst/gsttask.c: (gst_task_finalize), (gst_task_func): * gst/gsttask.h: * gst/gstutils.c: * gst/gstutils.h: And 2% more doc coverage.
-
- 18 Oct, 2005 2 commits
-
-
Wim Taymans authored
Original commit message from CVS: * check/Makefile.am: * check/pipelines/stress.c: (GST_START_TEST), (simple_launch_lines_suite), (main): Small state change torture test. * docs/design/part-states.txt: * gst/base/gstbasesink.c: (gst_base_sink_commit_state), (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing), (gst_base_sink_change_state): Never take state lock from streaming thread, clean up ugly hacks. Unfortunatly core does not yet support nice ways to async commit state. * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state), (bin_bus_handler): Start state recalc if a STATE_DIRTY message is posted, but only on the toplevel bin. * gst/gstelement.c: (gst_element_sync_state_with_parent), (gst_element_get_state_func), (gst_element_abort_state), (gst_element_commit_state), (gst_element_lost_state), (gst_element_set_state_func), (gst_element_change_state): * gst/gstelement.h: State variables are now protected with the LOCK, the state lock is only used to serialize _set_state().
-
Wim Taymans authored
Original commit message from CVS: * gst/gstbin.h: * gst/gstelement.c: (gst_element_class_init), (gst_element_set_state), (gst_element_set_state_func): * gst/gstelement.h: Pending ABI changes. GThreadPool in GstBinClass to monitor async state changes. state_cookie in GstElement to detect concurrent gst/set state. set_state is now virtual too in case a very complicated element has to be constructed.
-
- 17 Oct, 2005 1 commit
-
-
Stefan Kost authored
Original commit message from CVS: * docs/gst/gstreamer-sections.txt: * docs/libs/gstreamer-libs-sections.txt: * gst/gstelement.h: add new api entries hide internal macro
-
- 15 Oct, 2005 1 commit
-
-
Thomas Vander Stichele authored
Original commit message from CVS: * gst/gst.c: * gst/gst.h: remove _gst_registry_auto_load, not used anymore * gst/gstbin.c: (gst_bin_get_type): * gst/gstbin.h: * gst/gstelement.c: (gst_element_get_type): * gst/gstelement.h: * gst/gstobject.c: (gst_object_get_type): * gst/gstobject.h: * gst/gstpad.c: (gst_pad_get_type): * gst/gstpad.h: make _get_type functions similar, fixes data export from library
-
- 12 Oct, 2005 2 commits
-
-
Stefan Kost authored
Original commit message from CVS: * check/gst/gstbin.c: (GST_START_TEST): * docs/gst/gstreamer-sections.txt: * gst/base/gstbasesink.c: (gst_base_sink_init): * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_get_range), (gst_base_src_check_get_range), (gst_base_src_start), (gst_base_src_stop): * gst/base/gstbasesrc.h: * gst/elements/gstfakesrc.c: (gst_fake_src_set_property): * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func), (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state), (bin_bus_handler): * gst/gstbin.h: * gst/gstbuffer.h: * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing): * gst/gstbus.h: * gst/gstelement.c: (gst_element_is_locked_state), (gst_element_set_locked_state), (gst_element_commit_state), (gst_element_set_state): * gst/gstelement.h: * gst/gstindex.c: (gst_index_init): * gst/gstindex.h: * gst/gstminiobject.h: * gst/gstobject.c: (gst_object_init), (gst_object_sink), (gst_object_set_parent): * gst/gstobject.h: * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked), (gst_pad_get_caps_unlocked), (gst_pad_set_caps): * gst/gstpad.h: * gst/gstpadtemplate.h: * gst/gstpipeline.c: (gst_pipeline_provide_clock_func), (gst_pipeline_use_clock), (gst_pipeline_auto_clock): * gst/gstpipeline.h: * gst/indexers/gstfileindex.c: (gst_file_index_load), (gst_file_index_commit): * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init): * testsuite/pad/link.c: (gst_test_src_init), (gst_test_filter_init), (gst_test_sink_init): * testsuite/states/locked.c: (main): renamed GST_FLAGS macros to GST_OBJECT_FLAGS moved bitshift from macro to enum definition
-
Wim Taymans authored
Original commit message from CVS: * check/gst/gstbin.c: (GST_START_TEST): * check/gst/gstelement.c: (GST_START_TEST): * check/gst/gstevent.c: (GST_START_TEST), (test_event): * check/gst/gstghostpad.c: (GST_START_TEST): * check/gst/gstpipeline.c: (GST_START_TEST): * check/pipelines/simple_launch_lines.c: (run_pipeline): * check/states/sinks.c: (GST_START_TEST): * gst/elements/gsttypefindelement.c: (stop_typefinding): * gst/gstbin.c: (gst_bin_provide_clock_func), (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/gstelement.c: (gst_element_get_state_func), (gst_element_get_state), (gst_element_abort_state), (gst_element_commit_state), (gst_element_set_state), (gst_element_change_state), (gst_element_change_state_func): * gst/gstelement.h: * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek), (gst_pipeline_provide_clock_func): * gst/gstutils.c: (gst_element_link_pads_filtered): * tools/gst-launch.c: (main): * tools/gst-typefind.c: (main): Use GstClockTime in _get_state() instead of GTimeVal. Remove old code in gstutils.c
-
- 10 Oct, 2005 2 commits
-
-
Wim Taymans authored
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.
-
Andy Wingo Wingo authored
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.
-
- 08 Oct, 2005 1 commit
-
-
Wim Taymans authored
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.
-