1. 15 Jun, 2011 1 commit
  2. 07 Sep, 2010 1 commit
  3. 04 Sep, 2010 1 commit
  4. 02 Jun, 2010 1 commit
  5. 30 Apr, 2010 1 commit
  6. 18 Mar, 2010 1 commit
  7. 14 Jul, 2009 1 commit
  8. 09 Apr, 2009 1 commit
  9. 28 Jan, 2009 1 commit
    • Jan Schmidt's avatar
      Rewrite the pulse plugin, conditionally enabling new behaviour with · 0037635b
      Jan Schmidt authored
      newer pulseaudio.
      
      Fixes: #567794
      
      * Hook pulsesink's volume property up with the stream volume -- not the
        sink volume in PA.
      
      * Read the device description directly from the sink instead of going
        via the mixer.
      
      * Properly implement _reset() methods for both sink and source to avoid
        deadlocks when shutting down a pipeline.
      
      * Replace all simple pa_threaded_mainloop_wait() by proper loops to
        guarantee that we wait for the right event in case multiple events are
        fired.  While this is not strictly necessary in many cases it
        certainly is more correct and makes me sleep better at night.
      
      * Replace CHECK_DEAD_GOTO macros with proper functions
      
      * Extend the number of supported channels to 32 since that is the actual
        limit in PA.
      
      * Get rid of _dispose() methods since we don't need them.
      
      * Increase the volume property upper limit of the sink to 1000.
      
      * Reset function pointers after we disconnect a stream/context. Better
        fix for bug 556986.
      
      * Reset the state of the element properly if open/prepare fails
      
      * Cork the PA stream when the pipeline is paused. This allows the PA
      * daemon to
        close audio device on pause and thus save a bit of power.
      
      * Set PA stream properties based on GST tags such as GST_TAG_TITLE,
        GST_TAG_ARTIST, and so on.
      Signed-off-by: default avatarLennart Poettering <lennart@poettering.net>
      0037635b
  10. 20 Aug, 2008 2 commits
    • Sebastian Dröge's avatar
      ext/pulse/: Use GST_BOILERPLATE everywhere and fix coding style at some places. · 95d42398
      Sebastian Dröge authored
      Original commit message from CVS:
      * ext/pulse/pulsemixer.c: (gst_pulsemixer_class_init),
      (gst_pulsemixer_set_property), (gst_pulsemixer_get_property):
      * ext/pulse/pulsemixerctrl.c: (gst_pulsemixer_ctrl_subscribe_cb),
      (gst_pulsemixer_ctrl_open), (gst_pulsemixer_ctrl_timeout_event),
      (gst_pulsemixer_ctrl_set_volume):
      * ext/pulse/pulsemixertrack.c: (gst_pulsemixer_track_new):
      * ext/pulse/pulseprobe.c: (gst_pulseprobe_open):
      * ext/pulse/pulsesink.c: (gst_pulsesink_class_init),
      (gst_pulsesink_init), (gst_pulsesink_open),
      (gst_pulsesink_prepare), (gst_pulsesink_write),
      (gst_pulsesink_delay), (gst_pulsesink_reset):
      * ext/pulse/pulsesrc.c: (gst_pulsesrc_class_init),
      (gst_pulsesrc_init):
      Use GST_BOILERPLATE everywhere and fix coding style at some places.
      Fix a locking issue in pulsesink's prepare function.
      * ext/pulse/pulseutil.c: (gst_pulse_channel_map_to_gst):
      Check if the created channel layout is valid for GStreamer.
      95d42398
    • Sebastian Dröge's avatar
      ext/pulse/: If downstream provides no channel layout and >2 channels should be... · 4ab89b39
      Sebastian Dröge authored
      ext/pulse/: If downstream provides no channel layout and >2 channels should be used use the default layout that pulse...
      
      Original commit message from CVS:
      * ext/pulse/pulsesrc.c: (gst_pulsesrc_class_init),
      (gst_pulsesrc_create_stream), (gst_pulsesrc_negotiate),
      (gst_pulsesrc_prepare):
      * ext/pulse/pulseutil.c: (gst_pulse_gst_to_channel_map),
      (gst_pulse_channel_map_to_gst):
      * ext/pulse/pulseutil.h:
      If downstream provides no channel layout and >2 channels should be
      used use the default layout that pulseaudio chooses and also
      add this layout to the caps. Fixes bug #547258.
      4ab89b39
  11. 10 Jun, 2008 1 commit
    • Sebastian Dröge's avatar
      Add pulseaudio GStreamer element from gst-pulse. Development will continue... · f3b03cd7
      Sebastian Dröge authored
      Add pulseaudio GStreamer element from gst-pulse. Development will continue here instead of pulseaudio SVN. Fixes bug ...
      
      Original commit message from CVS:
      * configure.ac:
      * ext/pulse/Makefile.am:
      * ext/pulse/plugin.c: (plugin_init):
      * ext/pulse/pulsemixer.c: (gst_pulsemixer_interface_supported),
      (gst_pulsemixer_implements_interface_init),
      (gst_pulsemixer_init_interfaces), (gst_pulsemixer_base_init),
      (gst_pulsemixer_class_init), (gst_pulsemixer_init),
      (gst_pulsemixer_finalize), (gst_pulsemixer_set_property),
      (gst_pulsemixer_get_property), (gst_pulsemixer_change_state):
      * ext/pulse/pulsemixer.h:
      * ext/pulse/pulsemixerctrl.c:
      (gst_pulsemixer_ctrl_context_state_cb),
      (gst_pulsemixer_ctrl_sink_info_cb),
      (gst_pulsemixer_ctrl_source_info_cb),
      (gst_pulsemixer_ctrl_subscribe_cb),
      (gst_pulsemixer_ctrl_success_cb), (gst_pulsemixer_ctrl_open),
      (gst_pulsemixer_ctrl_close), (gst_pulsemixer_ctrl_new),
      (gst_pulsemixer_ctrl_free), (gst_pulsemixer_ctrl_list_tracks),
      (gst_pulsemixer_ctrl_timeout_event), (restart_time_event),
      (gst_pulsemixer_ctrl_set_volume), (gst_pulsemixer_ctrl_get_volume),
      (gst_pulsemixer_ctrl_set_record), (gst_pulsemixer_ctrl_set_mute):
      * ext/pulse/pulsemixerctrl.h:
      * ext/pulse/pulsemixertrack.c: (gst_pulsemixer_track_class_init),
      (gst_pulsemixer_track_init), (gst_pulsemixer_track_new):
      * ext/pulse/pulsemixertrack.h:
      * ext/pulse/pulseprobe.c: (gst_pulseprobe_context_state_cb),
      (gst_pulseprobe_sink_info_cb), (gst_pulseprobe_source_info_cb),
      (gst_pulseprobe_invalidate), (gst_pulseprobe_open),
      (gst_pulseprobe_enumerate), (gst_pulseprobe_close),
      (gst_pulseprobe_new), (gst_pulseprobe_free),
      (gst_pulseprobe_get_properties), (gst_pulseprobe_needs_probe),
      (gst_pulseprobe_probe_property), (gst_pulseprobe_get_values),
      (gst_pulseprobe_set_server):
      * ext/pulse/pulseprobe.h:
      * ext/pulse/pulsesink.c: (gst_pulsesink_base_init),
      (gst_pulsesink_class_init), (gst_pulsesink_init),
      (gst_pulsesink_destroy_stream), (gst_pulsesink_destroy_context),
      (gst_pulsesink_finalize), (gst_pulsesink_dispose),
      (gst_pulsesink_set_property), (gst_pulsesink_get_property),
      (gst_pulsesink_context_state_cb), (gst_pulsesink_stream_state_cb),
      (gst_pulsesink_stream_request_cb),
      (gst_pulsesink_stream_latency_update_cb), (gst_pulsesink_open),
      (gst_pulsesink_close), (gst_pulsesink_prepare),
      (gst_pulsesink_unprepare), (gst_pulsesink_write),
      (gst_pulsesink_delay), (gst_pulsesink_success_cb),
      (gst_pulsesink_reset), (gst_pulsesink_change_title),
      (gst_pulsesink_event), (gst_pulsesink_get_type):
      * ext/pulse/pulsesink.h:
      * ext/pulse/pulsesrc.c: (gst_pulsesrc_interface_supported),
      (gst_pulsesrc_implements_interface_init),
      (gst_pulsesrc_init_interfaces), (gst_pulsesrc_base_init),
      (gst_pulsesrc_class_init), (gst_pulsesrc_init),
      (gst_pulsesrc_destroy_stream), (gst_pulsesrc_destroy_context),
      (gst_pulsesrc_finalize), (gst_pulsesrc_dispose),
      (gst_pulsesrc_set_property), (gst_pulsesrc_get_property),
      (gst_pulsesrc_context_state_cb), (gst_pulsesrc_stream_state_cb),
      (gst_pulsesrc_stream_request_cb), (gst_pulsesrc_open),
      (gst_pulsesrc_close), (gst_pulsesrc_prepare),
      (gst_pulsesrc_unprepare), (gst_pulsesrc_read),
      (gst_pulsesrc_delay), (gst_pulsesrc_change_state),
      (gst_pulsesrc_get_type):
      * ext/pulse/pulsesrc.h:
      * ext/pulse/pulseutil.c: (gst_pulse_fill_sample_spec),
      (gst_pulse_client_name), (gst_pulse_gst_to_channel_map):
      * ext/pulse/pulseutil.h:
      Add pulseaudio GStreamer element from gst-pulse. Development will
      continue here instead of pulseaudio SVN. Fixes bug #400679.
      Only changes over gst-pulse SVN are added copyright to the top of
      files and coding style changes.
      f3b03cd7