[Sumover-dev] [svn commit] r3869 - rat/trunk

sumover-dev at cs.ucl.ac.uk sumover-dev at cs.ucl.ac.uk
Wed Sep 13 17:21:20 BST 2006


Author: piers
Date: Wed Sep 13 17:20:45 2006
New Revision: 3869

Modified:
   rat/trunk/auddev_win32.c

Log:
Returned nLoopGain = 0 - I was mistaken: Firstly it doesn't seem to cure the problem whereby one cannot hear audio without checking 'Talk' on Windows. More importantly on start-up it unmutes the Mic (or selected input) on the playback side of the mixer - resulting in nasty feedback if someone hasn't set their playback Mic level to zero.

Modified: rat/trunk/auddev_win32.c
==============================================================================
--- rat/trunk/auddev_win32.c	(original)
+++ rat/trunk/auddev_win32.c	Wed Sep 13 17:20:45 2006
@@ -43,7 +43,7 @@
 
 static int  error = 0;
 static char errorText[MAXERRORLENGTH];
-static int  nLoopGain = 100;
+static int  nLoopGain = 0;
 #define     MAX_DEV_NAME 64
 
 static UINT mapAudioDescToMixerID(audio_desc_t ad);
@@ -1499,7 +1499,8 @@
                 if (input_ports[i].port == port) {
                         /* save gain */
                         gain = mixerGetLineGain((HMIXEROBJ)hMixer, input_ports[iport].port);
-                        debug_msg("Gain %d\n", gain);
+						debug_msg("w32sdk_audio_iport_set: %s Old Gain %d\n", input_ports[iport].name, gain);
+						debug_msg("w32sdk_audio_iport_set: %s New Gain %d\n", input_ports[i].name, gain);
                         if (mixerGetLineName((HMIXEROBJ)hMixer, input_ports[i].port, portname, MIXER_LONG_NAME_CHARS)) {
                                 mixerEnableInputLine((HMIXEROBJ)hMixer, portname);
                         }
@@ -1509,6 +1510,7 @@
                         for(j = 0; j < n_loop_ports && nLoopGain != 0; j++) {
                                 if (strcmp(loop_ports[j].name, input_ports[i].name) == 0) {
                                         mixerEnableOutputLine((HMIXEROBJ)hMixer, loop_ports[j].port, 1);
+										debug_msg("w32sdk_audio_iport_set: Enabling loop: %s Gain %d\n", loop_ports[j].name, 1);
 
                                         /* mixerSetLineGain((HMIXEROBJ)hMixer, loop_ports[j].port, nLoopGain); */
                                 }



More information about the Sumover-dev mailing list