Skip to content

Instantly share code, notes, and snippets.

@nnirror
Created July 12, 2024 14:37
Show Gist options
  • Save nnirror/a86a3cff6a5d5b59f9247d94925b4d1f to your computer and use it in GitHub Desktop.
Save nnirror/a86a3cff6a5d5b59f9247d94925b4d1f to your computer and use it in GitHub Desktop.
Moving image spectrogram
// first run this block
$('p01').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p01').once();
$('p02').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p02').once();
$('p03').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p03').once();
$('p04').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p04').once();
$('p05').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p05').once();
$('p06').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p06').once();
$('p07').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p07').once();
$('p08').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p08').once();
$('p09').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p09').once();
$('p10').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p10').once();
$('p11').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p11').once();
$('p12').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p12').once();
$('p13').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p13').once();
$('p14').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p14').once();
$('p15').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p15').once();
$('p16').silence(10000).iter(ri(1,6),()=>{this.tri2d(ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), ri(0,99), 1)}).set('p16').once();
// then run this
$('a')
.iter(8,()=>{this.append(_.from(p03).interp(i/iters,_.from(p01)))})
.iter(8,()=>{this.append(_.from(p01).interp(i/iters,_.from(p06)))})
.iter(8,()=>{this.append(_.from(p06).interp(i/iters,_.from(p13)))})
.iter(8,()=>{this.append(_.from(p13).interp(i/iters,_.from(p07)))})
.iter(8,()=>{this.append(_.from(p07).interp(i/iters,_.from(p08)))})
.iter(8,()=>{this.append(_.from(p08).interp(i/iters,_.from(p15)))})
.iter(8,()=>{this.append(_.from(p15).interp(i/iters,_.from(p04)))})
.iter(8,()=>{this.append(_.from(p04).interp(i/iters,_.from(p05)))})
.iter(8,()=>{this.append(_.from(p05).interp(i/iters,_.from(p11)))})
.iter(8,()=>{this.append(_.from(p11).interp(i/iters,_.from(p10)))})
.iter(8,()=>{this.append(_.from(p10).interp(i/iters,_.from(p14)))})
.iter(8,()=>{this.append(_.from(p14).interp(i/iters,_.from(p09)))})
.iter(8,()=>{this.append(_.from(p09).interp(i/iters,_.from(p16)))})
.iter(8,()=>{this.append(_.from(p16).interp(i/iters,_.from(p12)))})
.iter(8,()=>{this.append(_.from(p12).interp(i/iters,_.from(p02)))})
.iter(8,()=>{this.append(_.from(p02).interp(i/iters,_.from(p03)))})
.rotate(90).saveimg().spectral().slices(32,()=>{this.tune(s%4==0?'c':s%4==1?'f':s%4==2?'g':s%4==3?'d':'c',0.07)},1,false).play().full().once();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment