Commit graph

337 commits

Author SHA1 Message Date
Lars Sundström
f921c6acd9 AUDIO: Fix problem where fluidsynth soundfont could not be loaded
The user can specify a custom soundfont to be used with fluidsynth.
There was previously a hack for the iOS7 backend to get the path to
the document folder where the user can put files in a sandboxed
environment. This hack was removed in commit:
cac0664757

The problem however occurred when creating a FSNode from the full
system path because FSNode uses makeFileNodePath, which already
prepends the root. So the full path is added twice which causes the
fileNode.exists() to fail.

Create the FSNode from the path to the soundfont and check if the
file exist. If so then return the full path.

Cherry-pick of: addbdc13c5
Git conflict manually fixed
2024-03-02 12:06:27 +01:00
Thierry Crozat
cac0664757 AUDIO: Improve code to map the soundfont path to system path on iOS
The code looks a bit less hack-ish and also now supports using path
in the application bundle and not only in the documents folder. It
could also help for other backends using a sandoxed filesystem.
2023-12-03 16:17:32 +00:00
Thierry Crozat
f47d915ec0 AUDIO: Support specifying a soundfont in the ConfMan default domain 2023-12-03 16:17:32 +00:00
Thierry Crozat
6fc56a6333 AUDIO: Add lookup of fluidsynth soundfont using SearchMan or a soundfontpath config 2023-12-03 16:17:32 +00:00
Coen Rampen
f1abbff901 MIDI: Update FluidSynth settings
This updates the FluidSynth settings to the value ranges and defaults used by
the current version 2.3.4.

Reverb
- Room size: 0.00-1.20 / 0.20 to 0.00-1.00 / 0.20
- Width: 0-100 / 1 to 0.0-100.0 / 0.5
Chorus
- Level: 0.00-1.00 / 1.00 to 0.00 - 10.00 / 2.00
- Speed: 0.30-5.00 / 0.30 to 0.10-5.00 / 0.30
- Depth: 0.0-21.0 / 8.0 to 0.0-256.0 / 8.0
2023-11-25 22:26:53 +01:00
sluicebox
01ab50eae6 AUDIO: FM-TOWNS/PC-98: Fix array init. PVS-Studio V512
The intent was to initialize a two dimensional array but instead only
the first 257 of 510 bytes were initialized.
2023-11-19 20:29:44 -08:00
Le Philousophe
2e68867e98 AUDIO: Remove dynamic load of EAS for Android and fix DLS loading
Android 7 prevents loading of private libraries like AES.
DLS support was also broken because of a change in API.
2023-08-06 14:10:50 +02:00
Cameron Cawley
37764d86fc AUDIO: Support building the EAS MIDI driver on non-Android platforms 2023-08-06 14:10:50 +02:00
Misty De Meo
ea8ee0291c
AUDIO: remove unused variable assignment in dbopl 2023-06-17 10:12:30 -07:00
Thierry Crozat
a0e32ee370 IOS7: Remove support for non-sandboxed mode 2023-04-26 22:31:31 +01:00
Eugene Sandulenko
7e7683db44
AUDIO: MT32: sprintf -> snprintf 2023-03-17 16:58:44 +01:00
Eugene Sandulenko
511a77f643
AUDIO: Avoid including translations.h in header file 2023-03-17 14:37:50 +01:00
Le Philousophe
a725253a18 ANDROID: Make sure EAS driver is open before using its functions
This prevents crashes when the library cannot be found
2023-02-15 08:21:04 +01:00
Le Philousophe
e2357fc35c ANDROID: Allow to load soundfont through SAF 2023-02-15 08:21:04 +01:00
Le Philousophe
ab5718055b AUDIO: Add in-memory soundfont support for FluidLite 2023-02-15 08:21:04 +01:00
Cameron Cawley
5870b7d599 AUDIO: Reduce the static table sizes in the SID emulator 2022-12-22 23:46:52 +01:00
Cameron Cawley
6cf3487803 AUDIO: Merge the DOSBoxCMS and CMSEmulator classes 2022-12-01 00:28:56 +02:00
Cameron Cawley
8c40151285 AUDIO: Use fixed-point arithmetic in the CMS emulator 2022-11-29 00:14:00 +01:00
Cameron Cawley
29923889d9 AUDIO: Backport commit r4010 from DOSBox to the CMS emulator
Correct oscillator frequency used in the gameblaster. Thanks OPLx, Great Hierophant and NewRisingSun. Reported on VOGONS: 38350.
2022-11-26 23:06:21 +02:00
Cameron Cawley
99485ac757 AUDIO: Backport commit r3523 from DOSBox to the CMS emulator
CMS/Gameblaster: add sbtype=gb, fix base addresses other than 220h, fix lack of sound when starting from autoexec, add autodetection (Thanks robertmo and Cloudschatze)
2022-11-26 23:06:21 +02:00
Hubert Maier
abcf7ba960 JANITORIAL: AUDIO: Correct Spelling Mistakes
occured -> occurred
occassionally -> occasionally
rythm -> rhythm
2022-11-15 22:52:43 +02:00
AndywinXp
35e2b3b15e AUDIO: Fix build 2022-10-27 16:25:51 +02:00
Hubert Maier
5b98653ec3
AUDIO: Correct spelling mistake
loose -> lose
2022-10-27 15:56:03 +02:00
Hubert Maier
842aa95765
AUDIO: Correct spelling mistake
rythm -> rhythm
2022-10-27 15:56:03 +02:00
athrxx
4cacd66d0d AUDIO: code style fixes 2022-10-17 23:03:05 +02:00
D G Turner
3eb6f98e6f AUDIO: MT32: Restore Fix For Internal Sample Rate Converter Code
This was previously disabled implicitly by the missing define
symbols in the SampleRateConvertor module. This has now been enabled
to use the internal rate convertor code.

