OSDN Git Service
Takashi Iwai [Fri, 12 May 2006 12:43:26 +0000 (14:43 +0200)]
Correction for fixing alsa-lib static build
Added the missing _snd_module_pcm_* definitions for static alsa-lib.
From: Hans-Christian Egtvedt <hcegtvedt@atmel.com>
Takashi Iwai [Fri, 12 May 2006 10:09:33 +0000 (12:09 +0200)]
Fix a typo in pcm_file.c
Fix a typo in snd_pcm_file_readn().
Takashi Iwai [Wed, 10 May 2006 14:27:14 +0000 (16:27 +0200)]
Remove enum from kernel API
Remove enum in structs from kernel API headers.
The enum is not always equivalent with int on some architectures.
From: Hans-Christian Egtvedt <hcegtvedt@atmel.com>
Takashi Iwai [Wed, 3 May 2006 17:18:28 +0000 (19:18 +0200)]
Fix hwptr update in rate plugin
Fixed the update of hwptr in rate plugin.
This caused bad sounds on rate expansion and invalid memory access.
Takashi Iwai [Tue, 2 May 2006 15:48:47 +0000 (17:48 +0200)]
Fix the description of return value of snd_config_search_definition()
Fixed the description of the return value of snd_config_search_definition().
Clemens Ladisch [Tue, 2 May 2006 14:28:22 +0000 (16:28 +0200)]
clarify SND_SEQ_PORT_TYPE_xxx documentation
Clarify the documentation for the SND_SEQ_PORT_TYPE_xxx flags, especially
for _SYNTH and *_SAMPLE where it was rather misleading.
Clemens Ladisch [Tue, 2 May 2006 14:08:36 +0000 (16:08 +0200)]
add more sequencer port type information bits
Add four new information flags SNDRV_SEQ_PORT_TYPE_HARDWARE, _SOFTWARE,
_SYNTHESIZER, _PORT for sequencer ports. This makes it easier for apps
like Rosegarden to make policy decisions based on the port type.
Takashi Iwai [Tue, 2 May 2006 12:30:33 +0000 (14:30 +0200)]
Fix device number of ICH4 iec958 controls
Fix device number of control emenets in ICH4 iec958 PCM hooks.
Takashi Iwai [Fri, 28 Apr 2006 13:55:32 +0000 (15:55 +0200)]
Use O_APPEND mode with dmix & co plugins
Use O_APPEND mode (only if available) with dmix, dsnoop and dshare
plugins. Using this mode, the plugin requires no resource server
any more.
Takashi Iwai [Thu, 27 Apr 2006 13:46:30 +0000 (15:46 +0200)]
Fix delayed start with rate plugin
Add the internal start_pending state in the rate plugin for supporting
delayed start in the case no data is committed to slave PCM.
This fixes the problem of CPU hog with artsd.
Takashi Iwai [Wed, 26 Apr 2006 16:30:44 +0000 (18:30 +0200)]
Add check of binding ranges in direct plugins
Add checks of slave channel numbers in bindings of dmix/dsnoop/dshare
plugins to avoid segfault.
Also, fix a possible memory leaks in the error path.
Takashi Iwai [Tue, 25 Apr 2006 16:53:17 +0000 (18:53 +0200)]
Fix segfault with dshare plugin
Fixed the segfault with dshare plugin at the second open.
Takashi Iwai [Tue, 25 Apr 2006 15:32:48 +0000 (17:32 +0200)]
Add missing snd_dlclose() in pcm_meter.c
Added the missing snd_dlclose() in snd_pcm_meter_close().
Takashi Iwai [Tue, 25 Apr 2006 15:32:23 +0000 (17:32 +0200)]
Fix the error path of snd_pcm_hook_add_conf()
Fixed the segfault in the error path of snd_pcm_hook_add_conf()
(calling invalid install_func pointer).
Also, added the missing snd_dlclose() to release the handle properly.
Takashi Iwai [Tue, 25 Apr 2006 15:27:26 +0000 (17:27 +0200)]
Fix missing snd_dlclose() in sequencer
Call snd_dlclose() with the dlopen handle in snd_seq_close().
Takashi Iwai [Tue, 25 Apr 2006 15:26:16 +0000 (17:26 +0200)]
Fix missing snd_dlclose() in timer handlers
Call snd_dlclose() properly for the dlopened handlers in timer
and timer_query closing functions.
Takashi Iwai [Tue, 25 Apr 2006 15:24:39 +0000 (17:24 +0200)]
Add missing snd_dlclose() in snd_hwdep_close()
Added the missing snd_dlclose() in snd_hwdep_close().
Jaroslav Kysela [Wed, 19 Apr 2006 10:29:47 +0000 (12:29 +0200)]
Jaroslav Kysela [Wed, 19 Apr 2006 10:29:46 +0000 (12:29 +0200)]
release 1.0.11
Patch-level: Merged
Takashi Iwai [Tue, 18 Apr 2006 11:00:57 +0000 (13:00 +0200)]
Fix compile error
Fix the declarations and code.
Takashi Iwai [Wed, 12 Apr 2006 10:40:06 +0000 (12:40 +0200)]
Don't install alsalisp
alsalisp binary isn't actually used by any programs or alsa-lib itself.
Takashi Iwai [Wed, 12 Apr 2006 10:31:39 +0000 (12:31 +0200)]
Revert the last fix: finer sync of dmix in delay callback
The fix to enable finer sync of dmix in delay callback seems
rather harmful for some apps like xmms on SMP.
The problem of aoss was solved by max_periods=0, so better to
revert this change.
Takashi Iwai [Wed, 12 Apr 2006 10:29:35 +0000 (12:29 +0200)]
Fix .hgignore
Takashi Iwai [Wed, 12 Apr 2006 10:18:38 +0000 (12:18 +0200)]
Add missing .hgignore
Readded the missing .hgignore file
Jaroslav Kysela [Tue, 11 Apr 2006 13:59:00 +0000 (15:59 +0200)]
Jaroslav Kysela [Tue, 11 Apr 2006 13:58:59 +0000 (15:58 +0200)]
release 1.0.11rc5
Patch-level: Merged
Takashi Iwai [Mon, 10 Apr 2006 16:31:39 +0000 (18:31 +0200)]
Fix compilation with assert()
Fix the position of assert() after the variable declarations.
Jaroslav Kysela [Mon, 10 Apr 2006 12:41:18 +0000 (14:41 +0200)]
Added tags since ALSA version 1.0.3
Jaroslav Kysela [Thu, 6 Apr 2006 17:16:14 +0000 (19:16 +0200)]
Merged
Jaroslav Kysela [Thu, 6 Apr 2006 17:14:01 +0000 (19:14 +0200)]
Changed permissions for scripts and added .hgignore file
Initial version of .hgignore file
Takashi Iwai [Thu, 6 Apr 2006 17:08:27 +0000 (19:08 +0200)]
Add PCM definitions dpl and dpl2
Add PCM definitions "dpl" and "dpl2" in pcm/dpl.conf.
Include the file via
<confdir:pcm/dpl.conf>
for use.
Takashi Iwai [Thu, 6 Apr 2006 17:03:16 +0000 (19:03 +0200)]
Allow negative coefficients in route plugin
Allow negative coefficients in route plugin (when handled as float).
Takashi Iwai [Thu, 6 Apr 2006 17:01:02 +0000 (19:01 +0200)]
Finer sync of dmix in delay callback
Sync pointers in delay callback in dmix. This solves some problems
of aoss with apps that don't check poll_revents.
The rate plugin is fixed to call delay of slave appropriately, too.
Takashi Iwai [Thu, 6 Apr 2006 16:55:59 +0000 (18:55 +0200)]
Fix 32/64bit problem with multi plugin
Fix the problems of multi plugin with 32bit apps on 64bit kernel.
The forward/backward of hw plugin are fixed, too.
Takashi Iwai [Thu, 6 Apr 2006 16:49:11 +0000 (18:49 +0200)]
Fix buffer size handling of direct plugins
Introduce "max_periods" option to specify the max number of periods
per buffer to each plugin.
- When max_periods = -1, the fixed buffer size as the slave size is
used (old behavior).
- When max_periods = 0 (or 1), the number of periods is variable
between 2 and the slave buffer size.
- When max_periods greater than 2 is given, it specifies the max
periods of that pcm explicitly.
When no option is given in the PCM defintion, the value
"defaults.pcm.dmix_max_periods" is referred as default.
The default value is 0, as defined in alsa.conf.
You can override this in ~/.asoundrc or /etc/asound.conf as you like.
Takashi Iwai [Thu, 6 Apr 2006 16:37:55 +0000 (18:37 +0200)]
Create rate converter plugin SDK
Created a new rate converter plugin SDK.
A rate converter can be replaced as an extra plugin now.
The default rate converter is a built-in linear converter.
You can find a sample external converter in alsa-plugins package.
Takashi Iwai [Thu, 6 Apr 2006 16:34:25 +0000 (18:34 +0200)]
Add src/pcm/pcm_symbols_list.c to .hgignore
Takashi Iwai [Thu, 6 Apr 2006 16:32:58 +0000 (18:32 +0200)]
Add .hgignore
Added the missing .hgignore.
Takashi Iwai [Thu, 6 Apr 2006 16:26:34 +0000 (18:26 +0200)]
Fix permission of cvscompile
Added exec permission to cvscompile script.
Takashi Iwai [Wed, 29 Mar 2006 09:35:14 +0000 (09:35 +0000)]
Make plugin functions static
Make plugin functions that are not referred from others static.
Takashi Iwai [Wed, 29 Mar 2006 09:33:46 +0000 (09:33 +0000)]
Fix errors in partial reads/writes with rate plugin
Fix errors in partial reads/writes (e.g. draining) with rate plugin.
Takashi Iwai [Wed, 29 Mar 2006 09:32:18 +0000 (09:32 +0000)]
Fix PCM without control/status mmap
Fix the update of appl_ptr via mmap_commit when control/status structs
are not mmapped (e.g. 32bit compatible mode on 64bit kernel).
Takashi Iwai [Wed, 29 Mar 2006 09:29:44 +0000 (09:29 +0000)]
Fix compile warnings
Fix compile warnings by adding cast.
Takashi Iwai [Fri, 24 Mar 2006 14:53:41 +0000 (14:53 +0000)]
Fix noisy output of dmix with two periods
Fixed the noisy output of dmix with two (or less) periods.
The dmix tends to give noise or XRUN when running with two periods
because of its implementation nature. To avoid this, the start
position is aligned to the period size, so that the updates are synced
with interrupts of slave PCM.
Takashi Iwai [Fri, 24 Mar 2006 14:51:24 +0000 (14:51 +0000)]
Fix PCM auto-start conditions
Fix the PCM auto-start conditions
- The capture stream should be started the PCM anyway before reads
- Fixed the endless poll() when the written size doesn't fit to the
buffer size due to lack of auto-start
Takashi Iwai [Fri, 24 Mar 2006 14:41:40 +0000 (14:41 +0000)]
Fix snd_pcm_write*() return values at start up
If an error occurs at starting the stream, snd_pcm_write*() should return
an error value instead of the size to be written.
Jaroslav Kysela [Wed, 22 Mar 2006 10:47:32 +0000 (10:47 +0000)]
release 1.0.11rc4
Patch-level: Merged
Takashi Iwai [Tue, 21 Mar 2006 16:58:32 +0000 (16:58 +0000)]
Fix the description of snd_mixer_handle_events()
Fixed the description about the return value of snd_mixer_handle_events()
(ALSA bug#1932).
Takashi Iwai [Tue, 21 Mar 2006 16:56:16 +0000 (16:56 +0000)]
Change autoconf requirement to 2.59
Change AC_PREREQ to 2.59.
Juergen Kreileder [Tue, 21 Mar 2006 16:55:25 +0000 (16:55 +0000)]
Add support for S32_3LE and byte-swapped S16/S32 to softvol
Here's a patch which adds support for S24_3LE and byte-swapped S16 and
S32 to softvol. I've tested S24_3LE and byte-swapped S16 on powerpc
with snd-usb-audio. All other cases are untested so far.
(Config at http://blog.blackdown.de/static/alsa/USB-Audio.conf)
Signed-off-by: Juergen Kreileder <jk@blackdown.de>
Takashi Iwai [Tue, 21 Mar 2006 10:39:49 +0000 (10:39 +0000)]
Fix timer read from 32bit user-space on 64bit kernel
snd_timer_tread struct is a bad design for 32/64bit compatibility,
and reading this struct on 32bit program returns zero. This results
in tight poll looping (bug#1938, #1945).
For avoiding this bug, now more bigger buffer is read to cover the
64bit tread struct, too. Also this optimizes the read without
checking -EAGAIN in the case both user-space and kernel have the same
tread size.
Takashi Iwai [Tue, 21 Mar 2006 10:30:44 +0000 (10:30 +0000)]
Fix extplug->channels initialization
Fixed the missing initialization of extplug->channels in hw_params.
Takashi Iwai [Tue, 21 Mar 2006 10:27:35 +0000 (10:27 +0000)]
dmix - Allow more flexible buffer sizes
With the patch, dmix allows apps to use more flexible buffer sizes.
The max buffer size is unlimited, and the minimal buffer size is
(period size * 2). The buffer size is aligned to period size.
The period size is still bound to the period size of slave PCM.
To back to the old behavior (the fixed buffer size), you can set
defaults.pcm.dmix_variable_buffer false
in your configuration.
Juergen Kreileder [Mon, 20 Mar 2006 20:24:13 +0000 (20:24 +0000)]
Fixes S16 byte swapping with generic dmix code
Here's a patch for generic dmix which fixes S16 byte swapping.
Tested on powerpc with snd-usb-audio. (Without the patch I get crackling.)
Signed-off-by: Juergen Kreileder <jk@blackdown.de>
Takashi Iwai [Mon, 20 Mar 2006 11:26:16 +0000 (11:26 +0000)]
Add init callback to extplug
- Fix the hw constraints of extplug
- Add init callback to extplug
Takashi Iwai [Mon, 20 Mar 2006 11:22:23 +0000 (11:22 +0000)]
Fix restoration of PCM open mode
The original PCM open mode was lost by the change of default non-blocking
open. The patch fix the restoration of the original open mode.
Takashi Iwai [Fri, 17 Mar 2006 18:14:23 +0000 (18:14 +0000)]
Add channels parameter to surround40/51 definitions
Add channels parameter to surround40/51 definitions for drivers
using a single device.
Takashi Iwai [Fri, 17 Mar 2006 18:09:07 +0000 (18:09 +0000)]
Add restriction parameters to pcm hw layer
Add restriction parameters to pcm hw layer.
The PCM hw has optional parameters, format, rate and channels, to restrict
the configuration. This is useful for definition of surround slave PCMs,
for example.
Takashi Iwai [Fri, 17 Mar 2006 18:06:23 +0000 (18:06 +0000)]
Fix double free in rate plugin
Fixed double free in rate plugin (bug#1937).
Jaroslav Kysela [Wed, 15 Mar 2006 12:38:37 +0000 (12:38 +0000)]
alsa-lib - added ENOTTY and ENODEV to pcm_errors section
Jaroslav Kysela [Wed, 15 Mar 2006 12:22:29 +0000 (12:22 +0000)]
alsa-lib - added pcm_errors section
Takashi Iwai [Tue, 14 Mar 2006 19:02:23 +0000 (19:02 +0000)]
Suppress warning messages from old timer
Suppress warning messages when the new timer ioctl isn't available
(happening when using dmix in the new alsa-lib with older kernels).
Clemens Ladisch [Mon, 13 Mar 2006 10:41:54 +0000 (10:41 +0000)]
rate plugin: wait for data to be drained
When draining, wait for the slave device to become ready to prevent
committing more data than would have been available in the buffer.
Clemens Ladisch [Mon, 13 Mar 2006 10:40:21 +0000 (10:40 +0000)]
rate plugin: fix fragment size calculation
When calculating the size of the second fragment, do not assume that the
entire size is one period size (which is not true in the draining state)
but use the actual size passed by the caller.
Clemens Ladisch [Mon, 13 Mar 2006 10:38:51 +0000 (10:38 +0000)]
rate plugin: optimize calculation of the continuous buffer part
When calculating the continuous part till the end of the buffer, we can
use the slave_frames value that has already been calculated by
snd_pcm_mmap_begin().
Takashi Iwai [Fri, 3 Mar 2006 17:51:33 +0000 (17:51 +0000)]
Portability fix for alsa-lib on mips
From: Henryk Plötz <henryk@ploetzli.ch>
I recently had problems building alsa-lib 1.0.10 on mips (for my
Netgear WGT634U). Turned out the problem was in include/alsa-symbols.h
were there was __asm__ code that wouldn't work with the mips assembler.
Attached is a patch that makes this work again.
Clemens Ladisch [Fri, 3 Mar 2006 14:08:58 +0000 (14:08 +0000)]
return ENODEV for disconnected devices
Return -ENODEV instead of -ENOTTY for disconnected devices.
Takashi Iwai [Thu, 2 Mar 2006 17:01:58 +0000 (17:01 +0000)]
Fix segfault with PCM rate plugin
Fix segfault with PCM rate plugin (bug#1878)
Clemens Ladisch [Mon, 27 Feb 2006 10:03:19 +0000 (10:03 +0000)]
allow changing of device directory path
Add configuration options to change the default device path from the
default /dev/snd. This is useful for embedded systems that do not want
subdirectories in /dev.
Clemens Ladisch [Mon, 27 Feb 2006 09:59:18 +0000 (09:59 +0000)]
fix a typo
Fix a memory leak in an error path of snd_seq_hw_open().
Clemens Ladisch [Mon, 27 Feb 2006 09:58:32 +0000 (09:58 +0000)]
remove superfluous free() checks
free() correctly handles NULL pointers, so we can omit explicit checks
for that condition.
Clemens Ladisch [Mon, 27 Feb 2006 09:54:57 +0000 (09:54 +0000)]
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.
Takashi Iwai [Mon, 20 Feb 2006 19:34:45 +0000 (19:34 +0000)]
Fix infinite loop in snd_pcm_wait()
Fix possible infinite loop in snd_pcm_wait() with direct plugins
when XRUN occurs during poll.
Takashi Iwai [Mon, 20 Feb 2006 19:33:53 +0000 (19:33 +0000)]
Remove bogus ATTRIBUTE_UNUSED
Removed bogus ATTRIBUTE_UNUSED.
Takashi Iwai [Mon, 20 Feb 2006 19:33:25 +0000 (19:33 +0000)]
Fix compile warnings
Fix compile warnings on 64bit architectures.
Takashi Iwai [Mon, 20 Feb 2006 19:32:53 +0000 (19:32 +0000)]
Avoid unnecesasry call of resmgr
Avoid unnecesasry call of resmgr if the device file really doesn't exist.
Takashi Iwai [Fri, 17 Feb 2006 20:51:12 +0000 (20:51 +0000)]
Add description about non-blocking behavior
Add description about the default non-blocking behavior.
Takashi Iwai [Fri, 17 Feb 2006 20:50:45 +0000 (20:50 +0000)]
Fix plug conversion of non-linear formats
Fix plug conversion of non-linear formats with channel or rate conversion.
Takashi Iwai [Fri, 17 Feb 2006 20:50:00 +0000 (20:50 +0000)]
Fix fullduplex with dmix/dsnoop
Fixed the fullduplex of dmix and dsnoop plugins due to confliction of
ipc keys.
Takashi Iwai [Fri, 17 Feb 2006 20:49:21 +0000 (20:49 +0000)]
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.
Takashi Iwai [Thu, 9 Feb 2006 11:37:04 +0000 (11:37 +0000)]
Fix memory leaks
Fixed small memory leaks in the parser.
Jaroslav Kysela [Sun, 5 Feb 2006 15:36:21 +0000 (15:36 +0000)]
alsa-lib virtual rawmidi device: fixed typo (NONBLOCK mode)
See bug#1821 for details.
Jaroslav Kysela [Wed, 1 Feb 2006 06:34:43 +0000 (06:34 +0000)]
Fixed snd_pcm_set_params() error code
Jaroslav Kysela [Tue, 31 Jan 2006 09:16:05 +0000 (09:16 +0000)]
snd_pcm_set_params() - added workaround for vortex driver
Takashi Iwai [Mon, 30 Jan 2006 14:41:51 +0000 (14:41 +0000)]
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.
Jaroslav Kysela [Fri, 27 Jan 2006 15:22:16 +0000 (15:22 +0000)]
release 1.0.11rc3
Patch-level: Merged
Takashi Iwai [Fri, 27 Jan 2006 11:54:06 +0000 (11:54 +0000)]
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.
Nathan Kurz [Fri, 20 Jan 2006 08:17:49 +0000 (08:17 +0000)]
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>
Clemens Ladisch [Thu, 19 Jan 2006 08:23:22 +0000 (08:23 +0000)]
LADSPA plugin: fix compilation
Fix a typo in the LADSPA plugin.
Jaroslav Kysela [Mon, 16 Jan 2006 19:01:13 +0000 (19:01 +0000)]
pcm laspa plugin - Added credits to MediaNet AG
Takashi Iwai [Mon, 16 Jan 2006 13:15:32 +0000 (13:15 +0000)]
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.
Clemens Ladisch [Fri, 13 Jan 2006 15:57:00 +0000 (15:57 +0000)]
remove duplicate parameter
Remove the duplicate SUBDEV argument definition that got accidentally
added in the last patch.
Takashi Iwai [Fri, 13 Jan 2006 15:09:40 +0000 (15:09 +0000)]
Skip resmgr when EAGAIN or EBUSY
Skip resmgr when EAGAIN or EBUSY.
Takashi Iwai [Fri, 13 Jan 2006 13:52:31 +0000 (13:52 +0000)]
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.
Takashi Iwai [Fri, 13 Jan 2006 11:53:08 +0000 (11:53 +0000)]
Add missing alias entries
Added the missing alias entries.
Takashi Iwai [Fri, 13 Jan 2006 11:52:01 +0000 (11:52 +0000)]
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.
Takashi Iwai [Tue, 10 Jan 2006 11:03:02 +0000 (11:03 +0000)]
Fix compile warnings
Fix compile warnings about cast signedness.
Jaroslav Kysela [Tue, 10 Jan 2006 09:58:15 +0000 (09:58 +0000)]
pcm_min.c example - corrected comment
Takashi Iwai [Mon, 9 Jan 2006 14:40:08 +0000 (14:40 +0000)]
Fix S24_BE format conversions
Fix S24_BE format conversions by René Rebe <rene@exactcode.de>.
Jaroslav Kysela [Fri, 6 Jan 2006 20:10:04 +0000 (20:10 +0000)]
pcm_min - blocking mode is default - remove extra snd_pcm_nonblock() call