[alsa-devel] Alsa-lib strings?
Clemens Ladisch
clemens at ladisch.de
Fri Sep 30 09:50:57 CEST 2016
David Henningsson wrote:
> 1a) can I count on alsa-lib's strings (everything from card name and
> mixer identifiers to various descriptions) to be UTF-8 or perhaps
> even 7-bit?
Alsa-lib itself does not care about the encoding.
The strings are whatever the kernel uses. In practice, this almost
always means ASCII, but kernel policy is UTF-8. (At the moment, the
only way I know of to get a non-ASCII string is from a USB device.)
Alsa-lib can also return strings from configuration files. These are
encoded in whatever the editor happens to use, i.e., in practice, UTF-8.
> 1b) In what way can buggy drivers violate the answers to 1a?
The USB driver is not buggy. :) But in theory, you could get any random
crap.
For testing, you can change a card's "id" attribute in sysfs.
> 2) Can I count on the strings to be zero terminated?
In theory, yes.
> snd_ctl_elem_id_set_name
Oops! Using strncpy() here is wrong.
Regards,
Clemens
More information about the Alsa-devel
mailing list