Commit graph

1016 commits

Author SHA1 Message Date
Takashi Iwai
71ee169307 Fix compile warning
Fixed compile warning with printf() and timeval sizes.
2005-01-19 13:43:25 +00:00
Takashi Iwai
0994cf7aae Fixed compile warning
Fixed compile warning.  The strlen() returns size_t, not integer.
2005-01-19 13:37:14 +00:00
Takashi Iwai
340018db8a Fix a typo
Fixed a typo in comment by Kirill Smelkov <kirr@mns.spb.ru>
2005-01-13 17:28:11 +00:00
Takashi Iwai
ff9c030e65 Use snd_config_get_bool()
Clean up the code, using snd_config_get_bool().
2005-01-13 15:46:34 +00:00
Takashi Iwai
5211c26927 Fix compile warning
Fixed compile warning due to signed/unsigned comparison.
2005-01-12 11:19:47 +00:00
Takashi Iwai
c83e9d7451 Fix handling of DISCONNECT state
Fixed the handling of DISCONNECT state in dmix (not to set bogus error
values to state).
2005-01-11 17:42:49 +00:00
Takashi Iwai
c67584ec65 Clear sw_params struct at initialization
Do zero-clear the sw_params struct in hw_params, just to be sure.
This makes valgrind happy.
2005-01-11 15:11:09 +00:00
Takashi Iwai
a920ca39db Performance optimization
The performance of rate conversion is optimized.
- with S16 format, no format conversion is done
- linear polation of expansion uses 16bit resolution
2005-01-04 13:57:51 +00:00
Takashi Iwai
c7feb066b1 Support stereo volume control
softvol supports stereo volume controls.
Fixed the dB calculation, too.
2005-01-04 11:37:29 +00:00
Takashi Iwai
7e92411760 Fix missing declaration
Fixed the missing declration of softvol plugin.
2005-01-03 18:19:23 +00:00
Takashi Iwai
82e408d08b Set max volume as default for softvol
Set max volume as default for softvol.
2005-01-03 17:12:51 +00:00
Takashi Iwai
199d207423 Change the behavior with hardware volume controls
When a hardware volume control is given, softvol plugin simply
passes the slave PCM without any additional changes.
2005-01-03 14:37:39 +00:00
Takashi Iwai
0732cce6f0 Add accessor to user control elements
Added accessor functions to user control elements, snd_ctl_elem_add_*(),
and_ctl_elem_remove() and snd_ctl_elem_info_is_user().
2005-01-03 11:52:39 +00:00
Takashi Iwai
30f35c1f7a Add softvol PCM plugin
The softvol PCM plugin is added.  It applies the software volume attenuation,
which may be useful for codecs without volume controls.

Currently, the control is only mono.  The attenuation is applied to all
channels equally.  The control is probed and automatically created
when not exists yet.
2004-12-27 14:40:19 +00:00
Clemens Ladisch
5c9ee5ef03 fix changed error message handling
In the last error message handling change, some error conditions
didn't get properly inverted.
2004-12-23 08:15:46 +00:00
Takashi Iwai
2b54677fdb Change error message handling
Change the handling of non-fatal errors.  Now the non-fatal error
messages are not shown in stderr and no assert() as default.  The
behavior can be changed with LIBASOUND_DEBUG environment variable.
2004-12-21 14:11:00 +00:00
Takashi Iwai
73aa2549d9 Add preamble value configuration for iec958 plugin
The preamble values can be defined in iec958 plugin configuration.
As default, Z/Y/X=8/4/2 is used.  CMI8338 has different values,
so override in its configuration.
2004-12-15 15:17:36 +00:00
Kirill Smelkov
0256e1e8c9 Fixed few typos in documentation.
Signed-off-by: Kirill Smelkov <kirr@mns.spb.ru>
2004-12-08 19:22:42 +00:00
Andreas Fenkart
0ed778404d Fixes variable shadow problem in capture direction
My gnomemeeting hung when accessing the microphone.
The problem was that the rate variable was not initialized when jumping to
the __partial label.
Signed-off-by: Andreas Fenkart <afenkart@gmx.ch>
2004-11-22 06:40:10 +00:00
Jaroslav Kysela
457b8777ab fix for capture for case when status/control structures are not mmaped 2004-11-16 16:03:01 +00:00
Jaroslav Kysela
6987a8555c appl_ptr sync fix when status/control structures are not mmaped
The prepare and reset ioctls can modify appl_ptr, thus the user space
must take modified appl_ptr from driver.
2004-11-16 15:05:49 +00:00
Jaroslav Kysela
2d7ca56e2a Return correct error in snd_pcm_wait() after snd_pcm_poll_descriptors() call 2004-11-12 20:27:31 +00:00
Clemens Ladisch
e156d54c84 remove duplicate snd_pcm_null_fwd() function 2004-11-08 08:49:19 +00:00
Jaroslav Kysela
b7e8f57314 Try to fix period_time/period_size problems for direct plugin slaves 2004-10-29 10:56:13 +00:00
Jaroslav Kysela
090fa69b51 Added check_std_error to avoid extra verbosity 2004-09-28 10:54:05 +00:00
Takashi Iwai
83a533d1a7 [alsa-lib] Avoid zero division
Check the invalid parameters in snd_pcm_sw_params() beforehand to avoid
zero division.
2004-09-17 17:36:18 +00:00
Markus Grabner
3a8bfd43d7 Fix the downsampling noise problem
Description: The patch replaces the nearest neighbor downsampling method
in the sample rate conversion plugin by linear interpolation of the closest
two samples, thus significantly reducing the resampling noise.

