1. 18 Feb, 2008 1 commit
    • Wim Taymans's avatar
      gst/playback/gstplaybin2.c: Get the object data correct so that we can remove... · 5fc67f8b
      Wim Taymans authored
      gst/playback/gstplaybin2.c: Get the object data correct so that we can remove our channels correctly.
      
      Original commit message from CVS:
      * gst/playback/gstplaybin2.c: (pad_added_cb), (pad_removed_cb),
      (no_more_pads_cb):
      Get the object data correct so that we can remove our channels
      correctly.
      * gst/playback/gstplaysink.c: (gen_video_chain), (gen_audio_chain),
      (gen_vis_chain), (gst_play_sink_reconfigure),
      (gst_play_sink_request_pad):
      Add option to disable async behaviour in the sinks when possible. This
      makes it possible to avoid an audio queue when dealing with
      visualisations.
      Add option to add a queue for the audio path.
      * tests/examples/seek/seek.c: (clear_streams), (update_streams),
      (main):
      Disable the vis checkbox to match the defaults of playbin2.
      Only get the stream info when we need to.
      5fc67f8b
  2. 15 Feb, 2008 1 commit
    • Wim Taymans's avatar
      gst/playback/gstplaysink.c: Move tee in front of the audio and vis pipelines. · 56598315
      Wim Taymans authored
      Original commit message from CVS:
      * gst/playback/gstplaysink.c: (gst_play_sink_set_mute),
      (gst_play_sink_get_mute), (gen_video_chain), (gen_audio_chain),
      (gen_vis_chain), (gst_play_sink_reconfigure),
      (gst_play_sink_request_pad):
      Move tee in front of the audio and vis pipelines.
      Add queue for audio for now.
      Add visualisation support.
      * tests/examples/seek/seek.c: (main):
      Visualisation is by default disabled.
      56598315
  3. 14 Feb, 2008 1 commit
    • Wim Taymans's avatar
      gst/playback/: Add mute property. · 609daaed
      Wim Taymans authored
      Original commit message from CVS:
      * gst/playback/gstplaybin2.c: (gst_play_bin_class_init),
      (gst_play_bin_set_property), (gst_play_bin_get_property),
      (pad_added_cb), (pad_removed_cb), (no_more_pads_cb):
      * gst/playback/gstplaysink.c: (gst_play_sink_set_mute),
      (gst_play_sink_get_mute), (gen_audio_chain):
      * gst/playback/gstplaysink.h:
      Add mute property.
      * gst/playback/gststreamselector.c: (gst_selector_pad_event),
      (gst_selector_pad_chain):
      * gst/playback/gststreamselector.h:
      Make sure we forward the event only once.
      * tests/examples/seek/seek.c: (stop_cb), (mute_toggle_cb), (main):
      Add and implement the mute button for playbin2.
      609daaed
  4. 11 Feb, 2008 1 commit
  5. 08 Feb, 2008 1 commit
    • Wim Taymans's avatar
      gst/playback/gstplay-marshal.list: Added marshal for streamselector Tags. · c8bb67d0
      Wim Taymans authored
      Original commit message from CVS:
      * gst/playback/gstplay-marshal.list:
      Added marshal for streamselector Tags.
      * gst/playback/gstplaybasebin.c: (set_active_source):
      Streamselector now selects pads based on the pad object instead of its
      name.
      * gst/playback/gstplaybin2.c: (gst_play_bin_class_init),
      (init_group), (gst_play_bin_init), (get_group), (get_tags),
      (gst_play_bin_get_video_tags), (gst_play_bin_get_audio_tags),
      (gst_play_bin_get_text_tags),
      (gst_play_bin_set_current_video_stream),
      (gst_play_bin_set_current_audio_stream),
      (gst_play_bin_set_current_text_stream),
      (gst_play_bin_set_property), (gst_play_bin_get_property),
      (pad_added_cb), (pad_removed_cb), (autoplug_select_cb):
      Remove option to mute streams with the current-a/v/t property, we have
      this functionality in the flags.
      Add signals to notify when the number of A/V/T channels changed.
      Add action signals to get tags for the A/V/T streams.
      Implement setting the current A/V/T stream.
      Rearrange some things to simplify stream selection.
      Implement volume.
      * gst/playback/gstplaysink.c: (gst_play_sink_set_volume),
      (gst_play_sink_get_volume), (gst_play_sink_set_property),
      (gst_play_sink_get_property), (gen_video_chain), (gen_audio_chain),
      (activate_vis), (gst_play_sink_reconfigure):
      * gst/playback/gstplaysink.h:
      Add and implement volume setting methods.
      * gst/playback/gststreamselector.c: (gst_selector_pad_class_init),
      (gst_selector_pad_finalize), (gst_selector_pad_get_property),
      (gst_selector_pad_event), (gst_stream_selector_class_init),
      (gst_stream_selector_init), (gst_stream_selector_finalize),
      (gst_stream_selector_set_property),
      (gst_stream_selector_get_property),
      (gst_stream_selector_get_linked_pad),
      (gst_stream_selector_request_new_pad):
      * gst/playback/gststreamselector.h:
      Add pad properties for tags and status of pads.
      Keep tags on pads.
      Make active pad selection based on pad object instead of name.
      c8bb67d0
  6. 07 Jan, 2008 1 commit
    • Wim Taymans's avatar
      gst/playback/gstplay-enum.*: Add enums for configuration flags. · 9c9f6077
      Wim Taymans authored
      Original commit message from CVS:
      * gst/playback/gstplay-enum.c:
      (register_gst_autoplug_select_result),
      (gst_autoplug_select_result_get_type), (register_gst_play_flags),
      (gst_play_flags_get_type):
      * gst/playback/gstplay-enum.h:
      Add enums for configuration flags.
      * gst/playback/gstplaybin2.c: (gst_play_bin_class_init),
      (init_group), (gst_play_bin_init), (gst_play_bin_set_property),
      (gst_play_bin_get_property), (no_more_pads_cb),
      (autoplug_select_cb), (gst_play_bin_change_state):
      Merge mode with flags.
      Add more property getters/setters, defaults and docs.
      Add properties to get number of audio/video/text streams.
      Create sink object in _init so that we can always rely on it being
      there.
      * gst/playback/gstplaysink.c: (gst_play_sink_init),
      (gen_video_chain), (gen_audio_chain), (gen_vis_chain),
      (activate_vis), (gst_play_sink_reconfigure),
      (gst_play_sink_set_flags), (gst_play_sink_get_flags),
      (gst_play_sink_change_state):
      * gst/playback/gstplaysink.h:
      Use flags to configure the sink pipelines.
      Add tee before audio pipeline so that we can use it for visualisations.
      Start working on integrating visualisations.
      Remove mode, we can do everything with the flags now.
      Add method to configue the sink pipeline.
      9c9f6077
  7. 28 Dec, 2007 1 commit
    • Wim Taymans's avatar
      gst/playback/gstplaybin2.c: Code cleanups. · 7cb7bffb
      Wim Taymans authored
      Original commit message from CVS:
      * gst/playback/gstplaybin2.c: (gst_play_bin_class_init),
      (gst_play_bin_finalize), (gst_play_bin_set_uri),
      (gst_play_bin_set_suburi), (gst_play_bin_set_property),
      (gst_play_bin_get_property), (pad_removed_cb), (drained_cb),
      (autoplug_select_cb), (activate_group), (deactivate_group),
      (setup_next_source), (save_current_group),
      (gst_play_bin_change_state):
      Code cleanups.
      Remove next-uri, we can use the uri property just fine.
      Fix some crasher.
      Unref uridecodebin when switching.
      Fix going to READY.
      * gst/playback/gstplaysink.c: (gst_play_sink_class_init),
      (gst_play_sink_init), (gst_play_sink_dispose),
      (gst_play_sink_finalize), (gst_play_sink_vis_unblocked),
      (gst_play_sink_vis_blocked), (gst_play_sink_set_video_sink),
      (gst_play_sink_set_audio_sink), (gst_play_sink_set_vis_plugin),
      (gst_play_sink_set_property), (gst_play_sink_get_property),
      (gen_video_chain), (gen_text_element), (gen_audio_chain),
      (gen_vis_element), (gst_play_sink_get_mode),
      (gst_play_sink_set_mode), (gst_play_sink_set_flags),
      (gst_play_sink_get_flags), (gst_play_sink_request_pad),
      (gst_play_sink_release_pad), (gst_play_sink_send_event_to_sink),
      (gst_play_sink_change_state):
      * gst/playback/gstplaysink.h:
      Add some locking to make things threadsafe.
      * gst/playback/test7.c: (about_to_finish_cb):
      Fix test.
      7cb7bffb
  8. 05 Dec, 2007 1 commit
    • Wim Taymans's avatar
      gst/playback/Makefile.am: Group decodebin2 and uridecodebin into the same... · f2f9bf04
      Wim Taymans authored
      gst/playback/Makefile.am: Group decodebin2 and uridecodebin into the same plugin so that they can share the GEnumType.
      
      Original commit message from CVS:
      * gst/playback/Makefile.am:
      Group decodebin2 and uridecodebin into the same plugin so that they
      can share the GEnumType.
      * gst/playback/gstdecodebin2.c: (_gst_array_accumulator),
      (_gst_select_accumulator), (gst_decode_bin_class_init),
      (gst_decode_bin_init), (gst_decode_bin_autoplug_sort),
      (gst_decode_bin_autoplug_select), (gst_decode_bin_autoplug_add),
      (analyze_new_pad), (connect_pad), (gst_decode_bin_plugin_init):
      Add signal to sort factories instead of the more awkward autoplug-select
      signal.
      Modify autoplug_select so that we can try, skip or expose the
      autopluggin of an element on a pad.
      * gst/playback/gstfactorylists.c: (compare_ranks),
      (decoders_filter), (sinks_filter), (gst_factory_list_is_type),
      (element_filter), (gst_factory_list_get_elements),
      (gst_factory_list_debug), (gst_factory_list_filter):
      * gst/playback/gstfactorylists.h:
      Simplify the API, allow getting elements based on mask.
      * gst/playback/gstplay-marshal.list:
      Add some more marshallers.
      * gst/playback/gstplaybin2.c: (init_group), (gst_play_bin_init),
      (gst_play_bin_finalize), (pad_removed_cb), (autoplug_factories_cb),
      (autoplug_select_cb), (activate_group):
      Add support for managing non-raw sinks by providing a custom element and
      sink list to decodebin2.
      Try to plug non-raw sinks when decodebin2 using autoplug-select of
      decodebin2.
      * gst/playback/gstplaysink.c: (gen_video_chain), (gen_audio_chain),
      (gst_play_sink_set_mode), (gst_play_sink_request_pad):
      * gst/playback/gstplaysink.h:
      Add support for raw and non-raw sinks.
      Add support to force sinks selected by playbin2.
      Don't plug raw converters for non-raw sinks.
      * gst/playback/gsturidecodebin.c: (_gst_array_accumulator),
      (_gst_select_accumulator), (gst_uri_decode_bin_class_init),
      (proxy_autoplug_select_signal), (gst_uri_decode_bin_plugin_init),
      (plugin_init):
      Use right accumulators.
      Proxy new signal.
      f2f9bf04
  9. 16 Nov, 2007 1 commit
    • Wim Taymans's avatar
      gst/playback/: Add playbin2. · b75b5525
      Wim Taymans authored
      Original commit message from CVS:
      * gst/playback/Makefile.am:
      * gst/playback/gstplayback.c: (plugin_init):
      * gst/playback/test7.c: (update_scale), (warning_cb), (error_cb),
      (eos_cb), (about_to_finish_cb), (main):
      Add playbin2.
      Added gapless playback example.
      * gst/playback/gstplaybasebin.c:
      * gst/playback/gstplaybasebin.h:
      * gst/playback/gstplaybin.c: (gst_play_bin_plugin_init):
      * gst/playback/gstqueue2.c:
      * gst/playback/test.c:
      * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init),
      (pad_removed_cb):
      * gst/playback/gststreaminfo.h:
      Change email.
      * gst/playback/gstplaybin2.c: (gst_play_bin_get_type),
      (gst_play_bin_class_init), (init_group), (gst_play_bin_init),
      (gst_play_bin_dispose), (gst_play_bin_set_uri),
      (gst_play_bin_set_suburi), (gst_play_bin_set_property),
      (gst_play_bin_get_property), (gst_play_bin_handle_message),
      (pad_added_cb), (pad_removed_cb), (no_more_pads_cb), (perform_eos),
      (drained_cb), (unlink_group), (activate_group),
      (setup_next_source), (gst_play_bin_change_state),
      (gst_play_bin2_plugin_init):
      Added raw first version of playbin2. Does chained oggs and gapless
      playback fine. No support for raw sinks yet. No visualisations or
      subtitles yet.
      * gst/playback/gstplaysink.c: (gst_play_sink_get_type),
      (gst_play_sink_class_init), (gst_play_sink_init),
      (gst_play_sink_dispose), (gst_play_sink_vis_unblocked),
      (gst_play_sink_vis_blocked), (gst_play_sink_set_video_sink),
      (gst_play_sink_set_audio_sink), (gst_play_sink_set_vis_plugin),
      (gst_play_sink_set_property), (gst_play_sink_get_property),
      (post_missing_element_message), (free_chain), (add_chain),
      (activate_chain), (gen_video_chain), (gen_text_element),
      (gen_audio_chain), (gen_vis_element), (gst_play_sink_get_mode),
      (gst_play_sink_set_mode), (gst_play_sink_request_pad),
      (gst_play_sink_release_pad), (gst_play_sink_send_event_to_sink),
      (gst_play_sink_send_event), (gst_play_sink_change_state):
      * gst/playback/gstplaysink.h:
      Added Element that abstracts the sinks and their pipelines for playbin2.
      b75b5525