Commit graph

1884 commits

Author SHA1 Message Date
Takashi Iwai
67868a886f Fix check of nonblock option
Fix the check of nonblock option for all hw layer.
Instead of passing in asound.conf, check the option in snd_pcm_hw_open()
so that the nonblock option is referred in the case of "type hw ..." style
definition, too.
2006-02-17 20:49:21 +00:00
Takashi Iwai
0757f70b1b Fix memory leaks
Fixed small memory leaks in the parser.
2006-02-09 11:37:04 +00:00
Jaroslav Kysela
9e86ea6902 alsa-lib virtual rawmidi device: fixed typo (NONBLOCK mode)
See bug#1821 for details.
2006-02-05 15:36:21 +00:00
Jaroslav Kysela
59b598fac0 Fixed snd_pcm_set_params() error code 2006-02-01 06:34:43 +00:00
Jaroslav Kysela
937f396663 snd_pcm_set_params() - added workaround for vortex driver 2006-01-31 09:16:05 +00:00
Takashi Iwai
eccc92a34d Fix infinite parse of recursive definitions
Fixed the infinite parse (and eventually segfault) of recursive definitions.
Also fixed the parse of a string slave PCM of direct plugins.
2006-01-30 14:41:51 +00:00
Takashi Iwai
b23f367ee3 Remove bad assert
From: Pierre Ossman <drzeus-list@drzeus.cx>

Freeing the global config update structure when it had been created
without any configs present caused an assertion to trigger. Since this
is a valid scenario and the assertion didn't really protect against
anything, it should simply be removed. Attached patch does exactly that.
2006-01-27 11:54:06 +00:00
Nathan Kurz
d9cfe1e9ff pcm_ladspa - setup control outputs all times
It turned out that plugins that had control outputs were not being set
up properly if there was no corresponding "output" section.

Signed-off-by: Nathan Kurz <nate@verse.com>
2006-01-20 08:17:49 +00:00
Clemens Ladisch
9a8a3374a1 LADSPA plugin: fix compilation
Fix a typo in the LADSPA plugin.
2006-01-19 08:23:22 +00:00
Jaroslav Kysela
48d731debf pcm laspa plugin - Added credits to MediaNet AG 2006-01-16 19:01:13 +00:00
Takashi Iwai
7eff603576 Support multi-card/device for direct plugins
- Support multi-card/device for dmix/dsnoop/dshare plugins
  The unique ipc key is calculated based on card/device/sub index

- Clean up and share the code among all d* plugins

- Refer the defaults.pcm.* configuration
  The base ipc_key number, ipc_gid and ipc_perm are referred.
2006-01-16 13:15:32 +00:00
Clemens Ladisch
a0dcf5f8d1 remove duplicate parameter
Remove the duplicate SUBDEV argument definition that got accidentally
added in the last patch.
2006-01-13 15:57:00 +00:00
Takashi Iwai
559deb4d95 Fix configuration for Aureon and Prodigy71 boards
Fixed the default configuration of Aureon and Prodigy71 boards
to use dmix/dsnoop.  Added a new alias for Prodigy71LT.
2006-01-13 13:52:31 +00:00
Takashi Iwai
1a9695af4d Add missing alias entries
Added the missing alias entries.
2006-01-13 11:53:08 +00:00
Takashi Iwai
3d0e3e2517 Add "nonblock" option for hw layer
Added a new "nonblock" option for hw layer.  This controls the non-blocking
"open" mode as default.

