Added --with-configdir and --with-plugindir options to configure
which specify the directories for config files and plugin objects
respectively. The default paths when these options are not
specified are unchanged.
Added --enable-symbolic-functions configure option. This will detect
and pass -Bsymbolic-functions linker option, which gives you better
performance and smaller binary size. Only recent binutils supports
this option.
Change the rate converter type to allow string arrays in addition to
a string. When a string array is given, the rate plugin probes each
string and try to load the converter plugin in the order of the list.
For example, you can set
defaults.pcm.rate_converter [ "samplerate" "linear" ]
so that samplerate plugin is preferred to linear plugin if it's
installed.
This replaces all occurences of alsa-devel@lists.s[ource]f[orge].net
that a simple recursive grep found in the current HG ALSA repos by
alsa-devel@alsa-project.org.
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Instead of link_fd, more generic callback link_slaves is introduced.
This is called for linking the slave streams as the source to the
given master stream.
Improve the sample conversion in plug layer for the sample bits
reduction. Use round instead of truncating, which introduces
more quantization noise.
Original patch by Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Check _POSIX_SOURCE for struct timeval definition.
In rare cases, _POSIX_C_SOURCE isn't defined but only _POSIX_SOURCE
is set, and it results in the confliction of timeval definition.
Remove same calls of strdup() that were unnecessary because the
temporary string would not be modified or held longer than the lifetime
of the original string.
Updated emu10k1.h for newer version.
The size of emu10k1_fx8010_control_gpr_t is changed. The apps need to
issue SNDRV_EMU10K1_IOCTL_PVERSION first to switch to the new ABI.
The old format tried to do something when the requested format was not
supported by the hardware, but did not actually select any other format.
Now we try to switch to any format supported by dmix, or any other
format when the plugin is not dmix.
The code to set the number of channels did not work when the requested
channel count was not available and when the min/max channel counts were
not identical.
Replacing the entire selection code with
snd_pcm_hw_params_set_channels_near() gives the same result in the cases
where it previously worked, and works in all other cases.
Fix the type of the string list parameter in the prototypes of
snd_device_name_hint() and snd_device_name_free_hint(). The prototypes
used char**, while the implementation and the users are using void**.