Commit Graph

3540 Commits

Author SHA1 Message Date
Vesa
1c0f9700fa S.ex. models: implement support for sample-exact controls in fx-mixer
Works for all faders and send knobs
2014-06-01 07:17:43 +03:00
Tobias Doerffel
385e13bb63 Merge pull request #788 from diizy/models
Models branch for 1.2
2014-05-31 15:12:33 +02:00
Vesa
63a39bde76 Models: Fix error 2014-05-30 19:29:45 +03:00
Vesa
a46b9383a5 LfoController updates - fix some remaining timing issues 2014-05-30 18:26:16 +03:00
Vesa
d331dfe352 Move improvements to sample-exact controller handling,
also some coding style fixes
2014-05-30 18:26:16 +03:00
Vesa
44f1d3df85 Initial implementation of sample-exact models and controllers
Also featuring a very efficient buffer-based system for transporting sample-exact control data
Also interpolation for automations
The native Amplifier is a reference implementation for taking advantage of sample-exact data and is currently
the only one that does so, it can be used to test things out, and as documentation/example for implementing the
same elsewhere
2014-05-30 18:22:36 +03:00
Tobias Doerffel
3a833d2ad8 Merge pull request #776 from xsleonard/cut-copy-paste
Copy+Paste for rubberband selections in track editor
2014-05-30 15:26:10 +02:00
Tobias Doerffel
ef0ccb4094 Merge pull request #778 from diizy/pianoroll
PianoRoll: Note Quick Resize
2014-05-30 15:15:28 +02:00
Tobias Doerffel
b170ab18f6 Merge pull request #787 from diizy/master
FxMixerView: fix crash when loading project while selected channel != 0
2014-05-30 15:11:29 +02:00
Vesa
51194453f1 FxMixerView: fix crash when loading project while selected channel != 0
Fixes #782
2014-05-30 08:19:54 +03:00
Vesa V
6dfd6de8d2 Merge pull request #785 from diizy/nes
Nes updates
2014-05-29 22:59:37 +03:00
Vesa
8bb5733ee5 Nes: Fix previous - forgot to add new models to load/save funcs 2014-05-29 22:57:14 +03:00
Vesa
50c5b0db03 Nes: added pitch sweep for noise channel, freq.quantize mode (constrain frequencies to preset values when using note frequency)
Also added a handful of neat presets that mimick Nes sound effects
2014-05-29 22:48:13 +03:00
Vesa V
fe88806bd5 Merge pull request #784 from diizy/nes
Nes: implement vibrato, also: make main pitch update at 60hz frequency r...
2014-05-29 19:36:48 +03:00
Vesa
19d105dc86 Nes: implement vibrato, also: make main pitch update at 60hz frequency regardless of period size or samplerate (guarantees consistency in sound for combined pitch sweep + pitch automation) 2014-05-29 19:32:22 +03:00
Vesa
adea08d5b9 PianoRoll: Note Quick Resize
Basically, this works as such:
- if you click shift *after* starting a note move OR after creating a new note, the note move action is switched into resize mode, so you can quickly resize the note you just created, or the note you just moved. This saves time and improves workflow - at least based on my own experience: I've always wished I could do this, this is a huge time saving when you want to quickly jot down notes of differing lengths.
- if shift is already pressed when you click, the above will not happen, because that would mess with the note copy function. Copying notes with shift-dragging works the same as before.
- note test playback is halted when you click shift while moving. This is purely because it was causing some crackling noise, probably because of the changing length of a note that is currently playing. Maybe that can be fixed later, although it's arguably better not to hear the note while resizing - it's consistent with the other resize.
- works on group of notes as well, if you start moving a group of notes and then click shift, it will go into resize. Exception is notes copied with shift-drag... for obvious reasons.
- that should be all. Testing appreciated.
2014-05-28 03:38:59 +03:00
Steve Leonard
af56ea5849 Copy+Paste for rubberband selections in track editor 2014-05-26 15:53:08 -04:00
Vesa V
957aed4b80 Merge pull request #773 from diizy/master
NES: fix dc offset and distortion
2014-05-26 18:04:13 +03:00
Vesa
6e516a358c NES: fix dc offset and distortion 2014-05-26 18:02:55 +03:00
Tobias Doerffel
1567bd8d09 Merge pull request #752 from tresf/master
Drag-and-drop support for VST, SF2
2014-05-26 10:28:44 +02:00
Tobias Doerffel
c3af25e54a Merge pull request #758 from grejppi/master-samplebuffer
SampleBuffer: fix amplification
2014-05-26 10:26:59 +02:00
Tobias Doerffel
54531f5144 Merge pull request #761 from zonkmachine/random-wave-2
Random wave for instrument plugin LFO
2014-05-26 10:26:09 +02:00
Tobias Doerffel
3d61b6df9e Merge pull request #768 from diizy/master
FxMixerView: prevent mixer from being loaded with improper send buttons ...
2014-05-26 10:25:18 +02:00
Tobias Doerffel
d857f0e272 Merge pull request #771 from diizy/nes
NES instrument
2014-05-26 10:22:40 +02:00
Vesa
750be17b56 Nes: fix sweep 2014-05-26 05:46:53 +03:00
Vesa
8b51e29467 New NES instrument 2014-05-26 03:25:15 +03:00
Vesa
592b4aeb1a New NES instrument 2014-05-26 03:24:36 +03:00
Vesa
eaf0f15d3f FxMixerView: prevent mixer from being loaded with improper send buttons which cause crashes when clicked, fixes #766 2014-05-25 13:55:05 +03:00
Oskar Wallgren
2e78e65d59 Code simplifed 2014-05-24 20:02:18 +02:00
Hannu Haahti
d715c18b65 SampleBuffer: amplify in post 2014-05-23 21:50:47 +03:00
Oskar Wallgren
768f0e54b0 Random graph approximation and cleanup 2014-05-23 03:46:40 +02:00
Hannu Haahti
904370ec34 SampleBuffer: fix amplification 2014-05-22 23:48:05 +03:00
Oskar Wallgren
3d61768538 Gui button fix, test backward compatibility 2014-05-22 19:25:04 +02:00
Tobias Doerffel
00e7fe236c ZynAddSubFX: imported current head
Imported current head of LMMS-specific ZynAddSubFX source code.

