spessasynth_core 4.4.5 → 4.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -50,7 +50,7 @@ a more capable MIDI editor, and a faster synthesis engine!
50
50
  - **Modular design:** _Easy integration into other projects (only load what you need)_
51
51
  - **Flexible:** _It's not just a MIDI player!_
52
52
  - **Easy to Use:** _Basic setup is
53
- just [two lines of code!](https://spessasus.github.io/spessasynth_core/getting-started#minimal-setup)_
53
+ just [a few lines of code!](https://spessasus.github.io/spessasynth_core/getting-started#minimal-setup)_
54
54
  - **Minimal dependencies:** _Only tiny `fflate` for XMF and `stb-vorbis` for SF3 support!_
55
55
  - **Full TypeScript definitions:** _Autocompletion in IDEs!_
56
56
 
@@ -82,7 +82,7 @@ a more capable MIDI editor, and a faster synthesis engine!
82
82
  - **Reverb:** _Multiple characters including delay and panning delay!_
83
83
  - **Chorus:** _Modulated delay lines with multiple presets!_
84
84
  - **Delay:** _Three delay lines for all of your delay needs!_
85
- - **Insertion Effects:** _The ultimate effects, they can give your sounds a completely different character! (limited support)_
85
+ - **Insertion Effects:** _The ultimate effects, they can give your sounds a completely different character! (all 64 SC-88Pro EFX types)_
86
86
  - **GS and XG Compatible:** _MIDI files can configure the effects accurately!_
87
87
  - **Replaceable:** _Effects not to your liking? You can replace them with your own!_
88
88
  - **Excellent MIDI Standards Support:**
@@ -98,7 +98,7 @@ a more capable MIDI editor, and a faster synthesis engine!
98
98
  - [**AWE32**
99
99
  NRPN Compatibility Layer](https://spessasus.github.io/spessasynth_core/extra/midi-implementation#awe32-nrpn-compatibility-layer)
100
100
  - [**Roland GS** and **Yamaha XG**
101
- support!](https://spessasus.github.io/spessasynth_core/extra/midi-implementation#supported-system-exclusives)
101
+ support!](https://spessasus.github.io/spessasynth_core/extra/midi-implementation#system-exclusives)
102
102
 
103
103
  ### Powerful and Fast MIDI Sequencer
104
104
 
@@ -121,14 +121,14 @@ a more capable MIDI editor, and a faster synthesis engine!
121
121
  - **Used channels on track:** _Quickly determine which channels are used!_
122
122
  - **Key range detection:** _Detect the key range of the MIDI!_
123
123
  - **Easy MIDI editing:**
124
- Use [helper functions](https://spessasus.github.io/spessasynth_core/writing-files/midi#modifymidi) to modify the
124
+ Use [helper functions](https://spessasus.github.io/spessasynth_core/classes/BasicMIDI/#modify) to modify the
125
125
  song to your needs!
126
126
  - **Loop detection:** _Automatically detects loops in MIDIs (e.g., from **Touhou Project**)_
127
127
  - **First note detection:** _Skip unnecessary silence at the start by jumping to the first note!_
128
128
  - **Lyrics support:** _Both regular MIDI and .kar files!_
129
- - **[Write MIDI files from scratch](https://spessasus.github.io/spessasynth_core/midi/creating-midi-files)**
129
+ - **[Write MIDI files from scratch](https://spessasus.github.io/spessasynth_core/classes/MIDIBuilder/)**
130
130
  - **Easy saving:** _Save with
131
- just [one function!](https://spessasus.github.io/spessasynth_core/writing-files/midi#writemidi)_
131
+ just [one function!](https://spessasus.github.io/spessasynth_core/classes/BasicMIDI/#writemidi)_
132
132
 
133
133
  #### Read and write [RMID files with embedded sound banks](https://github.com/spessasus/sf2-rmidi-specification#readme)
134
134
 
@@ -140,7 +140,7 @@ a more capable MIDI editor, and a faster synthesis engine!
140
140
  encoding!)_
141
141
  - **Compatible with [Falcosoft MIDI Player 6!](https://falcosoft.hu/softwares.html#midiplayer)**
142
142
  - **Easy saving:**
143
- _[As simple as saving a MIDI file!](https://spessasus.github.io/spessasynth_core/writing-files/midi#writermidi)_
143
+ _[As simple as saving a MIDI file!](https://spessasus.github.io/spessasynth_core/classes/BasicMIDI/#writermidi)_
144
144
 
145
145
  #### Read and play XMF files
146
146
 
@@ -161,25 +161,28 @@ a more capable MIDI editor, and a faster synthesis engine!
161
161
  #### Read and write SoundFont2 files
162
162
 
163
163
  - **Easy info access:** _Just
164
- an [object of strings!](https://spessasus.github.io/spessasynth_core/sound-bank#soundbankinfo)_
164
+ an [object of strings!](https://spessasus.github.io/spessasynth_core/classes/BasicSoundBank/#soundbankinfo)_
165
165
  - **Smart trimming:** Trim the sound bank to only include samples used in the MIDI _(down to key and velocity!)_
166
- - **SF3 conversion:** _Compress SoundFont2 files to SoundFont3 with variable quality!_
167
- - **Easy saving:** _Also just [one function!](https://spessasus.github.io/spessasynth_core/sound-bank#write)_
166
+ - **SF3 conversion:** _Compress SoundFont2 files to SoundFont3 with an encoder of your choice
167
+ ([see the example](https://github.com/spessasus/spessasynth_core/blob/master/examples/compress_to_sf3.ts))!_
168
+ - **Easy saving:** _Also just [one function!](https://spessasus.github.io/spessasynth_core/classes/BasicSoundBank/#writesf2)_
169
+ - **SFE support:** _Experimental reading and writing of [SF-Enhanced](https://sfe-team-was-taken.github.io/SFE/) banks!_
168
170
 
169
171
  #### Read and write SoundFont3 files
170
172
 
171
- - Same features as SoundFont2 but with now with **Ogg Vorbis compression!**
173
+ - Same features as SoundFont2 but now with **Ogg Vorbis compression!**
172
174
  - **Variable compression quality:** _You choose between file size and quality!_
173
175
  - **Compression preserving:** _Avoid decompressing and recompressing uncompressed samples for minimal quality loss!_
174
- - **Custom compression function:** _Want a different format than Vorbis? No problem!_
176
+ - **Custom compression function:** _You supply the encoder, so other formats than Vorbis can be written too
177
+ (SpessaSynth only plays Ogg Vorbis back)._
175
178
 
176
179
  #### Read and write DLS Level One or Two files
177
180
 
178
181
  - Read DLS (DownLoadable Sounds) files like SF2 files!
179
182
  - **Native support:** _Saving it as sf2 is
180
- still [just one function!](https://spessasus.github.io/spessasynth_core/sound-bank#write)_
183
+ still [just one function!](https://spessasus.github.io/spessasynth_core/classes/BasicSoundBank/#writesf2)_
181
184
  - _That's right, saving as DLS is
182
- also [just one function!](https://spessasus.github.io/spessasynth_core/sound-bank#writedls)_
185
+ also [just one function!](https://spessasus.github.io/spessasynth_core/classes/BasicSoundBank/#writedls)_
183
186
  - Converts articulators to both **modulators** and **generators**!
184
187
  - Works with both unsigned 8-bit samples and signed 16-bit samples!
185
188
  - **A-Law encoding support:** _Sure, why not?_
@@ -195,7 +198,7 @@ a more capable MIDI editor, and a faster synthesis engine!
195
198
  - **Cue points:** _Write MIDI loop points as cue points!_
196
199
  - **Loop multiple times:** _Render two (or more) loops into the file for seamless transitions!_
197
200
  - _That's right, saving as WAV is
198
- also [just one function!](https://spessasus.github.io/spessasynth_core/writing-files/wav#audiobuffertowav)_
201
+ also [just one function!](https://spessasus.github.io/spessasynth_core/functions/audioToWav/)_
199
202
 
200
203
  ### Limitations
201
204
 
@@ -215,7 +218,7 @@ a more capable MIDI editor, and a faster synthesis engine!
215
218
  - [Meltysynth](https://github.com/sinshu/meltysynth) - for the initial low-pass filter implementation
216
219
  - [RecordingBlogs](https://www.recordingblogs.com/) - for detailed explanations on MIDI messages
217
220
  - [fflate](https://github.com/101arrowz/fflate) - for the MIT DEFLATE implementation
218
- - [tsup](https://github.com/egoist/tsup) - for the TypeScript bundler
221
+ - [tsdown](https://github.com/rolldown/tsdown) - for the TypeScript bundler
219
222
  - [foo_midi](https://github.com/stuerp/foo_midi) - for useful resources on XMF file format
220
223
  - [Falcosoft](https://falcosoft.hu) - for help with the RMIDI format
221
224
  - [Christian Collins](https://schristiancollins.com) - for various bug reports regarding the synthesizer