Commit graph

2017 commits

Author SHA1 Message Date
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
Clemens Ladisch
19be1429d1 remove SND_SEQ_CLIENT_{DUMMY,OSS} symbols
The SND_SEQ_CLIENT_{DUMMY,OSS} are private to the kernel and should
never have been put into the public API header.
2005-11-20 14:09:45 +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
367c3fc6ce release 1.0.10
Patch-level: Merged
2005-11-15 13:44:27 +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
Jaroslav Kysela
004a5ecd33 release 1.0.10rc3
Patch-level: Merged
2005-11-04 10:19:03 +00:00
Jaroslav Kysela
ba21d25808 direct pcm plugins - fixed dump output name for dshare and dsnoop 2005-11-01 13:35:52 +00:00
Takashi Iwai
69194a1f99 Fix channel_info callback of plugins
Fixed channel_info callback of plugins with different src/dest sizes.
2005-10-27 16:58:40 +00:00
Clemens Ladisch
37dee92d73 file plugin: fix various bugs
Initialize wbuf_used_bytes, adjust appl_ptr in the rewind and forward
callbacks, and adjust the offset when a data block straddles the
boundary of the wbuf buffer.
2005-10-17 16:10:16 +00:00
Clemens Ladisch
b5f50b06d2 fix doxygen warnings
Fix some wrong parameter names, hide some undocumented functions, and
correctly escape <> characters.
2005-10-12 16:08:53 +00:00
Takashi Iwai
31e0ea4eed Fix mmap and channel_info of hook plugin
Fix mmap and channel_info of hook plugin.
mmap_shadow must be set for this plugin to work.
2005-10-10 15:17:58 +00:00
Jaroslav Kysela
4a3e65ff56 release 1.0.10rc2
Patch-level: Merged
2005-10-10 12:49:51 +00:00
Takashi Iwai
2f71b8753b Fix type-punning
Fixed compile warnings on the latest gcc about type-punning.
Removed unnecessary casts.
2005-09-29 19:11:50 +00:00
Lee Revell
477325ddfb use dmix/dsnoop for default PCM on ca0106
This chipset lacks hardware mixing so needs to use dmix/dsnoop by
default.

Signed-off-by: Lee Revell <rlrevell@joe-job.com>
2005-09-29 12:32:41 +00:00
Sasha Khapyorsky
74b5c3139b New @func - pcm_args_by_class
New 'pcm_args_by_class' @func available for using in configuration files.
Returns card, device args list formatted as "CARD=N,DEV=M" by specified
pcm class and index.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
2005-09-29 11:46:59 +00:00
Jaroslav Kysela
31595805b2 fixed typo in comment 2005-09-21 08:24:31 +00:00
Jaroslav Kysela
4284d79212 PCM add missing pcm types - DSNOOP, IEC958, IOPLUG, EXTPLUG 2005-09-21 08:23:28 +00:00
Jaroslav Kysela
e38cf30629 pcm - Add SOFTVOL pcm type 2005-09-21 08:20:18 +00:00
Takashi Iwai
841ca34917 Fix endianess of PMac driver
Fix endianess of PMac driver for the latest change of dmix.
Now need to specify the (big-endian) format explicitly.
2005-09-19 12:40:02 +00:00
Takashi Iwai
dee6f010b7 Use S16_LE as default for dmix
Use S16_LE as default format for dmix, instead of S16.
2005-09-19 12:38:14 +00:00
Takashi Iwai
5bf3b31cf1 Fix endianess with dmix plugin
Allow different endianess with the generic dmix code, mainly for
big-endian architectures.
2005-09-19 12:37:08 +00:00
Mikael Magnusson
148c2b8e7c emu10k1: Front channels via fxbus 8 and 9
Routes front channels via fxbus 8 and 9 instead of fxbus 0 and 1. This
makes the front and default devices independent of each other, and
"Wave Surround", "Wave Center" and "Wave LFE" don't have to be muted
during 5.1 playback.

