Accepting request 20205 from multimedia:libs
Copy from multimedia:libs/alsa based on submit request 20205 from user tiwai OBS-URL: https://build.opensuse.org/request/show/20205 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/alsa?expand=0&rev=78
This commit is contained in:
commit
dcaee65c7a
149
alsa-lib-git-fixes.diff
Normal file
149
alsa-lib-git-fixes.diff
Normal file
@ -0,0 +1,149 @@
|
||||
diff --git a/configure.in b/configure.in
|
||||
index e96058b..3cd6366 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -12,7 +12,7 @@ dnl add API = c+1:0:a+1
|
||||
dnl remove API = c+1:0:0
|
||||
dnl *************************************************
|
||||
AC_CANONICAL_HOST
|
||||
-AM_INIT_AUTOMAKE(alsa-lib, 1.0.21)
|
||||
+AM_INIT_AUTOMAKE(alsa-lib, 1.0.21a)
|
||||
eval LIBTOOL_VERSION_INFO="2:0:0"
|
||||
dnl *************************************************
|
||||
AM_CONDITIONAL(INSTALL_M4, test -n "${ACLOCAL}")
|
||||
diff --git a/src/conf.c b/src/conf.c
|
||||
index 3f0dfe1..570c90f 100644
|
||||
--- a/src/conf.c
|
||||
+++ b/src/conf.c
|
||||
@@ -3477,8 +3477,9 @@ int snd_config_hook_load_for_all_cards(snd_config_t *root, snd_config_t *config,
|
||||
err = snd_determine_driver(card, &fdriver);
|
||||
if (err < 0)
|
||||
return err;
|
||||
- if (snd_config_search(root, fdriver, &n) >= 0 &&
|
||||
- snd_config_get_string(n, &driver) >= 0) {
|
||||
+ if (snd_config_search(root, fdriver, &n) >= 0) {
|
||||
+ if (snd_config_get_string(n, &driver) < 0)
|
||||
+ goto __err;
|
||||
assert(driver);
|
||||
while (1) {
|
||||
char *s = strchr(driver, '.');
|
||||
diff --git a/src/conf/pcm/dmix.conf b/src/conf/pcm/dmix.conf
|
||||
index 4108ddb..e62cb29 100644
|
||||
--- a/src/conf/pcm/dmix.conf
|
||||
+++ b/src/conf/pcm/dmix.conf
|
||||
@@ -63,12 +63,12 @@ pcm.!dmix {
|
||||
name {
|
||||
@func concat
|
||||
strings [
|
||||
- "cards."
|
||||
+ "defaults.dmix."
|
||||
{
|
||||
@func card_driver
|
||||
card $CARD
|
||||
}
|
||||
- ".pcm.dmix.period_size"
|
||||
+ ".period_size"
|
||||
]
|
||||
}
|
||||
default 1024
|
||||
@@ -78,12 +78,12 @@ pcm.!dmix {
|
||||
name {
|
||||
@func concat
|
||||
strings [
|
||||
- "cards."
|
||||
+ "defaults.dmix."
|
||||
{
|
||||
@func card_driver
|
||||
card $CARD
|
||||
}
|
||||
- ".pcm.dmix.period_time"
|
||||
+ ".period_time"
|
||||
]
|
||||
}
|
||||
default -1
|
||||
@@ -93,12 +93,12 @@ pcm.!dmix {
|
||||
name {
|
||||
@func concat
|
||||
strings [
|
||||
- "cards."
|
||||
+ "defaults.dmix."
|
||||
{
|
||||
@func card_driver
|
||||
card $CARD
|
||||
}
|
||||
- ".pcm.dmix.periods"
|
||||
+ ".periods"
|
||||
]
|
||||
}
|
||||
default 16
|
||||
diff --git a/src/mixer/simple_none.c b/src/mixer/simple_none.c
|
||||
index 4802200..9259a08 100644
|
||||
--- a/src/mixer/simple_none.c
|
||||
+++ b/src/mixer/simple_none.c
|
||||
@@ -134,6 +134,7 @@ static int get_compare_weight(const char *name, unsigned int idx)
|
||||
static const char *const names[] = {
|
||||
"Master",
|
||||
"Headphone",
|
||||
+ "Speaker",
|
||||
"Tone",
|
||||
"Bass",
|
||||
"Treble",
|
||||
@@ -158,6 +159,7 @@ static int get_compare_weight(const char *name, unsigned int idx)
|
||||
"I2S",
|
||||
"IEC958",
|
||||
"PC Speaker",
|
||||
+ "Beep",
|
||||
"Aux",
|
||||
"Mono",
|
||||
"Playback",
|
||||
diff --git a/src/pcm/pcm_params.c b/src/pcm/pcm_params.c
|
||||
index 80b3fd2..0e1c3fc 100644
|
||||
--- a/src/pcm/pcm_params.c
|
||||
+++ b/src/pcm/pcm_params.c
|
||||
@@ -1081,6 +1081,7 @@ int snd_pcm_hw_param_never_eq(const snd_pcm_hw_params_t *params,
|
||||
static int snd_pcm_hw_params_choose(snd_pcm_t *pcm, snd_pcm_hw_params_t *params)
|
||||
{
|
||||
int err;
|
||||
+ const char *compat = getenv("LIBASOUND_COMPAT");
|
||||
#ifdef CHOOSE_DEBUG
|
||||
snd_output_t *log;
|
||||
snd_output_stdio_attach(&log, stderr, 0);
|
||||
@@ -1103,15 +1104,29 @@ static int snd_pcm_hw_params_choose(snd_pcm_t *pcm, snd_pcm_hw_params_t *params)
|
||||
err = snd_pcm_hw_param_set_first(pcm, params, SND_PCM_HW_PARAM_RATE, NULL, 0);
|
||||
if (err < 0)
|
||||
return err;
|
||||
- err = snd_pcm_hw_param_set_first(pcm, params, SND_PCM_HW_PARAM_PERIOD_TIME, NULL, 0);
|
||||
- if (err < 0)
|
||||
- return err;
|
||||
- err = snd_pcm_hw_param_set_first(pcm, params, SND_PCM_HW_PARAM_PERIOD_SIZE, NULL, 0);
|
||||
- if (err < 0)
|
||||
- return err;
|
||||
- err = snd_pcm_hw_param_set_last(pcm, params, SND_PCM_HW_PARAM_BUFFER_SIZE, NULL, 0);
|
||||
- if (err < 0)
|
||||
- return err;
|
||||
+ if (compat && *compat) {
|
||||
+ /* old mode */
|
||||
+ err = snd_pcm_hw_param_set_first(pcm, params, SND_PCM_HW_PARAM_PERIOD_TIME, NULL, 0);
|
||||
+ if (err < 0)
|
||||
+ return err;
|
||||
+ err = snd_pcm_hw_param_set_first(pcm, params, SND_PCM_HW_PARAM_PERIOD_SIZE, NULL, 0);
|
||||
+ if (err < 0)
|
||||
+ return err;
|
||||
+ err = snd_pcm_hw_param_set_last(pcm, params, SND_PCM_HW_PARAM_BUFFER_SIZE, NULL, 0);
|
||||
+ if (err < 0)
|
||||
+ return err;
|
||||
+ } else {
|
||||
+ /* determine buffer size first */
|
||||
+ err = snd_pcm_hw_param_set_last(pcm, params, SND_PCM_HW_PARAM_BUFFER_SIZE, NULL, 0);
|
||||
+ if (err < 0)
|
||||
+ return err;
|
||||
+ err = snd_pcm_hw_param_set_first(pcm, params, SND_PCM_HW_PARAM_PERIOD_SIZE, NULL, 0);
|
||||
+ if (err < 0)
|
||||
+ return err;
|
||||
+ err = snd_pcm_hw_param_set_first(pcm, params, SND_PCM_HW_PARAM_PERIOD_TIME, NULL, 0);
|
||||
+ if (err < 0)
|
||||
+ return err;
|
||||
+ }
|
||||
err = snd_pcm_hw_param_set_first(pcm, params, SND_PCM_HW_PARAM_TICK_TIME, NULL, 0);
|
||||
if (err < 0)
|
||||
return err;
|
11
alsa.changes
11
alsa.changes
@ -1,3 +1,14 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Sep 9 14:45:03 CEST 2009 - tiwai@suse.de
|
||||
|
||||
- Fixes from upstream to fix conf parser error and audacious
|
||||
problems:
|
||||
* mixer: Add Speaker and Beep names to the weight list
|
||||
* Revert "Fix driver conf parsing in snd_config_hook_load_for_all_cards()"
|
||||
* Change dmix.conf to accept user configuration from defaults.dmix.<driver_id>.xxx
|
||||
* PCM - Change the hw_params determination order
|
||||
- Mark docs subpackage as noarch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 31 16:21:19 CEST 2009 - tiwai@suse.de
|
||||
|
||||
|
@ -34,7 +34,7 @@ Obsoletes: alsa-64bit
|
||||
#
|
||||
Summary: Advanced Linux Sound Architecture
|
||||
Version: 1.0.21
|
||||
Release: 1
|
||||
Release: 2
|
||||
Source: ftp://ftp.alsa-project.org/pub/lib/alsa-lib-%{package_version}.tar.bz2
|
||||
Source8: 40-alsa.rules
|
||||
Source11: alsasound
|
||||
@ -50,7 +50,7 @@ Source31: all_notes_off.bin
|
||||
Source32: all_notes_off.mid
|
||||
Source33: alsa-info.sh
|
||||
Source34: alsa-init.sh
|
||||
# Patch: alsa-lib-git-fixes.diff
|
||||
Patch: alsa-lib-git-fixes.diff
|
||||
Url: http://www.alsa-project.org/
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
@ -91,6 +91,9 @@ Authors:
|
||||
Summary: Additional Package Documentation
|
||||
Group: Documentation/Other
|
||||
License: GPL v2 or later
|
||||
%if %suse_version > 1110
|
||||
BuildArch: noarch
|
||||
%endif
|
||||
|
||||
%description docs
|
||||
This package contains optional documentation provided in addition to
|
||||
@ -122,7 +125,7 @@ Authors:
|
||||
|
||||
%prep
|
||||
%setup -q -n alsa-lib-%{package_version}
|
||||
# %patch -p1
|
||||
%patch -p1
|
||||
# hack to fix build on older distros
|
||||
%if %suse_version < 1100
|
||||
%ifarch %ix86
|
||||
|
Loading…
Reference in New Issue
Block a user