* configure.ac:
check to define LAMEPRESET. Fixes #151232.
-2004-08-29 Ronald S. Bultje <Ronald S. Bultje <rbultje@ronald.bitfreak.net>>
-
- * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_build_list):
- * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_new):
- Add switches (simple boolean on/off).
-
2004-08-27 David Schleef <ds@schleef.org>
* sys/glsink/glimagesink.c: (gst_glimagesink_ximage_put),
for (i = 0; i < count; i++) {
gint channels = 0;
gint flags = GST_MIXER_TRACK_OUTPUT;
- gboolean got_it = FALSE;
if (snd_mixer_selem_has_capture_switch (element)) {
if (dir != GST_PAD_SRC && dir != GST_PAD_UNKNOWN)
if (snd_mixer_selem_has_capture_volume (element)) {
while (snd_mixer_selem_has_capture_channel (element, channels))
channels++;
+ if (first) {
+ first = FALSE;
+ flags |= GST_MIXER_TRACK_MASTER;
+ }
track = gst_alsa_mixer_track_new (element, i, channels,
flags, GST_ALSA_MIXER_TRACK_CAPTURE);
mixer->tracklist = g_list_append (mixer->tracklist, track);
- got_it = TRUE;
}
if (snd_mixer_selem_has_playback_volume (element)) {
track = gst_alsa_mixer_track_new (element, i, channels,
flags, GST_ALSA_MIXER_TRACK_PLAYBACK);
mixer->tracklist = g_list_append (mixer->tracklist, track);
- got_it = TRUE;
}
if (snd_mixer_selem_is_enumerated (element)) {
opts = gst_alsa_mixer_options_new (element, i);
mixer->tracklist = g_list_append (mixer->tracklist, opts);
- got_it = TRUE;
- }
-
- if (!got_it) {
- if (flags == GST_MIXER_TRACK_OUTPUT &&
- snd_mixer_selem_has_playback_switch (element)) {
- /* simple mute switch */
- track = gst_alsa_mixer_track_new (element, i, 0,
- flags, GST_ALSA_MIXER_TRACK_PLAYBACK);
- mixer->tracklist = g_list_append (mixer->tracklist, track);
- }
}
element = snd_mixer_elem_next (element);
alsa_track->track_num = track_num;
/* set volume information */
- if (channels) {
- if (alsa_flags & GST_ALSA_MIXER_TRACK_PLAYBACK) {
- snd_mixer_selem_get_playback_volume_range (element, &min, &max);
- } else if (alsa_flags & GST_ALSA_MIXER_TRACK_CAPTURE) {
- snd_mixer_selem_get_capture_volume_range (element, &min, &max);
- }
+ if (alsa_flags & GST_ALSA_MIXER_TRACK_PLAYBACK) {
+ snd_mixer_selem_get_playback_volume_range (element, &min, &max);
+ } else if (alsa_flags & GST_ALSA_MIXER_TRACK_CAPTURE) {
+ snd_mixer_selem_get_capture_volume_range (element, &min, &max);
}
track->min_volume = (gint) min;
track->max_volume = (gint) max;