changeset 184:045908c861a4

Implement pulse channel, untested
author Chris Cannam
date Fri, 03 May 2013 18:17:00 +0100
parents 7cfcc3a07177
children fae36c4570d5 58b1df1c30fd
files yetilab/stream/test/audiofile_reference.yeti
diffstat 1 files changed, 12 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/yetilab/stream/test/audiofile_reference.yeti	Fri May 03 18:11:56 2013 +0100
+++ b/yetilab/stream/test/audiofile_reference.yeti	Fri May 03 18:17:00 2013 +0100
@@ -6,7 +6,18 @@
 vec = load yetilab.block.fvector;
 block = load yetilab.block.block;
 
-pulseChannel rate = syn.silent rate; //!!! to be implemented!
+pulseChannel rate =
+   (pulseFreq = 2;
+    pulseWidth = 0.01 * rate;
+    generator i =
+       (pulseNo = int ((i * pulseFreq) / rate);
+        index = (i * pulseFreq) - (rate * pulseNo);
+        if index < pulseWidth then
+	    s = 1.0 - abs(pulseWidth/2 - index) / (pulseWidth/2);
+	    if pulseNo % 2 != 0 then (-s) else s fi
+        else 0
+        fi);
+    syn.generated rate generator);
 
 referenceChannels rate =
    (leftovers rate n =