70 |
<code lang="sfz">script</code> opcode for this purpose. So NKSP scripts |
<code lang="sfz">script</code> opcode for this purpose. So NKSP scripts |
71 |
are no longer limited to our Giga engine. |
are no longer limited to our Giga engine. |
72 |
</p> |
</p> |
73 |
|
<p> |
74 |
|
And yes, as you can see from the SFZ opcode links here, we also |
75 |
|
started documenting the actual SFZ file format. You wanna help us |
76 |
|
on completing the SFZ file format documentation? Great! Have a look |
77 |
|
at <a href="01_writing_docs.html">how articles are written for this site</a> and |
78 |
|
<a href="https://sourceforge.net/projects/linuxsampler/lists/linuxsampler-devel">get in touch with us</a>! |
79 |
|
</p> |
80 |
|
|
81 |
<h3>New GigaStudio format features</h3> |
<h3>New GigaStudio format features</h3> |
82 |
<p> |
<p> |
89 |
Most notably you |
Most notably you |
90 |
now have options to control envelope generators' state machines. |
now have options to control envelope generators' state machines. |
91 |
For example you can now define whether a certain EG state should |
For example you can now define whether a certain EG state should |
92 |
either be aborted or continued to its end when a note off arrived. |
either be aborted or continued to its end when a note off arrived |
93 |
|
(or on a note on in the release stage). |
94 |
These controls are especially useful for certain kinds of sounds |
These controls are especially useful for certain kinds of sounds |
95 |
like percussive instruments.<br> |
like percussive instruments.<br> |
96 |
<br> |
<br> |
156 |
script editor's "Apply" button or using Ctrl+S keyboard shortcut, then |
script editor's "Apply" button or using Ctrl+S keyboard shortcut, then |
157 |
the script is automatically reloaded by the sampler. So you no longer |
the script is automatically reloaded by the sampler. So you no longer |
158 |
have to reload the respective instrument manually while you are |
have to reload the respective instrument manually while you are |
159 |
developing instrument scripts. There are also visual enhancements for the |
developing instrument scripts.<br> |
160 |
|
<br> |
161 |
|
There are also visual enhancements for the |
162 |
script editor, for example the line numbers are now shown on the left, |
script editor, for example the line numbers are now shown on the left, |
163 |
the font size can be altered by the user, and unused code portions (i.e. |
the font size can be altered by the user, and unused code portions (i.e. |
164 |
disabled by <a href="01_nksp.html#preprocessor_statements">NKSP preprocessor statements</a>) |
disabled by <a href="01_nksp.html#preprocessor_statements">NKSP preprocessor statements</a>) |
165 |
are automatically striked through. That way you can immediately see |
are automatically striked through. That way you can immediately see |
166 |
which code portions of your scripts are actually used, and which are not.<br> |
which code portions of your scripts are actually used, and which are not. |
167 |
|
Everything you see striked through is completely ignored by the sampler.<br> |
168 |
<br> |
<br> |
169 |
As as side note, you may have noticed a handy new built-in preprocessor |
As as side note, you may have noticed a handy new built-in preprocessor |
170 |
condition in LinuxSampler 2.1.0 which can be enabled with |
condition in LinuxSampler 2.1.0 which can be enabled with |
177 |
<h3>Macros</h3> |
<h3>Macros</h3> |
178 |
<p> |
<p> |
179 |
Another major new feature in this release are macros. |
Another major new feature in this release are macros. |
180 |
A macro is a set of changes that should be applied to currently selected instrument. |
A macro is a set of changes that should be applied to the currently selected instrument. |
181 |
</p> |
</p> |
182 |
<p> |
<p> |
183 |
<img src="gigedit_macros_setup.png" title="Macro List (Gigedit)"> |
<img src="gigedit_macros_setup.png" title="Macro List (Gigedit)"> |
184 |
Such macros can be reviewed and edited, and they can be saved permanently for |
Such macros can be reviewed and edited, and they can be saved permanently for |
185 |
example as templates for common instrument creation tasks. Macros can be |
as templates for common instrument creation tasks. Macros can be |
186 |
assigned to F keys on the keyboard so that they can be quickly triggered, |
assigned to F keys on the keyboard so that they can quickly be triggered, |
187 |
you can transfer them over the OS clipboard and you can write comments |
you can transfer them over the OS clipboard and you can write comments |
188 |
to your macros so that you never forget what kind of purpose you had in |
to your macros so that you never forget what kind of purpose you had in |
189 |
mind for them. The macro features are based on libgig's new |
mind for them. Your macros will also appear in the application's menu, |
190 |
|
and when you move the mouse pointer over a macro, a tooltop appears with |
191 |
|
the comments you wrote for that macro. |
192 |
|
The macro features are based on libgig's new |
193 |
"Serialization" framework (described below) and accordingly you need at |
"Serialization" framework (described below) and accordingly you need at |
194 |
least libgig 4.1.0 for using these macro features. |
least libgig 4.1.0 for using these macro features. |
195 |
</p> |
</p> |
204 |
upcoming work, only those few parameters are modifed by this macro and all |
upcoming work, only those few parameters are modifed by this macro and all |
205 |
other ones are left untouched. |
other ones are left untouched. |
206 |
Of course you can also alter the individual parameter values in |
Of course you can also alter the individual parameter values in |
207 |
this editor as well. |
this editor as well.<br> |
208 |
|
<br> |
209 |
|
You might now think, wait a minute, does such a macro change the entire |
210 |
|
instrument, or only a portion of it? The answer is simple: you decide! |
211 |
|
The precise scope a macro is going to modify behaves exactly the same like |
212 |
|
you manually changed individual parameters in Gigedit before. That means |
213 |
|
for example when you check the two check boxes "all regions" and "all dimension splits", |
214 |
|
then when you trigger a macro, it is going to applied against the entire instrument. |
215 |
|
If you uncheck those check boxes and select only one specific region and one specific |
216 |
|
dimension region zone, then the macro only modifies this single dimension |
217 |
|
region zone. Or yet another alternative: Ctrl+click the precise dimension |
218 |
|
region zones you want to be changed by the macro and then trigger the macro.<br> |
219 |
|
<br> |
220 |
|
So as you might see, macros introduce a powerful way for you to create yourself |
221 |
|
a personal instrument construction kit, not limited to only creating global |
222 |
|
templates for entire instruments, but also for an arbitrary set of small and large |
223 |
|
building blocks in any size and complexity you need. For example you may create a macro |
224 |
|
which only sets one single parameter, and another macro which configures an entire filter |
225 |
|
block with all its filter parameters and controllers, up to a macro which really |
226 |
|
modifies every single parameter to build up an entire instrument with one stroke |
227 |
|
of a key. |
228 |
</p> |
</p> |
229 |
|
|
230 |
<h3>Persistent Settings</h3> |
<h3>Persistent Settings</h3> |
231 |
<p> |
<p> |
232 |
All user settings of gigedit are now persistently saved and automatically |
All user settings of gigedit are now persistently saved and automatically |
233 |
restored. This also includes gigedit's windows' dimensions and positions. |
restored. This also includes gigedit's windows' dimensions and positions, |
234 |
|
and of course including all macros you create. |
235 |
</p> |
</p> |
236 |
|
|
237 |
<h3>Multi-Row Selection</h3> |
<h3>Multi-Row Selection</h3> |
272 |
<h3>Keyboard Shortcuts</h3> |
<h3>Keyboard Shortcuts</h3> |
273 |
<p> |
<p> |
274 |
Various new keyboard shortcuts have been added so you can work more |
Various new keyboard shortcuts have been added so you can work more |
275 |
efficiently on your sounds. For example you can now use Ctrl+Left and |
efficiently on your sounds. For example you can now use Ctrl+Up and Ctrl+Down |
276 |
|
to switch between instruments, or use Ctrl+Left and |
277 |
Ctrl+Right to navigate through all regions of the currently selected |
Ctrl+Right to navigate through all regions of the currently selected |
278 |
instrument, and likewise you can use Alt+Left, Alt+Right, Alt+Up and |
instrument, and likewise you can use Alt+Left, Alt+Right, Alt+Up and |
279 |
Alt+Down to navigate through all dimension region zones of the currently |
Alt+Down to navigate through all dimension region zones of the currently |
280 |
selected region. Since there are many actions that can be either applied |
selected region. Since there are many actions that can be either applied |
281 |
on instrument level, or on region level, or on dimension region level, as |
on file level, instrument level, on region level, or on dimension region level, as |
282 |
a general rule, for all keyboard shortcuts: |
a general rule of thumb for all keyboard shortcuts: |
283 |
<ul> |
<ul> |
284 |
<li><b>Shift</b> key is used for actions on instrument level</li> |
<li><b>Shift</b> key (⇧) is used for global actions</li> |
285 |
<li><b>Ctrl</b> key is used on region level</li> |
<li><b>Ctrl</b> key (⌘ key on Mac) is used on region level</li> |
286 |
<li><b>Alt</b> key is used by gigedit for actions on dimension region level</li> |
<li><b>Alt</b> key (⌥ key on Mac) is used by gigedit for actions on dimension region level</li> |
287 |
</ul> |
</ul> |
288 |
So as another example you may copy all parameters of the currently |
So as another example you may copy all parameters of the currently |
289 |
selected dimension region zone by hitting Alt+C, then you might select |
selected dimension region zone to the clipboard by hitting Alt+C. |
290 |
another dimension region zone, or another instrument and then use Alt+V |
Now when you change parameters of the selected dimension region, |
291 |
to apply the parameters from the clipboard. While the parameters are |
the original parameters are still there on the clipboard. Hit |
292 |
(as macro actually) on the clipboard you can also review, edit and |
Alt+X to review or even edit the parameters directly on the clipboard. |
293 |
delete the individual parameters before applying them. As a final |
Then select a dimension region zone, or another instrument and then use Alt+V |
294 |
example for new important shortcuts you may now use Shift+Up and |
to apply those parameters from the clipboard to the now selected dimension region. |
295 |
Shift+Down for switching between instruments. |
You want to keep those parameters on the clipboard permanently in the editor |
296 |
|
for other instruments in future? Hit Ctrl+M to open the macro list, then hit |
297 |
|
Ctrl+B to save the content on the clipboard permanently as a new macro. |
298 |
|
From this point you can also simply duplicate the macro, fine tune and |
299 |
|
adjust the cloned macros and so on. All macros are saved along with the settings |
300 |
|
of the application. So they will always be there next time you launch gigedit, |
301 |
|
and no matter on which gig files you are working on. |
302 |
|
</p> |
303 |
|
<p> |
304 |
|
Too many shortcuts to remember? Of course you can find all keyboard |
305 |
|
shortcuts from the menus and on the individual buttons. Simply place |
306 |
|
the mouse pointer over the individual menu items or buttons and a tooltip |
307 |
|
will explain what the action would do. For menu items and buttons you use |
308 |
|
frequently, start using their displayed keyboard shortcuts instead. |
309 |
|
And the ones you really are going to use frequently, you will remember as shortcut |
310 |
|
in a very short time. |
311 |
</p> |
</p> |
312 |
|
|
313 |
<h3>Combine Tool Improvements</h3> |
<h3>Combine Tool Improvements</h3> |
317 |
(multiple) instruments you want to combine directly from the applications |
(multiple) instruments you want to combine directly from the applications |
318 |
main window, i.e. by Ctrl or Shift clicking them from the instruments |
main window, i.e. by Ctrl or Shift clicking them from the instruments |
319 |
list view, and then right click to call the combine tool on that |
list view, and then right click to call the combine tool on that |
320 |
selection. The Combine Tool now also shows you as preview the order in |
selection or even faster; simply hit Ctrl+j ("j" as in "join"). |
321 |
|
The Combine Tool now also shows you a preview of the order in |
322 |
which the selected instruments are going to be combined. This is |
which the selected instruments are going to be combined. This is |
323 |
especially useful when combining instruments with certain dimension |
especially useful when combining instruments with certain dimension |
324 |
types where the order matters for the actual resulting sound; for example |
types where the order significantly matters for the actual resulting sound; for example |
325 |
when using the velocity dimension. Simply use drag n drop to reorder |
when combining by velocity dimension. Simply use drag n drop to reorder |
326 |
the previously selected instruments before combining them. |
the previously selected instruments before combining them finally |
327 |
|
(by clicking on Ok or simply hitting Enter). |
328 |
</p> |
</p> |
329 |
|
|
330 |
<h3>Search Filter</h3> |
<h3>Search Filter</h3> |
333 |
And last but not least a filter option field had been added to the |
And last but not least a filter option field had been added to the |
334 |
instruments list view and samples list view, which allows you to find specific |
instruments list view and samples list view, which allows you to find specific |
335 |
samples and instruments very quickly by typing search key words, which is |
samples and instruments very quickly by typing search key words, which is |
336 |
especially very helpful in case you are working on gig files which contain |
especially very helpful in case you are working on huge gig files which contain |
337 |
a very large amount of samples or instruments in a single gig file |
a very large amount of samples or instruments in a single gig file |
338 |
(like this one, which apparently has far more than 400 instruments). |
(like this one, which apparently has far more than 400 instruments). |
339 |
</p> |
</p> |
345 |
has also received some major improvements, which are outlined next. |
has also received some major improvements, which are outlined next. |
346 |
</p> |
</p> |
347 |
|
|
348 |
<h3>Files larger than 2 GB</h3> |
<h3>Files larger than 4 GB</h3> |
349 |
<p> |
<p> |
350 |
libgig 4.1.0 adds support for files much larger than 2 GB for GigaStudio / |
libgig 4.1.0 adds support for writing files much larger than 4 GB |
351 |
Gigasampler (.gig), DLS, as well as for RIFF files in general. This file size |
(or more exactly: up to now 16 Exabyte = 16 777 216 Terabyte) |
352 |
|
for GigaStudio / Gigasampler (.gig), DLS, as well as for RIFF files in general. This file size |
353 |
limitation existed for a very long time due to the RIFF format's historical, |
limitation existed for a very long time due to the RIFF format's historical, |
354 |
internal 32 bit file offsets. To circumvent this file size limitation the |
internal 32 bit file offsets. To circumvent this file size limitation the |
355 |
concept of so called "extension files" was added in the past to the |
concept of so called "extension files" was added in the past to the |
372 |
is already a broad standard. Accordingly instead of adding write support for |
is already a broad standard. Accordingly instead of adding write support for |
373 |
extension files in libgig, the problem was addressed at its root by |
extension files in libgig, the problem was addressed at its root by |
374 |
transparently using appropriate, automatic file offset sizes. So when writing |
transparently using appropriate, automatic file offset sizes. So when writing |
375 |
.gig/DLS/RIFF files smaller than 2 GB there are still 32 bit file offsets |
.gig/DLS/RIFF files smaller than 4 GB there are still 32 bit file offsets |
376 |
being used by libgig. Accordingly such files are still backward compatible |
being used by libgig. Accordingly such files are still backward compatible |
377 |
with older software. However if the overall file size to be written is 2 GB or |
with older software. However if the overall file size to be written is 4 GB or |
378 |
larger, then 64 bit file offsets are automatically used by libgig instead. |
larger, then 64 bit file offsets are automatically used by libgig instead. |
379 |
Note though that due to that circumstance such files ≧ 2 GB are not backward |
Note though that due to that circumstance such files ≧ 4 GB are not backward |
380 |
compatible with older versions of libgig, nor could they be loaded with the |
compatible with older versions of libgig, nor could they be loaded with the |
381 |
original GigaStudio software. |
original GigaStudio software. |
382 |
</p> |
</p> |