[alsa-devel] ERROR: USB Sound card with unsafe characters
Clemens Ladisch
clemens at ladisch.de
Mon Feb 29 10:42:14 CET 2016
Brian Jones wrote:
> I don't know how to get this bug to the developers
Just send it to the alsa-devel list. Once.
> My USB soundcard is an Asus Xonar U7 Echelon Edition
> <https://www.asus.com/Sound-Cards/Xonar_U7_Echelon_Edition/> which
> identifies itself to alsa as "Xonar U7 Echelon Ed." The card is supported
> by alsa and works well in analog mode but I cannot get digital output via
> alsa.
>
> Attempts to change the iec958 device in USB-Audio.conf fail because of the
> period char and apparently my level of OS (Mint 17.3 based on Ubuntu 14.04,
> kernel 3.19.0-32) does not have alsa supporting USB vendorid:productid
> naming
The vendor:product naming is used only for device that do not have a name.
The newer version of alsa-lib would replace unsafe characters (like '.')
with an underscore.
Try changing /usr/share/alsa/cards/USB-Audio.conf. Dont add an entry to
the USB-Audio.pcm.iec958_device list near the top, but go to the bottom,
to the USB-Audio.pcm.iec958.0 definition, and change this:
USB-Audio.pcm.iec958.0 {
@args [ CARD AES0 AES1 AES2 AES3 ]
@args.CARD { type string }
@args.AES0 { type integer }
@args.AES1 { type integer }
@args.AES2 { type integer }
@args.AES3 { type integer }
@func refer
name {
...(lots of stuff)...
}
default {
...(lots of stuff)...
}
}
to this:
USB-Audio.pcm.iec958.0 {
@args [ CARD AES0 AES1 AES2 AES3 ]
@args.CARD { type string }
@args.AES0 { type integer }
@args.AES1 { type integer }
@args.AES2 { type integer }
@args.AES3 { type integer }
type hw # no @func
card $CARD
device 1
}
(This will break S/PDIF on all other USB devices, but who cares ...)
Regards,
Clemens
More information about the Alsa-devel
mailing list