Lines Matching refs:wf
514 static int ss_to_waveformat(pa_sample_spec *ss, pa_channel_map *map, PWAVEFORMATEXTENSIBLE wf) {
515 wf->Format.wFormatTag = WAVE_FORMAT_EXTENSIBLE;
516 wf->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
518 wf->Format.nChannels = ss->channels;
519 wf->Format.nSamplesPerSec = ss->rate;
521 wf->dwChannelMask = 0;
524 if (thisSpeaker == 0 || (wf->dwChannelMask & thisSpeaker)) {
528 wf->dwChannelMask |= thisSpeaker;
532 wf->Format.wBitsPerSample = 8;
533 wf->Samples.wValidBitsPerSample = 8;
535 wf->Format.wBitsPerSample = 16;
536 wf->Samples.wValidBitsPerSample = 16;
538 wf->Format.wBitsPerSample = 24;
539 wf->Samples.wValidBitsPerSample = 24;
541 wf->Format.wBitsPerSample = 32;
542 wf->Samples.wValidBitsPerSample = 32;
548 wf->Format.nBlockAlign = wf->Format.nChannels * wf->Format.wBitsPerSample/8;
549 wf->Format.nAvgBytesPerSec = wf->Format.nSamplesPerSec * wf->Format.nBlockAlign;
551 wf->Format.cbSize = 22;
570 WAVEFORMATEXTENSIBLE wf;
675 if (ss_to_waveformat(&ss, &map, &wf) < 0)
681 result = waveInOpen(&hwi, input_device, &wf, 0, 0, WAVE_FORMAT_DIRECT | WAVE_FORMAT_QUERY);
684 ss.rate = wf.Format.nSamplesPerSec = m->core->default_sample_spec.rate;
686 result = waveInOpen(&hwi, input_device, &wf, (DWORD_PTR) chunk_ready_cb, (DWORD_PTR) u, CALLBACK_FUNCTION);
701 result = waveOutOpen(&hwo, output_device, &wf, 0, 0, WAVE_FORMAT_DIRECT | WAVE_FORMAT_QUERY);
704 ss.rate = wf.Format.nSamplesPerSec = m->core->default_sample_spec.rate;
706 result = waveOutOpen(&hwo, output_device, &wf, (DWORD_PTR) chunk_done_cb, (DWORD_PTR) u, CALLBACK_FUNCTION);