HEAD: c38c705ea40914f6bd63f799ab8dad91411a93c0
2014-05-22 11:33:39 +02:00
Oskar Wallgren
85c02cddfe Random wave first commit, pixmap button defect 2014-05-22 07:17:55 +02:00
Tres Finocchiaro
71f6b1b205 Drag-and-drop support for VST, SF2 2014-05-21 16:39:02 -04:00
Vesa V
3e02a15908 Merge pull request #748 from diizy/master
Fix globalautomationvalueat and coding style
2014-05-21 17:45:02 +03:00
Vesa
9742becb81 Fix globalautomationvalueat and coding style 2014-05-21 17:37:30 +03:00
Tobias Doerffel
bfe2f0cf11 InstrumentFunctions: fix base note playback in chords
As of 6650dd356d base notes are not played
anymore when chords are enabled. Therefore create a separate NotePlayHandle
for the base note like we do for all other notes in the chord.
2014-05-20 23:13:13 +02:00
Tobias Doerffel
1decf5d6ea Merge pull request #739 from diizy/master
Removal of the "sample-exact controllers" and "anti-aliasing oscillators...
2014-05-18 22:27:37 +02:00
Vesa
97ff5e99e0 Removal of the "sample-exact controllers" and "anti-aliasing oscillators" qualitysettings. 2014-05-18 21:36:49 +03:00
Tobias Doerffel
465aa1afbc EffectChain: remember original effect plugin data when loading dummy plugin
We don't want to loose the settings of an effect plugin even if it's not
available and thus can't be instantiated. Therefore remember original
settings data and save them back properly.

Partly closes #733.
2014-05-18 15:53:18 +02:00
Tobias Doerffel
1b0264f501 DummyEffect: removed inline specifiers, fixed header guard identifiers 2014-05-18 15:27:49 +02:00
Tobias Doerffel
a71749af08 Merge pull request #720 from diizy/master
Initial implementation for two additional methods in AutomatableModel, A...
2014-05-18 15:15:49 +02:00
Tobias Doerffel
6b6bfa2666 Merge pull request #734 from diizy/bandlimit
Move the initialization of BandLimitedWaves into engine.cpp
2014-05-18 15:11:51 +02:00
Tobias Doerffel
28fa95ae56 Merge pull request #727 from diizy/kicker
Kicker: new UI / graphics, also some additions:
2014-05-18 15:11:06 +02:00
Tobias Doerffel
aa8eea2fb1 Merge pull request #736 from diizy/powerchord
InstrumentFunctions: Add power chord
2014-05-18 15:09:47 +02:00
Vesa
c854f1d0ec InstrumentFunctions: Add power chord
Aka. 5-chord, simple 5th interval chord. A very simple addition and something I've always wondered why it's missing from the very extensive huge list of chords and scales.
2014-05-18 13:14:52 +03:00
Vesa
bf54852062 Move the initialization of BandLimitedWaves into engine.cpp
Since we now provide the wavetables as pre-generated files, there's no delay caused by their initialization
so we can move it to the startup of the software. I thought engine.cpp is the best place for this, it makes
conceptually more sense than main.cpp IMO.
This way each instrument that wants to use them in the future won't have to call the initialization function
separately, making things a bit easier.
2014-05-17 23:32:34 +03:00
Vesa
bbcb8635e2 Kicker: a bit of an additional GUI tweak 2014-05-16 20:33:53 +03:00