http://bugs.winehq.org/show_bug.cgi?id=13019
--- Comment #19 from Raymond superquad.vortex2@gmail.com 2010-11-09 20:08:24 CST --- (In reply to comment #15)
http://wklej.org/id/366015/txt/ (the log file was too big to attach it)
This is the output of the "WINEDEUG=+wave wine Steam.exe" command (I launched CS1.6 from Steam and started the microphone test).
I don't know if anything can be made out of that so put in other words, the sound configuration used is as follows:
Hardware acceleration - Emulation (also tested with Full) Default polling frequency = 44100 Bits per sample - 16
Please forgive me if I did anything wrong. And if I did, please explain what to do exactly.
Also, what is this and what to do with that?
if (TRACE_ON(wave)) ALSA_TraceParameters(hw_params, sw_params, FALSE);
trace:wave:ALSA_widMessage (0, WIDM_GETDEVCAPS, 00000000, 0033F1FC, 00000050); trace:wave:widGetDevCaps (0, 0x33f1fc, 80); trace:wave:ALSA_widMessage (0, WIDM_OPEN, 0033F284, 0033F2FC, 00030000); trace:wave:widOpen (0, 0x33f2fc, 00030000); trace:wave:widOpen dwPeriodSize=4096 trace:wave:widOpen wBitsPerSample=16, nAvgBytesPerSec=16000, nSamplesPerSec=8000, nChannels=1 nBlockAlign=2!
trace:wave:wodPlayer waiting 11ms (20,11) trace:wave:widRecorder sleeptime=256 ms, total buffer length=512 ms (8192 bytes)
4096 period size at 8000Hz mean period time is 0.512 seconds
In winealsa.drv/wavein.c ,
widOpen use
332 unsigned int buffer_time = 500000; 333 unsigned int period_time = 10000;
469 dir=0; 470 EXIT_ON_ERROR( snd_pcm_hw_params_set_buffer_time_near(pcm, hw_params, &buffer_time, &dir), MMSYSERR_INVALPARAM, "unable to set buffer time"); 471 dir=0; 472 EXIT_ON_ERROR( snd_pcm_hw_params_set_period_time_near(pcm, hw_params, &period_time, &dir), MMSYSERR_INVALPARAM, "unable to set period time"); 473 474 EXIT_ON_ERROR( snd_pcm_hw_params(pcm, hw_params), MMSYSERR_INVALPARAM, "unable to set hw params for playback");
seem wine is using 1 period per buffer
can you post the output of
arecord -v -Dhw:0,0 -f S16_LE -c 1 -r 8000 -d 10 foo1.wav
and
arecord -v -Dhw:0,0 -f S16_LE -c 1 -r 8000 --period-time=10 --buffer-time=500 -d 10 foo1.wav