This option is set to TRUE as the default configuration.  If the old behavior
is preferred, set "defaults.pcm.nonblock" to 0 in /etc/asound.conf.
2006-01-13 11:52:01 +00:00
Takashi Iwai
0e15e6a97a Fix compile warnings
Fix compile warnings about cast signedness.
2006-01-10 11:03:02 +00:00
Takashi Iwai
6333b48061 Fix S24_BE format conversions
Fix S24_BE format conversions by René Rebe <rene@exactcode.de>.
2006-01-09 14:40:08 +00:00
Jaroslav Kysela
23f7e58fa1 implementation of pcm simple helper function
- snd_pcm_recovery()
- snd_pcm_set_params()
- snd_pcm_get_params()
2006-01-06 19:59:56 +00:00
Jaroslav Kysela
a5bb9c6b53 snd_user_file - keep doxygen happy 2006-01-05 14:37:37 +00:00
Takashi Iwai
5bdd7f6b9b Make dmix/dsnoop as default for ICE1712
Make dmix/dsnoop as default for ICE1712 (bug#1659).
2006-01-04 16:05:36 +00:00
Jaroslav Kysela
b08e01ca9e pcm - fix the buffer allocation for NONINTERLEAVED mmap access
The previous code did not allocated a separate buffer for all channels
when a NONINTERLEAVED access was used. The result was that only one
"shared" buffer was incorrectly allocated.

Also, the code was a bit cleaned (cosmetic change only).
2006-01-02 12:16:59 +00:00
Takashi Iwai
eb7d61d08c Fix meter plugin
Fix the wrong mmap with meter plugin.
2005-12-22 16:24:27 +00:00
Clemens Ladisch
2a438a6eec dmix: fix interleaved check
When checking that samples are properly interleaved, use the actual
sample size instead of always assuming 16 bits.
2005-12-19 07:40:15 +00:00
Clemens Ladisch
45f63a8735 dmix: add S24_3LE support
Add to the dmix plugin support for the S24_3LE sample format which is
used by 24-bit USB devices.

The optimized assembler version uses only 23 bits for sample data so
that the lowest bit can be used for synchronization because there is no
24-bit cmpxchg instruction.
2005-12-19 07:39:03 +00:00
James Courtier-Dutton
46f81f994b snd-ca0106: update mixer controls names from SPDIF to IEC958 2005-12-16 22:04:10 +00:00
Takashi Iwai
76f7af823b Fix compile warnings
Fix trivial compile warnings.
2005-12-16 18:43:49 +00:00
Takashi Iwai
46df7083c9 Make dmix/dsnoop as default PCM for ICE1724
Make dmix/dsnoop as default PCM for ICE1724.
2005-12-14 13:14:45 +00:00
Jaroslav Kysela
aa21cf4d7c ladspa plugin - SIGSEGV fix when label is not specified 2005-12-13 14:25:13 +00:00
Jaroslav Kysela
1f231e2e1a big ALSA LADSPA plugin rewrite for multiple channel LADSPA plugins
This is major rewrite of the LADSPA plugin to satisfy requirements for
the LADSPA plugins with multiple audio inputs and / or outputs.
2005-12-13 14:08:58 +00:00
James Courtier-Dutton
01892b78fa snd-ca0106 Fixed SPDIF output.
Example failure error message before fix:

speaker-test 0.0.8

Playback device is spdif
Stream parameters are 48000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
ALSA lib setup.c:549:(add_elem) Cannot obtain info for CTL elem (MIXER,'SPDIF Front',0,0,0): No such file or directory
Playback open error: -2,No such file or directory
2005-12-13 10:42:32 +00:00
Jaroslav Kysela
bdfbbed5ca pcm dump() routines update: use spaces to indent texts 2005-12-11 08:24:13 +00:00
Jaroslav Kysela
1439c2be86 pcm_ladspa plugin - more verbose output
Added more verbose output for dump() callback inspired with bug#1554 .
2005-12-05 15:20:28 +00:00
Jaroslav Kysela
853989cf09 Fixed compilation when HAVE_WORDEXP_H is not defined 2005-12-05 14:27:28 +00:00
Jaroslav Kysela
8b908f233d direct plugins - fixed ipc_gid initialization when gid specified as number 2005-12-04 09:19:11 +00:00
Takashi Iwai
74fcf774da Fix a missing line in PMacToonie.conf
Add a missing line "playback.pcm {" in PMacToonie.conf (bug#1594).
2005-12-02 13:44:13 +00:00
Takashi Iwai
33a40df1af Fix the handling of stereo capture source
Patch from bug#1610

The simple mixer doesn't handle the stereo "Capture Source" properly,
wrongly set cswitch-joined.
2005-12-02 13:39:24 +00:00
Takashi Iwai
3ffeaf4cb1 Minor optimization on mmap
Minor optimization on mmap.
2005-11-30 11:39:21 +00:00
Takashi Iwai
db1e39a4e8 Allow partial build with selected components
Add --enable-* and --with-pcm-plugins configure options for partial builds.

User can choose the core components (pcm, mixer, rawmidi, hwdep, seq, instr)
via --enable-xxx or --disable-xxx option.  As default, all components are
enabled.

The PCM plugins to build can be selected via --with-pcm-plugins option.
For example, to build only rate and linear plugin, pass
  --with-pcm-plugins=rate,linear
Passing "all" will select all plugins (it's the default value).

The plug plugin will select linear and copy plugins automatically.
The other auto conversions of plug plugin are enabled only when the
corresponding plugin is selected.
2005-11-30 11:38:24 +00:00
Takashi Iwai
79c3d0a1ef Move snd_is_local() to socket.c
Move snd_is_local() to socket.c since it's used in control_shm, too.
2005-11-30 11:31:18 +00:00
Takashi Iwai
d4dd7650f9 Add a workaround for systems without wordexp
Add a workaround for systems without wordexp (e.g. ulibc).
2005-11-29 15:25:56 +00:00
Takashi Iwai
d9680921a9 Use snd_user_file() in pcm_ladpsa.c
Use snd_user_file() in pcm_ladpsa.c to get rid of wordexp.
2005-11-29 15:20:07 +00:00
Jaroslav Kysela
3f5756ca72 Remove superfluous wordexp.h inclusion 2005-11-28 12:02:55 +00:00
Takashi Iwai
52372e0187 Fix segfault of iec958 plugin with preamble
Fix segfault of iec958 plugin with preamble (bug#1571).
2005-11-23 16:46:39 +00:00
Takashi Iwai
d4bbf241ba Abort from snd_pcm_dshare_drain in XRUN state
Fixed the hang-up in snd_pcm_dshare_drain() when the state is XRUN.
2005-11-21 10:51:43 +00:00
Takashi Iwai
8495f42feb abort snd_pcm_dmix_drain when state is SND_PCM_STATE_XRU
From: Sascha Sommer <saschasommer@freenet.de>

this is a fix for bug 0001559.
Unlike my first guesses the real problem is not in the kernel driver but in
alsa-lib. Whenever the current dmix status is xrun and snd_pcm_dmix_drain
gets called the process will hang forever in the poll function. The reason is
that poll gets called even though the timer already stopped.
As described in the bugtracking system this bug was not noticable with alsa
versions that used the old IOCTLS because the SNDRV_TIMER_IOCTL_STOP ioctl
never reached the timer kernel module.

Attached patch fixes this problem for alsa-lib 1.0.10 by simply calling
snd_pcm_dmix_drop when snd_pcm_dmix_drain gets called in the state
SND_PCM_STATE_XRUN.
2005-11-21 10:47:42 +00:00
Clemens Ladisch
5057f8bbea fix compilation with gcc 2
Fix compilation with gcc 2.* by removing a superfluous variable definition.
2005-11-20 14:11:09 +00:00
Takashi Iwai
2bcaa1f133 Fix free of uninitialized pointer
Fix free of uninitialized pointer (bug#1576).
2005-11-18 16:01:39 +00:00
Takashi Iwai
6b85e23fa3 Fix generation of IEC958 subframes
From: Nicolas Boullis <nboullis@debian.org>

While working on an ALSA driver for the audio part of em8300-based MPEG
decoder boards (Sigma Designs' Hollywood+ boards and Creative Labs' DXR3
boards), I think I discovered a bug in the code that generates IEC958
subframes from linear samples (iec958 plugin): M and W preambles are
swapped, and B preambles should only be used on even subframes. The
attached patch fixes this issue.
2005-11-17 12:08:32 +00:00
Jaroslav Kysela
5d3fa7b8a1 control - fixed crash when dynamic library is not present
See bug#1544.
2005-11-14 10:18:22 +00:00
Jaroslav Kysela
64e9372874 pcm_ladspa - fix locale issues
See bug#1553 for more details.
2005-11-14 09:50:29 +00:00