- Backport alsa-lib fixes from upstream: 0001-Fix-alsa-lib-to-regard-3D-control-Depth-as-Playback-.patch 0002-alsa-lib-add-LaCie-Firewire-Speakers-Griffin-FireWav.patch 0003-alsa-lib-ucm-allow-values-to-be-read-from-devices.patch 0004-UCM-comment-fixes-and-fix-myvalue-initialization-fix.patch 0005-UCM-Fix-empty-get_list-initialize-returned-pointer-t.patch 0006-Conf-Fix-channels-of-ICE1712-to-10-12.patch 0007-UCM-Fix-LGPL-licence-how-to-receive-part-referred-GP.patch 0008-configure-Fail-when-the-user-attempts-to-compile-sha.patch 0009-Mark-Heaphone-Center-LFE-control-of-emu10k1-conf-as-.patch 0010-Fix-typo-in-comment-in-surround71.conf.patch 0011-test-latency-print-error-message-when-2-periods-per-.patch 0012-EMU10K1.conf-Don-t-lock-hook-controls.patch 0013-HDA-Intel.conf-Fix-low-mic-volume-due-to-pulseaudio-.patch 0014-alsa-lib-fixed-coverity-reported-issues-under-FORWAR.patch 0015-Fix-compile-warnings.patch 0016-Fix-printf-for-size_t.patch 0018-UCM-fix-memory-leak-when-executing-cset-commands.patch 0019-Specficy-subdevice-0-for-front-surround-of-HDA-Intel.patch 0020-emu10k1.conf-Fix-no-sound-problem-when-using-SB-Live.patch 0021-ctlparse-Respect-softfloat-configure-option.patch 0022-UCM-Fix-typo-in-error-message.patch 0023-UCM-Fix-deadlock-following-failed-get-_verb.patch OBS-URL: https://build.opensuse.org/request/show/72599 OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/alsa?expand=0&rev=80
58 lines
1.9 KiB
Diff
58 lines
1.9 KiB
Diff
From 7ed19bbc9a0150f1b3973de46aa4dfac6b9ed211 Mon Sep 17 00:00:00 2001
|
|
From: Raymond Yau <superquad.vortex2@gmail.com>
|
|
Date: Wed, 20 Apr 2011 16:18:50 +0800
|
|
Subject: [PATCH 11/23] test/latency: print error message when 2 periods per
|
|
buffer not supported
|
|
|
|
Print error message when playback/capture does not support 2 periods
|
|
per buffer.
|
|
|
|
Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com>
|
|
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
|
---
|
|
test/latency.c | 18 +++++++++++++++---
|
|
1 files changed, 15 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/test/latency.c b/test/latency.c
|
|
index 03d65a2..e9bc6d8 100644
|
|
--- a/test/latency.c
|
|
+++ b/test/latency.c
|
|
@@ -175,6 +175,7 @@ int setparams(snd_pcm_t *phandle, snd_pcm_t *chandle, int *bufsize)
|
|
snd_pcm_sw_params_t *p_swparams, *c_swparams;
|
|
snd_pcm_uframes_t p_size, c_size, p_psize, c_psize;
|
|
unsigned int p_time, c_time;
|
|
+ unsigned int val;
|
|
|
|
snd_pcm_hw_params_alloca(&p_params);
|
|
snd_pcm_hw_params_alloca(&c_params);
|
|
@@ -226,12 +227,23 @@ int setparams(snd_pcm_t *phandle, snd_pcm_t *chandle, int *bufsize)
|
|
goto __again;
|
|
|
|
snd_pcm_hw_params_get_buffer_size(p_params, &p_size);
|
|
- if (p_psize * 2 < p_size)
|
|
+ if (p_psize * 2 < p_size) {
|
|
+ snd_pcm_hw_params_get_periods_min(p_params, &val, NULL);
|
|
+ if (val > 2) {
|
|
+ printf("playback device does not support 2 periods per buffer\n");
|
|
+ exit(0);
|
|
+ }
|
|
goto __again;
|
|
+ }
|
|
snd_pcm_hw_params_get_buffer_size(c_params, &c_size);
|
|
- if (c_psize * 2 < c_size)
|
|
+ if (c_psize * 2 < c_size) {
|
|
+ snd_pcm_hw_params_get_periods_min(c_params, &val, NULL);
|
|
+ if (val > 2 ) {
|
|
+ printf("capture device does not support 2 periods per buffer\n");
|
|
+ exit(0);
|
|
+ }
|
|
goto __again;
|
|
-
|
|
+ }
|
|
if ((err = setparams_set(phandle, p_params, p_swparams, "playback")) < 0) {
|
|
printf("Unable to set sw parameters for playback stream: %s\n", snd_strerror(err));
|
|
exit(0);
|
|
--
|
|
1.7.5.3
|
|
|