Takashi Iwai [Wed, 21 Mar 2007 23:58:42 +0000 (00:58 +0100)]
String array for default rate plugin list
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.
Rene Herman [Wed, 21 Mar 2007 11:21:38 +0000 (12:21 +0100)]
Fix alsa-devel ML address
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>
Takashi Iwai [Tue, 13 Mar 2007 01:52:33 +0000 (02:52 +0100)]
More better fix for linked start/stop
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.
Takashi Iwai [Fri, 9 Mar 2007 14:30:38 +0000 (15:30 +0100)]
Check _POSIX_SOURCE for timeval definition
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.
Clemens Ladisch [Mon, 12 Feb 2007 12:45:03 +0000 (13:45 +0100)]
remove superfluous strdup() calls
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.
Takashi Iwai [Fri, 19 Jan 2007 17:36:48 +0000 (18:36 +0100)]
Update emu10k1.h for new version
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.
Jaroslav Kysela [Wed, 20 Dec 2006 15:01:27 +0000 (16:01 +0100)]
pcm_ladspa - fix none policy
In some configurations, channel samples were not copied correctly.
Also, fix memory leaks and remove extra end-of-line chars from SNDERR
strings.
Clemens Ladisch [Mon, 4 Dec 2006 17:20:40 +0000 (18:20 +0100)]
direct pcm plugins: fix format selection
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.
Clemens Ladisch [Mon, 4 Dec 2006 17:14:13 +0000 (18:14 +0100)]
direct pcm plugins: fix channel number selection
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.
Clemens Ladisch [Mon, 4 Dec 2006 17:07:46 +0000 (18:07 +0100)]
fix string list parameter in snd_device_name_(free_)hint prototypes
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**.
Takashi Iwai [Fri, 20 Oct 2006 15:57:16 +0000 (17:57 +0200)]
Revert dmix.conf and dsnoop.conf
Revert dmix.conf and dsnoop.conf.
The ipc key offset had been already modified to be unique for
each card, stream, device and subdevice interanally in dmix &
co plugins.
Jaroslav Kysela [Thu, 12 Oct 2006 12:34:23 +0000 (14:34 +0200)]
more name hint interace updates
- add long card name to device description
- create empty PCM plugin to allow right hint description parsing
- reorder devices in alsa.conf
- make namehint more configurable (using default.namehint.showall switch)
- add two levels basic and exteded for hints to default configuration files
- do not show direct device aliases
- removed all known memory leaks
Jaroslav Kysela [Wed, 11 Oct 2006 11:59:42 +0000 (13:59 +0200)]
fix two issues in snd_device_name_hint()
- returned wrong error when the namehint section does not exist
- variable underflow for the rawmidi interface
Jaroslav Kysela [Wed, 11 Oct 2006 11:18:57 +0000 (13:18 +0200)]
add snd_device_name_hint() function and initial implementation
- add snd_device_name_hint() and snd_device_name_free_hint() functions
- add snd_ctl_iface_conf_name() functions
- do not accept parameters for the plugin definition without @args section
- add defaults.pcm.dmix.card/device and dsnoop.card/device definitions
- add hints for HDA-Intel.conf, pcm/dmix.conf, pcm/dsnoop.conf and alsa.conf
- add test/namehint test utility
- doxygen related cleanups
-lm -ldl -lpthread are _not_ needed in Libs (since the alsa interface
doesn't depend on libm, libdl or libpthread interface) and just bring
unneeded dependencies. These should rather be put in Libs.private:
Takashi Iwai [Wed, 4 Oct 2006 15:33:25 +0000 (17:33 +0200)]
Use dmix/dsnoop for maestro3 boards
Use dmix/dsnoop for maestro3 boards. Although maestro3 has multiple
playback capability, it supports only two streams (with the currently
available firmware).
Mike Frysinger [Wed, 4 Oct 2006 15:30:26 +0000 (17:30 +0200)]
allow building out of tree (sort of)
the current configure script assumes that it will be run in the srcdir ... i
often build things out of tree so you can quickly punt all the generated
files:
mkdir build
cd build
../configure
cd ..
rm -r build
clean!
this tweaks the configure script in a few places to use the correct variable
instead of assuming that configure is always in $PWD ...
i say "sort of" in the subject because there is still the issues of the pcm
symbols list being generated in $builddir instead of $srcdir and the alsa
include symlink, but these doesnt really concern me for what i need ;)
Jaroslav Kysela [Wed, 4 Oct 2006 08:39:55 +0000 (10:39 +0200)]
alsa-lib: test dir: make check: static building doesn't work on PIC architectures
Some architectures, such as AMD64, IA64 and Alpha cannot mix PIC and non-PIC
objects when creating a PIC output. Hardened compilers (which uses SSP and
PIE) creates PIC executables, passing -static in CFLAGS for tests in make
check in alsa-lib makes their linking to fail.
If volume or switch write fails, the internal contents for element
is changed, but it is wrong. Reread the whole simple element in this
case to get correct values.
Clemens Ladisch [Wed, 27 Sep 2006 09:11:29 +0000 (11:11 +0200)]
rate plugin: fix boundary calculations
Make sure that the rate plugin does not try to change the slave's
boundary value when setting software parameters; such a change wouldn't
affect the slave pcm.
Furthermore, the stop_threshold conversion code used the wrong boundary
value, and the silence_size conversion code did not take into account
the boundary value at all.
Mike Frysinger [Tue, 26 Sep 2006 13:38:35 +0000 (15:38 +0200)]
remove unneeded headers from alsa-lib/src/alisp/alisp.c
the alisp.c file includes wordexp.h even though it doesnt actually use any
wordexp functions ... causes trouble when target doesnt have wordexp
support :)
add support for hosts that have custom symbol prefixes
From: Mike Frysinger <vapier@gentoo.org>
some architectures, like Blackfin, have a prefix added to all symbols (in our
case it's historical baggage)
while normally packages shouldnt care, when code starts mixing assembler with
C (like symbol versioning), you need to dip down into the inner details.
find attached a patch which queries gcc for the prefix (all gcc toolchains
have a builtin define of __USER_LABEL_PREFIX__) and then automatically has
asm() constructs utilize this
since most targets define __USER_LABEL_PREFIX__ to nothing, hopefully this
shouldnt cause any problems :)
Clemens Ladisch [Mon, 18 Sep 2006 15:57:58 +0000 (17:57 +0200)]
fix parsing of non-decimal integers in configuration files
safe_strtoll() now accepts numbers in any base. It formerly assumed that
its input was a decimal number, which had the consequence that
hexadecimal or octal numbers would be parsed as strings when occurring
outside of parameter lists.
This obsoletes some workarounds in the file permission parsing code that
relied on this bug.
Takashi Iwai [Fri, 25 Aug 2006 09:43:22 +0000 (11:43 +0200)]
Fix bogus value when no user TLV is defined
Check whether non-zero size TLV is really returned by comparing
with the pre-filled pattern. ALSA 1.0.12 driver doesn't notify
the error even if user TLV is empty, so the previous value is
passed bogusly.