したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

ねこちゃんねるゲームスレ

322peanya:2020/11/22(日) 21:05:32

>>jbbs.shitaraba.net/bbs/read.cgi/internet/9716/1600461344/150
>ぶぁっふぁ〜〜 \(^o^)/ 〜〜 ♪ を直接いじる

🤓 いじっちゃったアル😇ヨ。 🤖 ぷろしーでゅらる・SEが可能アル😊ネ。


🚂 蒸気機関っぽく。

/* steam engine sound */
const audioContext = new AudioContext();

var bufferSize = 2 * audioContext.sampleRate,
noiseBuffer = audioContext.createBuffer(1, bufferSize, audioContext.sampleRate),
output = noiseBuffer.getChannelData(0);
for (var i = 0; i < bufferSize; i++) {
gain = - Math.abs( Math.sin( 10 * Math.PI * i / bufferSize ) ) + 1;
gain = gain * gain;
output[i] = gain * ( Math.random() * 2 - 1 );
}

var whiteNoise = audioContext.createBufferSource();
whiteNoise.buffer = noiseBuffer;
whiteNoise.loop = true;
whiteNoise.start(0);
whiteNoise.stop( audioContext.currentTime + 5.0 );

whiteNoise.connect(audioContext.destination);


🏎 内燃機関っぽく。

/* engne sound */
const audioContext = new AudioContext();
const whiteWeight = 0.02;
var bufferSize = 4096;
var brownNoise = (function() {
var lastOut = 0.0;
var node = audioContext.createScriptProcessor(bufferSize, 1, 1);
node.onaudioprocess = function(e) {
var output = e.outputBuffer.getChannelData(0);
for (var i = 0; i < bufferSize; i++) {
var white = Math.random() * 2 - 1;
//output[i] = ( lastOut + ( whiteWeight * white ) ) / ( 1 + whiteWeight );
w = whiteWeight * ( 1 + 0.7 * Math.sin( 5 * Math.PI * i / bufferSize ) );
output[i] = ( lastOut + ( w * white ) ) / ( 1 + w );
lastOut = output[i];
output[i] *= 3.5; // (roughly) compensate for gain
}
}
return node;
})();

brownNoise.connect(audioContext.destination);
setTimeout(()=>{ brownNoise.disconnect(); }, 2000);


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板