- Node (14+)
- Yarn
- A microphone (best with SingStar ones)
yarn
yarn start
Plays dummy local video instead of YouTube to work properly in offline environments (eg. planes).
yarn start:mock
Locally the app runs on HTTPS (with dummy cert) so remote microphones work. This makes the Service Worker not work due to untrusted origin. See this document how this can be fixed.
yarn build
Instead of having to sing every time you'd like to test something, you can mock the input.
Edit src/Scenes/Game/Singing/Input/InputManager.ts
and assign DummyInput
into the Input
variable
const Input = DummyInput;
const Input1 = MicInput;
frequency
- a frequency of player's voice in HzfrequencyRecord
- object containing frequency and timestamp (of the song) when it was recordedpitch
- an actual sound (eg A, C, F#) as a number where0
= C0section
- either a verse (containing notes) or a "pause section" - A.K.A instrumental part of the song when nothing's sungnote
- a single singable syllabe with assigned targetpitch
, starting beat, length and lyric. Is also one of several types (see below)distance
- a number of pitches between player's note pitch and target note pitch, disregarding the octave (so for example player's note C0 has distance 0 to note's target pitch of C4). Note a tolerance can apply - eg with tolerance of 1, distance between pitches 66 and 65 will be 0 (while between 67 and 65 would be 2)playerNote
- group offrequencyRecords
recorded directly after eachother, matched (by time) to a note with the same distance to it. Basically represents the player sung lines shown in the game
normal
- regular notestar
- golden note, gives bonus pointsrap
/freestyle
- notes that are always hit if any singing is detected. Gives reduced points
yarn test