diff options
author | tv <tv@shackspace.de> | 2014-12-20 23:50:33 +0100 |
---|---|---|
committer | tv <tv@shackspace.de> | 2014-12-20 23:50:33 +0100 |
commit | 5c7c7d242fa943ec7a96de4a43efa3fc6b1ef77a (patch) | |
tree | b0207325db6b66a9e346956e3793224022be0900 /Kübelwagen | |
parent | b7ea9e035a729186afb57894891d3bdec43aa9ae (diff) |
nixify Kübelwagen (without UTF-8 :/)
Diffstat (limited to 'Kübelwagen')
-rw-r--r-- | Kübelwagen/Makefile | 14 | ||||
-rwxr-xr-x | Kübelwagen/alarm | 27 | ||||
-rw-r--r-- | Kübelwagen/index.c | 206 | ||||
-rwxr-xr-x | Kübelwagen/playmobil | 12 | ||||
-rw-r--r-- | Kübelwagen/sin.js | 37 |
5 files changed, 0 insertions, 296 deletions
diff --git a/Kübelwagen/Makefile b/Kübelwagen/Makefile deleted file mode 100644 index 9be84e13..00000000 --- a/Kübelwagen/Makefile +++ /dev/null @@ -1,14 +0,0 @@ - -CC := gcc -std=c99 -CFLAGS := -D_XOPEN_SOURCE=500 -LIBS := $(shell pkg-config --cflags --libs jack) -lm - -.PHONY: all clean - -all: a.out - -clean: - rm -f a.out - -a.out: index.c - $(CC) $(CFLAGS) -o $@ $^ $(LIBS) diff --git a/Kübelwagen/alarm b/Kübelwagen/alarm deleted file mode 100755 index a117c433..00000000 --- a/Kübelwagen/alarm +++ /dev/null @@ -1,27 +0,0 @@ -#! /bin/sh -# -# //Kübelwagen/alarm SLEEPARGS... -# -# where SLEEPARGS are passed to sleep(3) -# -set -euf -cd $(dirname $(readlink -f $0)) -exec >&2 - -make - -jackd -d alsa & -trap "kill -0 $! && kill $!" EXIT INT - -for i in `seq 8000 1000 10000`; do - echo $i 100 -done | ./a.out 1 -echo 'if you heard that sound, then goto sleep..^_^' - -echo sleep "$@" -sleep "$@" - -echo 'wake up!' -while :; do - echo $(echo "($(od -tu -An -N 2 /dev/urandom)%1000)+500"|bc) $(echo "($(od -tu -An -N 2 /dev/urandom)%500)+100"|bc) -done | ./a.out 1 diff --git a/Kübelwagen/index.c b/Kübelwagen/index.c deleted file mode 100644 index 9a15c7c3..00000000 --- a/Kübelwagen/index.c +++ /dev/null @@ -1,206 +0,0 @@ -#include <stdlib.h> -#include <string.h> -#include <unistd.h> -#include <stdio.h> -#include <math.h> - -#include <jack/jack.h> - -const double PI = 3.14; - -/*Our output port*/ -jack_port_t *output_port; - -typedef jack_default_audio_sample_t sample_t; - -/*The current sample rate*/ -jack_nframes_t sr; - -/*samples in cycle*/ -jack_nframes_t samincy; -/*the current offset*/ -long offset=0; - -/*frequency of our sound*/ -int tone = 262; -int length = 1000000; - -char const *name = "<undefined>"; - -int process (jack_nframes_t nframes, void *arg){ - /*grab our output buffer*/ - sample_t *out = (sample_t *) jack_port_get_buffer - (output_port, nframes); - - int _tone = tone > 0 ? tone : 1; - - /*For each required sample*/ - for(jack_nframes_t i=0;i < nframes;i++){ - /*Copy the sample at the current position in the cycle to the buffer*/ - - jack_nframes_t samincy = sr / _tone; - sample_t scale = 2 * PI / samincy; - out[i] = sin(offset * scale); - - /*and increment the offset, wrapping to 0 if needed*/ - /*(Dumb increment fixed thanks to Jussi Sainio)*/ - offset++; - if(offset >= samincy) - offset = 0; - } - - return 0; -} - -int srate (jack_nframes_t nframes, void *arg){ - printf ("the sample rate is now %lu/sec\n", nframes); - sr=nframes; - return 0; -} - -void error (const char *desc){ - fprintf (stderr, "JACK error: %s\n", desc); -} - -void jack_shutdown (void *arg){ - exit (1); -} - -void usage(void) { - fprintf (stderr, "usage: %s [Hz [ms]]\n", name); -} - -int main (int argc, char *argv[]){ - jack_client_t *client; - const char **ports; - - name = argv[0]; - - if (argc < 2) { - usage(); - return 1; - } - if (argc >= 2) { - tone = atoi(argv[1]); - if (tone == 0) { - usage(); - return 1; - } - fprintf(stderr, "tone: %dHz\n", tone); - if (argc >= 3) { - length = atoi(argv[2]) * 1000; - if (length == 0) { - usage(); - return 1; - } - fprintf(stderr, "length: %dms\n", length/1000); - } - } - - /* tell the JACK server to call error() whenever it - experiences an error. Notice that this callback is - global to this process, not specific to each client. - - This is set here so that it can catch errors in the - connection process - */ - jack_set_error_function (error); - - /* try to become a client of the JACK server */ - - if ((client = jack_client_open(argv[0], JackNullOption, NULL)) == 0) { - fprintf (stderr, "jack server not running?\n"); - return 1; - } - - /* tell the JACK server to call `process()' whenever - there is work to be done. - */ - - jack_set_process_callback (client, process, 0); - - /* tell the JACK server to call `srate()' whenever - the sample rate of the system changes. - */ - - - jack_set_sample_rate_callback (client, srate, 0); - - /* tell the JACK server to call `jack_shutdown()' if - it ever shuts down, either entirely, or if it - just decides to stop calling us. - */ - - jack_on_shutdown (client, jack_shutdown, 0); - - /* display the current sample rate. once the client is activated - (see below), you should rely on your own sample rate - callback (see above) for this value. - */ - printf ("engine sample rate: %lu\n", jack_get_sample_rate (client)); - - - sr=jack_get_sample_rate (client); - - /* create two ports */ - - - output_port = jack_port_register (client, "output", - JACK_DEFAULT_AUDIO_TYPE, JackPortIsOutput, 0); - - /* tell the JACK server that we are ready to roll */ - - if (jack_activate (client)) { - fprintf (stderr, "cannot activate client"); - return 1; - } - - /* connect the ports*/ - if ((ports = jack_get_ports (client, NULL, NULL, - JackPortIsPhysical|JackPortIsInput)) == NULL) { - fprintf(stderr, "Cannot find any physical playback ports\n"); - exit(1); - } - - int i=0; - while(ports[i]!=NULL){ - if (jack_connect (client, jack_port_name (output_port), ports[i])) { - fprintf (stderr, "cannot connect output ports\n"); - } - i++; - } - - free (ports); - - //while (1) { //scanf("%i %i", &tone, &length) == 2) { - char buf[BUFSIZ]; - while (fgets(buf, BUFSIZ, stdin) == buf) { - //if (strstr(buf, "Hz\n")) { - // sscanf(buf, "%i", &tone); - // fprintf(stderr, "%dHz\n", tone); - //} - //if (strstr(buf, "us\n")) { - // sscanf(buf, "%i", &length); - // fprintf(stderr, "%dus\n", length); - //} - - int length = 0; - int c; - int pos = 0, n; - while ((c = sscanf(buf + pos, "%i%i%n", &tone, &length, &n)) == 2) { - - if (length > 0) { - usleep(length * 1000); - } - - pos += n; - - fprintf(stderr, "%dHz %dms\n", tone, length); - } - } - ///* 3 seconds of bleep is plenty*/ - ///usleep(length); - jack_client_close(client); - - exit(0); -} diff --git a/Kübelwagen/playmobil b/Kübelwagen/playmobil deleted file mode 100755 index 51ed70d6..00000000 --- a/Kübelwagen/playmobil +++ /dev/null @@ -1,12 +0,0 @@ -#! /bin/sh -file=`mktemp` -trap "rm -f $file" EXIT INT TERM - -gcc -xc -lm -o $file - <<EOF -#include<math.h> -main(t) { - for (t=${2-0};;++t) putchar($1); -} -EOF - -$file | aplay diff --git a/Kübelwagen/sin.js b/Kübelwagen/sin.js deleted file mode 100644 index 0f472715..00000000 --- a/Kübelwagen/sin.js +++ /dev/null @@ -1,37 +0,0 @@ - - - -var x = 3000; - -var t = 0; -var i = 0; -var j = 0.00001; -var t0 = new Date(); -(function rec () { - - var t1 = new Date(); - console.error('dt = ' + (t1 - t0)); - t0 = t1; - - if (x === 3000) { - x = 1000; - } else { - x = 3000; - }; - - console.log('2000 50 0 50 2000 50 0 50 ' + x + ' 100 0 0'); - return setTimeout(rec, 1000); - - i += 0.01; - console.log((2000 + Math.sin(i) * 1000 | 0) + ' 0'); - return setTimeout(rec, 1); - - var f = Math.abs(1000 + 500 * Math.tan( t )); - var scale = 1; - - console.log(((f * scale)|0) + ' 0'); - - t++; - setTimeout(rec, 100); - //process.nextTick(rec); -})(); |