From 2652468b976e56a219c35259e03efc8f1e189e13 Mon Sep 17 00:00:00 2001 From: "Ronald S. Bultje" Date: Thu, 27 May 2004 03:36:17 +0000 Subject: ext/alsa/: Add enumerations (as GstMixerOptions). Make correct distinction between input/output tracks. Add capture/p... Original commit message from CVS: * ext/alsa/Makefile.am: * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_interface_init), (gst_alsa_mixer_build_list), (gst_alsa_mixer_get_volume), (gst_alsa_mixer_set_volume), (gst_alsa_mixer_set_mute), (gst_alsa_mixer_set_record), (gst_alsa_mixer_set_option), (gst_alsa_mixer_get_option): * ext/alsa/gstalsamixer.h: * ext/alsa/gstalsamixeroptions.c: (gst_alsa_mixer_options_get_type), (gst_alsa_mixer_options_class_init), (gst_alsa_mixer_options_init), (gst_alsa_mixer_options_new): * ext/alsa/gstalsamixeroptions.h: * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_new): * ext/alsa/gstalsamixertrack.h: Add enumerations (as GstMixerOptions). Make correct distinction between input/output tracks. Add capture/playback private flag. Use flag to decide on whether to set capture or playback volumes or switches. Use playback and record switches. * gst-libs/gst/mixer/Makefile.am: * gst-libs/gst/mixer/mixer-marshal.list: * gst-libs/gst/mixer/mixer.c: (gst_mixer_class_init), (gst_mixer_set_option), (gst_mixer_get_option), (gst_mixer_mute_toggled), (gst_mixer_record_toggled), (gst_mixer_volume_changed), (gst_mixer_option_changed): * gst-libs/gst/mixer/mixer.h: * gst-libs/gst/mixer/mixeroptions.c: (gst_mixer_options_get_type), (gst_mixer_options_class_init), (gst_mixer_options_init), (gst_mixer_options_dispose): * gst-libs/gst/mixer/mixeroptions.h: Add GstMixerOptions. * sys/oss/gstosselement.c: (gst_osselement_class_probe_devices): Rename Audio Mixer to OSS Mixer (similar to Alsa Mixer). Fix broken device detection on computers with multiple OSS sound cards. --- gst-libs/gst/mixer/mixer.h | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'gst-libs/gst/mixer/mixer.h') diff --git a/gst-libs/gst/mixer/mixer.h b/gst-libs/gst/mixer/mixer.h index 50ba3fd8..2cb326dc 100644 --- a/gst-libs/gst/mixer/mixer.h +++ b/gst-libs/gst/mixer/mixer.h @@ -23,6 +23,7 @@ #define __GST_MIXER_H__ #include +#include #include #include @@ -84,7 +85,18 @@ typedef struct _GstMixerClass { GstMixerTrack *channel, gint *volumes); - gpointer _gst_reserved[GST_PADDING]; + /* use padding */ + void (* set_option) (GstMixer *mixer, + GstMixerOptions *opts, + gchar *value); + const gchar * (* get_option) (GstMixer *mixer, + GstMixerOptions *opts); + + void (* option_changed) (GstMixer *mixer, + GstMixerOptions *opts, + gchar *option); + + gpointer _gst_reserved[GST_PADDING-3]; } GstMixerClass; GType gst_mixer_get_type (void); @@ -103,6 +115,11 @@ void gst_mixer_set_mute (GstMixer *mixer, void gst_mixer_set_record (GstMixer *mixer, GstMixerTrack *track, gboolean record); +void gst_mixer_set_option (GstMixer *mixer, + GstMixerOptions *opts, + gchar *value); +const gchar * gst_mixer_get_option (GstMixer *mixer, + GstMixerOptions *opts); /* trigger signals */ void gst_mixer_mute_toggled (GstMixer *mixer, @@ -114,6 +131,9 @@ void gst_mixer_record_toggled (GstMixer *mixer, void gst_mixer_volume_changed (GstMixer *mixer, GstMixerTrack *track, gint *volumes); +void gst_mixer_option_changed (GstMixer *mixer, + GstMixerOptions *opts, + gchar *value); G_END_DECLS -- cgit v1.2.1