Commit graph

86 commits

Author SHA1 Message Date
mazmazz
db41034ad9 Block song position changes on GME because unstable 2018-09-13 13:27:42 -04:00
mazmazz
5f87f4a47a Don't decrement fade timer if song is paused 2018-09-11 11:20:46 -04:00
mazmazz
5ea8dc3dfa Change to percentage calc from interval decrement for volume fade 2018-09-11 11:17:30 -04:00
mazmazz
75e6ad72ed Fix MIDI looping/non-looping 2018-08-28 10:16:06 -04:00
mazmazz
9d0d101d03 I_SongPlaying detect GME properly 2018-08-24 18:00:39 -04:00
mazmazz
4d91b44c63 Detect GME more simply 2018-08-24 17:58:56 -04:00
mazmazz
bd01c75a4e Stub I_UnloadSong because we already unload in I_StopMusic
* Stop-gap for now. Ideally the logic would be in the respective places.
2018-08-24 17:56:22 -04:00
mazmazz
a688de5dc2 Volume fixes 2018-08-24 17:56:14 -04:00
mazmazz
bf61dbb6e2 Checkpoint: Revised fading routines for new load/play pattern
* Perform fade-out/fade-in using callbacks
* Move queued music from interface to s_sound
2018-08-24 13:11:38 -04:00
mazmazz
a2d626384a Merge branch 'music-cleanup' into musicplus-core
Pending rewrite of fade music changing

# Conflicts:
#	src/android/i_sound.c
#	src/djgppdos/i_sound.c
#	src/i_sound.h
#	src/s_sound.c
#	src/s_sound.h
#	src/sdl/mixer_sound.c
#	src/sdl/sdl_sound.c
#	src/win32/win_snd.c
2018-08-23 21:07:39 -04:00
mazmazz
a7d51bf810 Minor refactoring and reordering
* I_GetMusicType() -> I_MusicType()
* Wrap MIDI volume hack in #ifdef _WIN32
2018-08-23 17:05:37 -04:00
mazmazz
f5f0b5e76c Refactoring, music statues
* S_Init -> S_InitSfxChannels because it did mostly SFX anyway
* S_MusicPlaying, S_MusicPaused, S_MusicName, S_MusicExists new status methods
* I_MusicPlaying, I_MusicPaused
2018-08-23 12:30:47 -04:00
mazmazz
701cc5a7dd Consolidate I_SetDigMusicVolume and I_SetMIDIMusicVolume into one method
* In s_sound, they are merged to one method as well, but there are still two separate digvolume and seqvolume variables
* Simplified Dig/MidiMusicDisabled in s_sound
* Method reordering
2018-08-23 11:54:36 -04:00
mazmazz
55f3803e4b Added I_GetMusicType and removed midimode variable
* Revised S_PlayMusic arguments
* Now music plays again!
2018-08-23 10:18:38 -04:00
mazmazz
e89eccf78e Loose ends from previous work
* Pause/ResumeSong remove handle argument
* LoadSong declare char *data argument
* Variable weirdness
2018-08-23 09:36:51 -04:00
mazmazz
7efab8b314 Revert "Nix'd midimusicvolume", don't know what I want to do with this yet
This reverts commit b5c3095820.

