elialbert / infinitewalkingbass2

infinitewalkingbass2.elialbert.vercel.app
5 stars 2 forks source link

More progressions #2

Closed kindoflew closed 3 years ago

kindoflew commented 3 years ago

Starting small, I just added some new progressions and a scale.

Progressions

Tests

NoteChooser.spec.js and Bar.spec.js were failing (even on master) and I think it was because you pushed notes up an octave in 8357fe8de1d46c3136f15cdeafaa724e8944de10 and never updated the tests to match. I updated those two tests. If I interpreted this incorrectly, I'll change them back. All other tests passed before the change.

generateChordsToBars

If an A section progression array has only three chords I swapped the return order to [2, 2, 4] because the only one with three was ['IIm7', 'V7', 'IMaj7'] and that's typically the chord-length ratio of it in most Jazz standards.

I also had to add a .gitignore file because there wasn't one present in the repo. I'm not sure how much of a problem that will be.

vercel[bot] commented 3 years ago

This pull request is being automatically deployed with Vercel (learn more).
To see the status of your deployment, click below or on the icon next to each commit.

🔍 Inspect: https://vercel.com/elialbert/infinitewalkingbass2/2gjr87epu
✅ Preview: https://infinitewalkingbass2-git-fork-kindoflew-more-progressions.elialbert.vercel.app

elialbert commented 3 years ago

@kindoflew omg you are a hero. I will mention that I had some other, more interesting progressions in there, along the lines of what you just added, and they were sometimes resulting in double accidentals being added to the list of notes to play, which the sound generation library really doesn't like. (tone.js). I was too tired at that moment to resolve them. so let's say, I'll merge this, we'll see if that happens, and one of us can go fix that issue if it comes up. If you just run this new version for long enough it shouldn't be hard to see if that bug will come up.

elialbert commented 3 years ago

also the merge to master should automatically deploy, for the record.

kindoflew commented 3 years ago

No problem! Yeah, double accidentals will happen with non-diatonic chords or weird key signatures. I'm seeing some on the live site, but the notes are still playing and, as far as I can, tell sound correct. So, that's cool I guess!

If it does cause problems again this part of the tonaljs/note docs on enharmonics would probably work: https://github.com/tonaljs/tonal/tree/master/packages/note#enharmonics. Seems like for already simple notes it'll just ignore and output what was there, so it could be like a check on every note.

elialbert commented 3 years ago

it's so fun to collaborate on this :)