libretro / libretro-prboom

Port of prboom to libretro - plays Doom, Doom II, Final Doom and other Doom IWAD mods.
GNU General Public License v2.0
69 stars 49 forks source link

no mp3 music anymore #94

Closed Sakitoshi closed 5 years ago

Sakitoshi commented 5 years ago

I have all the doom music recorded from a roland sc55 in mp3 and everything sounded excellent until recently. since the sigil update there is no music at all anymore, even though I should hear at least something according #89 .

Ferk commented 5 years ago

Can you give more details? Are you talking about external mp3 files or mp3 music encoded inside the wad (like SIGIL_SHREDS.wad)? I'm still hearing the mp3 music from my side, in both cases. I have the mp3 files for the levels of Doom 1 placed in the parent directory, and I hear them when playing the levels, as well as the SIGIL_SHREDS.wad music when I load the SIGIL_SHREDS.wad together with sigil.

Could you list the directory and provide the retroarch logs? (you can enable saving logs to a file in the options).

When you say you don't hear anything you mean anything at all? not even midi? could the mp3 be corrupt?

Ferk commented 5 years ago

I was able to reproduce it from another computer... for some reason it was not happening in my build. Sorry, let me investigate about this.

bslenul commented 5 years ago

Can confirm, cant hear music since I updated the core today:

Windows 10 64bits if that matter.

Yesterday or 2 days ago I had no issue, SIGIL_SHREDS was working fine with music, SIGIL normal I could hear the musics too, etc.

edit: yup, reverted to 1dca41f and no problem!

Sakitoshi commented 5 years ago

I'm referring to the only method until now to have music, specifying mp3 files on the prboom.cfg file. as stated, the music played before I updated yesterday, I even dumped and converted to mp3 sigil normal music (not SIGIL_SHREDS.WAD) and it played.

here is the retroarch-log.txt https://pastebin.com/sgcfZCWJ and this is the prboom.cfg I'm using for retail doom (non-ultimate)

# Doom config file
# Format:
# variable   value

# Misc settings
default_compatibility_level    -1
menu_background               1
max_player_corpse            32
flashing_hom                  0
demo_insurance                2
level_precache                0
demo_smoothturns              0
demo_smoothturnsfactor        6

# Files
wadfile_1                 ""
wadfile_2                 ""
dehfile_1                 ""
dehfile_2                 ""

# Game settings
default_skill                 3
weapon_recoil                 0
doom_weapon_toggles           1
player_bobbing                1
monsters_remember             1
monster_infighting            1
monster_backing               0
monster_avoid_hazards         1
monkeys                       0
monster_friction              1
help_friends                  1
allow_pushers                 1
variable_friction             1
sts_always_red                1
sts_pct_always_gray           0
sts_traditional_keys          0
show_messages                 1
autorun                       0

# Compatibility settings
comp_zombie                   0
comp_infcheat                 0
comp_stairs                   0
comp_telefrag                 0
comp_dropoff                  0
comp_falloff                  0
comp_staylift                 0
comp_doorstuck                0
comp_pursuit                  0
comp_vile                     0
comp_pain                     0
comp_skull                    0
comp_blazing                  0
comp_doorlight                0
comp_god                      0
comp_skymap                   0
comp_floors                   0
comp_model                    0
comp_zerotags                 0
comp_moveblock                0
comp_sound                    0
comp_666                      0
comp_soul                     0
comp_maskedanim               0

# Sound settings
sound_card                   -1
music_card                   -1
pitched_sounds                1
samplerate                22050
sfx_volume                    8
music_volume                  8
mus_pause_opt                 2
snd_channels                  8

# Video settings
screenblocks                  0
usegamma                      3
uncapped_framerate            0
filter_wall                   1
filter_floor                  1
filter_sprite                 1
filter_z                      1
filter_patch                  1
filter_threshold          49152
sprite_edges                  0
patch_edges                   0

# Mouse settings
use_mouse                     1
mouse_sensitivity_horiz      32
mouse_sensitivity_vert       10
mouseb_fire                   0
mouseb_strafe                 1
mouseb_forward                2
mouseb_backward              -1

# Key bindings
key_right                 0xae
key_left                  0xac
key_up                    0xad
key_down                  0xaf
key_menu_right            0xae
key_menu_left             0xac
key_menu_up               0xad
key_menu_down             0xaf
key_menu_backspace        0x7f
key_menu_escape           0x1b
key_menu_enter            0xd
key_setup                 0xc7
key_strafeleft            0x2c
key_straferight           0x2e
key_fire                  0x9d
key_use                   0x20
key_strafe                0xb8
key_speed                 0xb6
key_savegame              0xbc
key_loadgame              0xbd
key_soundvolume           0xbe
key_hud                   0xbf
key_quicksave             0xc0
key_endgame               0xc1
key_messages              0xc2
key_quickload             0xc3
key_quit                  0xc4
key_gamma                 0xd7
key_spy                   0xd8
key_pause                 0xff
key_autorun               0xba
key_chat                  0x74
key_backspace             0x7f
key_enter                 0xd
key_map                   0x9
key_map_right             0xae
key_map_left              0xac
key_map_up                0xad
key_map_down              0xaf
key_map_zoomin            0x3d
key_map_zoomout           0x2d
key_map_gobig             0x30
key_map_follow            0x66
key_map_mark              0x6d
key_map_clear             0x63
key_map_grid              0x67
key_map_rotate            0x72
key_map_overlay           0x6f
key_reverse               0x2f
key_zoomin                0x3d
key_zoomout               0x2d
key_chatplayer1           0x67
key_chatplayer2           0x69
key_chatplayer3           0x62
key_chatplayer4           0x72
key_weapontoggle          0x30
key_weaponcycleup         0x6d
key_weaponcycledown       0x6e
key_weapon1               0x31
key_weapon2               0x32
key_weapon3               0x33
key_weapon4               0x34
key_weapon5               0x35
key_weapon6               0x36
key_weapon7               0x37
key_weapon8               0x38
key_weapon9               0x39
key_screenshot            0x2a

# Chat macros
chatmacro0                "No"
chatmacro1                "I'm ready to kick butt!"
chatmacro2                "I'm OK."
chatmacro3                "I'm not looking too good!"
chatmacro4                "Help!"
chatmacro5                "You suck!"
chatmacro6                "Next time, scumbag..."
chatmacro7                "Come here!"
chatmacro8                "I'll take care of it."
chatmacro9                "Yes"

# Automap settings
mapcolor_back             0xf7
mapcolor_grid             0x68
mapcolor_wall             0x17
mapcolor_fchg             0x37
mapcolor_cchg             0xd7
mapcolor_clsd             0xd0
mapcolor_rkey             0xaf
mapcolor_bkey             0xcc
mapcolor_ykey             0xe7
mapcolor_rdor             0xaf
mapcolor_bdor             0xcc
mapcolor_ydor             0xe7
mapcolor_tele             0x77
mapcolor_secr             0xfc
mapcolor_exit             0x0
mapcolor_unsn             0x68
mapcolor_flat             0x58
mapcolor_sprt             0x70
mapcolor_item             0xe7
mapcolor_hair             0xd0
mapcolor_sngl             0xd0
mapcolor_me               0x70
mapcolor_enemy            0xb1
mapcolor_frnd             0x70
map_secret_after              0
map_point_coord               0
automapmode               0x0

# Heads-up display settings
hudcolor_titl                 5
hudcolor_xyco                 3
hudcolor_mesg                 6
hudcolor_chat                 5
hudcolor_list                 5
hud_msg_lines                 1
hud_list_bgon                 0
hud_distributed               0
health_red                   25
health_yellow                50
health_green                100
armor_red                    25
armor_yellow                 50
armor_green                 100
ammo_red                     25
ammo_yellow                  50
hud_active                    2
hud_displayed                 0
hud_nosecrets                 0

# Weapon preferences
weapon_choice_1               6
weapon_choice_2               9
weapon_choice_3               4
weapon_choice_4               3
weapon_choice_5               2
weapon_choice_6               8
weapon_choice_7               5
weapon_choice_8               7
weapon_choice_9               1

