1. 17 Jun, 2005 1 commit
  2. 08 Jun, 2005 1 commit
    • Andy Wingo Wingo's avatar
      gst/gstutils.c: RPAD fixes all around. · 4b908e33
      Andy Wingo Wingo authored
      Original commit message from CVS:
      2005-06-08  Andy Wingo  <wingo@pobox.com>
      
      * gst/gstutils.c: RPAD fixes all around.
      (gst_element_link_pads): Refcounting fixes.
      
      * tools/gst-inspect.c:
      * tools/gst-xmlinspect.c:
      * parse/grammar.y:
      * gst/base/gsttypefindhelper.c:
      * gst/base/gstbasesink.c:
      * gst/gstqueue.c: RPAD fixes.
      
      * gst/gstghostpad.h:
      * gst/gstghostpad.c: New ghost pad implementation as full proxy
      pads. The tricky thing is they provide both source and sink
      interfaces, since they proxy the internal pad for the external
      pad, and vice versa. Implement with lower-level ProxyPad objects,
      with the interior proxy pad as a child of the exterior ghost pad.
      Should write a doc on this.
      
      * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
      (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
      gst_object API.
      
      * gst/gstpad.c: Big changes. No more stub base GstPad, now all
      pads are real pads. No ghost pads in this file. Not documenting
      the myriad s/RPAD/PAD/ and REALIZE fixes.
      (gst_pad_class_init): Add properties for "direction" and
      "template". Both are construct-only, so they can't change during
      the life of the pad. Fixes properly deriving from GstPad.
      (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
      derived objects, just set properties when creating the objects via
      g_object_new.
      (gst_pad_get_parent): Implement as a function, return NULL if the
      parent is not an element.
      (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
      (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
      
      * gst/gstobject.c (gst_object_class_init): Make name a construct
      property. Don't set it in the object init.
      
      * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
      with UNKNOWN direction.
      (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
      with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
      (gst_element_remove_pad): Remove ghost-pad special cases.
      (gst_element_pads_activate): Remove rpad cruft.
      
      * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
      catch the pad's-parent-not-an-element case.
      
      * gst/gst.h: Include gstghostpad.h.
      
      * gst/gst.c (init_post): No more real, ghost pads.
      
      * gst/Makefile.am: Add gstghostpad.[ch].
      
      * check/Makefile.am:
      * check/gst/gstbin.c:
      * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
      into a bin creates ghost pads, and that the refcounts are right.
      Partly moved from gstbin.c.
      4b908e33
  3. 02 Jun, 2005 2 commits
    • Andy Wingo Wingo's avatar
      gst/elements/gsttypefindelement.c (do_pull_typefind): Query the file size,... · 26a1c2c6
      Andy Wingo Wingo authored
      gst/elements/gsttypefindelement.c (do_pull_typefind): Query the file size, pass it on to the type find helper.
      
      Original commit message from CVS:
      2005-06-02  Andy Wingo  <wingo@pobox.com>
      
      * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
      file size, pass it on to the type find helper.
      
      * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
      segment_start and segment_end properly according to the seek
      method. Segment_end is still a bit flaky because offset can be
      negative for CUR and END cases, but it takes -1 as an "unset"
      value.
      26a1c2c6
    • Wim Taymans's avatar
      gst/: Bufferalloc: return GstFlowReturn to more accuratly report why allocation failed. · d3edbe17
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
      (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
      (gst_basesink_activate):
      * gst/base/gstbasesink.h:
      * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
      (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
      (gst_pad_query), (gst_pad_start_task):
      * gst/gstpad.h:
      * gst/gstqueue.c: (gst_queue_bufferalloc),
      (gst_queue_handle_sink_event), (gst_queue_chain):
      Bufferalloc: return GstFlowReturn to more accuratly report
      why allocation failed.
      d3edbe17
  4. 30 May, 2005 1 commit
  5. 25 May, 2005 2 commits
    • Ronald S. Bultje's avatar
      gst/base/gstbasesrc.c: Don't go in pull mode for non-seekable sources. · f0ed4168
      Ronald S. Bultje authored
      Original commit message from CVS:
      * gst/base/gstbasesrc.c: (gst_basesrc_activate):
      Don't go in pull mode for non-seekable sources.
      * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
      (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
      (free_entry), (stop_typefinding),
      (gst_type_find_element_handle_event), (find_peek),
      (gst_type_find_element_chain), (do_pull_typefind),
      (gst_type_find_element_change_state):
      Allow typefinding (w/o seeking) in push-mode, simplified version
      of what was in 0.8.
      * gst/gstutils.c: (gst_buffer_join):
      * gst/gstutils.h:
      gst_buffer_join() from 0.8.
      f0ed4168
    • Wim Taymans's avatar
      gst/: Implement gst_pad_pause/start/stop_task(), take STREAM lock in task function. · add280cd
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
      * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
      (gst_basesink_finish_preroll), (gst_basesink_chain),
      (gst_basesink_loop), (gst_basesink_activate),
      (gst_basesink_change_state):
      * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
      (gst_basesrc_get_range), (gst_basesrc_loop),
      (gst_basesrc_activate):
      * gst/elements/gsttee.c: (gst_tee_sink_activate):
      * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
      (gst_real_pad_init), (gst_real_pad_set_property),
      (gst_real_pad_get_property), (gst_pad_set_active),
      (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
      (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
      (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
      (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
      (gst_pad_event_default_dispatch), (gst_pad_event_default),
      (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
      (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
      (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
      (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
      (gst_pad_stop_task):
      * gst/gstpad.h:
      * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
      (gst_queue_loop), (gst_queue_src_activate):
      * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
      (gst_task_get_state):
      * gst/gsttask.h:
      * gst/schedulers/threadscheduler.c:
      (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
      Implement gst_pad_pause/start/stop_task(), take STREAM lock
      in task function.
      Remove ACTIVE pad flag, use FLUSHING everywhere
      Added _pad_chain(), _pad_get_range() to call chain/getrange
      functions.
      Add locks around IS_FLUSHING when reading.
      Take STREAM lock in chain(), get_range() functions so plugins
      don't need to take it anymore.
      add280cd
  6. 19 May, 2005 1 commit
  7. 18 May, 2005 1 commit
    • Wim Taymans's avatar
      gst/base/: Ported and added adapter to the base classes. · 8074f668
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/Makefile.am:
      * gst/base/gstadapter.c: (gst_adapter_base_init),
      (gst_adapter_class_init), (gst_adapter_init),
      (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
      (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
      (gst_adapter_flush), (gst_adapter_available),
      (gst_adapter_available_fast):
      * gst/base/gstadapter.h:
      Ported and added adapter to the base classes.
      8074f668
  8. 17 May, 2005 2 commits
    • Wim Taymans's avatar
      gst/: Don't queue buffers in basesink when we are flushing. · 576b2181
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
      (gst_basesink_chain_unlocked), (gst_basesink_activate):
      * gst/gstminiobject.c: (gst_mini_object_get_type),
      (gst_mini_object_free):
      * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
      (gst_pad_push), (gst_pad_push_event):
      * gst/gstqueue.c: (gst_queue_change_state):
      Don't queue buffers in basesink when we are flushing.
      Unref buffer when flushing in basesink.
      Flush queue when going to READY
      Unref buffer when _push() returns an error.
      Don't free MiniObject instance when refcount is incremented
      in _finalize() so that we can recover objects.
      576b2181
    • Tim-Philipp Müller's avatar
      gst/base/gstbasesrc.c: Remove implicit cast from gboolean to... · 7fa9d7eb
      Tim-Philipp Müller authored
      gst/base/gstbasesrc.c: Remove implicit cast from gboolean to GstElementStateReturn; make sure we still return failure...
      
      Original commit message from CVS:
      * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
      Remove implicit cast from gboolean to GstElementStateReturn;
      make sure we still return failure in paused => ready case if
      the parent class fails to change state and our own stop
      vfunc succeeds.
      7fa9d7eb
  9. 16 May, 2005 1 commit
    • David Schleef's avatar
      check/Makefile.am: remove GstData checks · e134f7f7
      David Schleef authored
      Original commit message from CVS:
      * check/Makefile.am: remove GstData checks
      * check/gst-libs/gdp.c: (START_TEST): fix for API changes
      * gst/Makefile.am: add miniobject, remove data
      * gst/gst.h: add miniobject, remove data
      * gst/gstdata.c: remove
      * gst/gstdata.h: remove
      * gst/gstdata_private.h: remove
      * gst/gsttypes.h: remove GstEvent and GstMessage
      * gst/gstelement.c: (gst_element_post_message): fix for API changes
      * gst/gstmarshal.list: change BOXED -> OBJECT
      Implement GstMiniObject.
      * gst/gstminiobject.c:
      * gst/gstminiobject.h:
      Modify to be subclasses of GstMiniObject.
      * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
      (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
      (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
      (gst_subbuffer_get_type), (gst_subbuffer_init),
      (gst_buffer_create_sub), (gst_buffer_is_span_fast),
      (gst_buffer_span):
      * gst/gstbuffer.h:
      * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
      (gst_event_class_init), (gst_event_init), (gst_event_finalize),
      (_gst_event_copy), (gst_event_new):
      * gst/gstevent.h:
      * gst/gstmessage.c: (_gst_message_initialize),
      (gst_message_get_type), (gst_message_class_init),
      (gst_message_init), (gst_message_finalize), (_gst_message_copy),
      (gst_message_new), (gst_message_new_error),
      (gst_message_new_warning), (gst_message_new_tag),
      (gst_message_new_state_changed), (gst_message_new_application):
      * gst/gstmessage.h:
      * gst/gstprobe.c: (gst_probe_perform),
      (gst_probe_dispatcher_dispatch):
      * gst/gstprobe.h:
      * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
      (gst_query_class_init), (gst_query_finalize), (gst_query_init),
      (_gst_query_copy), (gst_query_new):
      Update elements for GstData -> GstMiniObject changes
      * gst/gstquery.h:
      * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
      (gst_queue_chain), (gst_queue_loop):
      * gst/elements/gstbufferstore.c:
      (gst_buffer_store_add_buffer_func),
      (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
      * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
      (gst_fakesink_render):
      * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
      * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
      (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
      (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
      (gst_filesrc_create_read):
      * gst/elements/gstidentity.c: (gst_identity_class_init):
      * gst/elements/gsttypefindelement.c:
      (gst_type_find_element_src_event), (free_entry_buffers),
      (gst_type_find_element_handle_event):
      * libs/gst/dataprotocol/dataprotocol.c:
      (gst_dp_header_from_buffer):
      * libs/gst/dataprotocol/dataprotocol.h:
      * libs/gst/dataprotocol/dp-private.h:
      e134f7f7
  10. 12 May, 2005 3 commits
    • Wim Taymans's avatar
      gst/: Identify sinks by their flag to avoid overly complicated checks (fow now). · 1c4ea621
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/gstbasesink.c: (gst_basesink_init),
      (gst_basesink_activate):
      * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
      (gst_basesrc_is_seekable):
      * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
      (bin_element_is_sink), (gst_bin_change_state):
      * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
      * gst/gstelement.h:
      Identify sinks by their flag to avoid overly complicated
      checks (fow now).
      Do state changes even for elements not reachable from the
      sinks.
      BaseSink is a sink now :)
      Some more debugging info in the basesrc.
      1c4ea621
    • Tim-Philipp Müller's avatar
      gst/base/gstbasesrc.c: Discont event offset format should be GST_FORMAT_BYTES, not GST_FORMAT_TIME. · 7eb36ed1
      Tim-Philipp Müller authored
      Original commit message from CVS:
      * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
      Discont event offset format should be GST_FORMAT_BYTES,
      not GST_FORMAT_TIME.
      7eb36ed1
    • Wim Taymans's avatar
      gst/base/: Added is_seekable to BaseSrc · 88d66833
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/Makefile.am:
      * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
      (gst_basesrc_start):
      * gst/base/gstbasesrc.h:
      * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
      (gst_pushsrc_base_init), (gst_pushsrc_class_init),
      (gst_pushsrc_init), (gst_pushsrc_create):
      * gst/base/gstpushsrc.h:
      Added is_seekable to BaseSrc
      Added simple PushSrc.
      88d66833
  11. 11 May, 2005 1 commit
    • Andy Wingo Wingo's avatar
      gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with · e44beb9f
      Andy Wingo Wingo authored
      Original commit message from CVS:
      2005-05-10  Andy Wingo  <wingo@pobox.com>
      
      * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
      *all* the arguments.
      
      * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
      stream lock if it's a FLUSH_DONE; normal flushes don't get the
      lock (according to the docs -- if this is wrong change the docs).
      
      * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
      flush messages in the NULL state.
      
      * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
      message immediately and return.
      (gst_bus_set_flushing): New function. If a bus is flushing, it
      flushes out any queued messages and immediately unrefs new
      messages. This is so when an element goes to NULL, all of the
      unhandled messages coming from it can be freed, and their
      references to the element dropped. In other words: message source
      ref considered harmful :P
      
      * gst/gstbin.c (gst_bin_change_state): Unref peer element when
      we're finished with it.
      
      * gst/gstmessage.c (gst_message_new_state_changed):
      e44beb9f
  12. 09 May, 2005 4 commits
    • Andy Wingo Wingo's avatar
      gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps): Intersect the... · b5940102
      Andy Wingo Wingo authored
      gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps): Intersect the peer's caps with our caps.
      
      Original commit message from CVS:
      2005-05-09  Andy Wingo  <wingo@pobox.com>
      
      * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
      Intersect the peer's caps with our caps.
      b5940102
    • Ronald S. Bultje's avatar
      gst/: Handle negative offsets better. Fixes decodebin. · 5b9c8409
      Ronald S. Bultje authored
      Original commit message from CVS:
      * gst/base/gsttypefindhelper.c: (helper_find_peek):
      * gst/elements/gsttypefindelement.c: (find_peek):
      Handle negative offsets better. Fixes decodebin.
      5b9c8409
    • Wim Taymans's avatar
      gst/: Implement accept_caps. · e70ec7b8
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
      (gst_base_transform_event):
      * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
      Implement accept_caps.
      Fix silly lock/unlock mismatch in base class.
      e70ec7b8
    • Wim Taymans's avatar
      Remove old query functions. Ported old code. · 8df6cd72
      Wim Taymans authored
      Original commit message from CVS:
      Remove old query functions. Ported old code.
      Added position/convert helper functions to gstutils.
      Reordered gstpad.c code, grouping relevant things.
      Remove gst_message_new(), always need to speficy a specific
      message.
      8df6cd72
  13. 06 May, 2005 4 commits
    • Andy Wingo Wingo's avatar
      gst/gstquery.h · 8970bda4
      Andy Wingo Wingo authored
      Original commit message from CVS:
      2005-05-06  Andy Wingo  <wingo@pobox.com>
      
      * gst/gstquery.h
      * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
      GstData, init a memchunk.
      (standard_definitions): Add a few query types, deprecate a few.
      (gst_query_get_type): New proc.
      (_gst_query_copy, _gst_query_free, gst_query_new): GstData
      implementation.
      (gst_query_new_application, gst_query_get_structure): New public
      procs.
      
      * docs/design/draft-query.txt: Removed LINKS from the query types,
      because all the rest can be dispatched to other pads -- seemed
      ugly to have a query that couldn't be dispatched. internal_links
      is fine as a pad method.
      
      * gst/gstpad.h: Add query2 as a pad method, add the new functions
      in gstpad.c, but maintain binary compatibility for the moment.
      Will fix before 0.9 is out.
      
      * gst/gstqueryutils.c:
      * gst/gstqueryutils.h: New files, implement 3 methods for each
      query type: parse_query, parse_response, and set. Probably need an
      allocator as well.
      
      * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
      
      * gst/elements/gstfilesink.c (gst_filesink_query2):
      * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
      query_types, and formats methods.
      
      * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
      (gst_pad_set_query2_function): New functions.
      (gst_real_pad_init): Set query2_default as the default query2
      function. Basically just dispatches to internally linked pads.
      
      Needs review!
      
      * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
      without using the atomic operations. Only one thread can possibly
      be accessing the data at this point. Changed so as to avoid
      gst_atomic operations.
      8970bda4
    • Wim Taymans's avatar
      gst/: Fix gst_pad_peer_get_caps(), make it return NULL if no peer. · d7b231e6
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
      * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
      * gst/gstpad.c: (gst_pad_peer_get_caps):
      * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
      (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
      (gst_queue_src_activate), (gst_queue_change_state):
      * gst/gstqueue.h:
      * gst/gstutils.c: (gst_element_get_compatible_pad_template),
      (intersect_caps_func):
      Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
      Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
      Some fixes for the peer_get_caps() change.
      d7b231e6
    • Wim Taymans's avatar
      gst/base/gstbasesink.c: Actually do something with error codes returned from the push functions. · 92dd87a8
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
      (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
      (gst_basesink_activate):
      Actually do something with error codes returned from the push
      functions.
      92dd87a8
    • Wim Taymans's avatar
      Some more documentation. · c11c932f
      Wim Taymans authored
      Original commit message from CVS:
      * docs/design/part-element-sink.txt:
      * docs/design/part-element-source.txt:
      * gst/base/gstbasesink.c: (gst_basesink_class_init),
      (gst_basesink_event), (gst_basesink_activate):
      * gst/base/gstbasesink.h:
      * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
      (gst_basesrc_activate):
      * gst/base/gstbasesrc.h:
      * gst/gstelement.c: (gst_element_pads_activate):
      Some more documentation.
      Fixed scheduling decision in _pads_activate().
      c11c932f
  14. 05 May, 2005 2 commits
    • Andy Wingo Wingo's avatar
      revert cruft · 57183c39
      Andy Wingo Wingo authored
      Original commit message from CVS:
      revert cruft
      57183c39
    • Wim Taymans's avatar
      gst/: Added object to help in making collect pad based elements. · 113250d2
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/Makefile.am:
      * gst/base/gstbasesink.h:
      * gst/base/gstbasesrc.c: (gst_basesrc_init),
      (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
      * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
      (gst_collectpads_class_init), (gst_collectpads_init),
      (gst_collectpads_finalize), (gst_collectpads_new),
      (gst_collectpads_set_function), (gst_collectpads_add_pad),
      (find_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),
      (gst_collectpads_chain):
      * gst/base/gstcollectpads.h:
      * gst/elements/Makefile.am:
      * gst/elements/gstelements.c:
      * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
      (gst_fakesink_get_times), (gst_fakesink_event),
      (gst_fakesink_preroll), (gst_fakesink_render):
      * gst/elements/gstfilesink.c: (gst_filesink_class_init),
      (gst_filesink_init), (gst_filesink_set_location),
      (gst_filesink_open_file), (gst_filesink_close_file),
      (gst_filesink_pad_query), (gst_filesink_event),
      (gst_filesink_render), (gst_filesink_change_state):
      * gst/elements/gstfilesink.h:
      Added object to help in making collect pad based elements.
      Ported filesink.
      Make event function in sink baseclass return gboolean.
      113250d2
  15. 04 May, 2005 1 commit
    • Andy Wingo Wingo's avatar
      GCC 4 fixen. · b4d7be20
      Andy Wingo Wingo authored
      Original commit message from CVS:
      2005-05-04  Andy Wingo <wingo@pobox.com>
      
      * check/Makefile.am:
      * docs/gst/tmpl/gstatomic.sgml:
      * docs/gst/tmpl/gstplugin.sgml:
      * gst/base/gstbasesink.c: (gst_basesink_activate):
      * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
      (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
      (gst_basesrc_query), (gst_basesrc_set_property),
      (gst_basesrc_get_property), (gst_basesrc_check_get_range),
      (gst_basesrc_activate):
      * gst/base/gstbasesrc.h:
      * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
      (gst_base_transform_src_activate):
      * gst/elements/gstelements.c:
      * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
      (gst_fakesrc_set_property), (gst_fakesrc_get_property):
      * gst/elements/gsttee.c: (gst_tee_sink_activate):
      * gst/elements/gsttypefindelement.c: (find_element_get_length),
      (gst_type_find_element_checkgetrange),
      (gst_type_find_element_activate):
      * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
      * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
      (gst_caps_load_thyself):
      * gst/gstelement.c: (gst_element_pads_activate),
      (gst_element_save_thyself), (gst_element_restore_thyself):
      * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
      (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
      * gst/gstpad.h:
      * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
      (gst_xml_parse_file), (gst_xml_parse_memory),
      (gst_xml_get_element), (gst_xml_make_element):
      * gst/indexers/gstfileindex.c: (gst_file_index_load),
      (_file_index_id_save_xml), (gst_file_index_commit):
      * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
      (read_enum), (load_pad_template), (load_feature), (load_plugin),
      (load_paths):
      * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
      (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
      * tools/gst-complete.c: (main):
      * tools/gst-compprep.c: (main):
      * tools/gst-inspect.c: (print_element_properties_info):
      * tools/gst-launch.c: (xmllaunch_parse_cmdline):
      * tools/gst-xmlinspect.c: (print_element_properties):
      GCC 4 fixen.
      b4d7be20
  16. 02 May, 2005 1 commit
    • Wim Taymans's avatar
      Added draft for new query API. · 0757f3df
      Wim Taymans authored
      Original commit message from CVS:
      * docs/design/draft-push-pull.txt:
      * docs/design/draft-query.txt:
      * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
      (gst_basesrc_start):
      Added draft for new query API.
      Added draft for better selecting scheduling methods.
      Make basesrc ignore length if the subclass does not support
      it.
      0757f3df
  17. 28 Apr, 2005 1 commit
    • Wim Taymans's avatar
      gst/: Better debugging of clocking info. · 71359c38
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/gstbasesink.c: (gst_basesink_base_init),
      (gst_basesink_pad_getcaps), (gst_basesink_init),
      (gst_basesink_do_sync):
      * gst/gstclock.c: (gst_clock_entry_new):
      * gst/gstevent.c: (gst_event_discont_get_value):
      * gst/gstpipeline.c: (pipeline_bus_handler),
      (gst_pipeline_change_state):
      * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
      Better debugging of clocking info.
      Allow NULL values when getting discont values.
      71359c38
  18. 23 Apr, 2005 1 commit
    • David Schleef's avatar
      gst/Makefile.am: Remove as-libtool stuff. It's likely not and hard to carry around. · 7e89cbf5
      David Schleef authored
      Original commit message from CVS:
      * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
      needed with new versions of libtool (nobody will confirm this),
      and hard to carry around.
      * gst/autoplug/Makefile.am:
      * gst/base/Makefile.am:
      * gst/elements/Makefile.am:
      * gst/indexers/Makefile.am:
      * gst/schedulers/Makefile.am:
      * libs/gst/bytestream/Makefile.am:
      * libs/gst/control/Makefile.am:
      * libs/gst/dataprotocol/Makefile.am:
      * libs/gst/getbits/Makefile.am:
      7e89cbf5
  19. 20 Apr, 2005 1 commit
    • Wim Taymans's avatar
      gst/: Make gst_caps_replace() work like other _replace() functions. · ee13415b
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/gstbasesink.c: (gst_basesink_base_init),
      (gst_basesink_pad_getcaps), (gst_basesink_init),
      (gst_basesink_chain_unlocked):
      * gst/base/gsttypefindhelper.c: (helper_find_suggest),
      (gst_type_find_helper):
      * gst/elements/gsttypefindelement.c:
      (gst_type_find_element_have_type), (gst_type_find_element_init),
      (stop_typefinding), (gst_type_find_element_handle_event),
      (find_suggest), (gst_type_find_element_chain),
      (gst_type_find_element_checkgetrange),
      (gst_type_find_element_getrange), (do_typefind),
      (gst_type_find_element_activate):
      * gst/gstbuffer.c: (_gst_buffer_sub_free),
      (gst_buffer_default_free), (gst_buffer_default_copy),
      (gst_buffer_set_caps):
      * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
      (gst_caps_replace):
      * gst/gstmessage.c: (gst_message_new),
      (gst_message_new_state_changed):
      * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
      (gst_pad_set_checkgetrange_function),
      (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
      (gst_pad_set_caps), (gst_pad_check_pull_range),
      (gst_pad_pull_range), (gst_static_pad_template_get_caps):
      * gst/gstpad.h:
      * gst/gsttypefind.c: (gst_type_find_register):
      Make gst_caps_replace() work like other _replace() functions.
      Use _caps_replace() where possible.
      Make sure _message_new() initialises its field.
      Add gst_static_pad_template_get_caps()
      ee13415b
  20. 18 Apr, 2005 1 commit
  21. 12 Apr, 2005 1 commit
    • Wim Taymans's avatar
      Added typefind helper. · 499659f6
      Wim Taymans authored
      Original commit message from CVS:
      Added typefind helper.
      Small preroll fix in the base sink.
      Disable typefind code in basesrc.
      Crude port of typefindelement.
      Fakesrc cleanups.
      499659f6
  22. 06 Apr, 2005 1 commit
    • Wim Taymans's avatar
      gst/: More work on the generic source base class, implement seeking, query. · aa00eb87
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/README:
      * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
      (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
      (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
      (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
      (gst_basesrc_check_get_range), (gst_basesrc_loop),
      (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
      (gst_basesrc_stop), (gst_basesrc_activate),
      (gst_basesrc_change_state), (basesrc_find_peek),
      (basesrc_find_suggest), (gst_basesrc_type_find):
      * gst/base/gstbasesrc.h:
      * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
      (gst_filesrc_class_init), (gst_filesrc_init),
      (gst_filesrc_finalize), (gst_filesrc_set_location),
      (gst_filesrc_set_property), (gst_filesrc_get_property),
      (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
      (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
      (gst_filesrc_create_read), (gst_filesrc_create),
      (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
      * gst/elements/gstfilesrc.h:
      * gst/gstelement.c: (gst_element_get_state_func),
      (gst_element_lost_state), (gst_element_pads_activate):
      * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
      (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
      (gst_pad_pull_range):
      * gst/gstpad.h:
      More work on the generic source base class, implement seeking,
      query.
      Make filesrc extend the base source class.
      Added gst_pad_set_checkgetrange_function to GstPad.
      aa00eb87
  23. 05 Apr, 2005 1 commit
    • Wim Taymans's avatar
      gst/: Made base source class, make fakesrc extend it. · 8cf38d3d
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/Makefile.am:
      * gst/base/README:
      * gst/base/gstbasesink.c: (gst_basesink_base_init),
      (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
      (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
      (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
      * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
      (gst_basesrc_base_init), (gst_basesrc_class_init),
      (gst_basesrc_init), (gst_basesrc_get_formats),
      (gst_basesrc_get_query_types), (gst_basesrc_query),
      (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
      (gst_basesrc_set_property), (gst_basesrc_get_property),
      (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
      (gst_basesrc_loop), (gst_basesrc_activate),
      (gst_basesrc_change_state):
      * gst/base/gstbasesrc.h:
      * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
      (gst_fakesrc_class_init), (gst_fakesrc_init),
      (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
      (gst_fakesrc_get_property), (gst_fakesrc_create):
      * gst/elements/gstfakesrc.h:
      * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
      (gst_filesrc_open_file), (gst_filesrc_loop),
      (gst_filesrc_activate), (filesrc_find_peek),
      (gst_filesrc_type_find):
      Made base source class, make fakesrc extend it.
      Add comments to basesink class.
      Some filesrc cleanup.
      8cf38d3d
  24. 01 Apr, 2005 1 commit
    • David Schleef's avatar
      gst/gstplugin.c: Switch to using G_MODULE_BIND_LOCAL, which means plugins are... · fa948192
      David Schleef authored
      gst/gstplugin.c: Switch to using G_MODULE_BIND_LOCAL, which means plugins are now expected to link against libgstreamer.
      
      Original commit message from CVS:
      * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
      Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
      expected to link against libgstreamer.
      * gst/base/Makefile.am: link against libgstreamer
      * gst/elements/Makefile.am: same
      fa948192
  25. 31 Mar, 2005 1 commit
    • Wim Taymans's avatar
      gst/: Added start/stop methods to transform base class so subclasses don't... · 96d17a34
      Wim Taymans authored
      gst/: Added start/stop methods to transform base class so subclasses don't need to deal with state changes even.
      
      Original commit message from CVS:
      * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
      (gst_base_transform_class_init), (gst_base_transform_init),
      (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
      (gst_base_transform_get_property),
      (gst_base_transform_sink_activate),
      (gst_base_transform_src_activate),
      (gst_base_transform_change_state):
      * gst/base/gstbasetransform.h:
      * gst/elements/gstidentity.c: (gst_identity_class_init),
      (gst_identity_event), (gst_identity_check_perfect),
      (gst_identity_transform), (gst_identity_start),
      (gst_identity_stop):
      Added start/stop methods to transform base class so subclasses
      don't need to deal with state changes even.
      96d17a34
  26. 29 Mar, 2005 3 commits
    • Wim Taymans's avatar
      gst/: Simplify pad activation. · bb1be5f5
      Wim Taymans authored
      Original commit message from CVS:
      * gst/base/Makefile.am:
      * gst/base/README:
      * gst/base/gstbasesink.c: (gst_basesink_get_type),
      (gst_basesink_base_init), (gst_basesink_class_init),
      (gst_basesink_pad_getcaps), (gst_basesink_init),
      (gst_basesink_activate), (gst_basesink_change_state):
      * gst/base/gstbasesink.h:
      * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
      (gst_base_transform_base_init), (gst_base_transform_finalize),
      (gst_base_transform_class_init), (gst_base_transform_init),
      (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
      (gst_base_transform_event), (gst_base_transform_getrange),
      (gst_base_transform_chain), (gst_base_transform_handle_buffer),
      (gst_base_transform_set_property),
      (gst_base_transform_get_property),
      (gst_base_transform_sink_activate),
      (gst_base_transform_src_activate),
      (gst_base_transform_change_state):
      * gst/base/gstbasetransform.h:
      * gst/elements/gstidentity.c: (gst_identity_finalize),
      (gst_identity_class_init), (gst_identity_init),
      (gst_identity_event), (gst_identity_check_perfect),
      (gst_identity_transform), (gst_identity_set_property),
      (gst_identity_get_property), (gst_identity_change_state):
      * gst/elements/gstidentity.h:
      * gst/gstelement.c: (gst_element_get_state_func),
      (gst_element_lost_state), (gst_element_pads_activate):
      * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
      (gst_pad_check_pull_range), (gst_pad_pull_range):
      * gst/gstpad.h:
      Simplify pad activation.
      Added function to check if pull_range can be performed.
      Error out when pulling inactive or flushing pads.
      Removed const from refcounted types as it does not make sense.
      Simplify pad templates in basesink
      Added base class for simple 1-to-1 transforms.
      Make identity subclass the base transform.
      bb1be5f5
    • Andy Wingo Wingo's avatar
      libs/gst/dataprotocol/: Remove test, it's the same as the one in check/gst-libs/gdp.c. · 21ad6301
      Andy Wingo Wingo authored
      Original commit message from CVS:
      2005-03-29  Andy Wingo  <wingo@pobox.com>
      
      * libs/gst/dataprotocol/Makefile.am:
      * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
      the same as the one in check/gst-libs/gdp.c.
      21ad6301
    • Andy Wingo Wingo's avatar
      po/, docs/gst/: Commit automatic changes to docs and po files. · 498ae2c7
      Andy Wingo Wingo authored
      Original commit message from CVS:
      2005-03-29  Andy Wingo  <wingo@pobox.com>
      
      * po/, docs/gst/: Commit automatic changes to docs and po files.
      
      * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
      the versioned libgstbase.
      
      * check/Makefile.am: Depend on an unversioned gst-register, seems
      to make autoconf happier.
      
      * gst/base/Makefile.am: Make libgstbase a versioned lib.
      498ae2c7