diff options
author | Garret D'Amore <garrett.damore@sun.com> | 2009-02-24 17:23:58 +0000 |
---|---|---|
committer | Jan Schmidt <thaytan@noraisin.net> | 2009-02-24 17:23:58 +0000 |
commit | b8af1223db33a929df6c792516f4f3c3a7087a28 (patch) | |
tree | 5d0b14fd0684cfddf9ca0f871b0f030de7ae872f | |
parent | fff6909c1b1ba9b0cb5287f1e064ccda0d680ec7 (diff) |
mixer interface: Add flags to enhance mixer interfaces
This patch adds a few flags to the mixer and mixerctrl interface to
better support OSSv4 (and potentially other backends).
Patch By: Garret D'Amore <garrett.damore@sun.com>
Signed-Off-By: Jan Schmidt <jan.schmidt@sun.com>
API: GST_MIXER_FLAG_HAS_WHITELIST, GST_MIXER_FLAG_GROUPING,
API: GST_MIXER_TRACK_NO_RECORD, GST_MIXER_TRACK_NO_MUTE,
API: GST_MIXER_TRACK_WHITELIST
-rw-r--r-- | gst-libs/gst/interfaces/mixer.h | 14 | ||||
-rw-r--r-- | gst-libs/gst/interfaces/mixertrack.h | 10 |
2 files changed, 20 insertions, 4 deletions
diff --git a/gst-libs/gst/interfaces/mixer.h b/gst-libs/gst/interfaces/mixer.h index 197ab3bce..3dc32120d 100644 --- a/gst-libs/gst/interfaces/mixer.h +++ b/gst-libs/gst/interfaces/mixer.h @@ -87,16 +87,24 @@ typedef enum * @GST_MIXER_FLAG_NONE: No flags * @GST_MIXER_FLAG_AUTO_NOTIFICATIONS: The mixer implementation automatically sends * notification messages. + * @GST_MIXER_FLAG_HAS_WHITELIST: The mixer implementation flags tracks that should + * be displayed by default (whitelisted). Since: 0.10.23 + * + * @GST_MIXER_FLAG_GROUPING: The mixer implementation will leave some controls + * marked without either input or output. Controls marked as input or + * output should be grouped with input & output sliders, even if they + * are options or bare switches. Since: 0.10.23 * - * Flags for supported features. Whether the element automatically sends - * notifications on the bus is the only one for now. + * Flags for supported features. * * Since: 0.10.14 */ typedef enum { GST_MIXER_FLAG_NONE = 0, - GST_MIXER_FLAG_AUTO_NOTIFICATIONS = (1<<0) + GST_MIXER_FLAG_AUTO_NOTIFICATIONS = (1<<0), + GST_MIXER_FLAG_HAS_WHITELIST = (1<<1), + GST_MIXER_FLAG_GROUPING = (1<<2), } GstMixerFlags; struct _GstMixerClass { diff --git a/gst-libs/gst/interfaces/mixertrack.h b/gst-libs/gst/interfaces/mixertrack.h index 212612b05..618566461 100644 --- a/gst-libs/gst/interfaces/mixertrack.h +++ b/gst-libs/gst/interfaces/mixertrack.h @@ -64,6 +64,11 @@ G_BEGIN_DECLS * @GST_MIXER_TRACK_MASTER: this mixer track is likely to be the master control * @GST_MIXER_TRACK_SOFTWARE: mixer track's' volume control is implemented * in software (as opposed to a hardware control) + * @GST_MIXER_TRACK_NO_RECORD: input track lacks support for recordable. + * Since: 0.10.23 + * @GST_MIXER_TRACK_NO_MUTE: play track doesn't support mute. Since: 0.10.23 + * @GST_MIXER_TRACK_WHITELIST: track should be displayed "by default" in apps. + * Since: 0.10.23 * * Mixer track flags. */ @@ -73,7 +78,10 @@ typedef enum { GST_MIXER_TRACK_MUTE = (1<<2), GST_MIXER_TRACK_RECORD = (1<<3), GST_MIXER_TRACK_MASTER = (1<<4), - GST_MIXER_TRACK_SOFTWARE = (1<<5) + GST_MIXER_TRACK_SOFTWARE = (1<<5), + GST_MIXER_TRACK_NO_RECORD = (1<<6), + GST_MIXER_TRACK_NO_MUTE = (1<<7), + GST_MIXER_TRACK_WHITELIST = (1<<8), } GstMixerTrackFlags; #define GST_MIXER_TRACK_HAS_FLAG(channel, flag) \ |