diff options
author | Lennart Poettering <lennart@poettering.net> | 2007-05-12 23:38:38 +0000 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2007-05-12 23:38:38 +0000 |
commit | a64e85acf96bc0c55363fe55c9e9116aef2a8584 (patch) | |
tree | 69ec57b46bdebe0e7496bf11ea9a54cdf5806904 /test-sine.c | |
parent | 2eb6dec8e9f0114bdbad59cf8f11f197f8fdaaf3 (diff) |
resampling works
git-svn-id: file:///home/lennart/svn/public/libsydney/trunk@4 9ba3c220-e4d3-45a2-8aa3-73fcc9aff6ce
Diffstat (limited to 'test-sine.c')
-rw-r--r-- | test-sine.c | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/test-sine.c b/test-sine.c index ae9ac9e..c0d40e8 100644 --- a/test-sine.c +++ b/test-sine.c @@ -1,10 +1,22 @@ +#include <errno.h> +#include <stdio.h> #include <assert.h> +#include <string.h> #include "sydney.h" -#define ASSERT_SUCCESS(x) assert(x == SA_SUCCESS) +#define ASSERT_SUCCESS(x) do { \ + int _r; \ + if ((_r = x)) { \ + fprintf(stderr, "Operation <%s> failed: %s%s%s\n", \ + #x, \ + sa_strerror(_r), \ + _r == SA_ERROR_SYSTEM ? "; " : "", _r == SA_ERROR_SYSTEM ? strerror(errno) : ""); \ + } \ + assert(_r == SA_SUCCESS); \ +} while(0) -#define FREQ 440 +#define FREQ 880 int main(int argc, char *argv[]) { @@ -12,11 +24,12 @@ int main(int argc, char *argv[]) { float data[4] = { 0.0, 1.0, 0.0, -1.0 }; int i; - ASSERT_SUCCESS(sa_device_create_pcm(&dev, argv[0], SA_MODE_WRONLY, SA_PCM_FORMAT_FLOAT32_NE, FREQ * 4, 1)); + ASSERT_SUCCESS(sa_device_create_pcm(&dev, SA_MODE_WRONLY, SA_PCM_FORMAT_FLOAT32_NE, FREQ * 4, 1)); ASSERT_SUCCESS(sa_device_change_device(dev, "/dev/dsp1")); + sa_device_change_meta_data(dev, SA_META_CLIENT_NAME, argv[0], strlen(argv[0])); ASSERT_SUCCESS(sa_device_open(dev)); - for (i = 0; i < 10; i++) + for (i = 0; i < FREQ; i++) ASSERT_SUCCESS(sa_device_write(dev, data, sizeof(data))); ASSERT_SUCCESS(sa_device_drain(dev)); |