summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 4c631bf)
raw | patch | inline | side by side (parent: 4c631bf)
author | fgsfds <pvt.fgsfds@gmail.com> | |
Mon, 2 Sep 2019 18:29:30 +0000 (21:29 +0300) | ||
committer | fgsfds <pvt.fgsfds@gmail.com> | |
Mon, 2 Sep 2019 18:29:30 +0000 (21:29 +0300) |
use 1 for fluid cpu-cores;
disable reverb and chorus by default
disable reverb and chorus by default
src/engine/e_sound_al.inc | patch | blob | history | |
src/engine/e_soundfile_fluid.pas | patch | blob | history |
index b73b37f760bdc00f7ea75883425a92b4360ee711..38b9bb6109757f788eaf9864e4283b2d07a39385 100644 (file)
e_SoundsArray: array of TSoundRec = nil;
e_ZeroPosition: array [0..2] of ALfloat = (0, 0, 0);
e_ALError: ALenum = 0;
+ e_SoundFont: string = '';
+ e_MusicLerp: Boolean = True;
implementation
function TBasicSound.GetPan(): Single;
var
- Pos: array [0..2] of ALfloat;
+ Pos: array [0..2] of ALfloat = (0, 0, 0);
begin
Result := 0.0;
if InvalidSource() then
index c958c7b86473220dc30b38a356aa396bf90d9d2b..ba9671542c6ded021daad64b7d871d727392c204 100644 (file)
const
DEFAULT_SOUNDFONT = 'data/soundfont.sf2';
-var
- e_Soundfont: string = '';
-
implementation
uses sysutils, utils, e_sound, e_log, ctypes{$IFDEF WINDOWS}, windirs{$ENDIF};
function TFluidLoaderFactory.GetLoader(): TSoundLoader;
begin
- if e_Soundfont = '' then e_Soundfont := FindDefaultSoundfont();
+ if e_SoundFont = '' then e_SoundFont := FindDefaultSoundfont();
Result := TFluidLoader.Create();
end;
FSynth := new_fluid_synth(FluidSettings);
if FSynth = nil then
raise Exception.Create('new_fluid_synth failed');
- Ret := fluid_synth_sfload(FSynth, PChar(e_Soundfont), 1);
+ Ret := fluid_synth_sfload(FSynth, PChar(e_SoundFont), 1);
if Ret = FLUID_FAILED then
raise Exception.Create('fluid_synth_sfload failed');
FPlayer := new_fluid_player(FSynth);
FSynth := new_fluid_synth(FluidSettings);
if FSynth = nil then
raise Exception.Create('new_fluid_synth failed');
- Ret := fluid_synth_sfload(FSynth, PChar(e_Soundfont), 1);
+ Ret := fluid_synth_sfload(FSynth, PChar(e_SoundFont), 1);
if Ret = FLUID_FAILED then
raise Exception.Create('fluid_synth_sfload failed');
FPlayer := new_fluid_player(FSynth);
if FluidSettings <> nil then
begin
fluid_settings_setint(FluidSettings, PChar('synth.midi-channels'), 16);
- fluid_settings_setint(FluidSettings, PChar('synth.cpu-cores'), 0);
+ fluid_settings_setint(FluidSettings, PChar('synth.cpu-cores'), 1);
fluid_settings_setnum(FluidSettings, PChar('synth.sample-rate'), 44100);
fluid_settings_setnum(FluidSettings, PChar('synth.gain'), 1);
+ fluid_settings_setint(FluidSettings, PChar('synth.reverb.active'), 0);
+ fluid_settings_setint(FluidSettings, PChar('synth.chorus.active'), 0);
fluid_settings_setstr(FluidSettings, PChar('player.timing-source'), PChar('sample'));
e_AddSoundLoader(TFluidLoaderFactory.Create());
end;