Signed-off-by: Markus Grabner <grabner@icg.tu-graz.ac.at>
2004-09-16 10:02:12 +00:00
Takashi Iwai
8ac16f151c [ALSA-LIB] suppress PAUSE and RESUME for direct plugins
Direct plugins don't work well with PAUSE and RESUME.  The info
bits are cleared for these plugins to suppress these features.
2004-09-15 18:45:51 +00:00
Stas Sergeev
6f515096d9 [ALSA-LIB] dmix: dont forget to return -EINVAL on errors
snd_pcm_dmix_open() returns success if the open fails attempting
to open not the HW plugin (dmix seems to be limited to use only
the HW plugin right now). This leads to memory corruptions and
eventually a SIGSEGV. The attached patch fixes the omission.

Signed-off-by: Stas Sergeev <stsp@aknet.ru>
2004-09-15 18:44:24 +00:00
Jaroslav Kysela
e35885fa65 Small optimization 2004-08-27 11:14:21 +00:00
Jaroslav Kysela
06976cbcce Fixed problem with the route plugin and ttable (an extra route plugin was
inserted accidently).
2004-08-11 15:09:05 +00:00
James Courtier-Dutton
6170a88309 Signed-off-by: James Courtier-Dutton <James@superbug.demon.co.uk>
This patch fixes a number of different bugs in pcm_rate.c.
1) Resampling now works for rate 192000 -> 8000.
2) zero samples are not accidentally inserted into the stream any more.
3) Corrects period size calculations.
4) Prevents avail_min and xfer_align being less than 1.
2004-08-09 06:31:41 +00:00
Jaroslav Kysela
509e30494f compilation fix 2004-05-24 18:44:04 +00:00
Jaroslav Kysela
0c468bf109 Fixed wrong jump for 32-bit mixing 2004-05-24 18:40:11 +00:00
Takashi Iwai
c11a1fc9be fixed documents to process properly via doxygen. 2004-05-24 14:57:47 +00:00
Jaroslav Kysela
eafb492512 - added SYNC_PTR ioctl support for pcm_hw plugin 2004-05-22 10:14:32 +00:00
Takashi Iwai
5a2c2e0295 fixed unneeded cast. 2004-05-21 15:10:58 +00:00
Takashi Iwai
01f217d581 fixed debug messages by Erik Inge Bolso. 2004-05-04 15:54:01 +00:00
Takashi Iwai
5586e5cbb1 added a new plugin "iec958" to convert IEC958 subframes. 2004-05-04 15:13:23 +00:00
Takashi Iwai
4032563aad fixed the bit width of IEC958_SUBFRAME_* formats from 24 to 32. 2004-05-04 15:10:38 +00:00
Clemens Ladisch
fe1618627f initialize hw_params->info 2004-05-03 14:38:46 +00:00
Clemens Ladisch
4861d237e6 define SND_PCM_INFO_RESUME 2004-05-03 14:37:53 +00:00
Clemens Ladisch
ef11ba77ed document all PCM plugin parameters 2004-04-26 07:40:12 +00:00
Jaroslav Kysela
2cb16f857d Prefer SND_ macros over SNDRV_ ones 2004-04-20 13:52:32 +00:00
Jaroslav Kysela
2bad31bbf4 Fixed bugs detected by Intel compiler 2004-04-20 13:42:48 +00:00
Jaroslav Kysela
ba4ddd169f assert -> return error code in hw_params 2004-04-19 13:24:19 +00:00
Takashi Iwai
965222c3d9 fixed compile warnings. 2004-04-15 12:52:49 +00:00
Takashi Iwai
494f3e66e4 fixed the handling of EINTR in read/write.
EINTR can be returned during ACPI suspend/resume.
2004-04-15 12:22:26 +00:00
Jaroslav Kysela
64a39728a2 Added early event extension to the timer API - and a fix for the direct plugins 2004-04-06 17:29:25 +00:00
Jaroslav Kysela
b0ad5bf718 Next documentation update for file descriptor routines 2004-04-05 17:59:34 +00:00