Your issue could be an artefact of how DSD over PCM operates.
AudioStreamStart() is called when the player opens up the (PCM) stream to the audio device, it then (potentially after some delay) starts sending DoP/DSD data.
After some number of DoP samples (the spec* recommends 32 samples), the device detects DoP and switches into DSD mode (and makes a call to AudioHwConfig())
This is one of the reasons that I am not a fan of the DoP spec..configuration is done at "stream time"..
I would still expect AudioStreamStart() to be called, unless the player/driver combination is doing something odd...
Please give foobar player a go (with the SACD plugin) it supports both DoP and "Native" - we use it for a lot of our testing.
Hope that makes sense :)
* http://dsd-guide.com/dop-open-standard
Mute signal in Audio Reference Design
-
Verified
- XCore Legend
- Posts: 1195
- Joined: Thu Dec 10, 2009 9:20 pm
- Location: Bristol, UK
-
- XCore Addict
- Posts: 150
- Joined: Sun Feb 23, 2014 11:30 am
Hi Ross,
thank you very much for your answer.
I'm familiar with DoP.
As I understand, AudioStreamStart() is called when the stream starts, after AudioHwConfig(), but later, when DoP mark was detected, AudioHwConfig() is called again.
I'll try Foobar with "native" ASAP.
thank you very much for your answer.
I'm familiar with DoP.
As I understand, AudioStreamStart() is called when the stream starts, after AudioHwConfig(), but later, when DoP mark was detected, AudioHwConfig() is called again.
I'll try Foobar with "native" ASAP.