[alsa-devel] [PATCH 1/3] speaker-test: allow frequency to be floating point

Dan McGee dpmcgee at gmail.com
Sun May 10 02:27:05 CEST 2009


Use atof() rather than atoi() to store the frequency- we were already using
a floating point value internally but did not let the user specify one from
the command line.

Signed-off-by: Dan McGee <dpmcgee at gmail.com>
---
 speaker-test/speaker-test.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/speaker-test/speaker-test.c b/speaker-test/speaker-test.c
index 63a7151..5e00ea4 100644
--- a/speaker-test/speaker-test.c
+++ b/speaker-test/speaker-test.c
@@ -76,7 +76,7 @@ static unsigned int       speaker     = 0;	            /* count of channels */
 static unsigned int       buffer_time = 0;	            /* ring buffer length in us */
 static unsigned int       period_time = 0;	            /* period time in us */
 static unsigned int       nperiods    = 4;                  /* number of periods */
-static double             freq        = 440;                /* sinusoidal wave frequency in Hz */
+static double             freq        = 440.0;              /* sinusoidal wave frequency in Hz */
 static int                test_type   = TEST_PINK_NOISE;    /* Test type. 1 = noise, 2 = sine wave */
 static pink_noise_t pink;
 static snd_pcm_uframes_t  buffer_size;
@@ -860,9 +860,9 @@ int main(int argc, char *argv[]) {
       channels = channels > 1024 ? 1024 : channels;
       break;
     case 'f':
-      freq = atoi(optarg);
-      freq = freq < 50 ? 50 : freq;
-      freq = freq > 5000 ? 5000 : freq;
+      freq = atof(optarg);
+      freq = freq < 50.0 ? 50.0 : freq;
+      freq = freq > 5000.0 ? 5000.0 : freq;
       break;
     case 'b':
       buffer_time = atoi(optarg);
-- 
1.6.2.4



More information about the Alsa-devel mailing list