[Bug 14559] Rosetta stone v3 microphone detection

wine-bugs at winehq.org wine-bugs at winehq.org
Thu May 21 05:47:10 CDT 2009


http://bugs.winehq.org/show_bug.cgi?id=14559





--- Comment #7 from xbx <xavierb at gmail.com>  2009-05-21 05:47:10 ---
As I'm afraid I don't understand a thing to alsamixer nor win32 mixer, I don't
even know what's going on, But I tried this change to see what would happen:

========================
diff --git a/dlls/winealsa.drv/mixer.c b/dlls/winealsa.drv/mixer.c
index e5cd347..0f7642c 100644
--- a/dlls/winealsa.drv/mixer.c
+++ b/dlls/winealsa.drv/mixer.c
@@ -211,6 +211,9 @@ static const struct mixerlinetype {
     { "Phone",      MIXERLINE_COMPONENTTYPE_SRC_TELEPHONE,   },
     { "Digital",    MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE,  },
     { "Front Mic",  MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE,  },
+    { "External Mic",  MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE,  },
+    { "Internal Mic",  MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE,  },
+    { "Docking Mic",   MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE,  },
 };

 /* Map name to MIXERLINE_COMPONENTTYPE_XXX */
@@ -468,6 +471,9 @@ static void ALSA_MixerInit(void)
          * If there are multiple Master or Captures, all except 1 will be
added as slaves
          */
         for (elem = snd_mixer_first_elem(mixdev[mixnum].mix); elem; elem =
snd_mixer_elem_next(elem))
+               {
+               TRACE(" ===== MixerInit: elem: %s, capture: %d\n",
snd_mixer_selem_get_name(elem), snd_mixer_selem_has_playback_vol
+
             if (!strcasecmp(snd_mixer_selem_get_name(elem), "Master") &&
!mastelem)
                 mastelem = elem;
             else if (!strcasecmp(snd_mixer_selem_get_name(elem), "Capture") &&
!captelem)
@@ -496,6 +502,7 @@ static void ALSA_MixerInit(void)
                         ++(mixdev[mixnum].chans);
                 }
             }
+               }

         /* Add master channel, uncounted channels and an extra for capture  */
         mixdev[mixnum].chans += !!mastelem + !!headelem + !!pcmelem + 1;

========================

I still doesn't work of course, and the mixer init log now is:

trace:mixer:ALSA_mxdMessage (0000, DRVM_INIT, 00000000, 00000000, 00000000);
trace:mixer:ALSA_MixerInit  ===== MixerInit: elem: Master, capture: 1
trace:mixer:ALSA_MixerInit  ===== MixerInit: elem: PCM, capture: 1
trace:mixer:blacklisted PCM: 0
trace:mixer:getcomponenttype 2 -> PCM
trace:mixer:ALSA_MixerInit  ===== MixerInit: elem: IEC958, capture: 0
trace:mixer:blacklisted IEC958: 1
trace:mixer:ALSA_MixerInit  ===== MixerInit: elem: IEC958 Default PCM, capture:
0
trace:mixer:blacklisted IEC958 Default PCM: 1
trace:mixer:ALSA_MixerInit  ===== MixerInit: elem: Digital, capture: 0
trace:mixer:blacklisted Digital: 0
trace:mixer:getcomponenttype 11 -> Digital
trace:mixer:ALSA_MixerInit  ===== MixerInit: elem: Docking Mic, capture: 1
trace:mixer:blacklisted Docking Mic: 0
trace:mixer:getcomponenttype 15 -> Docking Mic
trace:mixer:ALSA_MixerInit  ===== MixerInit: elem: External Mic, capture: 1
trace:mixer:blacklisted External Mic: 0
trace:mixer:getcomponenttype 13 -> External Mic
trace:mixer:ALSA_MixerInit  ===== MixerInit: elem: Internal Mic, capture: 1
trace:mixer:blacklisted Internal Mic: 0
trace:mixer:getcomponenttype 14 -> Internal Mic
warn:mixer:ALSA_MixerInit No use enabling capture part of mixer, capture
control found: no, amount of capture controls: 4

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list