
ADLMIDI Player
A simple OPL3 Synth based MIDI Player with use of libADLMIDI
WohlstandFox · ru.wohlsoft.adlmidiplayer
UpdatedFeb 15, 2026
PublishedMar 28, 2021
Packageru.wohlsoft.adlmidiplayer
MD5e52f69b84b643ffb854f4a7f5b93eb1e
SHA1 (signer)78:38:FA:B8:C0:81:50:D5:CA:E0:E0:84:54:21:25:77:EE:49:D8:FD
Signed byCN=Vitaly Novichkov, OU=WohlSoft, O=Wohlhabend Network, L=Moscow, ST=Moscow City, C=RU
Architecturesx86, x86-64, armeabi-v7a, arm64-v8a
Malware scanTRUSTED
Websitehttps://github.com/Wohlstand
Contact[email protected]
What's new
- Updated Android SDK target to 15
- Updated libADLMIDI to 1.6.0
- Updated libADLMIDI to 1.6.0
Description
It's a small and simple MIDI player with OPL3 (Yamaha YMF262) FM synthesis. The player can play any MIDI, MUS, XMI, or IMF file you will have on your device. Player has 76 embedded banks from various DOS games, musical software, and some other timbre banks you can choose to get the different sounding of your music. At the same time, you can use external timbre bank file in WOPL format.
# Key features of the libADLMIDI synthesizer:
* OPL3 emulation with four-operator mode support
* Embedded FM patches from a number of known PC games, copied from files typical to AIL = Miles Sound System / DMX / HMI = Human Machine Interfaces / Creative IBK
* Stereo sound
* Number of simulated OPL3 chips can be specified as 1-100 (maximum channels 1800!)
* Pan (binary panning, i.e. left/right side on/off)
* Pitch-bender with adjustable range
* Vibrato that responds to RPN/NRPN parameters
* Sustain (a.k.a. Pedal hold) and Sostenuto enable/disable
* MIDI and RMI file support
* Real-Time MIDI API support
* loopStart / loopEnd tag support (Final Fantasy VII)
* 111'th controller based loop start (RPG-Maker)
* Use automatic arpeggio with chords to relieve channel pressure
* Support for multiple concurrent MIDI synthesizers (per-track device/port select FF 09 message), can be used to overcome 16 channel limit
* Support for playing Id-software Music File format (IMF)
* Support for custom banks of WOPL format (Specification of it can be found here: https://github.com/Wohlstand/OPL3BankEditor/blob/master/Specifications/WOPL-and-OPLI-Specification.txt)
* Partial support for GS and XG standards (having more instruments than in one 128:128 GM set and ability to use multiple channels for percussion purposes, and support for some GS/XG exclusive controllers)
* CC74 "Brightness" affects a modulator scale (to simulate frequency cut-off on WT synths)
* Portamento support (CC5, CC37, and CC65)
* SysEx support that supports some generic, GS, and XG features
* Full-panning stereo option (works for emulators only)
# Links
* The source code of player: https://github.com/Wohlstand/ADLMIDI-Player-Java
* The source code of libADLMIDI: https://github.com/Wohlstand/libADLMIDI
* The OPL3 bank editor which allows you to create or modify WOPL timbre bank files: https://github.com/Wohlstand/OPL3BankEditor/
# Key features of the libADLMIDI synthesizer:
* OPL3 emulation with four-operator mode support
* Embedded FM patches from a number of known PC games, copied from files typical to AIL = Miles Sound System / DMX / HMI = Human Machine Interfaces / Creative IBK
* Stereo sound
* Number of simulated OPL3 chips can be specified as 1-100 (maximum channels 1800!)
* Pan (binary panning, i.e. left/right side on/off)
* Pitch-bender with adjustable range
* Vibrato that responds to RPN/NRPN parameters
* Sustain (a.k.a. Pedal hold) and Sostenuto enable/disable
* MIDI and RMI file support
* Real-Time MIDI API support
* loopStart / loopEnd tag support (Final Fantasy VII)
* 111'th controller based loop start (RPG-Maker)
* Use automatic arpeggio with chords to relieve channel pressure
* Support for multiple concurrent MIDI synthesizers (per-track device/port select FF 09 message), can be used to overcome 16 channel limit
* Support for playing Id-software Music File format (IMF)
* Support for custom banks of WOPL format (Specification of it can be found here: https://github.com/Wohlstand/OPL3BankEditor/blob/master/Specifications/WOPL-and-OPLI-Specification.txt)
* Partial support for GS and XG standards (having more instruments than in one 128:128 GM set and ability to use multiple channels for percussion purposes, and support for some GS/XG exclusive controllers)
* CC74 "Brightness" affects a modulator scale (to simulate frequency cut-off on WT synths)
* Portamento support (CC5, CC37, and CC65)
* SysEx support that supports some generic, GS, and XG features
* Full-panning stereo option (works for emulators only)
# Links
* The source code of player: https://github.com/Wohlstand/ADLMIDI-Player-Java
* The source code of libADLMIDI: https://github.com/Wohlstand/libADLMIDI
* The OPL3 bank editor which allows you to create or modify WOPL timbre bank files: https://github.com/Wohlstand/OPL3BankEditor/
Required features
- Faketouch android.hardware.faketouch
Permissions (4)
ADLMIDI Player requests the following Android permissions:
- Foreground Service android.permission.FOREGROUND_SERVICE
- Foreground Service Media Playback android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK
- Post Notifications android.permission.POST_NOTIFICATIONS
- Ru Wohlsoft Adlmidiplayer Dynamic Receiver Not Exported Permission ru.wohlsoft.adlmidiplayer.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION