Bytebeat

To bottom
Rules / Changelog / Common thread / SthephanShi / kOLbOSa_exe / lhphr / PortablePorcelain / HypernovaHeathen / BaenHoHoHo / SArpnt / hcdphobe / OnixIsThePewterGod / Zackx / GetDolphinedLol / psubscirbe / ChrisRM380 / Kouzerumatsu / MT2023 / Decent-Manager-6169 / Chasyxx / Glebguything / absolute197 / ANoUserXD / MarioFan171

CAPTCHA
 Deletion password
  • Supported file types are JPG, PNG, GIF, WEBP, WEBM, MP4 and MOV.
  • Limit: 4 files, 30 MB per file (60 MB for Passcode users).
  • Images greater than 250x250 will be thumbnailed.
  • 1199 unique users on the board.

5791 Reply
Screenshot_20250407-163527.jpg
(1.28KB, 160x160)

5790 Reply
Screenshot_20250407-163527.jpg
(1.28KB, 160x160)
[sin(t0.0491)60|t>>8|tan(5)*100|t>>1/4&t>>10&t>>4|t/1.002]

set the sample rate to 22050

5787 Reply
Screenshot_20250407-163527.jpg
(1.28KB, 160x160)

5786 Reply
Screenshot_20250407-163527.jpg
(1.28KB, 160x160)

5785 Reply
Screenshot 2024-11-07 10.03.14 AM.png
(2.11KB, 188x154)
a=[t&tt>>20,t&tt>>21]

5782 Reply
Screenshot 2025-04-07 231729.png
(33.11KB, 640x321)

5601 Reply
image_2025-03-07_201017845.png
(290.04KB, 1417x618)
BRO IVE BEEN SITTING HERE WONDERING HOW TF TO MAKE ONE.

PS-Dont mined the picture im asking about ByteBeats.
2 posts omitted. Click Reply to view.
5605
>>5602
maybe he was born from a different country. not everyone has perfect english yk.
5606
>>5605
exactly
5613
>>5605
Yes I know, but I still doubt that he was born from a different country
5778
>>5601

lemme talk.
yo dw man, ik you're American but messing up with your grammar is hard for you man. even though i have a lengthwise addition occuring to your grammar. no need to mess up your grammar, thx. :)
5780
I make funcbeats because FL Studio is closed-source and proprietary software, so are most commercial VST plug-ins, and I might find some new signal processing techniques I haven't even heard of before if I keep digging, plus you have like 100% control over the waveform being generated (except it's hard to do compositional/sequential piano roll stuff… might need a visual editor for that, since it's my favorite part of music production, e.g. drawing jazzy melodies and drum break patterns). I always wanted to make my own synths and effects, it's still difficult though, PDF documents on audio processing are also somewhat tiresome to read but worth understanding, I also usually just use an LLM model to transpile stuff (from C++ to JavaScript) then manually fixing the formatting and bugs. I'm not in good health (severely underweight, tired, dizzy, constantly distracted) to build something fully-fledged, so expect some shoddy drafts from me, I just want someone to take inspiration and make online music editing easier and for free instead of apps you have to pay for.

5761 Reply
Ten.PNG
(5.24KB, 146x135)
Counting to 10 using notes. Notes; C4, C5, G5, C6, E6, G6, A#6, C7, D7, E7
1*t*[1,2,3,4,5,6,7,8,9,10][(t>>12)%10]

// Counting to 10 using notes. Notes; C4, C5, G5, C6, E6, G6, A#6, C7, D7, E7
https://dollchan.net/bytebeat/#4AAAA+kUVxjEKg1AQhOHeUwyEgMoQXaO+hIAgq9jlApIySJr3Ctf7Zy2+mV9KK1dhwztbduwZ+OCTUn/W3IZBmuLqnWVVBU1HtF/cYAlS49jPjsm++w3v817QltCOWJz2xOwWN158NBCTm8Mf
5763
5775

5774 Reply
Screenshot_20250407-163527.jpg
(1.28KB, 160x160)

5773 Reply
images.jpeg
(5.66KB, 225x225)

5772 Reply
Screenshot_20250407-163527.jpg
(1.28KB, 160x160)

5771 Reply
Screenshot_20250407-163527.jpg
(1.28KB, 160x160)

5769 Reply
Cool_code_bro.jpg
(25.69KB, 313x356)

5768 Reply
Cool_code_bro.jpg
(25.69KB, 313x356)