This was generating undefined macro warnings from GCC when -Wundef
was passed.
2022-09-16 06:22:22 +01:00
Lothar Serra Mari
d94505d46e AUDIO: MT32: Update MT32 emulation code to mt32emu 2.7.0 2022-09-15 11:52:47 +02:00
athrxx
7c5b367b54 AUDIO: (FM-TOWNS) - restore audio cd settings on exit
(The cd audio manager is a global object. It keeps its settings
when returning to the launcher)
2022-09-14 17:18:24 +02:00
Donovan Watteau
27f9a460b5 JANITORIAL: Fix "the the" and similar typos 2022-07-29 19:36:40 +03:00
Eugene Sandulenko
5e05f93f36
ALL: Remove Symbian port 2022-05-28 12:32:29 +02:00
Coen Rampen
021a828e2e AUDIO: Decouple CMS emulator from engines
This commit adds a mediator class to decouple the CMS emulator from the engines
that use it. This allows for easier updating or replacement of the emulator or
addition of new emulators. It also enables using the emulator via a callback
mechanism.
2022-05-16 12:18:10 +02:00
D G Turner
9af3ef5e88 AUDIO: MT32: Fix Undefined Macro Compiler Warnings
These were emitted by GCC when -Wundef was passed.
2022-03-21 21:37:04 +00:00
D G Turner
a1de9a95c6 AUDIO: MT32: Fix Internal Sample Rate Converter Code
This was previously disabled implicitly by the missing define
symbols in the SampleRateConvertor module. This has now been enabled
to use the internal rate convertor code.

This was generating undefined macro warnings from GCC when -Wundef
was passed.
2022-03-20 22:54:04 +00:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh
2bd0347968 AUDIO: Use override
Using clang-tidy modernize-use-override
2021-11-14 20:14:11 +02:00
Orgad Shaneh
af529f568b AUDIO: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 13:41:02 +02:00
Orgad Shaneh
7a4e5612de JANITORIAL: Replace new[]/memset with new[]()
Mostly done using the following Ruby script:

(Dir.glob('**/*.cpp') + Dir.glob('**/*.h')).each do |file|
  s = File.read(file, encoding: 'iso8859-1')
  t = s.gsub(/(([\w_.\[\]]+)\s*=\s*new\s+\S+?\[[^\]]+?\](?!\())([^\{\}]*?)\n\s+memset\(\s*\2\s*,\s*0\s*,[^;]*;/m, '\1()\3')
  if t != s
    File.open(file, 'w') { |io| io.write(t) }
  end
end
2021-11-10 19:53:15 +01:00
D G Turner
46ca3865f0 AUDIO: (FM-TOWNS): Update Comment on Dead Code 2021-10-31 18:51:10 +00:00
D G Turner
6a3310eb6f AUDIO: (FM-TOWNS): Fix Duplicated Branch GCC Warning 2021-10-29 18:02:59 +01:00
Coen Rampen
2661548758 AUDIO: Fix stray ; and some warnings 2021-09-27 23:40:54 +02:00
Coen Rampen
5362b1b302 AUDIO: Add command queue to PC speaker emulator
This adds a command queue to the PC speaker emulator for PWM-style sounds that
need timing of less than a millisecond. The play method only supports
milliseconds and requires real time control, which is difficult to achieve with
microsecond timings.
The new playQueue method allows you to queue up playback instructions with
microsecond timing, which are executed when audio samples need to be generated.
2021-09-27 21:45:40 +02:00
Eugene Sandulenko
198975a007
AUDIO: Fix message format 2021-08-23 16:26:31 +02:00
Cameron Cawley
674094016a AUDIO: Fix missing include 2021-07-09 17:09:32 +01:00
Lothar Serra Mari
9dd2070243 AUDIO: MT32: Bump MT32 emulation code to libmt32emu 2.5.1 2021-07-04 16:28:57 +02:00
athrxx
a370d45d98 AUDIO: (FM-TOWNS/PC-98) - adapt mutex handling to latest mixer code changes 2021-06-25 00:07:47 +02:00
Torbjörn Andersson
f7b96c57f7 MT32: Don't show LCD messages on-screen if they contain only spaces
E.g. the first message in Operation Stealth. It just looks like
something went wrong.
2021-06-12 13:14:51 +02:00
Cameron Cawley
c38e3bdc2a AUDIO: Support building with FluidLite 2021-04-25 20:39:55 +03:00
Lothar Serra Mari
24a27f6568 MT32: Fix definitions 2021-04-10 16:09:54 +02:00
Lothar Serra Mari
357744069c MT32: Update munt emulation code to libmt32emu 2.5.0 2021-04-10 16:09:54 +02:00
Le Philousophe
d0d38b0199 FLUIDSYNTH: Fix compilation with Fluidsynth 2.2
We replace deprecated functions as well
2021-04-08 21:04:41 +02:00