[gstreamer-bugs] [Bug 614305] [PLUGIN-MOVE] oss4 should be moved to good
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Apr 19 13:40:32 PDT 2010
https://bugzilla.gnome.org/show_bug.cgi?id=614305
GStreamer | gst-plugins-bad | 0.10.18
Brian Cameron <brian.cameron> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #158922|0 |1
is obsolete| |
--- Comment #13 from Brian Cameron <brian.cameron at oracle.com> 2010-04-19 20:40:27 UTC ---
Created an attachment (id=159111)
View: https://bugzilla.gnome.org/attachment.cgi?id=159111
Review: https://bugzilla.gnome.org/review?bug=614305&attachment=159111
updated patch to add GstStreamVolume
Here is an updated patch which does the following:
1) Now get/set volume/mute is done with helper functions.
2) Added GST_OBJECT_LOCK/GST_OBJECT_UNLOCK calls surrounding ioctl calls.
3) Added the g_type_add_interface_static () call for
GST_TYPE_IMPLEMENTS_INTERFACE.
I think this fixes the major issues raised about this patch. Is there any more
work that needs to be done?
Note that I did not change mute_volume so that it is stored as a single mono
volume value internally. This seems a bad idea to me for several reasons.
This value is just loaded from the ioctl when muted, and then when unmuting,
the code just put the same value back via the ioctl call. This is much easier
than doing extra calculations. The current code avoids doing extra
calculations and only actually sets the value via code like "oss->mute_volume =
val | (val << 8)" when initializing it in gst_oss4_sink_class_init and when
setting it to 100 if the saved mute volume happens to be 0. Saving the value
internally as a single mono value would require doing extra calculations when
getting and setting the value, which seems better to just avoid. If you feel
strongly about this, though, I can change the code.
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the Gstreamer-bugs
mailing list