5766 Reply
1735723757438.jpg
(865B, 16x16)
return (t)=>(
GlobalDetune=gd=0,//detune in ¢
ü=142,
Clam=a=>min(max(a,0),1),
Clamp=A=>min(max(A,-1),1),
c="charCodeAt",
Я=(A,os=0)=>(t+os*(60/A))/(60/A)%1,
Dec=(F,C=1,os=0)=>(1-Я(F,os))**C,
Cyc=(P,A,os=0)=>((t+os)/(60/P))%A|0,
Tu=a=>440*(2**(((a+gd/100)-9)/12)),//get Hz from note order
RandomPool=R=new Array(16).fill(0).map(a=>2*random()-1),
F=a=>sin(2*PI*t*a),//freq to sine
Sw=a=>F(Tu(a)),//Sine
 St=a=>t%(1/(b=Tu(a)))*b*2-1,
 Sq=(a,Du=1/2)=>(((St(a)+1)/2)<Du)*2-1,
 MagNum=((2951594784).toString(2)),
Th=a=>{throw a},
 IP=(N,Min,Max)=>N*(Max-Min)+Min,
 LFO=(F,Min,Max,W)=>
[IP((sin(2*PI*F*t)+1)/2,Min,Max),IP(t%(1/F)*F,Min,Max),IP(((asin(sin(2*PI*t*F))/PI*2)+1)/2,Min,Max),IP((sign(sin(2*PI*F*t))+1)/2,Min,Max)][W],
XOR=(T,A=1,B=2)=>((t*A*Tu(T)*256)^(t*B*Tu(T)*256))%256/256*2-1,
Bass=a=>parseInt((MagNum[(t*16*Tu(a))&31]))*2-1,
Tr=a=>asin(Sw(a))/PI*2,
p=(a,b)=>a!=b?a:-1/0,
FM=(B,M,C)=>F(Tu(B)+M*F(Tu(B+12*C))/t),
 Proc=(Str,Ind)=>p(Str[c](Ind)-64,-32),
 PT=(A,B)=>A.map(B).reduce((a,b)=>a+b)/A.length,
 Counter=SC={Beat:(t/(60/ü)),BiB:3&(t/(60/ü))},
 SC.M=SC.Beat>>2,
 SC.sQ=((t/(60/ü))*4)|0,
SC.sQC=SC.sQ&3,
 Fifth=a=>[0,7,12].map(a),
O=(a,b)=>b>1?sin(Tu(a)*2*PI*t+O(a,b-1)):sin(Tu(a)+sin(Tu(a))),
kick=(a,H=1)=>(u=t%(60/a),Clamp(.9997**(48000*u)*sin((u*48000)**.5)*H)),
r=(x,y=12288,z=0.5)=>(t?0:a=Array(y).fill(0),b=x%256+a.shift(),a.push(b*z),b),
DP= "K K S  S SKKS SSK K S  S SKKS SSK K S  S SK   S  SKKS  S SK   S",
DP2="R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R ",
//DP2="H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H ",
DM=a=>(
a=="H"?R[2]*Dec(ü*4,3):
a=="K"?kick(ü*4,2):
a=="S"?snare(ü*4):
a=="R"?Ride(ü*4):0),
Debug=(a,b)=>(t*38775.4648)%1024?a:Th(b),
/*
Get "Raddy"!
C D EF G A B
()*+,-./0123    __
456789:;<=>?     _
@ABCDEFGHIJK    
LMNOPQRSTUVW    ^
XYZ[\]^_`abc    ^^
*/
ParseNote=a=>ParseInt(a&255,16)-128,


Ride=a=>Sw(43)*Dec(a,2)/2,
snare=a=>Clamp(kick(a,8)/2+R[1]*Dec(a,4)/2),
SRise=SC.Beat>=32?(SC.Beat<36?snare(ü/4):0):Clam(SC.Beat/8-3)*snare(ü*4),
Mel1="4;@;G;@;4;@;G4;@8?D?K?D?8?D?K8?D1=D=L=D=1=D=L1=D-9@9E9@9-9@9E-9@",
Bass1=" 4 4 4 4 8 8 8 8 1 1 1 1 - - - -",
 [C1,C2,C3]=["44 44 44  44 44 88 88 88  88 88 11 11 11  11 11 -- -- --  -- -- ",";; ;; ;;  ;; ;; 33 33 33  33 33 88 88 88  88 88 44 44 44  44 44 ","@@ @@ @@  @@ @@ DD DD DD  DD DD == == ==  == == EE EE EE  EE EE "],
 Arp="=@DIKID@=@DIKID@=@DIKID@=@DIKID@8?DFGFD?8?DFGFD?8?DFGFD?8?DFGFD?;BGIKIGB;BGIKIGB;BGIKIGB;BGIKIGB6=BDEDB=6=BDEDB=6=BDEDB=6=BDEDB=",
 Bassline=(XOR(Proc(C1,Cyc(ü*4,64)))/3+XOR(Proc(C2,Cyc(ü*4,64)))/3+XOR(Proc(C3,Cyc(ü*4,64)))/3),
r(SRise+Dec(ü*4,1)*FM(Proc(Mel1,Cyc(ü*4,64)),LFO(0.3,0,0.8,2),1)/2,12288,0.4)+
(DM(DP[Cyc(ü*4,64)])/2+DM(DP2[Cyc(ü*4,64)])/2)/2
)

