shinyquagsire23 / OpenJKDF2

A cross-platform reimplementation of JKDF2 in C
Other
519 stars 46 forks source link

Music not working in M1 Mac Air #53

Closed eduardodesigner closed 2 years ago

eduardodesigner commented 2 years ago

First of all, thanks for this amazing project!

I'm currently running OpenJKDF2 on an M1 Macbook Air with macOS Monterey 12.1.

Everything works (levels, cutscenes, controller config) except for the music.

I'm using the MUSIC folder and ogg files from the gog release. I also tried my own (converted from flacs ripped from the original cds) but nothing seems to work.

shinyquagsire23 commented 2 years ago

Hmm, have you double-checked that Setup > Sound doesn't have the music volume set all the way down? It could be a bug with my default settings, need to double check.

One thing to note as well, Level 1 doesn't fade in the music until after leaving the cantina. GOG's MCI compatibility shim is bugged and always plays full blast.

eduardodesigner commented 2 years ago

I double checked, but I never edited any of the sound options. I tested other levels with the debug option, to make sure that it wasn't a level 1 thing. Is it possible that it might be related to something in macOS security settings?

shinyquagsire23 commented 2 years ago

I don't think it should be a security thing, if all the other sounds are working?

If you're comfortable in a terminal, try running

./OpenJKDF2_universal.app/Contents/MacOS/openjkdf2-64

and seeing if it prints out any error messages with regard to stdMci/OGG stuff, maybe. At the moment that's the only way to get debug output on macOS, still need to add a proper logger.

I guess the other thing to check is ~/.local/share/openjkdf2/MUSIC to make sure it installed all the files correctly.

eduardodesigner commented 2 years ago

Recreating SDL2 Window! Loaded GOB file resource/res1hi.gob... Loaded GOB file resource/res2.gob... Premature 'END' found after only 787 lines in 'ui\jkstrings.uni'. Check number in 'MSG xxx' header. Premature 'END' found after only 25 lines in 'misc\sithStrings.uni'. Check number in 'MSG xxx' header. Using OpenAL+ALUT as audio backend Premature 'END' found after only 187 lines in 'ui\cutStrings.uni'. Check number in 'MSG xxx' header. Premature 'END' found after only 451 lines in 'ui\credits.uni'. Check number in 'MSG xxx' header. stdMci: stop music Opened file ./resource/./video/01-02a.smk Width: 640 Height: 300 Frames: 3446 FPS: 15.001500 OpenGL init...

shinyquagsire23 commented 2 years ago

Oh you'll need to actually enter a level for it to print anything with regard to music, I don't cache any of the music files on startup

eduardodesigner commented 2 years ago

Set vol 1.000000 stdMci: play track 4 to 5 WARN: Failed to play music `./music/Track4.ogg' stdMci: stop music

eduardodesigner commented 2 years ago

I don't have any track with this name, does that mean that the tracks should be renamed to track1, track2, track3... in order to work?

shinyquagsire23 commented 2 years ago

Oh hmmm, it might mean that you mixed CD assets with GOG assets somehow? One thing I noticed with the GOG and Steam releases is that they edited all the scripts to change the track numbers (I think Disk 1 and 2 have different tracks, so track 1 is different between the two halves of the game). But you could also try copying the GOG track numbers to the CD track numbers.

eduardodesigner commented 2 years ago

Yes, I think that was the issue. I used tracks from the gog edition, but the rest of my assets are all from the original cd release. Maybe that should be explained in the readme for people using the cd?

shinyquagsire23 commented 2 years ago

Yeah, one thing that's on my bucket list is actually adding an OGG dumper for the CDs on install, so at least part of that would involve some extra code to detect which CD tracks to play. I can add a README note for now though.

eduardodesigner commented 2 years ago

Thank you! And again, congratulations on this project!

shinyquagsire23 commented 2 years ago

v0.2.11 should now support using GOG soundtrack assets w/ CD game asssets