mirror of
https://github.com/Dingo-Shenanigans/ReSkate.git
synced 2026-10-27 20:57:08 +01:00
Music: local files, online radio, equaliser, queue, and a Music page in the menu
Sources - Local Files: add a folder of music from the setup page (MP3, M4A, AAC, Ogg, FLAC, WAV; up to 200 songs a folder, 12 folders). Names and covers come from the files' tags. Each folder is a tile in its own row. - Online Radio: find stations by name (radio-browser.info) or add a stream's address (MP3, AAC, .pls, .m3u; no HLS). Each station is a tile in its own row; the track name follows what the station sends. Up to 24. - Both are decoded by the library built into the DLL (SpotifyHelper), which now plays files and HTTP streams as well as a program's output, reads tags and embedded pictures, and accepts MPEG-2 ADTS from AAC stations. Sound - Five-band equaliser (60 Hz, 250 Hz, 1 kHz, 4 kHz, 12 kHz) and loudness levelling, applied to every source on its way into the game. - Loudness, the speakers option, the equaliser and levelling are now kept in music-settings.json between sessions. Setup page - Remade in the mod's own colours and type, with numbered steps per source. - Queue pinned to the right: now playing, the playlist's songs with covers, find, and press to jump. Spotify's own queue shows once signed in. - Cards for Local files and Online radio; equaliser and levelling under Sound. In game - MUSIC page in the menu: player and queue, sound settings, source status and a button for the setup page. - "Loading song..." notice in the corner for songs that take a moment, with a switch to hide it. Presses made while a song is loading no longer restart it. - The Spotify row is hidden when Spotify is not in use. - Console: "spotify ..." is now "music ..." (music, music setup, music gain, music through, music spotify client|login|logout). Logs - The music sources' working lines (traces, per-song and per-bind lines, librespot's own) are debug only; stack captures are skipped unless debug logging is on. Grind exits: the per-pop line is debug only too. - A "Pace:" line when the game takes the sound faster or slower than real time, to find why music sounds fast after tabbing back in. Chat filter - A run of digits is a number, not a word spelled with look-alikes: a race time such as 2:55.0 is no longer masked.
This commit is contained in:
1 parent
ea17559e3d
commit
86aa8d38fb
39 files changed
+2565
-321
No files matched your search
@@ -11,6 +11,7 @@
|
||||
#include "Extension/Assets/mod_layers.h"
|
||||
#include "Extension/Assets/loose_files.h"
|
||||
#include "Extension/Scripting/custom_script_loader.h"
|
||||
#include "Extension/Scripting/lua_native_block.h"
|
||||
#include "Extension/Assets/morph_memory_pool.h"
|
||||
#include "Extension/Assets/native_render_resource_pool.h"
|
||||
#include "Extension/Rendering/display_startup.h"
|
||||
@@ -43,6 +44,9 @@ bool initialize_bootstrap(std::uintptr_t base) {
|
||||
if (!stage(Channel::assets, "Native InitFS/package support", ready, error)) return false;
|
||||
error.clear(); ready = start_mod_layers(base, error);
|
||||
if (!stage(Channel::assets, "Mod layout layers", ready, error)) return false;
|
||||
// Before anything that lets a script of the player's own into the game's Lua.
|
||||
error.clear(); ready = start_lua_native_block(base, error);
|
||||
if (!stage(Channel::assets, "Lua kept to Lua (no DLLs, programs, file writes or bytecode)", ready, error)) return false;
|
||||
error.clear(); ready = start_loose_files(base, error);
|
||||
if (!stage(Channel::assets, "Loose Lua/config files", ready, error)) return false;
|
||||
error.clear(); ready = start_custom_script_loader(base, error);
|
||||
|
||||
Reference in new issue
Block a user