5764 Reply
32122.f793a4926aabce431c01d33db8bfad2d.png
(8.58KB, 128x128)
Put this before any formula: |t>>4|t>>7
t|t>>4|t>>7
Vibe https://dollchan.net/bytebeat/#4AAAA+kUrqSmxszMBEeYA
5765
I meant to say after.

5762 Reply
132794-trees-hills-mountains-fall-forest-sky23.png
(19.10KB, 564x720)

5755 Reply
Cool_code_bro.jpg
(25.69KB, 313x356)
4((t+t>>1^t>>10)+t(t>>10&4103))
5756
Cool_code_bro.jpg
(25.69KB, 313x356)
oh wait i mean

4((t+t>>1^t>>10)+t(t>>10&4103))

5752 Reply
Cussly2.png
(12.58KB, 403x556)
5753
5754

5751 Reply
Screenshot_2-4-2025_173326_greggman.com.jpeg
(13.16KB, 119x355)
I FOUND IT

756 Reply
Screenshot 2023-04-03 153532.png
(16.68KB, 1025x257)
Yes, It is I...

anyway Here's a remix of one of Tejeez's songs

I've retried like 5 times by now :p
267 posts omitted. Click Reply to view.
5311
5375
>>2916
this is a remix of my thing btw

https://dollchan.net/bytebeat/#4AABAnEbTKLGxMVMrsbMz0dTXKAExDI3ALAtDS0NNLUMjCzUjU1MA

i know im very late to this
5382
>>5243
I wanna rise, I promise I won't do mischievous thing ever again.
5741
5742

500 Reply
Opera Captura de pantalla_2023-03-02_175710_dollch
(12.01KB, 1013x250)
Stimmer but i added drums (44100 Hz)
t=t*8000/44100,
a=((t/4*(4|t>>13&3)>>(~t>>11&1)&32)+(t/4*(t>>11&t>>13)*(~t>>9&3)&31)),
b=cos(12*cbrt(t%4096))*32+32,
c=(t*random()|t/8>>2)&31,
d=(t*random()|t/8>>2)&31,
[a+b+c+40,a+b+d+40]

https://dollchan.net/bytebeat/#v3b64dY/LDoIwEEX/pYnNTEtCXzFg0n6EW3VRWnYCBmYn+u0WWLs7mXvuJPfN0pR7dmHkSTRKqdo5rVR1H6MHoNoJcCuFoC23GAJ8N9ZcI7cG5SEcp11CsRttkbnViOVP59O0gDYidTMBnZxqz4jCGmlNiZMHEnMc8zQArlQ3IZitW6L8P7pF2ckknao2yAUerGJLHF7P/hqpDNpnfH4
this is my first time posting here btw
224 posts omitted. Click Reply to view.
5711
another remix of good day (>>2190)
link
not gonna post this on reddit cuz lazy
5732
Note: EVERY code in this post is as it was. if you see some junk code it's not my fault.

Title: Chαθs Glεtkhint
t=t*5000/44100,((sin((t*(t>>12*(t>>10)|t>>12&42&t>>12|t>>(9|t>>(4+t>>6))^(t>>9&t>>(5*t>>(10|t>>15))))>>(t>>9&3))/42)*98+128&127|t>>3&t>>2*(t>>2&t>>9)^(t>>5|t>>4*(t))&t>>9))

this ones actually kinda good for me
link

Title: Tees Kat
melodi=t&(42&t>>10)*10|t>>5,
melodi2=t*(52&t>>12)^90|t>>(t&4096?2:3)-t>>4,
kick=(3e3/(t&16383)&1)*100|t>>5,
melodi-melodi2-kick

some type of 42 melody idk
link

