You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
999 B
39 lines
999 B
(
|
|
s.options.memSize_(2.pow(20));
|
|
s.waitForBoot({
|
|
~makeBuffers = { |path, event, mono = false|
|
|
var dir = PathName.new(path);
|
|
var contents = dir.entries;
|
|
if (contents.select({ |n| n.isFile }).size > 0)
|
|
{
|
|
var files, bufArray;
|
|
files = contents.select({ |n| n.isFile });
|
|
files = files.select({ |n|
|
|
["aif", "aiff", "wav"].includesEqual(n.extension)
|
|
});
|
|
if (event[dir.folderName.asSymbol] != nil)
|
|
{ "duplicate subfolder name ignored".warn; }
|
|
{
|
|
bufArray = files.collect({ |n|
|
|
if(mono)
|
|
{ Buffer.readChannel(s, n.fullPath, channels:[0]) }
|
|
{ Buffer.read(s, n.fullPath) };
|
|
});
|
|
event[dir.folderName.asSymbol] = bufArray;
|
|
};
|
|
};
|
|
if (contents.select({ |n| n.isFolder }).size > 0)
|
|
{
|
|
var folders = contents.select({ |n| n.isFolder });
|
|
folders.do({ |n| ~makeBuffers.(n.fullPath, event, mono) });
|
|
};
|
|
event;
|
|
};
|
|
s.sync;
|
|
// загрузка тестового сэмпла
|
|
"test_init.scd".loadRelative;
|
|
s.sync;
|
|
"instruments.scd".loadRelative;
|
|
});
|
|
)
|