aboutsummaryrefslogtreecommitdiff
path: root/misc/mksine.c
diff options
context:
space:
mode:
Diffstat (limited to 'misc/mksine.c')
-rw-r--r--misc/mksine.c54
1 files changed, 0 insertions, 54 deletions
diff --git a/misc/mksine.c b/misc/mksine.c
deleted file mode 100644
index fb5f822..0000000
--- a/misc/mksine.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- mksine.c
- David Rowe
- 10 Nov 2010
-
- Creates a file of sine wave samples.
-*/
-
-#include <assert.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <math.h>
-#include <errno.h>
-
-#define TWO_PI 6.283185307
-#define FS 8000.0
-
-int main(int argc, char *argv[]) {
- FILE *f;
- int i,n;
- float freq, length;
- short *buf;
- float amp = 1E4;
-
- if (argc < 4) {
- printf("usage: %s outputFile frequencyHz lengthSecs [PeakAmp]\n", argv[0]);
- exit(1);
- }
-
- if (strcmp(argv[1], "-") == 0) {
- f = stdout;
- } else if ( (f = fopen(argv[1],"wb")) == NULL ) {
- fprintf(stderr, "Error opening output file: %s: %s.\n", argv[3], strerror(errno));
- exit(1);
- }
- freq = atof(argv[2]);
- length = atof(argv[3]);
- if (argc == 5) amp = atof(argv[4]);
-
- n = length*FS;
- buf = (short*)malloc(sizeof(short)*n);
- assert(buf != NULL);
-
- for(i=0; i<n; i++)
- buf[i] = amp*cos(freq*i*(TWO_PI/FS));
-
- fwrite(buf, sizeof(short), n, f);
-
- fclose(f);
- free(buf);
-
- return 0;
-}