[wdmaudiodev] Re: KMixer functionality

  • From: prestonfick@xxxxxxxxx
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Fri, 10 Apr 2009 19:17:21 +0000

It appears that it does, I was actually seeing this as an artifact of another bug. What it looks like is that it initializes with the proper rate, fails the SetFormat, then apparently sticks with the original rate on the device (instead of calling another SetFormat) - which in my case results in an upconverted stream.



On Apr 10, 2009 2:22am, x@xxxxxxxxx wrote:
Does KMixer perform upconversion for sample rates? For example, say I have hardware that supports only 2 chan/44100 sample rate/16 bps and I specify this in the DataRangeIntersection for the device. Will KMixer take care of the conversion of say a 2 chan/22050 sample rate/16 bps? It appears from documentation that it will start with the best settings, then move down - but not up.

I am seeing behavior such that NewStream allocates a stream with the supported settings from DataRangeIntersection, however SetFormat eventually gets called with the new settings which are unsupported. I fail out SetFormat, however the stream is still played because SetState gets called with RunState immediately afterwards. I suppose that since it only walks down the list it just tries to play what it has since we don't support anything lower.

Can anyone confirm this behavior. Moreover, if this is the correct behavior and it won't play the sound is it simply not supported, or is there a way around this - such as realtime upconversion in the driver?

I am running into this in XPSP3 using WavePCI.

Thanks -
Preston

Other related posts: