Commit graph

40 commits

Author SHA1 Message Date
Takashi Iwai
434f2f021f conf: Add hint descriptions to ctl, hwdep, seq and timer devices
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-04-30 15:02:04 +02:00
David Henningsson
57b5076c30 conf: Add basic infrastructure for 2.1 surround sound
For now, we do 2.1 over 5.1, because that's what ALSA allows per default.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2014-02-18 17:14:04 +01:00
Colin Guthrie
7924500688 conf: Allow for a directory to be given as a config file.
When this is done, *.conf files can be placed in that directory and they
will be processed by as if they were included directly.

A directory (typically /usr/share/alsa/alsa.conf.d/) has been
added into the distribution.

v2: Used existing conf syntax rather than processing via autotools
v3: Split file loading into separate function and made error handling
more consistent.

Signed-off-by: Colin Guthrie <colin@mageia.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-09-20 09:28:46 +02:00
Takashi Iwai
e6f990e5c9 Define "sysdefault" PCM and control
When "default" PCM and control definitions are overwritten by others
like PulseAudio setup, the original system-default defition is lost.
This is a problem when PA is temporarily (or intentionally) disabled
and user wants to use the default dmix.

This patch adds a new standard definition for the system-default,
"sysdefault".  This can be used for fallbacks.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-07-27 15:24:09 +02:00
Jaroslav Kysela
de606e9c25 pcm: introduce defaults.pcm.compat to change the params choose behaviour
Having getenv directly in the function is not a good idea. Allow
configuration of the behaviour change in snd_pcm_param_choose() function
using alsa.conf. Use the environment variable LIBASOUND_COMPAT only
as fallback.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2010-08-11 20:20:40 +02:00
Jaroslav Kysela
09879a4bb5 pcm: add defaults.pcm.minperiodtime parsing
Some broken applications like Audacious don't set any timing parameters.
While the alsa-lib behaviour is to select the smallest period size and
biggest buffer size, the result is the generation of thousands
interrupts per second.

The default value in alsa.conf is 5000usec.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2010-08-11 19:55:15 +02:00
Takashi Iwai
87ae12214b Use defaults.pcm.file_format for the default file format of file plugin
Use "defaults.pcm.file_format" for the default file format of
file plugin.  It's set to "raw" as default for compatibility.
2008-03-17 16:11:57 +01:00
Takashi Iwai
3d0dae9099 Add truncate option to PCM file plugin
Addeed a new option "truncate" to indicate the behavior of creating
the output file.  When it's true (the default), the file is overwritten
and truncated at creation.  When false, the plugin tries to open a
unique file with a number suffix.

The global behavior of "file" and "tee" PCMs is defined via
defaults.pcm.file_truncate option.  You can overwrite it in ~/.asoundrc.
2008-03-12 16:30:26 +01:00
Takashi Iwai
df87a4be3d Add PCM "hdmi"
Added the new PCM "hdmi" for HDA-Intel.
It's still experimental.
2008-03-07 17:15:10 +01:00
Takashi Iwai
35d4f9b8d7 dmix - Enable auto format detection as default
The direct plugins have the automatic format-detection feature but it
wasn't enabled properly in the interface.  Now you can pass the format
"unchanged" to make the plugin detect a proper format.

