This should play if your Web browser has WebAssembly enabled (most do). Most examples will play unless they need to load files. The first time you click Play, Csound will spend a few seconds loading, then play. You can edit this code and replay it.
; Select audio/midi flags here according to platform -odac ;;;realtime audio out ;-iadc ;;;uncomment -iadc if RT audio input is needed too ; For Non-realtime ouput leave only the line below: ; -o tableikt.wav -W ;;; for file output any platform ; Required settings for WebAudio: sr = 48000 ksmps = 128 nchnls = 2 nchnls_i = 1 ; sr = 44100 ; ksmps = 32 ; nchnls = 2 0dbfs = 1 instr 1 ilowfn = p4 ;lowest ftable wave ihighfn = p5 ;highest ftable wave kswpenv line 1, p3, 0 ;sweep envelope, calculate current table pair and interpolation amount inumtables = ihighfn - ilowfn ;1 less than number of tables kfn1 = int(kswpenv*inumtables) + ilowfn printks "play table no: %d\n", 1, kfn1 kfn2 = kfn1 + 1 kinterp = frac(kswpenv*inumtables) ixmode = 1 ;read tables with phasor aphase phasor 40 asig tableikt aphase, kfn1, ixmode ;normalized index if kswpenv == 1.0 kgoto skipfn2 ;if kfn1 is last table, there is no kfn2 asig2 tableikt aphase, kfn2, ixmode skipfn2: amix ntrpol asig, asig2, kinterp ;interpolate between tables and output outs amix*.5, amix*.5 endin f 1 0 16384 10 1 f 2 0 16384 10 1 .5 f 3 0 16384 1 "fox.wav" 0 0 0 ;a sample f 4 0 16384 10 1 .5 .3 .25 .2 .16 .14 .125 .111 ;sawtooth f 5 0 16384 10 1 .4 .3 .25 .2 f 6 0 16384 10 1 .3 .3 .25 .2 .16 f 7 0 16384 10 1 1 1 1 .7 .5 .3 .1 ;pulse f 8 0 16384 1 "beats.wav" 0 0 0 ;a sample i 1 0 10 1 8 e