From 77edd242d1f5460b7f31a85135128214c192abca Mon Sep 17 00:00:00 2001 From: FoAM Date: Thu, 26 Apr 2018 17:40:40 +0000 Subject: [PATCH] headless tests --- pergola.service | 17 +++++++++++++++++ pre-setup.sh | 7 +++++++ sample-player.rb | 11 +++++------ sc3-test.sc | 29 ++++++++++++++++++++++------- setup.sh | 26 ++++++++++++++++++++++++++ 5 files changed, 77 insertions(+), 13 deletions(-) create mode 100644 pergola.service create mode 100755 pre-setup.sh create mode 100755 setup.sh diff --git a/pergola.service b/pergola.service new file mode 100644 index 0000000..3c6282a --- /dev/null +++ b/pergola.service @@ -0,0 +1,17 @@ +[Unit] +Description=Supercollisions under a pergola +#After=multi-user.target sound.target dbus.service +After=dbus.service + +[Service] +Type=simple +User=foam +Group=audio +ExecStart=/home/foam/ephemeral-garden/pre-setup.sh +StandardOutput=syslog+console +StandardError=syslog+console + +[Install] +Alias=cloud-pergola.service +#Requires=sound.target + diff --git a/pre-setup.sh b/pre-setup.sh new file mode 100755 index 0000000..cc549b8 --- /dev/null +++ b/pre-setup.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +# to be run as root to setup/start/sclang +#runuser -l foam -c 'screen -S test -m -d /home/foam/ephemeral-garden/setup.sh' + +# to be run from user 'foam' crontab +screen -S test -m -d /home/foam/ephemeral-garden/setup.sh diff --git a/sample-player.rb b/sample-player.rb index 29c0b17..e2537ed 100644 --- a/sample-player.rb +++ b/sample-player.rb @@ -1,9 +1,8 @@ # -*- mode: enh-ruby; coding: utf-8; -*- -play 72 -sleep 1 - -snd = "~/snd/" -sample snd, "29", rrand_i(1,2), amp: 1.5 -sample snd, "31", rrand_i(1,2), lpf: 70, amp: 1.5 +snd = "/home/foam/snd/" +loop do + sample snd, "29", rrand_i(1,2), amp: 1.5 + #sample snd, "29", rrand_i(1,2), lpf: 70, amp: 1.5 +end diff --git a/sc3-test.sc b/sc3-test.sc index c9245d7..1d9ad88 100644 --- a/sc3-test.sc +++ b/sc3-test.sc @@ -4,25 +4,40 @@ // ////// / / + "e p h e m e r a l g a r d e n".postln; -( + // sc server -Server.local.boot; s = Server.local; //s.options.memSize = 1024 * 1024; //s.options.maxNodes = 1024 * 1024; //s.options.numBuffers = 1024 * 1024 * 1024; //s.latency = 0.05; s.options.sampleRate = 44100; -) +s.boot; -~snd = "/home/foam/snd/31-dawn-chorus-11m36--01.wav"; +"...".post; -b = Buffer.read(s,~snd); +s.waitForBoot { + Routine { + + ~snd = "/home/foam/snd/31-dawn-chorus-11m36--01.wav"; + + "...".post; -a = { (PlayBuf.ar(1, b, rate: 1, loop: 1) * 0.1).dup }.play; + b = Buffer.read(s,~snd); + + 1.wait; + + "...>>".post; + a = { (PlayBuf.ar(1, b, rate: 1, loop: 1) * 0.1).dup }.play; + + }.play; +}; + +"<<...".post; //a.free; -//b.free; \ No newline at end of file +//b.free; diff --git a/setup.sh b/setup.sh new file mode 100755 index 0000000..fed5900 --- /dev/null +++ b/setup.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +# via -> http://sc3howto.blogspot.be/2015/04/how-to-keep-installation-running-on.html + +export DISPLAY=:0 +#export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1001/bus +#export XDG_RUNTIME_DIR=/run/user/1001 +export JACK_NO_AUDIO_RESERVATION=1 + +port=57110 + +echo "ephemeral: ------------------------------------------------------------" +echo "ephemeral: `/bin/date`" +echo "ephemeral: as user `whoami`" +#echo "ephemeral: with env -> `env`" +echo "ephemeral: waiting..." + +sleep 5 + +echo "ephemeral: sclang starting..." + +#runuser -l foam -c 'screen -S test -m -d /usr/local/bin/sclang /home/foam/ephemeral-garden/sc3-test.sc >> /home/foam/ephemeral-garden/test.log 2>&1' + +/usr/local/bin/sclang /home/foam/ephemeral-garden/sc3-test.sc 2>&1 >> /home/foam/ephemeral-garden/test.log + +echo "ephemeral: sclang spawned..."