EasyRPG / Player

RPG Maker 2000/2003 and EasyRPG games interpreter
https://easyrpg.org/player/
GNU General Public License v3.0
966 stars 183 forks source link

The 0.8-281(and 0.8)version has abnormal sound and electronic sounds. #3206

Closed Helloworld996 closed 2 months ago

Helloworld996 commented 2 months ago

Name of the game:

buried barry

Player platform:

Windows, Android, ...

Attach files (as a .zip archive or link them)

game: https://drive.google.com/file/d/18Goagg7GhIeoGeuMd9bwWHGPZTT-ng2e/view?usp=drivesdk

Describe the issue in detail and how to reproduce it:

The 0.8-281 version and the 0.8 stable version both have abnormal sound issues, similar to electronic sounds, which are a bit harsh. But the old version 0.7.xx has a normal sound.

Reproduce video: 0.8-281(Starting from 28 seconds): https://drive.google.com/file/d/1WJxh3Ro9BdpilsvuTreA76THOdVrVcxO/view?usp=sharing

Mimigris commented 2 months ago

The music played with "electronic sounds" during the intro of the game is a MIDI file. MIDI, unlike the other audio formats like mp3 or wav used by RPG Maker games, is a format that only consists of notes that your device then play and is not a direct recording. The instruments used to play a MIDI file are then handled by your device depending on the dependencies and files that are set for it. Thing is, the file that is used on Windows for that - and as such used to play RPG Maker games like the author wanted - are copyrighted files that cannot be used for non-Windows platforms. As such, while EasyRPG is able to just use this dependency on Windows to sound like what you would expect out of the box, this is not possible on other platforms, where another set of instruments is instead used by default, and which is what you are currently referencing. If you are not satisfied with how MIDI files are played on your mobile platform, a way to circumvent this issue is to add and use a soundfont (a file that has instruments that your midi file will you use when being played) to your EasyRPG soundfont folder that satisfies you and then select it (Android only: Settings → Audio → Custom soundfont). You can find some files on the net that tries to be similar to what is done on Windows, though some of them may be in a gray area if they use part of the code of the Windows soundfont, so I’m not sure if I can redirect you to one.

Helloworld996 commented 2 months ago

The music played with "electronic sounds" during the intro of the game is a MIDI file. MIDI, unlike the other audio formats like mp3 or wav used by RPG Maker games, is a format that only consists of notes that your device then play and is not a direct recording. The instruments used to play a MIDI file are then handled by your device depending on the dependencies and files that are set for it. Thing is, the file that is used on Windows for that - and as such used to play RPG Maker games like the author wanted - are copyrighted files that cannot be used for non-Windows platforms. As such, while EasyRPG is able to just use this dependency on Windows to sound like what you would expect out of the box, this is not possible on other platforms, where another set of instruments is instead used by default, and which is what you are currently referencing. If you are not satisfied with how MIDI files are played on your mobile platform, a way to circumvent this issue is to add and use a soundfont (a file that has instruments that your midi file will you use when being played) to your EasyRPG soundfont folder that satisfies you and then select it (Android only: Settings → Audio → Custom soundfont). You can find some files on the net that tries to be similar to what is done on Windows, though some of them may be in a gray area if they use part of the code of the Windows soundfont, so I’m not sure if I can redirect you to one.

However, the sound of version 0.7.0 is normal and does not contain such noise. And playing without emulator on PC has the same effect as 0.7.0. The current 0.8.0 modification is a bit detached from the original music effect, making the sound more noisy and harsh. I will record a version 0.7.0 later. You can compare the sound effects.

Mimigris commented 2 months ago

The library used to handle MIDI files between the version 0.7.0 and version 0.8.0 was changed (WildMidi -> FmMidi), due to being lighter and requiring less dependencies, hence the difference in the default handling of the MIDI files. Such problem is not present while playing on Windows since there, the MIDI files are able to directly use the library used by Windows to play MIDI files which is what you want.

Ghabry commented 2 months ago

We changed the MIDI playback on Android between 0.7 and 0.8. The 0.8 uses a different MIDI player which sounds more "electronic".

We also added the ability to provide a custom soundfont, so you can configure yourself how you want the Midi files to sound.

The advantage of the "electronic" MIDI synth is that the app became 15 MB smaller because we do not have to bundle the soundfont used by 0.7 anymore. (btw the 0.7 MIDI sound was also hated by alot of people.)


My recommendation is that you get Scc1t2.sf2 from here: http://www.vogonsdrivers.com/getfile.php?fileid=500 (download the zip and extract it) and put the Scc1t2.sf2 in the "soundfonts" folder that you can find inside the "easyrpg" folder.

Then open the settings of the Player App, go to Audio and select "Scc1t2.sf2" from the list. (this is new in 0.8)

Now your games will use this soundfont and it will sound exactly like on Windows (because this is a conversion of the Windows soundfont we are not allowed to bundle due to copyright).

Helloworld996 commented 2 months ago

The library used to handle MIDI files between the version 0.7.0 and version 0.8.0 was changed (WildMidi -> FmMidi), due to being lighter and requiring less dependencies, hence the difference in the default handling of the MIDI files. Such problem is not present while playing on Windows since there, the MIDI files are able to directly use the library used by Windows to play MIDI files which is what you want.

Thank you for your answer. I understand now. English is not my native language, so I understand it slowly. But I also happened to record the sound effects of version 0.7.0, although it didn't make much sense.(https://drive.google.com/file/d/1Dy7Lzhh6FPHqetLznicGF6yHTSiJgGFE/view?usp=sharing) I currently rely on soundfonts (RLNDGM. SF2) to solve this problem. Thank you again.

Ghabry commented 2 months ago

Don't worry. Nobody of us speaks English as their native language here 😅.

Glad this is resolved I'm closing this issue.

Helloworld996 commented 2 months ago

We changed the MIDI playback on Android between 0.7 and 0.8. The 0.8 uses a different MIDI player which sounds more "electronic".

We also added the ability to provide a custom soundfont, so you can configure yourself how you want the Midi files to sound.

The advantage of the "electronic" MIDI synth is that the app became 15 MB smaller because we do not have to bundle the soundfont used by 0.7 anymore. (btw the 0.7 MIDI sound was also hated by alot of people.)

My recommendation is that you get Scc1t2.sf2 from here: http://www.vogonsdrivers.com/getfile.php?fileid=500 (download the zip and extract it) and put the Scc1t2.sf2 in the "soundfonts" folder that you can find inside the "easyrpg" folder.

Then open the settings of the Player App, go to Audio and select "Scc1t2.sf2" from the list. (this is new in 0.8)

Now your games will use this soundfont and it will sound exactly like on Windows (because this is a conversion of the Windows soundfont we are not allowed to bundle due to copyright).

I see, that does make the application much lighter. There are indeed many advantages. Thank you for providing a better sourtfoundfont. I used RLNDGM.sf2 before I can't quite understand each difference in SF2, just randomly find one. But the sound sounds much better. Your recommendation should be better. Thank you again for your efforts