Commit graph

1590 commits

Author SHA1 Message Date
Clemens Ladisch
45850439b3 Do not abort in snd_xxx_close() functions
Remove several memory leaks by not aborting prematurely from a
snd_xxx_close() function when some operation fails.
This can happen when a USB device was unplugged.
2006-02-27 09:54:57 +00:00
Takashi Iwai
f9c7321670 Fix infinite loop in snd_pcm_wait()
Fix possible infinite loop in snd_pcm_wait() with direct plugins
when XRUN occurs during poll.
2006-02-20 19:34:45 +00:00
Takashi Iwai
43a04650f1 Remove bogus ATTRIBUTE_UNUSED
Removed bogus ATTRIBUTE_UNUSED.
2006-02-20 19:33:53 +00:00
Takashi Iwai
2e0c2b0ac1 Fix compile warnings
Fix compile warnings on 64bit architectures.
2006-02-20 19:33:25 +00:00
Takashi Iwai
b4f9e5f8e7 Fix plug conversion of non-linear formats
Fix plug conversion of non-linear formats with channel or rate conversion.
2006-02-17 20:50:45 +00:00
Takashi Iwai
c002c69d52 Fix fullduplex with dmix/dsnoop
Fixed the fullduplex of dmix and dsnoop plugins due to confliction of
ipc keys.
2006-02-17 20:50:00 +00:00
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