7 ms·
Octave Compass
- worik 6y agoVery cool!
- cpfohl 6y agoI came here to make the same comment. Wow. Super fun!
- kobalsky 6y agoNice. Sadly, audio is clipping a lot on Linux, both on Firefox and Chrome.
- TylerE 6y agoIt is on windows too.
- ImprovedSilence 6y agoAnd Mac. Either the notes(frequencies) are not being filtered, causing all sorts of harmonic noise, especially when added together (most likely), or (probably and) the individual tones are not being normalized before being added together, and its clipping. edit: it's also possible the tones are looped over a short period and there are discontinuities between the loops (filtering will also fix if this is the case) Awesome concept though, I really love to see stuff like this, and it's great to experiment with and find new (to me) "synergies" between notes/chords.
- klodolph 6y agoOr, more likely, the gain is just too high.
- ImprovedSilence 6y agoYes, but that doesn't explain how to fix it. The signal is clipping (slight distinction from too much gain, because too much gain causes clipping) if you notice, one note is mostly clear, but the more notes played, the worse it sounds. He’s adding all the tones together, and not re-normalizing them before his addition. Which i suppose could be thought of as “not adjusting individual gain down” before adding signals together. Also filtering really would work wonders if he's just generating pure tones (sine waves).
- seancolsen 6y agoThanks for your detailed thoughts and feedback! I think you're correct about the need to normalize the gains. I've opened this ticket to track progress on doing that (or whatever else needs to be done to fix the clipping): https://github.com/seancolsen/octave-compass/issues/80 https://github.com/seancolsen/octave-compass/issues/80 Pull requests welcome! There are some notes in there pointing others to the relevant part of the code if anyone else wants to take a stab at fixing!
- teek_xyz 6y agoSame on Mac, with Firefox.
- seancolsen 6y agoThanks for pointing this out! I've noticed that too, but haven't gotten around to fixing it. It's helpful to hear that it's problematic for other people. I've opened this ticket to track progress on the issue: https://github.com/seancolsen/octave-compass/issues/80 https://github.com/seancolsen/octave-compass/issues/80 Pull requests welcome! There are some notes in there pointing others to the relevant part of the code if anyone else wants to take a stab at fixing!
- PaulDavisThe1st 6y agostrongly related: https://ianring.com/musictheory/scales/ https://ianring.com/musictheory/scales/
- bearerofgarbage 6y agoGreat resource! Almost mathy
- dang 6y agoThere's a comment from the author here: https://news.ycombinator.com/item?id=25344091 https://news.ycombinator.com/item?id=25344091. I actually invited him to repost his Show HN but it looks like a different mod added the current submission to the second-chance pool (https://news.ycombinator.com/item?id=11662380 https://news.ycombinator.com/item?id=11662380), which is also fine.
- seancolsen 6y agoThanks dang!
- deleted 6y ago[deleted]
- leephillips 6y agoI think this is great (which is why I submitted it). It’s make with Svelte; I found out about it by glancing over a Svelte newsletter. On my box, chromium on Ubuntu, it works when I click, but they keyboard does not produce sound.
- seancolsen 6y agoThanks for the feedback, and the submission :) When you say "keyboard does not produce sound", are you saying that you'd expect to hear sound when pressing a physical key on your computer keyboard, like "C" or "1"? Or are you saying that you're clicking an element in the page and not hearing sound? I really like the idea of responding to physical key presses. If you're into Svelte, perhaps you'd want to take a stab at adding that feature... wink wink. I actually already have a ticket for it here: https://github.com/seancolsen/octave-compass/issues/74 https://github.com/seancolsen/octave-compass/issues/74 My thought was to use the number keys to play the scale degrees, but I'm open to other ideas.
- Mobleysoft 6y agoI wish I could play the chords via key presses. Made some pretty cool sequences with my laptop's touch pad. This would make a neat minimalist synth app/gadget. Just needs a loop making/recording feature.
- siraben 6y agoThis was fun to play around with, but I wish that there was also a mode to arrange the notes in the circle of fifths, since that places similar key centers next to each other. In the chromatic layout when you perform a chord progression (e.g. try C E- F G7 C) the movement is very slight on the circle of fifths but jumps around here.
- cgio 6y agoI like this one: https://guitardashboard.com/ https://guitardashboard.com/
- seancolsen 6y agoThanks for the feedback! I really like the circle of fifths too, especially since my primary instrument is accordion, which has the left-hand side arranged in the circle of fifths. Part of the concept for this app was to illustrate the way that polygons can be used to (1) place a pattern of intervals within the set of all chromatic notes and rotate it to shift modes, and (2) fit chords into scales at different positions. The Scale Editor demonstrates these concepts, and it's a bit hard for me to imagine how that polygon-rotating would work with the circle of fifths. Perhaps you just wouldn't be able to rotate anything? I'm open to ideas here!
- sova 6y agoVery beautiful and very helpful for choosing chord progressions for songs. Have been looking for something like this for a long time. Sure, there is a little chop on the playback (overload?) but it's usable as-is for creating very lovely chord progressions. My hat is off to the creator! May you always be surrounded by glorious and loving sounds.
- bearerofgarbage 6y agoThis looks great, but being musically-limited, I have no idea what most terminology is. Seems very extensible. Would be neat to see a midi being played. Gets a bit crowded on a small screen.
- gnulinux 6y agoI've been trying to build something like this last month or so. I was studying the source code of beepbox: https://github.com/johnnesky/beepbox https://github.com/johnnesky/beepbox Does anyone know if there is an easier, higher level abstraction library for audio backend? The approach in beepbox is rather low level and you can make really interesting sounds, with the trade-off being your backend being really complex (literal sound waves). I searched for MIDI output on web with sound font support but couldn't find anything helpful.
- sova 6y agoMaybe tone.js will be helpful. https://tonejs.github.io/ https://tonejs.github.io/
- hctaw 6y agoYou’ll need to leave the browser to do useful audio and MIDI work.
- gnulinux 6y agoThat's the entire point though, I was trying to do this in browser. I already know how to do it on linux.
- hctaw 6y agoThe browser can't do everything. Not yet at least. It's an inappropriate platform for real time software, like audio.
- fenomas 6y agoYou can do all sorts of realtime audio in the browser! Especially now that audio worklets are a thing.
- gnulinux 6y agoWhat are you trying to say? It's definitely possible, I even gave a link: https://www.beepbox.co https://www.beepbox.co The problem is can we do this using a higher level library instead of sending sound waves to sound driver.
- mself 6y agoDoesn’t make any sound?
- Derpdiherp 6y agoYou never see the modes of the harmonic minor in these things - always the major modes ( aside from the relative natural minor of course ), as a metal head it'd be useful to see one. Still very cool.
- Derpdiherp 6y agoI retract that - if you use the search bar you can get modes of any scale you want, this is fantastic!
- nanis 6y agoHow do I play using the keyboard? Why not link notes the letters and chords to digits or something like that?
- cmrdsprklpny 6y agoThis is pretty nice! Something interesting to note is that it seems to use Shepard tones[1] or something similar so that the scale can be played continuously while still staying in range. [1]: https://en.wikipedia.org/wiki/Shepard_tone https://en.wikipedia.org/wiki/Shepard_tone
- luplex 6y agoYes! When I was playing around with it, i wondered how it knew to just go down instead of up an octave when I wanted it to. It was an illusion all along!
- tfeldmann 6y agoVery nice! I created this a while ago: https://fretty.app https://fretty.app