Takashi Iwai tiwai@suse.de writes:
[...]
Well, I don't remember whether 44kHz worked on my test system, and currently I cannot test right now.
OK. This means that currently we don't know for sure whether the frame rate problem is specific to Realtek chips. Do you know of anyone who is likely to have tested 44.1kHz over S/PDIF?
The HD-audio DIGI_CONVERT* verb itself has no rate information but it contains only a part of IEC958 status bits. It seems that the rate is referred from the setting of the corresponding audio output widget.
As far as I can tell the IEC958 rate setting (as reported by iecset) is not used for anything. Which IHMO is good, as it would only complicate things. If I'm mistaken and it *is* used for something, then it would likely cause problems.
In your case, your receiver doesn't recognize if it's 44kHZ? What about audio (PCM) samples via 44.1kHz over SPDIF? I assume the driver doesn't produce any error but you see the problem in the receiver side, right?
Correct, the receiver detects a 48kHz frame rate, regardless of the frame rate setting in the ALC882M digital converter (NID 0x06). What I am trying to do is actually PCM at 44.1kHz, and the ALC88M is not cooperating. I have also tried 96kHz and 192kHz without success - whatever I do the S/PDIF frame rate is locked at 48kHz. If I connect a CD player to the receiver, the receiver detects 44.1kHz as expected.
The resulting sound is quite unpleasant. I believe missing samples are simply repeated to convert from 44.1kHz to 48kHz (I have some hands-on experience with resampling and the harshness in high-pitched sounds leads me to this conclusion).
Thanks again, I hope these problems can be resolved. I'll test your patch tomorrow.