From 87ae12214b5062ba2b05055b9a10e32a09c36fee Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Mon, 17 Mar 2008 16:11:57 +0100 Subject: [PATCH] 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. --- src/conf/alsa.conf | 11 +++++++++-- src/pcm/pcm_file.c | 11 +++++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/conf/alsa.conf b/src/conf/alsa.conf index 53baedf1..db642597 100644 --- a/src/conf/alsa.conf +++ b/src/conf/alsa.conf @@ -96,6 +96,7 @@ defaults.pcm.iec958.device defaults.pcm.device defaults.pcm.modem.card defaults.pcm.card defaults.pcm.modem.device defaults.pcm.device # truncate files via file or tee PCM +defaults.pcm.file_format "raw" defaults.pcm.file_truncate true defaults.rawmidi.card 0 defaults.rawmidi.device 0 @@ -266,7 +267,10 @@ pcm.tee { } @args.FORMAT { type string - default raw + default { + @func refer + name defaults.pcm.file_format + } } type file slave.pcm $SLAVE @@ -285,7 +289,10 @@ pcm.file { } @args.FORMAT { type string - default raw + default { + @func refer + name defaults.pcm.file_format + } } type file slave.pcm null diff --git a/src/pcm/pcm_file.c b/src/pcm/pcm_file.c index 74bcbf52..289a434c 100644 --- a/src/pcm/pcm_file.c +++ b/src/pcm/pcm_file.c @@ -733,6 +733,17 @@ int _snd_pcm_file_open(snd_pcm_t **pcmp, const char *name, SNDERR("Unknown field %s", id); return -EINVAL; } + if (!format) { + snd_config_t *n; + /* read defaults */ + if (snd_config_search(root, "defaults.pcm.file_format", &n) >= 0) { + err = snd_config_get_string(n, &format); + if (err < 0) { + SNDERR("Invalid file format"); + return -EINVAL; + } + } + } if (!slave) { SNDERR("slave is not defined"); return -EINVAL; -- 2.47.1