Your message dated Mon, 8 May 2006 00:17:29 +0200
with message-id <[EMAIL PROTECTED]>
and subject line alsa-oss: fails to read volume for software volume control
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: alsa-oss
Version: 1.0.8-1
Severity: normal

Hi,

My MacMini's audio chip seems to have no hardware volume control (or it 
is unsupported in the kernel I use), so I use software volume control, 
with the attached .asoundrc. (I'm still a newbie about alsa, there may 
be some mistakes in my .soundrc file.)

While trying to use hotkeys (that only understands oss) with aoss, I 
discovered that aoss did not allow to read the volume control, while it 
can write it flawlessly.

After a few tests, I discovered that it was related to the failing 
snd_mixer_selem_get_playback_switch function call, and I could 
workaround the issue with the attached trivial quick&dirty patch.


Cheers,

Nicolas Boullis


-- System Information:
Debian Release: 3.1
Architecture: powerpc (ppc)
Kernel: Linux 2.6.12-irma
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages alsa-oss depends on:
ii  libasound2                  1.0.8-3      ALSA library
ii  libc6                       2.3.2.ds1-22 GNU C Library: Shared libraries an

-- no debconf information
pcm.!default {
  type plug
  slave {
    pcm {
      type softvol
      slave {
        pcm {
          type dmix
          ipc_key 7666
          slave {
            pcm "hw:0,0"
            period_time 0
            period_size 1024
            buffer_size 8192
            rate 44100
          }
        }
      }
      control {
        name Master
        card 0
      }
    }
  }
}

pcm.dsp0 {
  type plug
  slave.pcm "!default"
}

only in patch2:
unchanged:
--- alsa-oss-1.0.8.orig/alsa/mixer.c
+++ alsa-oss-1.0.8/alsa/mixer.c
@@ -487,9 +487,7 @@
                                break;
                        }
                        err = snd_mixer_selem_get_playback_switch(elem, 
SND_MIXER_SCHN_FRONT_LEFT, &sw);
-                       if (err < 0) 
-                               break;
-                       if (sw) {
+                       if ((err < 0) || (sw)) {
                                err = snd_mixer_selem_get_playback_volume(elem, 
SND_MIXER_SCHN_FRONT_LEFT, &lvol);
                                if (err < 0) 
                                        break;
@@ -499,9 +497,7 @@
                                rvol = lvol;
                        } else {
                                err = snd_mixer_selem_get_playback_switch(elem, 
SND_MIXER_SCHN_FRONT_RIGHT, &sw);
-                               if (err < 0) 
-                                       break;
-                               if (sw) {
+                               if ((err < 0) || (sw)) { 
                                        err = 
snd_mixer_selem_get_playback_volume(elem, SND_MIXER_SCHN_FRONT_RIGHT, &rvol);
                                        if (err < 0) 
                                                break;

--- End Message ---
--- Begin Message ---
Version: 1.0.11-1

Hi,

As mentioned in 
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=1278
this bug was fixed in ALSA CVS by Takashi Iwai using my patch on 
2006/01/05. The fix is included in alsa-oss 1.0.11.


Cheers,

Nicolas

--- End Message ---

Reply via email to