| 6 | WinAudio* WinAudio::WIN_AUDIO = NULL; |
| 7 | |
| 8 | WinAudio::WinAudio(HWND hwnd, int sample_rate) { |
| 9 | //Initialize variables |
| 10 | m_CurWaveOut = 0; |
| 11 | m_SampleRate = sample_rate; |
| 12 | m_IsReleasing = false; |
| 13 | |
| 14 | //Specify output parameters |
| 15 | m_Format.wFormatTag = WAVE_FORMAT_PCM; // simple, uncompressed format |
| 16 | m_Format.nChannels = 2; // 1=mono, 2=stereo |
| 17 | m_Format.nSamplesPerSec = sample_rate; // sample rate |
| 18 | m_Format.nAvgBytesPerSec = sample_rate * 2; // nSamplesPerSec * n.Channels * wBitsPerSample/8 |
| 19 | m_Format.nBlockAlign = 4; // n.Channels * wBitsPerSample/8 |
| 20 | m_Format.wBitsPerSample = 16; // 16 for high quality, 8 for telephone-grade |
| 21 | m_Format.cbSize = 0; // must be set to zero |
| 22 | |
| 23 | //Set handle |
| 24 | assert(WIN_AUDIO == NULL); |
| 25 | WIN_AUDIO = this; |
| 26 | } |
| 27 | |
| 28 | WinAudio::~WinAudio() { |
| 29 | stop(); |
nothing calls this directly
no outgoing calls
no test coverage detected