After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 342181 - [alsa] add property probe interface to alsasink and alsasrc
[alsa] add property probe interface to alsasink and alsasrc
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
0.10.6
Other Linux
: Normal normal
: 0.10.8
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks: 341983
 
 
Reported: 2006-05-17 21:05 UTC by Martin Szulecki
Modified: 2006-05-21 15:42 UTC
See Also:
GNOME target: ---
GNOME version: 2.11/2.12


Attachments
Implment property probe interface in alsasink and alsasrc (7.86 KB, patch)
2006-05-17 21:08 UTC, Martin Szulecki
none Details | Review

Description Martin Szulecki 2006-05-17 21:05:00 UTC
The patches implements the GstPropertyProbe interface which had been lost during 0.8 -> 0.10 migration (not sure?) and was yet only implemented in the alsamixer.

It also fixes an concurrency issue in the gstalsapropertyprobe interface that caused it to only show devices of the first probe request to the interface if multiple "probes" are issued (probe sink and src for instance).

alsa[sink|src] can be now used to probe for the "device" property and get a list of hardware devices (soundcards).

This is a side-effect of an attempt to add "device" option menus to the gstreamer-properties capplet. (Bug 341983)
Comment 1 Martin Szulecki 2006-05-17 21:08:09 UTC
Created attachment 65727 [details] [review]
Implment property probe interface in alsasink and alsasrc

* Implement GstPropertyProbe for "device" property in alsasink and alsasrc
* Fix issues on concurrent probing when using gstalsapropertyprobe interface

Please mind that I am not very experienced overall with gnome development so please check over the stuff carefully. :)
Comment 2 Tim-Philipp Müller 2006-05-18 17:21:07 UTC
Thanks for the patch. The bits in the patch about gstalsasink.[ch] and gstalsasrc.[ch] look fine, but I think gstalsadeviceprobe.c needed a good clean-up:

Please test -base CVS to make sure everything works as expected if possible.


  2006-05-18  Tim-Philipp Müller  <tim at centricular dot net>

        * ext/alsa/gstalsadeviceprobe.c: (gst_alsa_get_device_list),
        (gst_alsa_device_property_probe_probe_property),
        (gst_alsa_device_property_probe_needs_probe),
        (gst_alsa_device_property_probe_get_values),
        (gst_alsa_type_add_device_property_probe_interface):
        * ext/alsa/gstalsadeviceprobe.h:
        * ext/alsa/gstalsamixerelement.c:
        (gst_alsa_mixer_element_init_interfaces):
        * ext/alsa/gstalsamixerelement.h:
          Clean up and simplify alsa device probing. Make it actually work
          for multiple classes. Don't cache results any longer.

        * ext/alsa/gstalsasink.c: (gst_alsasink_init_interfaces),
        (gst_alsasink_init):
        * ext/alsa/gstalsasrc.c: (gst_alsasrc_dispose),
        (gst_alsasrc_interface_supported), (gst_implements_interface_init),
        (gst_alsasrc_init_interfaces), (gst_alsasrc_set_property):
          Make alsasink and alsasrc implement the GstPropertyProbe interface
          for device probing (#342181).
      Patch by: Martin Szulecki  <gnomebugzilla at sukimashita com>