Skip to content

Commit 5d41aa1

Browse files
committed
- Added SFZ export
- Many small fixes and refactoring
1 parent cae48eb commit 5d41aa1

33 files changed

+2759
-917
lines changed

README.md

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,17 @@
44

55
![SampleTools_UI](screencaps/sample_tools_ui.png)
66

7-
Tools for creating and editing virtual sampled instruments, optimized for DecentSampler by David Hilowitz
7+
Tools for creating and editing virtual sampled instruments
88

9-
https://www.decentsamples.com/product/decent-sampler-plugin/
9+
- Optimized for DecentSampler by David Hilowitz<br/>
10+
free and available for Linux, Mac and Windows<br/>
11+
https://www.decentsamples.com/product/decent-sampler-plugin/
12+
13+
- Sfz output is converted from the generated dspreset<br/>
14+
Sfizz recommended for cross-fade loop feature<br/>
15+
free, opensource and available for Linux, Mac and Windows<br/>
16+
https://github.com/sfztools/sfizz-ui<br/>
17+
(v1.2.2 strongly recommended, v1.2.3 currently has important bugs such as note hanging)
1018

1119
## Installation
1220

@@ -81,15 +89,18 @@ python3 ir_tool_UI.py
8189

8290
![SMP2ds_UI](screencaps/smp2ds_ui.png)
8391

84-
Create Decent Sampler presets from samples in wav or flac format (limited support of aif)
92+
Create Decent Sampler and SFZ presets from samples in wav or flac format (limited support of aif)
8593

86-
Drag and drop a directory with a 'Samples' subdirectory in it to generate a dspreset file
94+
Drag and drop a directory with a 'Samples' subdirectory in it to generate a dspreset and a sfz file
8795

8896
- wav, flac (recommended) and aif (limited support, not recommended) as input for samples
89-
- Samples are added and set according to their 'smpl' chunk/metadata (wav and flac only) and file name pattern matching
90-
97+
- Samples are added and set according to their 'smpl' chunk/metadata (wav and flac only) and file name pattern
98+
matching</br>
9199
Respect for pitch, pitch fraction, loop points
92100
- Fake release, fake legato and fake round-robin features
101+
102+
#### dspreset options
103+
93104
- Automatic creation of a working UI with a customisable color theme
94105
- wav, flac and aif IR files are supported for the convolution reverb, they must be located in an 'IR' subdirectory
95106
- dslibrary file generation from a dspreset directory ready to use or distribute
@@ -124,7 +135,7 @@ Use instrument names as keys with min and max MIDI note number provided as a lis
124135

125136
![DR-DS_UI](screencaps/drds_ui.png)
126137

127-
Create Decent Sampler drum presets from samples in wav, flac or aif
138+
Create Decent Sampler and SFZ drum presets from samples in wav, flac or aif
128139

129140
Similar to SMP2Ds but specialized for drum sets
130141

@@ -136,9 +147,10 @@ Assign samples to drum pads by dropping one or several files (for velocity and r
136147

137148
- Each drum pad can choke itself and any other pad
138149
- Support for velocity and round-robin according to file names with pattern matching
139-
- Automatic creation of a working UI with a customisable color theme
140150

151+
#### dspreset options
141152

153+
- Automatic creation of a working UI with a customisable color theme
142154
- wav, flac and aif IR files are supported for the convolution reverb, they must be located in an 'IR' subdirectory
143155
- dslibrary file generation from a dspreset directory ready to use or distribute
144156

__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@
66
:date: 2024.05
77
"""
88

9-
__version__ = '1.3.3'
9+
__version__ = '1.3.4'

plt_cfg/FlatRed_plt_cfg.json

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
{
2+
"textColor": {
3+
"0": "ffffffff"
4+
},
5+
"trackBackgroundColor": {
6+
"0": "7f000000"
7+
},
8+
"control": {
9+
"expression": "ffdfdfdf",
10+
"modulation": "ffdfdfdf",
11+
"reverb": "ffdfdfdf"
12+
},
13+
"other": {
14+
"ampVelTrack": "ffbfbfbf",
15+
"release": "ffdfdfdf"
16+
},
17+
"backgroundRamp": {
18+
"0": "ffff0000"
19+
},
20+
"group": {
21+
"Gray50": "ffbfbfbf"
22+
},
23+
"muteButton": {
24+
"0": "ffbfbfbf"
25+
},
26+
"backgroundText": {
27+
"0": "ffffffff",
28+
"1": "ccffffff"
29+
},
30+
"keyboard": {
31+
"0": "ff3f3f3f",
32+
"1": "ffdfdfdf"
33+
}
34+
}

plt_cfg/GradRed_plt_cfg.json

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
{
2+
"textColor": {
3+
"0": "ffffffff"
4+
},
5+
"trackBackgroundColor": {
6+
"0": "7f000000"
7+
},
8+
"control": {
9+
"expression": "ffdfdfdf",
10+
"modulation": "ffdfdfdf",
11+
"reverb": "ffdfdfdf"
12+
},
13+
"other": {
14+
"ampVelTrack": "ffbfbfbf",
15+
"release": "ffdfdfdf"
16+
},
17+
"backgroundRamp": {
18+
"0": "ff7f0000",
19+
"1": "ffff0000"
20+
},
21+
"group": {
22+
"Gray50": "ffbfbfbf"
23+
},
24+
"muteButton": {
25+
"0": "ffbfbfbf"
26+
},
27+
"backgroundText": {
28+
"0": "ffffffff",
29+
"1": "ccffffff"
30+
},
31+
"keyboard": {
32+
"0": "ff3f3f3f",
33+
"1": "ffdfdfdf"
34+
}
35+
}

requirements.txt

0 Bytes
Binary file not shown.

sample_tools_UI.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,12 @@
1414
from functools import partial
1515
from pathlib import Path
1616

17-
from dark_fusion_style import apply_dark_theme
18-
1917
from PyQt5 import QtWidgets, QtCore, QtGui, Qt
2018

2119
from __init__ import __version__ # noqa
20+
from dark_fusion_style import apply_dark_theme
2221

23-
from tools.simple_logger import SimpleLogger
22+
# from tools.simple_logger import SimpleLogger
2423

2524
if getattr(sys, 'frozen', False):
2625
import pyi_splash # noqa

screencaps/drds_ui.png

2.04 KB
Loading

screencaps/rename_tool_ui.png

-1 Bytes
Loading

screencaps/smp2ds_ui.png

6.89 KB
Loading

screencaps/split_tool_ui.png

1 Byte
Loading

0 commit comments

Comments
 (0)