thingy
(((((t&t>>9)-2)+(t>>9&t>>4))&t*t>>9)-(t>>9&t>>4)&t>>4)+(4e4/(t&4095))

link
Post too long. Click to view.
5733
>>5732
i forgot to put the title indicator in the thingy bytebeat!!!!!
5738
link
// Ai will come and destroy us all
// Almost EVERYTHING in this code is made by AI, hence the name.


// AI part
class BiquadLowPass {
  constructor(sampleRate, cutoff, resonance) {
    this.sampleRate = sampleRate;
    this.cutoff = cutoff;
    this.resonance = resonance;
    this.inputHistory = [0, 0];
    this.outputHistory = [0, 0];
    this.updateCoefficients();
  }

  updateCoefficients() {
    const w0 = (2 * Math.PI * this.cutoff) / this.sampleRate;
    const alpha = Math.sin(w0) / (2 * this.resonance);
    const cosW0 = Math.cos(w0);

    const norm = 1 / (1 + alpha);
    this.b0 = (1 - cosW0) * 0.5 * norm;
    this.b1 = (1 - cosW0) * norm;
    this.b2 = this.b0;
    this.a1 = -2 * cosW0 * norm;
    this.a2 = (1 - alpha) * norm;
  }

  process(sample) {
    const output =
      this.b0 * sample +
      this.b1 * this.inputHistory[0] +
      this.b2 * this.inputHistory[1] -
      this.a1 * this.outputHistory[0] -
      this.a2 * this.outputHistory[1];

    // Shift history
    this.inputHistory[1] = this.inputHistory[0];
    this.inputHistory[0] = sample;
    this.outputHistory[1] = this.outputHistory[0];
    this.outputHistory[0] = output;

    return output;
  }

  setCutoff(newCutoff) {
    if (newCutoff !== this.cutoff) {
      this.cutoff = newCutoff;
      this.updateCoefficients();
    }
  }

  setResonance(newResonance) {
    if (newResonance !== this.resonance) {
      this.resonance = newResonance;
      this.updateCoefficients();
    }
  }
}

class BiquadHighPass {
  constructor(sampleRate, cutoff, resonance) {
    this.sampleRate = sampleRate;
    this.cutoff = cutoff;
    this.resonance = resonance;
    this.inputHistory = [0, 0];
    this.outputHistory = [0, 0];
    this.updateCoefficients();
  }

