Reads and outputs FM parameters contained within DefleMask's DMP files as well as libOPNMIDI WOPN files
Project description
DefleMask Preset Viewer
Reads Deflemask preset files (DMP) and displays the stored parameters. Also supports dumping of bank and instrument data of WOPN files as used by libOPNMIDI
Supported Formats
- DefleMask preset versions 8 and 11
- WOPN versions 1 and 2
Installation
$ pip3 install deflemask-preset-viewer
Usage
Output Parameters to Console
DMP files
$ deflemask-preset-viewer deflemask_preset_viewer/tests/data/sample.dmp
Version 8 FM Unknown
Algorithm 3 LFO FMS 0
Feedback 0 LFO AMS 0
------------------------------------------------------------
Parameter Op 1 Op 2 Op 3 Op 4
------------------------------------------------------------
MUL 14 1 0 0
TL 39 24 24 19
AR 31 31 31 31
D1R 15 14 9 9
D1L 14 14 14 14
RR 15 15 15 15
AM 0 0 0 0
RS 2 0 0 0
DT1 3 3 3 3
D2R 0 0 0 0
SSG 0 0 0 0
WOPN files
$ deflemask-preset-viewer deflemask_preset_viewer/tests/data/sample.wopn
WOPN
M_Banks 2
P_Banks 5
LFO On
LFO Freq 1
============================================================
M. Bank 0 Standard :3
============================================================
============================================================
Instrument 0 * GrandPiano
============================================================
Algorithm 2 LFO FMS 0
Feedback 0 LFO AMS 0
------------------------------------------------------------
Parameter Op 1 Op 2 Op 3 Op 4
------------------------------------------------------------
MUL 1 4 2 1
TL 39 36 4 2
AR 26 24 31 27
D1R 7 9 23 4
D1L 7 6 9 10
RR 1 7 1 6
AM 0 0 0 0
RS 1 1 3 2
DT1 0 6 7 3
D2R 4 9 15 4
SSG 0 0 0 0
============================================================
Instrument 1 * BrightPiano
============================================================
Algorithm 5 LFO FMS 0
Feedback 7 LFO AMS 0
------------------------------------------------------------
...
Output as C Code
It can also generate C code for inclusion in the Mega Drive MIDI Interface project. Specify -c
to output parameters in this way:
DMP files
$ deflemask-preset-viewer deflemask_preset_viewer/tests/data/sample.dmp -c
static const Channel SAMPLE = { 3, 0, 3, 0, 0, 0, 0,
{ 14, 3, 31, 2, 15, 0, 14, 0, 15, 39, 0 },
{ 1, 3, 31, 0, 14, 0, 14, 0, 15, 24, 0 },
{ 0, 3, 31, 0, 9, 0, 14, 0, 15, 24, 0 },
{ 0, 3, 31, 0, 9, 0, 14, 0, 15, 19, 0 } };
WOPN files
$ deflemask-preset-viewer deflemask_preset_viewer/tests/data/sample.wopn -c
static const Channel M_BANK_0_INST_0_GRANDPIANO = { 2, 0, 3, 0, 0, 0, 0, {
{ 1, 0, 26, 1, 7, 0, 7, 4, 1, 39, 0 },
{ 4, 6, 24, 1, 9, 0, 6, 9, 7, 36, 0 },
{ 2, 7, 31, 3, 23, 0, 9, 15, 1, 4, 0 },
{ 1, 3, 27, 2, 4, 0, 10, 4, 6, 2, 0 } } };
static const Channel M_BANK_0_INST_1_BRIGHTPIANO = { 5, 7, 3, 0, 0, 0, 0, {
{ 4, 2, 27, 1, 9, 0, 11, 5, 6, 33, 0 },
{ 4, 5, 27, 1, 9, 0, 7, 9, 7, 18, 0 },
{ 1, 2, 27, 1, 5, 1, 10, 5, 6, 8, 0 },
{ 6, 5, 27, 1, 9, 0, 3, 8, 7, 9, 0 } } };
...
static const Channel M_BANK_0_INST_127_GUNSHOT = { 5, 7, 3, 0, 1, 0, 0, {
{ 3, 3, 31, 0, 3, 0, 15, 17, 5, 4, 0 },
{ 1, 0, 31, 0, 20, 0, 15, 20, 8, 0, 0 },
{ 1, 0, 31, 0, 15, 0, 15, 31, 8, 0, 0 },
{ 1, 0, 31, 0, 15, 0, 15, 16, 11, 0, 0 } } };
static const Channel M_BANK_0[] = {
M_BANK_0_INST_0_GRANDPIANO,
M_BANK_0_INST_1_BRIGHTPIANO,
...
M_BANK_0_INST_127_GUNSHOT
};
Build & Test
$ make test
Credits
- This project includes FM samples in its automated tests by Wohlstand.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for deflemask-preset-viewer-0.2.4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | ecbd458cf9d21a4f81e6a9d4db61a98cee8f7fa4220a75c4a5edd3671f83bd64 |
|
MD5 | d9bef8783c59b7fb0070e86748c573d2 |
|
BLAKE2b-256 | 47abecd35d72bdf503c186eb28dc62776faa635bcd0394792d8a4097e2756d30 |
Close
Hashes for deflemask_preset_viewer-0.2.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e96232e2a92178bed27a4ab2179eed6f0ed8e696b35321a6d19b4b2ab108081f |
|
MD5 | 403b428a53ee4452916857c44e1e7b8b |
|
BLAKE2b-256 | d1e11a70d270dedb1c07917d6e40cbfaf30715a14eef5bcbcfb3ae63ecf87098 |