Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
50
Task/Musical-scale/Sparkling/musical-scale.sparkling
Normal file
50
Task/Musical-scale/Sparkling/musical-scale.sparkling
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
var sampleRate = 44100.0;
|
||||
var duration = 8.0;
|
||||
var dataLength = round(sampleRate * duration);
|
||||
var dataLength_b0 = dataLength >> 0 & 0xff;
|
||||
var dataLength_b1 = dataLength >> 8 & 0xff;
|
||||
var dataLength_b2 = dataLength >> 16 & 0xff;
|
||||
var dataLength_b3 = dataLength >> 24 & 0xff;
|
||||
|
||||
const adjustedHdrSize = 36;
|
||||
|
||||
var len = dataLength - adjustedHdrSize;
|
||||
var len_b0 = len >> 0 & 0xff;
|
||||
var len_b1 = len >> 8 & 0xff;
|
||||
var len_b2 = len >> 16 & 0xff;
|
||||
var len_b3 = len >> 24 & 0xff;
|
||||
|
||||
// WAV header
|
||||
var wavhdr = "RIFF";
|
||||
wavhdr ..= fmtstr("%c%c%c%c", len_b0, len_b1, len_b2, len_b3);
|
||||
wavhdr ..= "WAVE";
|
||||
wavhdr ..= "fmt ";
|
||||
wavhdr ..= "\x10\x00\x00\x00";
|
||||
wavhdr ..= "\x01\x00";
|
||||
wavhdr ..= "\x01\x00";
|
||||
wavhdr ..= "\x44\xac\x00\x00";
|
||||
wavhdr ..= "\x44\xac\x00\x00";
|
||||
wavhdr ..= "\x01\x00";
|
||||
wavhdr ..= "\x08\x00";
|
||||
wavhdr ..= "data";
|
||||
wavhdr ..= fmtstr("%c%c%c%c", dataLength_b0, dataLength_b1, dataLength_b2, dataLength_b3);
|
||||
|
||||
// write wav header
|
||||
var f = fopen("notes.wav", "w");
|
||||
fwrite(f, wavhdr);
|
||||
|
||||
|
||||
// compute and write actual data
|
||||
var frequs = { 261.6, 293.6, 329.6, 349.2, 392.0, 440.0, 493.9, 523.3 };
|
||||
|
||||
for var j = 0; j < duration; j++ {
|
||||
var frequ = frequs[j];
|
||||
var omega = 2 * M_PI * frequ;
|
||||
for var i = 0; i < dataLength / 8; i++ {
|
||||
var y = 32 * sin(omega * i / sampleRate);
|
||||
var byte = fmtstr("%c", round(y));
|
||||
fwrite(f, byte);
|
||||
}
|
||||
}
|
||||
|
||||
fclose(f);
|
||||
Loading…
Add table
Add a link
Reference in a new issue