Skip to content

Instantly share code, notes, and snippets.

@Wolf480pl
Last active August 14, 2020 20:15
Show Gist options
  • Save Wolf480pl/9892b1603699398c51a73842c094f3f8 to your computer and use it in GitHub Desktop.
Save Wolf480pl/9892b1603699398c51a73842c094f3f8 to your computer and use it in GitHub Desktop.
(
var bsize = s.options.blockSize * 8;
var bufs = [nil, nil, nil, nil, nil, nil, nil, nil];
File.use("/bin/xkill", "rb", {|f|
"len: ".postln; f.length.postln;
8.do {|i|
bufs[i] = Buffer.alloc(s, f.length);
};
f.length.do {|j|
var b = f.getInt8;
//b.postln;
8.do {|i|
var v = 0.0;
if (b & (1 << i) != 0) {
v = 1.0;
};
bufs[i].set(j, v);
};
};
});
//bufs.do {|b| b.plot};
//bufs.do {|b| {BufRateScale.kr(b.bufnum)}.plot};
//bufs.do {|b| {PlayBuf.kr(1, b.bufnum, BufRateScale.kr(b.bufnum) / bsize)}.scope(zoom: 100)};
//)
{
var f = 440;
var v = 1;
var s = SinOsc.ar(f, 0, 0);
s = s + Mix.fill(8, {|i|
var factor = i + 2;
var b = bufs[i];
var vol = PlayBuf.ar(1, b.bufnum, BufRateScale.kr(b.bufnum) / bsize, 1.0, 0);
SinOsc.ar(f * factor, 0, v * vol / factor);
});
Pan2.ar(s, 0)
}.play;
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment