Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: background music, score, limit songs by user #456

Merged
merged 7 commits into from
Jan 2, 2025

Conversation

vicwomg
Copy link
Owner

@vicwomg vicwomg commented Jan 1, 2025

Some excellent work by @lvmasterrj

A few todos before merging:

[x] Resolve conflicts
[x] Find a more ambient default bg music (I think this piano one will drive people crazy)
[x] Convert ogg files to mp3 (ogg is not compatible with safari)
[x] Clean up styling of the config page
[x] Fix bug: score screen persists the previous message
[x] Fix bug: skipping tracks can incorrectly trigger score
[x] Fix bug: boolean prefs are not rendered properly on the info page


Hi @vicwomg, i've created some features that some users and my friends asked for.

  • Background music on splash screen
  • Score at the end of songs
  • Limit user songs in queue

I've also created the possibility for the user to change preferences in the info.html, that are stored in a file called config.ini, so it doesn't have to change them in the command line everytime.

I've added a sounds folder inside the static folder, to serve the sounds.

== Background music ==

  • A music that plays when the splash screen is in the screen.
  • I've setted the bg music to play on default but added a --disable-bg-music command line to disable it.
  • Also added a --bg-music-volume to set it's volume and a --bg-music-path so that the user can change the default bg music.

== Score ==

  • A fake score screen after each song is played.
  • It's in the splash screen.
  • I've created a score.js script and added a fireworks.js script to the static folder.
  • The score reaction (claps, fireworks and review) varies depending on the fake score value (under 30, under 60 or above 60).
  • The score reviews are stored in a variable inside the splash screen so that it can be translated.
  • I've setted the score to be shown by default but added a --disable-score command line to disable it.

== Limit user songs by ==

  • Limits songs a user can put simultaneously in queue.
  • The default limit is 0 (illimited)
  • The user can use the command line --limit-user-songs-by to set the desired limit.

== User preferences ==

  • In the info page, the user can set it's preferences.
  • Now it only holds this preferences (score on/off, bg music on/off, bg music volume and limit songs in queue) but we can add more reusing the same the api endpoint in app and the change preferencesfunction in karaoke.

There's more to do, and I hope to find some time to make it happen.

If you have any doubts don't hold to ask me.

Happy new year. :)

Hi @vicwomg, i've created some features that some users and my friends
asked for.

- Background music on splash screen
- Score at the end of songs
- Limit user songs in queue

I've also created the possibility for the user to change preferences in
the `info.html`, that are stored in a file called `config.ini`, so it
doesn't have to change them in the command line everytime.

I've added a `sounds` folder inside the `static` folder, to serve the
sounds.

== Background music ==
- A music that plays when the `splash` screen is in the screen.
- I've setted the bg music to play on default but added a
`--disable-bg-music` command line to disable it.
- Also added a `--bg-music-volume` to set it's volume and a
`--bg-music-path` so that the user can change the default bg music.

== Score ==
- A fake score screen after each song is played.
- It's in the `splash` screen.
- I've created a `score.js` script and added a `fireworks.js` script to
the `static` folder.
- The score reaction (claps, fireworks and review) varies depending on
the fake score value (under 30, under 60 or above 60).
- The score reviews are stored in a variable inside the `splash` screen
so that it can be translated.
- I've setted the score to be shown by default but added a
`--disable-score` command line to disable it.

== Limit user songs by ==
- Limits songs a user can put simultaneously in queue.
- The default limit is 0 (illimited)
- The user can use the command line `--limit-user-songs-by` to set the
desired limit.

== User preferences ==
- In the info page, the user can set it's preferences.
- Now it only holds this preferences (score on/off, bg music on/off, bg
music volume and limit songs in queue) but we can add more reusing the
same the api endpoint in `app` and the `change preferences`function in
`karaoke`.

There's more to do, and I hope to find some time to make it happen.

If you have any doubts don't hold to ask me.

Happy new year. :)
@vicwomg vicwomg merged commit 7d8370e into rc-12-24-2024 Jan 2, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants