diff --git a/linphone/mediastreamer2/src/winsnd2.c b/linphone/mediastreamer2/src/winsnd2.c index da5db4e44..64126c1c5 100755 --- a/linphone/mediastreamer2/src/winsnd2.c +++ b/linphone/mediastreamer2/src/winsnd2.c @@ -41,7 +41,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define WINSND_NBUFS 10 #define WINSND_OUT_NBUFS 20 -#define WINSND_NSAMPLES 320 +#define WINSND_NSAMPLES 160 #define WINSND_MINIMUMBUFFER 5 static MSFilter *ms_winsnd_read_new(MSSndCard *card); @@ -64,11 +64,11 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc MMRESULT mr = MMSYSERR_NOERROR; DWORD dwVolume = ((0xFFFF) * percent) / 100; - WORD wLeftVol, wRightVol; - DWORD dwNewVol; - wLeftVol = LOWORD(dwVolume); // get higher WORD - wRightVol = LOWORD(dwVolume); // get lower WORD - + WORD wLeftVol, wRightVol; + DWORD dwNewVol; + wLeftVol = LOWORD(dwVolume); // get higher WORD + wRightVol = LOWORD(dwVolume); // get lower WORD + dwNewVol = MAKELONG(wLeftVol, wRightVol); switch(e){ @@ -262,8 +262,6 @@ static int winsndcard_get_level(MSSndCard *card, MSSndCardMixerElem e){ MMRESULT mr = MMSYSERR_NOERROR; int percent; - WORD dwRightVol; - switch(e){ case MS_SND_CARD_MASTER: case MS_SND_CARD_PLAYBACK: @@ -1356,6 +1354,7 @@ static int get_rate(MSFilter *f, void *arg){ static int set_rate(MSFilter *f, void *arg){ WinSnd *d=(WinSnd*)f->data; d->wfx.nSamplesPerSec=*((int*)arg); + d->wfx.nSamplesPerSec=44100; return 0; }