  updateCoefficients() {
    const w0 = (2 * Math.PI * this.cutoff) / this.sampleRate;
    const alpha = Math.sin(w0) / (2 * this.resonance);
    const cosW0 = Math.cos(w0);

    const norm = 1 / (1 + alpha);
    this.b0 = (1 + cosW0) * 0.5 * norm;
    this.b1 = -(1 + cosW0) * norm;
    this.b2 = this.b0;
    this.a1 = -2 * cosW0 * norm;
    th
Post too long. Click to view.
5740
tbh i actually wonder if its ok to use ai stuff in bytebeats

5680 Reply
can't you take a hint.jpg
(16.68KB, 480x366)
One thing I've noticed about Greggman's HTML5 Bytebeat is that instead of simply setting
window.location.hash
(which would add a new entry to the history), it uses
window.location.replace()
to change the URL without adding a new history entry. This method updates the URL without creating additional entries in the browser's history stack, whereas Dollchan does
window.location.hash=`#v3b64${btoa(String.fromCharCode.apply(undefined,deflateRaw(JSON.stringify(songData)))).replaceAll("=","")}`;
every time you type a character which is annoying ('cause it floods your history). Besides, there's also
window.history.replaceState(null,"",URL)

On the other hand, could there ever be MIDI/keyboard input for playing notes in real-time? Or the ability to import audio samples (could also be raw data too for any arbitrary file) being read as arrays without having to encode them into massive strings? Maybe even microphone input for implementing effects?
5681
A global
SAMPLE_RATE
variable would be really nice.
5736
>>5681
I just realized now that the second parameter (as in return (t, sr) => …;) is used for the sample rate.

5734 Reply
IMG_20250329_070604.jpg
(1.03MB, 2448x3264)

5728 Reply
images.jpeg
(5.66KB, 225x225)

5726 Reply
images.jpeg
(5.66KB, 225x225)
THEFINALFRACTALBANGERDROPPING
5727
images.jpeg
(5.66KB, 225x225)

5723 Reply
images.jpeg
(5.66KB, 225x225)

5722 Reply
images.jpeg
(5.66KB, 225x225)

5717 Reply
images.jpeg
(5.66KB, 225x225)
5721
images.jpeg
(5.66KB, 225x225)
this was the same link as the first one so I am including the New Link here: https://dollchan.net/bytebeat/#4AAAAekbTKNEy1lQrUTUyNa3RLbGzM60xMjWAA/0SAA

5718 Reply
images.jpeg
(5.66KB, 225x225)

5716 Reply
images.jpeg
(5.66KB, 225x225)

5715 Reply
images.jpeg
(5.66KB, 225x225)

5714 Reply
images.jpeg
(5.66KB, 225x225)

5709 Reply
1735723757438.jpg
(865B, 16x16)
t/=48000,
GlobalDetune=gd=14,//detune in ¢
ü=142,
c="charCodeAt",
Я=(A,os=0)=>(t+os*(60/A))/(60/A)%1,
Dec=(F,C=1,os=0)=>(1-Я(F,os))**C,
Cyc=(P,A,os=0)=>((t+os)/(60/P))%A,
Tu=a=>440*(2**(((a+gd/100)-9)/12)),//get Hz from note order
RandomPool=R=new Array(16).fill(0).map(a=>2*random()-1),
F=a=>sin(2*PI*t*a),//freq to sine
Sw=a=>F(Tu(a)),//Sine
St=a=>t%(1/(b=Tu(a)))*b*2-1,
Sq=(a,Du=1/2)=>(((St(a)+1)/2)<Du)*2-1,
MagNum=((2951594784).toString(2)),
Th=a=>{throw a},
IP=(N,Min,Max)=>N*(Max-Min)+Min,
LFO=(F,Min,Max,W)=>
[
IP((sin(2*PI*F*t)+1)/2,Min,Max),//Sw
IP(t%(1/F)*F,Min,Max),//St
IP(((asin(sin(2*PI*t*F))/PI*2)+1)/2,Min,Max),//Tr
IP((sign(sin(2*PI*F*t))+1)/2,Min,Max)//Sq
][W],
XOR=(T,A=1,B=2)=>((t*A*Tu(T)*256)^(t*B*Tu(T)*256))%256/256*2-1,
Bass=a=>parseInt((MagNum[(t*16*Tu(a))&31]))*2-1,
Tr=a=>asin(Sw(a))/PI*2,
p=(a,b)=>a!=b?a:-1/0,
FM=(B,M,C)=>F(Tu(B)+M*F(Tu(B+12*C))/t),
Proc=(Str,Ind)=>p(Str[c](Ind)-64,-32),
PT=(A,B)=>A.map(B).reduce((a,b)=>a+b)/A.length,
Counter=SC={Beat:(t/(60/ü))|0,BiB:3&(t/(60/ü))},SC.M=SC.Beat>>2,SC.sQ=((t/(60/ü))*4)|0,SC.sQC=SC.sQ&3,
/*
Get "Raddy"!
C D EF G A B
()*+,-./0123    __
456789:;<=>?     _
@ABCDEFGHIJK    
LMNOPQRSTUVW    ^
XYZ[\]^_`abc    ^^
*/
Kick=a=>F(+sqrt(3000*(100/ü)*exp(Dec(a,4)))/t),
Snare=a=>Kick(a)/2+R[0]*Dec(a,0.5)/2,
Mel1="4;@;G;@;4;@;G4;@8?D?K?D?8?D?K8?D1=D=L=D=1=D=L1=D-9@9E9@9-9@9E-9@",
Bass1=" 4 4 4 4 8 8 8 8 1 1 1 1 - - - -",
[C1,C2,C3]=["44 44 44  44 44 88 88 88  88 88 11 11 1   11 11 -- -- --  -- -- ",";; ;; ;;  ;; ;; 33 33 33  33 33 88 88 88  88 88 44 44 44  44 44 ","@@ @@ @@  @@ @@ DD DD DD  DD DD == == ==  == == EE EE EE  EE EE "],
(St(Proc(C1,Cyc(ü*4,64)))/3+St(Proc(C2,Cyc(ü*4,64)))/3+St(Proc(C3,Cyc(ü*4,64)))/3)/3+Tr(Proc(Bass1,Cyc(ü*2,32)))/3+FM(Proc(Mel1,Cyc(ü*4,64)),LFO(0.1,0,0.75,0),0)*Dec(ü*4,1.2)/3


5710
The original music is by Arseniy Shj_v,
and It can be heard from ordinal markup the incremental game

5701 Reply
images.jpeg
(5.66KB, 225x225)
5702
images.jpeg
(5.66KB, 225x225)

5700 Reply
rtl.png
(15.26KB, 238x363)

5697 Reply
b250319.png
(49.13KB, 1028x917)
8000hz unsigned bytebeat
named as "groovygroovy"
5698
b250320.png
(60.73KB, 1031x920)
8000hz unsigned bytebeat
i named this as "nightmare computer beeps"

5695 Reply
2025-03-20.gif
(53.99KB, 807x633)
Hi guys! I made something here, it turned out pretty cool. Now it's a simple, of course not error-proof generator with cool visualization. You can listen, edit and compose on the fly. Initially available for Linux, but easily compiled for other systems, standard C99, SDL and Lua.

I'll be glad if you like it, made with love for 8-bit culture.

https://github.com/Svarkovsky/Byt-t-t-eer

5694 Reply
IMG_20250319_173200.png
(146.94KB, 600x600)

5690 Reply
Screenshot 2025-03-19 3.51.55 PM.png
(409.28KB, 928x767)

5688 Reply
IMG_20250319_173200.png
(146.94KB, 600x600)

5687 Reply
rtl.png
(15.26KB, 238x363)

5686 Reply
rtl.png
(15.26KB, 238x363)

951 Reply
Rick Astley - Never Gonna Give You Up (Official Music Video), YouTube.com
31 posts omitted. Click Reply to view.
3464
4293
4333
4546
5685
>>4546 yea it kinda has.. i quit bytebeat for a long time and now i recently came back but holy shit, i’m surprised i actually found the rest of my bytebeats here, which is only a fraction of all the ones ive made. but i might be back for now and once in a while i will use the forums.

5674 Reply
wallpaper_windows7.jpg
(85.58KB, 1920x1200)
t&t>>10

5657 Reply
download.png
(54.81KB, 1024x256)

141 Reply
think speak heavy.png
(140.12KB, 680x361)
decided here would be the easiest place to post for now considering all the other stuff i have going on, going to answer some questions i probably have:

i deleted my reddit and youtube and other account because i'm trying to clean up all sorts of accounts for privacy reasons, i don't trust reddit with my account and i didn't enjoy posting there. i feel like i only had my point proven when everyone became unable to post. songs that i release should appear on my website when i get around to it so i don't feel like i've lost anything.

my website hasn't been updated in a long time because i've wanted to really do a proper cleanup for a long time so i can fix all the bugs and massively reduce the loading time (then post on things like 512 kb club, 256 kb club, etc)

the reason i've added funcbeat mode is for a few reasons:
- i wanted something that would be close to something like tinyrave, with a statement based syntax and sec t since it feels less like something ported from C and more fitting for javascript
- passing a function out and having the scope around it allows better performance since every variable outside of the returned function is only passed once
- because t is only passed into the last function, you can always easily take the last function and create a wrapper around it to warp time after the fact
- because of a few of the previous reasons and other practical differences it can be very useful to show off the music making aspects in a demonstration without having to explain things like sample rate and bytes and other programming concepts


anyways since the website isn't going to have a visible update for a long time i'll post this song here early:
Post too long. Click to view.
213
bagladesh.jpg
(107.43KB, 3555x2133)
2802
Screenshot 2023-12-18 at 05-10-23 Bytebeat compose
(59.86KB, 1024x320)
>>141
It's been over a year since your post and I finally decided to make a Funcbeat mode in my player, heh.
Here some tutorials how to convert bytebeat to funcbeat:

"42 melody" ported to funcbeat (play):
return (t,s)=>(t*=s,t*(42&t>>10)&255)/128-1

In this case, if you choose other sample rates, the sound will change. To prevent the sound from changing, you can set 8000 sample rate in the code, as in the original 42 melody (play):
return t=>(t*=8E3,t*(42&t>>10)&255)/128-1

Note that the funcbeat has a floatbeat range, from -1 to 1. Actually, (x&255)/128-1 is a conversion from bytebeat to floatbeat in the code above.
"stimmer" ported to funcbeat (play)
return (t,s)=>(t*=s,t*(4|t>>13&3)>>(~t>>11&1)&128|t*(t>>11&t>>13)*(~t>>9&3)&127)/128-1

In this case, the formula contains &127, so it’s enough to do x/128-1.

Also, some variation of my Dark Forest, ported to funcbeat: Attack in the Forest

Message edited: 18.12.23 Mon 06:31:37
2825
t/=48E3,s=s=>2**(('023578'[s%7|0]||10)/12+(s/7|0)+7.5),o=(t,b)=>(O=[O=t>12&&sin(b*200)/4+(t*s('0035'[t/3&3])/4%1>t/3%1)/4*b||0,O],(T=>{for(i=0;i<9;i++)(N=t-3/8*i)<0||(n=N*s(N%3*4-(N/3&2)+7),O[i%2]+=N<132&&T(n+N%3/9*T(n/((N/3&3)+1)))*(1-N*4%1)/3*.6**i)})(t=>abs(t%1*4-2)-1),O),t>127?o(t+4):o(t>48?(a=t%1,x=t*2&7,(t/4|0)*3+(t>96?(t&3)+a-(x>3):[a,(t&3)+[a%(1/12),(a-1)**2,a,a-.5,a*3/2,a*2/3,a-1,a-1][x],[a*3/2,a,a*3/2,(a-1)**2,a,a-.5,a*2/3,a*2/4][x]][t/16-3|0])):t,t<24||(t*(t/8-13|0?2:1)%1)**.4)

https://dollchan.net/bytebeat#v3b64ZVJNb6MwEP0vSCQzYxN/JhAak1P3SKSqN8TBdLMSUhtWiw+RSv97h7a3PdieeX7z5sN+z16m39eszpIKvnp0cg5zaCwRwFZbty+rbTfn5aL7ZTEalbECZsU+inK3RzkFSHLA0MAldJeQGmM3m3m8wUBWM98LSDSzlnb7bZeU27ie0dw0bOeGTRqWRctLL+E5NO9/pn8wBv0wno4PoxAIbUiFUxWNeNLLArfQslybO/IFtCxnuRCUl27MbS9CezKOC3iGm2COOhJbCr6IDoVBRAJTtOTX1I52B2LhD4QUmjjMkHLDuhYLw5Io127K8wRJeKz5aHx1hhiYJe8hkd2UEpLyPAxy3GdzPJwhrYliAffGYd1F+Q10MQfDw0MJkcWJrIwyFru9jOQUO2SVY8Csq+/uvex+Ln4I/4d9BfDuV3rPozWHwvE7IdZJppP1PK1EXF9VGMbPtjaYrxo7j5nM5vj29/X6FBM/vq+01jJ7+/4Jv16nmIZrTNnHJw
3101
FtFB9K.gif
(3.16MB, 320x320)
i showered.png
(848.60KB, 1052x731)
i've done a bit of work on the website again! one of the big things is a new url system, shorter than ever before, and it'll almost certainly shrink further when i figure out how to generate a deflate dictionary.

did you know the url anchor has 89 valid characters? it took quite a bit of digging to find that, but i use every single one of them.

not a lot of changes are visible on the actual website, in fact i've removed some buttons, but the code has improved significantly and codemirror has been updated.

and yes, the version in the repo works. i encourage you to use the code as much as you want. in fact, please do steal the url code, it's even in its own folder. if you can, please DON'T put the code on github. i don't like that github is scraping all the repos to make copilot. i reccomend you use some other git host instead like https://codeberg.org/codeberg. i'd like to hear about any projects you make.

i have some song drafts sitting around but i haven't finished any of them yet. i did get some nice noise generation though!

here's just a noise generator:
https://bytebeat.ficial.net/#6@yHrD(4NRg{X7xq]s7YP\3ju~\E_HD]Ka4yzmXo#1&DqqbZ_4R-Iz(Uj0/?(4E:SoL5OFNz/Yw/0CEryA|TSw?'4SBT$WR3ihu#M[O

and here's a drum beat, with a pretty good snare and hat:
https://bytebeat.ficial.net/#6lU&OQss1K|uQ.3eBeV?e3G)k.\)eN$F|Qo[_m3Z#LezrJ)gI|H^gU2#Pq.iR5RZTOAoS:O*QE(X1n1HGw=kybPg0as7Njf\7l(?P*^M8PznRqx-qJ((?xC^Eds4qA~Bg?~+]IBi2gDQ2f33+0ltQ&SA'|Pc-m0sS+'kQFjwCp91r/pM:+ypmUVa&K7*
Post too long. Click to view.
3102
apparently the bulletin board does not use bbcode. it uses half of it and also uses markdown elsewhere.

codeberg
noise generator
drum beat

i might need to revert the url changes, i didn't see beforehand that it breaks markdown.

5082 Reply
Screenshot_20241109-165346.png
(363.55KB, 1274x714)
7 posts omitted. Click Reply to view.
5315
Galaxien on Psychic Island (What-If) #shorts #mysingingmonsters, YouTube.com
5316
5319
>>5314
avs media demo
5513
9182724f-ab6a-4d74-b434-845a613729fd.png
(2.29MB, 1920x1080)
at first we must add a Inverse Quadratic decay.
(1-(t%(48000*(a:=single tone time in secs))/a)
then the Original sine sound is too ORDINARY. so we should turn sin(x) to sin(x)**7.
5560
1735723757438.jpg
(865B, 16x16)
delay=95504,c5=523,d5=587,e5=659,f5=698,g5=783,a5=880,b5=987,c6=1046,tones=[e5,g5,b5,g5,e5,g5,b5,g5,a5/2,c5,e5,c5,a5/2,c5,e5,c5 ][round(t/delay)%16],((sin(t/44100tones2PI)+

sin(t/44100tonesPI))/2)

*5(1-(((t+19100)%38200)/38200)
)**2

5559 Reply
1735723757438.jpg
(865B, 16x16)
[(t(t&t>>12)>>8),(t(t^t>>12)>>8)]
22050Hz

7 Reply
retro-games-mountain-8-bit-wallpaper-preview.jpg
(31.44KB, 728x410)
So, I need to fill in the content a little.
I'm alone here for the time being, like God in his newly created world...
I like to play with short formulas, especially with the family of formulas given in the op post.
Here's another formula, let's call it "Awesome level #2":
t*(t&16384?6:5)*(5-(3&t>>(t&4096?7:14)))>>(3&t>>9)|t>>3

https://dollchan.net/bytebeat/#v3b64K9HSKFEzNDO2MLE3szLV1NIw1dUwViuxswMKmxhYmtmbWxmaaGpqAgXAwpaaNUDSGAA=
12 posts omitted. Click Reply to view.
4177
images.jpg
(10.49KB, 225x225)
"You have passed through the portal, but there is no way back. You walk on the new world and think about your destiny. Sunset on the horizon, tomorrow will be a new day.."

Play in bytebeat player - 3550 bytes, 48000Hz

Originally posted on battleofthebits for Summer Chip XIV contest.

The generation algorithm is based on a modified custom tracker format taken from the song Adventure's Began by Kouzerumatsukite. The table with effects is applied for the square wave generator, making such effects as duty cycle changing, attack, staccato, arpeggio. A song can use different effects for the same melody, changing its sound.

Message edited: 12.08.24 Mon 11:52:52
4182
>>4177
this is actually cool keep it up!1!1
4975
5191
360_F_955526560_kZ9N6fJuyR5H4HPFV9Sxpejofy7cC2QV.jpg
(34.94KB, 360x360)
360_F_955526602_H6NrpHJHFjRdK0UZ5BGB92GSa767iVsp.jpg
(41.42KB, 360x360)
dd1b8163115511bf7031afb32e2916ce.jpg
(40.38KB, 640x360)
"Suddenly you encounter space bandits while traveling. You fight them off and escape in your shuttle." 🏴‍☠️☠️💥🚀🪐

- Formatted version - 3065 bytes.

- Minified version - 1355 bytes.

48000Hz bytebeat. Continuation of the tech used in the Wanderer song. Tried to make the sound even more similar to NES. Two channels for the pulse waves, one channel for a NES-like stepped triangular bass, also noise drums and kick. From the features, I managed to get rid of the clicks inherent in the triangular wave.

Wanted to post this closer to Christmas, but I couldn't resist. Maybe it's worth writing songs more often than half a year. Happy upcoming holidays!

Message edited: 19.12.24 Thu 00:25:16
5556
Untitled.png
(378.80KB, 660x371)
"The snow is falling, the wind is starting to blow in your face. A storm is coming, and you are going to battle."

- Original / minified version - 958 bytes.
- Formatted version + filter - 3966 bytes.

Originally written for Winter Chip XX contest on batleofthebits.com in bytebeat1k category. The song is 3 minutes long. The melody is built by applying different effect patterns to the same set of notes, allowing for a short code with the song evolving over time. The technology is a continuation of my previous works simulating the 2A03 (NES) sound, as in
Post too long. Click to view.

Delete Post  
[Previous] [0] [1] [2] [3] [4] [Next]

Rules / Changelog / Common thread / SthephanShi / kOLbOSa_exe / lhphr / PortablePorcelain / HypernovaHeathen / BaenHoHoHo / SArpnt / hcdphobe / OnixIsThePewterGod / Zackx / GetDolphinedLol / psubscirbe / ChrisRM380 / Kouzerumatsu / MT2023 / Decent-Manager-6169 / Chasyxx / Glebguything / absolute197 / ANoUserXD / MarioFan171
To top