NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/54177: playing audio in firefox doesn't work after kernel update

At Wed,  8 May 2019 18:15:01 +0000 (UTC),
Martin Husemann wrote:
>  The old userland audiocfg seems to work:
>  0: [*] audio0 @ hdafg1: vendor 10ec product 0670, 12 playback channels
>  but kernel traces:
>  [ 519.3205380] audio_track_setinfo_check failed: slinear_le 16bit 14ch 44100Hz
>  [ 521.1216467] audio_track_setinfo_check failed: slinear_le 16bit 14ch 44100Hz

This message will be shown if you use old audiocfg.
But it was verbose.  Previous audio driver returned EINVAL silently
if the same thing happened.  I should follow it.

Here is details.
In the past, there was no way that userland apps know the number of
channels of hardware driver.  Then audiocfg attempted to set
channels 2, 4, 6,..., 16.  This method used to work at that point.

In netbsd-8, this operation was changed to software channel and the
kernel limited it to 12 in 2017 (See also PR/52435).  Therefore
audiocfg on netbsd-8 always shows 12 channels regardless of hardware.
# And trying to set 14 channels fails.

In audio2, I introduced AUDIO_QUERYFORMAT ioctl for this purpose
and new audiocfg(1) uses it to know hardware information.  Then such
problems are gone.

Tetsuya Isaki < />

Home | Main Index | Thread Index | Old Index