# Music
mus_bunny                 "..\music\doom\d_bunny.mp3"
mus_e1m1                  "..\music\doom\d_e1m1.mp3"
mus_e1m2                  "..\music\doom\d_e1m2.mp3"
mus_e1m3                  "..\music\doom\d_e1m3.mp3"
mus_e1m4                  "..\music\doom\d_e1m4.mp3"
mus_e1m5                  "..\music\doom\d_e1m5.mp3"
mus_e1m6                  "..\music\doom\d_e1m6.mp3"
mus_e1m7                  "..\music\doom\d_e1m7.mp3"
mus_e1m8                  "..\music\doom\d_e1m8.mp3"
mus_e1m9                  "..\music\doom\d_e1m9.mp3"
mus_e2m1                  "..\music\doom\d_e2m1.mp3"
mus_e2m2                  "..\music\doom\d_e2m2.mp3"
mus_e2m3                  "..\music\doom\d_e2m3.mp3"
mus_e2m4                  "..\music\doom\d_e2m4.mp3"
mus_e2m5                  "..\music\doom\d_e1m5.mp3"
mus_e2m6                  "..\music\doom\d_e2m6.mp3"
mus_e2m7                  "..\music\doom\d_e2m7.mp3"
mus_e2m8                  "..\music\doom\d_e2m8.mp3"
mus_e2m9                  "..\music\doom\d_e2m9.mp3"
mus_e3m1                  "..\music\doom\d_e3m1.mp3"
mus_e3m2                  "..\music\doom\d_e3m2.mp3"
mus_e3m3                  "..\music\doom\d_e3m3.mp3"
mus_e3m4                  "..\music\doom\d_e3m4.mp3"
mus_e3m5                  "..\music\doom\d_e3m5.mp3"
mus_e3m6                  "..\music\doom\d_e3m6.mp3"
mus_e3m7                  "..\music\doom\d_e3m7.mp3"
mus_e3m8                  "..\music\doom\d_e3m8.mp3"
mus_e3m9                  "..\music\doom\d_e3m9.mp3"
mus_inter                 "..\music\doom\d_inter.mp3"
mus_introa                "..\music\doom\d_introa.mp3"
mus_intro                 "..\music\doom\d_intro.mp3"
mus_victor                "..\music\doom\d_victor.mp3"
mus_adrian                "..\music\doom2\d_adrian.mp3"
mus_ampie                 "..\music\doom2\d_ampie.mp3"
mus_betwee                "..\music\doom2\d_betwee.mp3"
mus_count2                "..\music\doom2\d_count2.mp3"
mus_countd                "..\music\doom2\d_countd.mp3"
mus_ddtbl2                "..\music\doom2\d_ddtbl2.mp3"
mus_ddtbl3                "..\music\doom2\d_ddtbl3.mp3"
mus_ddtblu                "..\music\doom2\d_ddtblu.mp3"
mus_dead2                 "..\music\doom2\d_dead2.mp3"
mus_dead                  "..\music\doom2\d_dead.mp3"
mus_dm2int                "..\music\doom2\d_dm2int.mp3"
mus_dm2ttl                "..\music\doom2\d_dm2ttl.mp3"
mus_doom2                 "..\music\doom2\d_doom2.mp3"
mus_doom                  "..\music\doom2\d_doom.mp3"
mus_evil                  "..\music\doom2\d_evil.mp3"
mus_in_cit                "..\music\doom2\d_in_cit.mp3"
mus_messag                "..\music\doom2\d_messag.mp3"
mus_messg2                "..\music\doom2\d_messg2.mp3"
mus_openin                "..\music\doom2\d_openin.mp3"
mus_read_m                "..\music\doom2\d_read_m.mp3"
mus_romer2                "..\music\doom2\d_romer2.mp3"
mus_romero                "..\music\doom2\d_romero.mp3"
mus_runni2                "..\music\doom2\d_runni2.mp3"
mus_runnin                "..\music\doom2\d_runnin.mp3"
mus_shawn2                "..\music\doom2\d_shawn2.mp3"
mus_shawn3                "..\music\doom2\d_shawn3.mp3"
mus_shawn                 "..\music\doom2\d_shawn.mp3"
mus_stalks                "..\music\doom2\d_stalks.mp3"
mus_stlks2                "..\music\doom2\d_stlks2.mp3"
mus_stlks3                "..\music\doom2\d_stlks3.mp3"
mus_tense                 "..\music\doom2\d_tense.mp3"
mus_theda2                "..\music\doom2\d_theda2.mp3"
mus_theda3                "..\music\doom2\d_theda3.mp3"
mus_the_da                "..\music\doom2\d_the_da.mp3"
mus_ultima                "..\music\doom2\d_ultima.mp3"

I also tried changing the paths to absolute paths just in case, but nothing changed.

on a slightly unrelated note (that might have been resolved by the new music support), if you loaded a pwad that contained .mus or .mid, the mp3 music would also refuse to play, opening slade and removing the .mus/.mid from the pwad solved the issue.

Ferk commented 5 years ago

@Sakitoshi thanks! The buildbot probably doesn't have the new version yet, but I'm hoping the next build will have the issue fixed

on a slightly unrelated note (that might have been resolved by the new music support), if you loaded a pwad that contained .mus or .mid, the mp3 music would also refuse to play, opening slade and removing the .mus/.mid from the pwad solved the issue

It only uses external mp3s for music coming from the IWADs, but not when that music track is in a PWAD. I noticed this when I was changing the music code. Actually this was what the original PrBoom port was already doing. I've been conflicted on whether I should change that or not (or maybe make it an option?).

The rationale to have it like this is that if a PWAD includes custom music you won't be able to hear it if an mp3 file meant to replace original Doom music is played instead.

Sakitoshi commented 5 years ago

@Ferk I compiled the new version and it works like a charm, thanks!

I understand, it was like that so the custom pwad music would not be replaced by the iwad music even in external mp3 form. but now that the music plays without issues having the option to select which music you like to play would be better. on that point leaving it so external mp3 has the highest priority, then pwad music (mp3 first if both mp3 and midi exist inside the pwad), then iwad would be a good default, now that you don't need to provide the music by yourself, if you do it is because you want it to play regardless of anything.

Ferk commented 5 years ago

Awesome!

About the external mp3s for pwad music: like iwads, music files are looked up in parent folders (and in the system folder), so it would be a bit annoying if the mp3 is always found because of its placement.

Maybe it should be a PrBoom option under the sound section that defaults to current PrBoom behavior. I expect wanting to use a custom mp3 for a pwad wouldn't be something very common.

Sakitoshi commented 5 years ago

oh, I didn't knew that parent folder search applied to the music too. then yeah, leaving the current behavior as default and always use mp3s as an option would be best.

Ferk commented 5 years ago

Maybe we should update the wiki page about PrBoom, I think there are many things that aren't explained. You can also now place the files in a subdirectory named "prboom" in the system folder, instead of the root system folder (although it would also be found if it's there).