1
0
mirror of https://github.com/TerryCavanagh/VVVVVV.git synced 2024-06-26 06:28:30 +02:00
VVVVVV/desktop_version/src
Misa 671c90f7dc Fix music playing wrong if played after track of different format
As described in #886, if a track was played when an existing track was
already playing, and the sample rates of the two tracks differ, then the
second track would play wrong and distorted.

This is because the second track would play with the sample rate of the
first. To fix this, halt the track if the sample rate is mismatched,
which destroys the voice. This results in the voice being recreated
later in the Play() function. The track is also halted if the number of
channels or bit depth is mismatched.

Fixes #886.
2023-03-18 16:30:19 -07:00
..
Alloc.h Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
BinaryBlob.cpp Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
BinaryBlob.h Use fixed-size int types for resourceheader 2021-09-23 22:21:49 -07:00
BlockV.cpp Remove x-position from setactivityposition 2023-02-17 20:47:32 -08:00
BlockV.h Remove x-position from setactivityposition 2023-02-17 20:47:32 -08:00
Constants.h Fix SCREEN_HEIGHT_PIXELS being wrong constant 2021-10-01 09:35:28 -07:00
Credits.h Add Jules de Sartiges to Credits.h 2023-02-21 12:28:57 -08:00
CustomLevels.cpp Always add null terminator when loading files 2023-03-18 15:12:24 -07:00
CustomLevels.h Remove reference from customlevelclass::load arg 2023-03-16 21:09:41 -07:00
CWrappers.cpp Use loc::toupper_ch instead of SDL_toupper in VFormat 2022-12-31 20:04:56 -08:00
CWrappers.h Use loc::toupper_ch instead of SDL_toupper in VFormat 2022-12-31 20:04:56 -08:00
DeferCallbacks.c Add deferred callbacks to game loop 2021-03-21 02:55:42 -04:00
DeferCallbacks.h Add deferred callbacks to game loop 2021-03-21 02:55:42 -04:00
Editor.cpp Change font::len text argument from std::string to const char* 2023-03-04 16:10:17 -08:00
Editor.h Start using level-specific font where needed, make CJK tweaks 2023-02-13 23:27:00 -08:00
Ent.cpp Axe Graphics::ct and Graphics::setcolreal 2023-01-01 20:16:08 -08:00
Ent.h Use SDL_Color for colors instead of colourTransform 2023-01-01 16:36:43 -08:00
Entity.cpp Remove x-position from setactivityposition 2023-02-17 20:47:32 -08:00
Entity.h Remove x-position from setactivityposition 2023-02-17 20:47:32 -08:00
Enums.h Remove unused game-gamestates 2021-12-18 00:01:32 -08:00
Exit.h Use SDL_NORETURN 2021-09-27 10:32:23 -07:00
FileSystemUtils.cpp Always add null terminator when loading files 2023-03-18 15:12:24 -07:00
FileSystemUtils.h Always add null terminator when loading files 2023-03-18 15:12:24 -07:00
Finalclass.cpp Strip out old special roomname system 2023-03-02 22:58:12 -08:00
Finalclass.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
Font.cpp Always add null terminator when loading files 2023-03-18 15:12:24 -07:00
Font.h Change font::len text argument from std::string to const char* 2023-03-04 16:10:17 -08:00
Game.cpp Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
Game.h Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
GlitchrunnerMode.c Split glitchrunner mode into multiple versions 2021-08-05 13:35:21 -04:00
GlitchrunnerMode.h Split glitchrunner mode into multiple versions 2021-08-05 13:35:21 -04:00
GOGNetwork.c Axe NETWORK_[set/get]AchievementProgress() 2021-09-19 21:49:54 -07:00
Graphics.cpp Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
Graphics.h Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
GraphicsResources.cpp Always add null terminator when loading files 2023-03-18 15:12:24 -07:00
GraphicsResources.h Start rewrite of font system 2023-02-13 23:27:00 -08:00
GraphicsUtil.cpp Fix analogue filter allocating/freeing surfaces every frame 2023-03-04 14:02:47 -08:00
GraphicsUtil.h Fix analogue filter allocating/freeing surfaces every frame 2023-03-04 14:02:47 -08:00
Input.cpp Use SDL_Point instead of rolling our own point struct 2023-01-28 23:32:14 -08:00
Input.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
InterimVersion.h Use PR_RIGHT for interim version info in main menu 2023-02-13 23:27:00 -08:00
InterimVersion.in.c Use PR_RIGHT for interim version info in main menu 2023-02-13 23:27:00 -08:00
KeyPoll.cpp Replace utfcpp by UTF8.h in KeyPoll.cpp 2023-02-27 23:00:41 -08:00
KeyPoll.h Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
Labclass.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Labclass.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
Localization.cpp Remove key casts from hashmap function calls 2023-03-05 13:21:43 -08:00
Localization.h Add menu for selecting the level font 2023-02-13 23:27:00 -08:00
LocalizationMaint.cpp Remove key casts from hashmap function calls 2023-03-05 13:21:43 -08:00
LocalizationMaint.h Add cutscene test menu 2022-12-31 20:04:56 -08:00
LocalizationStorage.cpp Remove key casts from hashmap function calls 2023-03-05 13:21:43 -08:00
LocalizationStorage.h Write max_local to language files during sync 2023-02-13 23:27:00 -08:00
lodepng_wrapper.c Migrate LodePNG to submodule 2022-03-13 23:50:37 -07:00
Logic.cpp Remove x-position from setactivityposition 2023-02-17 20:47:32 -08:00
Logic.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
main.cpp Destroy gameScreen after all other graphics are destroyed 2023-03-03 16:46:15 -08:00
MakeAndPlay.h Use multiline comments in C files 2021-04-17 00:50:04 -04:00
Map.cpp Strip out old special roomname system 2023-03-02 22:58:12 -08:00
Map.h Strip out old special roomname system 2023-03-02 22:58:12 -08:00
Maths.h Use SDL_Point instead of rolling our own point struct 2023-01-28 23:32:14 -08:00
Music.cpp Fix music playing wrong if played after track of different format 2023-03-18 16:30:19 -07:00
Music.h Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
Network.c Axe NETWORK_[set/get]AchievementProgress() 2021-09-19 21:49:54 -07:00
Network.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
Otherlevel.cpp Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
Otherlevel.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
preloader.cpp Migrate more prints and graphics.len calls to font:: 2023-02-13 23:27:00 -08:00
preloader.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
ReleaseVersion.h De-duplicate release version 2022-08-23 00:00:39 -07:00
Render.cpp Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
Render.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
RenderFixed.cpp Strip out old special roomname system 2023-03-02 22:58:12 -08:00
RenderFixed.h Remove now-unneeded deltaframe fix when going to in-game settings 2021-03-21 02:55:42 -04:00
RoomnameTranslator.cpp Change font::len text argument from std::string to const char* 2023-03-04 16:10:17 -08:00
RoomnameTranslator.h Migrate more prints to font::, determine font for most textboxes 2023-02-13 23:27:00 -08:00
Screen.cpp Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
Screen.h Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
ScreenSettings.h Add and use scaling mode enum 2021-12-25 23:14:12 -08:00
Script.cpp Strip out old special roomname system 2023-03-02 22:58:12 -08:00
Script.h Allow a maximum of 26 lines, with L suffix 2023-02-14 14:56:27 -08:00
Scripts.cpp Fix minor visual issue in int1yellow_5 2023-02-24 17:54:29 -08:00
Spacestation2.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Spacestation2.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
SteamNetwork.c Silence GCC warnings about void*-to-function-pointer casts 2021-10-21 01:00:06 -07:00
TerminalScripts.cpp Add textcase(n) commands to scripts 2022-12-31 20:04:56 -08:00
Textbook.c Replace all localization SDL_free with VVV_free 2022-12-31 20:04:56 -08:00
Textbook.h Add Textbook 2022-12-31 20:04:56 -08:00
Textbox.cpp Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
Textbox.h Style: Fixup instances of void arguments 2023-03-18 15:28:33 -07:00
ThirdPartyDeps.c Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
Tower.cpp Add POS_MOD macro and use for all positive modulos 2021-09-24 17:48:15 -07:00
Tower.h Remove vmult lookup tables 2021-09-24 16:37:27 -07:00
TowerBG.h Move from surfaces to the SDL render system 2023-01-28 14:36:28 -08:00
Unreachable.h Use _SDL_HAS_BUILTIN 2022-12-29 16:13:54 -08:00
Unused.h Factor out UNUSED macro to header file 2021-05-25 15:23:34 -04:00
UTF8.c Add UTF8.c 2023-02-27 23:00:41 -08:00
UTF8.h Add UTF8.c 2023-02-27 23:00:41 -08:00
UtilityClass.cpp UtilityClass.cpp: make time formats and numbers translatable 2022-12-31 20:04:56 -08:00
UtilityClass.h Move from surfaces to the SDL render system 2023-01-28 14:36:28 -08:00
VFormat.c Replace use of PHYSFS UTF-8 functions by UTF8.h 2023-02-27 23:00:41 -08:00
VFormat.h Support underscore (_) in VFormat arg name 2022-12-31 20:04:56 -08:00
Vlogging.c Add color support to Windows console output, properly 2022-11-14 21:57:01 -08:00
Vlogging.h Add -console option on Windows 2022-11-14 19:40:23 -08:00
WarpClass.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
WarpClass.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
XMLUtils.cpp Move all settings to settings.vvv 2020-11-04 12:06:57 -05:00
XMLUtils.h Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
Xoshiro.c Move xoshiro_seed debug print to top 2022-11-14 13:14:25 -08:00
Xoshiro.h Replace Gravitron RNG with seeded Xoshiro 2021-08-27 12:28:35 -07:00