Signed-off-by: Mikael Magnusson <mikma@users.sourceforge.net>
2005-09-13 10:36:16 +00:00
Takashi Iwai
5240107559 Removed unused function
Clean up: Removed unused function.
2005-09-12 17:50:57 +00:00
Takashi Iwai
d45d5a1470 Don't return error if chown() fails
Don't take serious even if chown() fails in the creation of direct server.
It happens if a user doesn't belong to the group specified in the config.
2005-09-12 17:50:16 +00:00
Takashi Iwai
7ba8d5c307 Add modem pcm definition for hda-intel driver
Add modem pcm definition for hda-intel driver.
2005-09-12 10:44:53 +00:00
Sasha Khapyorsky
dba82373c6 modem's pcm "two device" config
This defines two modem related pcm devices: "phoneline" is driver's pcm
reference, with "modem" the line will be "Hook-Off"ed automatically.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
2005-09-12 10:37:22 +00:00
Sasha Khapyorsky
474eb76b71 fix segfault then hooks list is empty
This fix prevents segfaulting then hooks list is empty.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
2005-09-12 10:35:07 +00:00
Jaroslav Kysela
19284bd325 direct plugins - change group according ipc_gid for the socket file
This patch fixes problem when ipc_perm are 0660 and you want to share dmix
with more users in the specified group.
2005-09-08 06:48:30 +00:00
Jaroslav Kysela
af6544a274 dmix and dsnoop configuration - added ipc_perm 0660 (to handle all users with audio group) 2005-09-08 06:36:00 +00:00
Takashi Iwai
4272742a2b Fix compile warnings
Fix compile warnings regarding uninitialized variable.
2005-09-05 15:57:31 +00:00
Takashi Iwai
0eac0a983a Fix configuration for ICE1724
- Fix surround40 channel numbers
- Fix rear/center_lfe channel assignment

This configuration is based on the channel order on Revo 7.1,
Front/CLFE/Surr/Side

If the other ice1724-based boards have a different order, we need
to rename the driver's id to distinguish the difference.
2005-09-02 16:40:40 +00:00
Takashi Iwai
ffdb04c3ea Fix buffer allocation and mmap with plugins
Fixed the bug producing silent tones with some combinations of plugins.
The internal buffer handling is now better (cleaner) integrated with
snd_pcm_generic_*().
2005-09-02 16:36:40 +00:00
Takashi Iwai
e62ecc876a Workaround for crash with knotify
Workaround for crash with knotify and KDEMM.
2005-09-01 17:31:52 +00:00
Takashi Iwai
6f938b1cc3 Fix call of semctl IPC_RMID
semctl IPC_RMID removes all semaphore set, so we need to call this only once.
2005-08-29 17:07:41 +00:00
Jaroslav Kysela
745062ee01 PCM API - handle EINTR from poll() in snd_pcm_wait() function 2005-08-24 14:13:47 +00:00
Jaroslav Kysela
62b9d00ad6 test/pcm.c - remove -EINTR handling (a job for alsa-lib) 2005-08-24 14:06:11 +00:00
Jaroslav Kysela
5af75610f2 mixer API - extend simple enumerated controls for direction tests
Added snd_mixer_selem_is_enum_playback() and
snd_mixer_selem_is_enum_capture() functions.
2005-08-24 10:41:16 +00:00
Jaroslav Kysela
d9be3e3556 pcm.c test / example - Added EINTR handling 2005-08-23 12:57:48 +00:00
Takashi Iwai
787b0469e9 Allow separate build and source trees
From: Bernard Leak <bernard@brenda-arkle.demon.co.uk>

Allow separate build and source trees.

Modified for the latest CVS tree by tiwai.
2005-08-23 12:09:07 +00:00
Jaroslav Kysela
a33c78ddd8 moved simple mixer abstraction modules to modules/mixer/simple directory
Compile dynamic modules outside the alsa-lib tree to allow linking them
against libasound.so - proper versions of dynamic symbols.
2005-08-22 12:07:55 +00:00
Takashi Iwai
19ac270f1e Add missing header files
Added missing header files to Makefile.am.
2005-08-19 17:23:05 +00:00
Jaroslav Kysela
1ffda4d664 release 1.0.10rc1
Patch-level: Merged
2005-08-19 11:44:33 +00:00
Takashi Iwai
1fdd1a6c19 Fix invalid read in setlocale()
Fix suspicious warnings "Invalid read" of setlocale() detected by valgrind2.
2005-08-18 14:58:31 +00:00
Takashi Iwai
e120114bde Clean up string parser
Clean up string parser routines.
2005-08-18 14:53:39 +00:00
Jaroslav Kysela
f1acd7726c PCM direct plugins - handle EINTR in the resource server
The poll() call in the resource server for PCM direct plugins might be
interrupted with an signal. Handle the case gracefuly and don't exit
the server (which brings another problems - cannot connect to socket -
later).
2005-08-18 10:42:22 +00:00
Takashi Iwai
ea77e08cc6 Misc fixes
Fixes of spots found via valgrind

- non-freed chunks after snd_config_get_ascii()
- zero-fill records (to make valgrind happy)
- compile warning fixes
2005-08-17 17:27:16 +00:00
Jaroslav Kysela
4bb0721a83 direct plugins - added graceful shutdown for the resource server
- direct plugins
  - added graceful shutdown for the resource server
  - fixed error paths (unclosed socket) in the make_local_socket() function
2005-08-17 14:00:32 +00:00