Re: 96kHz 24bit WAV playback
John Stirling <[email protected]>
| Newsgroups | gmane.comp.multimedia.helix.devel |
|---|---|
| Message-ID | <[email protected]> |
> > You want to test _Imp_GetCurrentTime(). The tick count is > generally always correct. _Imp_GetCurrentTime() uses the > bytes played to compute a time to pass into the media engine. > You need to look at those numbers and make sure they are > always increasing and don't 'jump' around. If BytesActuallyPlayed > is ever decreasing then there is a problem in the audio device > code. I would look and see why. I am guess it has to do with the > sample width being 24 and not 16 or 8. Take a look for any hardcoded > values along those lines. > > --greg. > _Imp_GetCurrentTime() does indeed 'jump around'. Note we're currently faking the audio device to look like it has opened in 24 bit mode (report 24 bit mode back to helix but actually open it in 8 bit mode and through away the extra data in WriteBytes). Maybe some problem related to that. If we comment out the call to ::write then ImpGetCurrentTime() stops jumping. Will try writing the real 24 bit audio driver first and debug from there as we don't actually care about 24/96 playback on non 24 bit enabled hardware. Thanks for you help.