The issue may be be in:P.S. Earlier you mentioned that "The code that needs fixing is public". If you can post a link I'll put an extra, part-time pair of eyes on it.
alsa-lib - perhaps here.
kernel hdmi driver here.
kernel dma driver here.
My guess is a sample is being lost in the dma to hdmi audio fifo. That will result in a channel swap from that point onwards.
I'll need to check from logging whether when the underrun messages appear whether something unusual happens.
I'm suspecting it may trigger a dma channel abort, and restart which perhaps is where the sample gets lost.
Statistics: Posted by dom — Tue Jan 30, 2024 12:37 pm