# Conflicts:
#	src/i_sound.h
#	src/s_sound.c
#	src/s_sound.h
#	src/sdl/mixer_sound.c
2018-08-23 09:06:13 -04:00
mazmazz
e42defa299 Playback routines: Load, Play, Pause, Stop, Unload
* Re-purpose I_LoadSong for digital music loading
* I_StartDigSong logic split between I_LoadSong and I_PlaySong
* Pause, Stop, and Unload routines are combined from Digi and MIDI
* music_lumpnum, music_data, music_handle from s_sound.c are gone
2018-08-23 09:02:14 -04:00
mazmazz
b5c3095820 Nix'd midimusicvolume 2018-08-23 07:39:32 -04:00
mazmazz
76f9890328 Position fixes with looppoint 2018-08-21 11:58:38 -04:00
mazmazz
2289a3bd79 I_FadeSongFromLevel -> I_FadeSongFromVolume refactor
* S_MusicName->GetMusicName refactor
* S_ChangeMusicWithFade->ChangeMusicAdvanced refactor
2018-08-21 08:53:51 -04:00
mazmazz
a1b1391e24 Interface name refactor: Music -> Song
* Music refers to the music system, song refers to the entity being played.
* s_sound doesn't follow this, everything is music
2018-08-21 06:22:35 -04:00
mazmazz
17e2c3f5be Debug messages 2018-08-20 08:47:41 -04:00
mazmazz
9539c597dd Midimode safeties for song queueing/fading 2018-08-20 01:14:29 -04:00
mazmazz
9eeed6338f Allow queueing music at end of song, not just fading 2018-08-20 00:12:23 -04:00
mazmazz
e51f9ecf90 * Allow S_ChangeMusic to queue the same track for fading
* StopDigSong upon running queue so that GME works for queueing
2018-08-19 23:20:40 -04:00
mazmazz
2cf49f9361 I_FadeOutStopMusic, I_FadeInStartDigSong, S_ChangeMusicWithFade implementation
* First attempt, a little messy but works fine
2018-08-19 22:05:42 -04:00
mazmazz
b844a908a1 Make S_FadeMusicFromLevel accept mandatory source_volume
* Make S_FadeMusic a legitimate function to grab current internal volume
2018-08-19 17:02:13 -04:00
mazmazz
3d8c4585d4 Checkpoint 2018-08-19 16:25:12 -04:00
mazmazz
918976bdcc S_FadeMusic[FromLevel] and S_StopFadingMusic implementation 2018-08-19 16:19:48 -04:00
mazmazz
d5dfde240d I_SetInternalMusicVolume implementation 2018-08-19 09:38:57 -04:00
mazmazz
51228b328c Framework for internal_volume; more fade code 2018-08-19 09:16:52 -04:00
mazmazz
69153194fe Merge branch 'musicplus-core' into musicplus-fade-sdltimer 2018-08-19 08:35:56 -04:00
mazmazz
6ea002b1b5 Enable midi_volume, it actually works 2018-08-19 08:34:03 -04:00
mazmazz
47495e72b5 Fade checkpoint 2018-08-19 08:32:12 -04:00
mazmazz
c4ea18b2bb Add LIBGME ifdefs 2018-08-19 06:43:57 -04:00
mazmazz
a38664e109 Minor cleanup 2018-08-18 23:26:58 -04:00
mazmazz
3bd3e51313 Merge branch 'musicplus-core' into musicplus-fade-sdltimer
# Conflicts:
#	src/sdl/mixer_sound.c
2018-08-18 23:12:58 -04:00
mazmazz
3e7d7cfcae Fixed loop point counter bug 2018-08-18 21:29:18 -04:00
mazmazz
5487fd5be0 Fix S_SetMusicLoopPoint wrong method; trigger only on is_looping 2018-08-18 20:54:56 -04:00
mazmazz
5f564f7798 Consolidate variable cleanup in mixer_sound
* Fix I_SetSongTrack MOD tracking returns the expected result
* Make music_loop hook stop digital song properly if not looping
2018-08-18 20:44:32 -04:00
mazmazz
78b041800e Loop point modulo by length 2018-08-18 20:29:19 -04:00
mazmazz
fdd1af62a8 I_GetMusicLoopPoint and I_SetMusicLoopPoint implementation
* Stub pause for MIDI
* Fix MP3 tag wide char search
* Reset songpaused bool where appropriate
2018-08-18 20:19:44 -04:00
mazmazz
d7720a8556 Remove I_MIDIPlaying 2018-08-18 17:45:57 -04:00
mazmazz
bd1eece7bc S_MusicType implementation; MOD support for Get/SetMusicPosition and MusicLength
* Misc MOD fixes
2018-08-18 17:17:53 -04:00
mazmazz
3c2f7038d0 Added GME for GetMusicLength, SetMusicPosition, GetMusicPosition
* Misc fixes
2018-08-18 16:21:28 -04:00
mazmazz
f4a574aba2 Support wide chars when searching for music tags (MP3) 2018-08-18 15:26:31 -04:00
mazmazz
c6035f5956 I_GetMusicLength implementation 2018-08-18 14:18:29 -04:00
Monster Iestyn
364339e1ce Merge branch 'sdl_mixer_fixes' into 'master'
SDL Mixer fixes

Closes #31

See merge request STJr/SRB2!260
2018-08-16 16:57:14 -04:00
mazmazz
8452ec5c7c Checkpoint: Basic functions 2018-08-15 12:07:08 -04:00
mazmazz
0254f4f368 Fix merge errors 2018-08-15 02:42:50 -04:00