This will change the default format of some drivers, such as, HD-audio.
2008-01-18 13:42:51 +01:00
Clemens Ladisch
b70bd65415 alsa.conf: cosmetic change
Add a whitespace to make the ctl.hw definition better readable.
2007-11-19 07:55:49 +01:00
Jaroslav Kysela
1300e70573 more name hint interace updates
- add long card name to device description
- create empty PCM plugin to allow right hint description parsing
- reorder devices in alsa.conf
- make namehint more configurable (using default.namehint.showall switch)
- add two levels basic and exteded for hints to default configuration files
- do not show direct device aliases
- removed all known memory leaks
2006-10-12 14:34:23 +02:00
Jaroslav Kysela
13fdc41785 add snd_device_name_hint() function and initial implementation
- add snd_device_name_hint() and snd_device_name_free_hint() functions
- add snd_ctl_iface_conf_name() functions
- do not accept parameters for the plugin definition without @args section
- add defaults.pcm.dmix.card/device and dsnoop.card/device definitions
- add hints for HDA-Intel.conf, pcm/dmix.conf, pcm/dsnoop.conf and alsa.conf
- add test/namehint test utility
- doxygen related cleanups
2006-10-11 13:18:57 +02:00
Takashi Iwai
da17b50892 Add default dmix rate and format definitions in alsa.conf
Added defaults.pcm.dmix_format and dmix_rate definitions to
alsa.conf.  They are referred as the default values of standard
dmix/dsnoop PCM.
2006-06-16 19:27:35 +02:00
Takashi Iwai
1128efc7d4 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.
2006-04-06 18:49:11 +02:00
Takashi Iwai
7e6c920836 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.
2006-03-21 10:27:35 +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
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
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
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
Takashi Iwai
9309430ae8 Make dsnoop card-specific
Make dsnoop card-specific.  Its definition is moved to pcm/dsnoop.conf.
2005-01-27 15:45:05 +00:00
Takashi Iwai
cf865cc990 Make dmix card-specific
The parameters of dmix PCM definition are now card-specific.
As default, period_size = 1024 and periods = 8 are used.
2005-01-13 15:45:42 +00:00
Takashi Iwai
d2a1301073 Make "default" PCM card-specific
"default" PCM can be card-specific.
The definition is moved to pcm/default.conf, and read on-demmand via
aliases.conf.  The card config can override the default config.
2005-01-03 14:42:11 +00:00
Takashi Iwai
f54e32bea8 Added pcm.modem configurations. 2004-07-12 16:57:20 +00:00
Takashi Iwai
b9a25e2ac8 Peter Zubaj <pzad@pobox.sk>:
- Added surround71 and side pcm definitions.
- Added the support of side speakers on Audigy 2 ZS.
2004-06-28 10:40:24 +00:00
Jaroslav Kysela
e09736109e Added surround41 and surround50 definitions 2003-08-12 09:34:38 +00:00
Takashi Iwai
bffffeef45 - missing changes from virt to virtual rawmidi. 2003-08-06 14:46:33 +00:00
Takashi Iwai
184612c30a added the definition of rawmidi.virtual. 2003-07-29 17:16:18 +00:00
Jaroslav Kysela
49ebb948c8 Added dsnoop definition 2003-03-21 12:56:42 +00:00
Jaroslav Kysela
bb15bea655 Added pcm.dmix definition 2003-02-12 19:11:52 +00:00
Jaroslav Kysela
853304bbf4 Corrections by Kevin Conder <kconder@interaccess.com> 2002-03-12 20:14:33 +00:00
Jaroslav Kysela
e4c32ae6d8 Added defaults for center_lfe 2001-10-10 09:56:12 +00:00
Jaroslav Kysela
bf858b7312 Updated timer interface to follow new uniform configuration style. 2001-07-16 11:15:28 +00:00
Abramo Bagnara
5c6eaa0cee Fixed typos 2001-07-13 11:34:15 +00:00
Jaroslav Kysela
d02979784f Recoded hwdep API to follow modern conf style.
Added hwdep configuration to alsa.conf.
Added documentation for hwdep interface.
2001-07-13 10:00:19 +00:00
Jaroslav Kysela
18a02e6f6d Added snd_func_private_string.
Changed snd_config_hook_load_for_all_cards (to load also aliases).
Changed snd_config_search_alias routines (to follow aliases also in the middle of path).
2001-06-26 15:27:40 +00:00
Jaroslav Kysela
25947ba008 Reorganized configuration files (card->type removal). 2001-06-24 23:16:17 +00:00
Takashi Iwai
828562a5ee Added missing iec958.conf.
Added defaults for iec958.
Fixed slave type in IEC1712.conf.
Corrected config file for CMI8738.
2001-06-22 09:01:22 +00:00
Jaroslav Kysela
bc581b87ae Added snd_config_hook_load_for_all_cards.
Added private_data parameter for snd_config_hooks function.
Fixed the return value mess in the config parser routines.
The include file could begin with 'confdir:' which is replaced with /usr/share/alsa.
The snd_config_search_definitions looks for raw name at first (without suggested root).
Added snd_func_private_card_strtype function.
All configuration files moved to the src/conf directory.
Configuration files modified to use load-on-demand feature using hooks.
2001-06-21 13:41:50 +00:00