Dans le jeu Simutrans, la BGM est un fichier MIDI, et j'étais en difficulté car la BGM ne fonctionnait pas, donc si je cherchais une solution, j'ai utilisé SDL_mixer sous Linux. Je peux le résoudre avec une solution commune (vraisemblablement) quand je suis là-bas, et je n'ai pas pu trouver d'informations japonaises, donc je vais les partager.
Comme mentionné ci-dessus, je n'ai essayé qu'un seul jeu cette fois. En plus de cela, l'environnement qui a bien fonctionné cette fois est le suivant.
C'est aussi une histoire sous l'environnement Pulse Audio.
Tout d'abord, vous devez en inclure au moins un pour pouvoir lire du MIDI sous Linux. Dans ce cas, j'ai vérifié un par un avec les deux inclus, mais comme chacun fonctionnait normalement, il semble que l'un ou l'autre fonctionne bien. De plus, vous ne pouvez pas simplement l'installer, vous devez en faire un démon avec timidity -iA
ou fluidsynth -a pulseaudio -malsa_seq -o midi.autoconnect 1 [SOUND_FONT]
. Ajustez les options individuelles en fonction de votre environnement.
Je pense que cela dépend du système d'exploitation, mais au moins dans ArchLinux, même si TiMidity ++ ou FluidSynth est installé, les polices sonores ne seront pas incluses, il est donc nécessaire de l'inclure séparément. Lors de la conversion de la police sonore installée en démon, spécifiez-la dans l'argument tel que / etc / timidity ++ / timidity.conf
dans le cas de TiMidity ++ et dans le cas de FluidSynth.
SDL_SOUNDFONTS
Lors de l'exécution d'un programme à l'aide de SDL_mixer, spécifiez le chemin de la police audio définie ci-dessus comme SDL_SOUNDFONTS = / chemin / vers / soundfont.sf2. / Programme
. Je ne l'ai pas essayé, mais je pense que c'est correct de le définir avec .bashrc
etc.
Il devrait être joué par le travail jusqu'à présent, mais s'il ne joue pas, veuillez vérifier s'il est coupé au cas où. Dans ce cas, il a été bien joué jusqu'à présent.
L'information sur SDL_SOUNDFONTS
n'a pas été trouvée et a été installée, et quand elle a été trouvée, elle a été écrite comme information lors de la combinaison de Fluid Synth avec SDL_mixer, donc c'était difficile à trouver. Comme je l'ai écrit dans l'environnement d'exploitation, cela peut avoir changé dans SDL2 car c'est ** une histoire en SDL au lieu de SDL2 **.