Commit Graph

2264 Commits

Author SHA1 Message Date
Tobias Doerffel
e43f34914f RemoteVstPlugin: renamed presetName() to programName() 2012-11-26 20:23:41 +01:00
Tobias Doerffel
bdaedcdf86 VstPlugin, RemoteVstPlugin: update program name via new idle update messages
Introduced new idle update messages for exchanging data periodically but
not inferring audio processing.
2012-11-26 20:16:06 +01:00
Tobias Doerffel
9d610e5108 RemoteVstPlugin: use pluginDispatch() everywhere for thread safety
Calling plugin dispatcher without lock is potentially dangerous.
2012-11-26 20:00:55 +01:00
Tobias Doerffel
533f086600 AutomatableModel: initialize m_value and m_initValue in constructor
Even though we call setInitValue() in AutomatableModel constructor,
initialize according class members before.
2012-11-26 19:48:37 +01:00
Tobias Doerffel
0d80f0c569 VstPlugin, RemoteVstPlugin: save/restore current program of VST plugin
Not all plugins save current program in their chunk (or do not restore
it properly). We therefore have to save and restore the current program
manually.

Closes #3581879.
2012-11-26 19:30:26 +01:00
Tobias Doerffel
56b07e29c2 RemoteVstPlugin: send updates of current program name if changed
Send current program name back to host if current program has changed.
2012-11-26 19:18:20 +01:00
Tobias Doerffel
1b7ae1f7a9 RemotePlugin, VstPlugin: reorganized and partly rewrote program/preset related functions
The code for managing programs/presets of RemotePlugin instances was
very confusing, mainly within the VstPlugin and RemoteVstPlugin class.
I therefore started to reorganize and rewrite functions.
2012-11-26 19:18:07 +01:00
Kristi
59732b05ed ExportProjectDialog: added option for exporting song as loop (backport)
This patch adds the option to remove the extra silence at the end,
so that the exported song can be seamlessly looped.

This is a backport of commit 8f1657164a.

Closes #3588890.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2012-11-25 12:01:15 +01:00
Tobias Doerffel
9e08849d63 ExportProjectDialog: fixed crash when exporting whole project as one track
We have to use the new semantics of the ProjectRenderer management when
exporting the whole project as one track as well. Otherwise the program
crashed as it tried to utilize the ProjectRenderer instance twice.
2012-11-25 11:47:18 +01:00
Tobias Doerffel
4a962c58d9 ExportProjectDialog: coding style fixes 2012-11-25 11:46:40 +01:00
Tobias Doerffel
3be675ac7b Vestige: send NoteOff events for all possible MIDI keys
In VestigeInstrumentView::noteOffAll() do not only send MIDI NoteOff
events for all LMMS keys but for the whole range of MIDI keys.
2012-11-11 23:40:48 +01:00
Tobias Doerffel
3842cb3d61 RemoteVstPlugin: fixed too short arrays for preset names
The dimension of preset name arrays was too small. Fixed this
by raising it from 30 to 64 characters.
2012-11-11 23:13:01 +01:00
Tobias Doerffel
295dd63b0e SetupDialog: turn off auto save per default
Due to various bug reports, I think we should turn off auto save per
default. Users who want this feature can turn it on explicitely (and
live with problems when they have big projects).
2012-11-11 22:55:38 +01:00
Tobias Doerffel
3a1c117a37 CMakeLists: make fftw3 a requirement and not optional anymore
We have too many components in LMMS relying on FFTW3. Building LMMS
without them cripples LMMS' functionality substantially, so simply
make fftw3 a requirement.

Closes #3495736.
2012-11-11 22:42:04 +01:00
Tobias Doerffel
d3d6d65836 Track: do not load height information if greater than default height
This is a workaround for issue #3585927. Once we found the source of
this issue, we can revert this commit.
2012-11-11 22:17:11 +01:00
Tobias Doerffel
c9d5c1dd06 Track: coding style fixes 2012-11-11 22:11:49 +01:00
Tobias Doerffel
37651dad20 AudioPort: made destructor virtual
It is recommended to make destructors virtual if the class is
polymorphic.
2012-11-11 19:45:24 +01:00
Tobias Doerffel
c39512403b InstrumentTrack, NotePlayHandled: added initial sustain pedal support 2012-11-11 19:39:27 +01:00
Tobias Doerffel
aae89e186c MidiEvent: added controllerNumber() and controllerValue() 2012-11-11 19:39:01 +01:00
Tobias Doerffel
b998ef6e13 Midi: added more controller related constants 2012-11-11 19:38:11 +01:00
Raine M. Ekman
3aa03da5af InstrumentMidiIOView: added support for fixed output notes
It came to me that having LMMS output one fixed note from a track could
be useful for controlling drum machines or something like that, so here's
a new spinbox for the MIDI tab.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2012-11-10 12:50:56 +01:00
Tobias Doerffel
6f7572b949 PianoView: do not include Xlib.h header file anymore
This file is a relict from times when we evaluated X11 events for the
virtual keyboard functionality.
2012-11-10 12:28:36 +01:00
Raine M. Ekman
3a59fdea58 InstrumentMidiIOView: fix number of digits for MIDI channel spinboxes
MIDI channels are in range 1 to 16, so there's no need for 3 digits
here.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2012-11-10 12:17:28 +01:00
Tobias Doerffel
075b7b354a ExportProjectDialog: remove obsolete header
No need for iostream header in LMMS.
2012-11-03 19:38:50 +01:00
Tobias Doerffel
2c3e7483aa MainWindow: fixed ambiguous hotkey for export operations
The new export operation had the same hotkey as the classical one. This
is not a good idea and is now fixed.
2012-11-03 19:37:28 +01:00
devin
929b44f14b Added individual BB tracks to multi export
Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2012-11-03 19:37:16 +01:00
Devin Venable
eb60d9e06e Added multiple track export feature.
Here is the patchset for my multiple track export feature. It works now
the way I originally envisioned.

For example, after I export tracks on my little song, I see this in the
directory I created:

devin@devin-studio:~/lmms/projects/fff$ ls
0_Defaultpreset.wav  3_Defaultpreset.wav      6_csidSouwav.wav
1_Defaultpreset.wav  4_spacenoiseswavwav.wav  7_HHOPENwav.wav
2_Defaultpreset.wav  5_csidkickwav.wav        8_HHOPENwav.wav

Each instrument or sample track is exported individually, regardless of
whether in its own song track or playing as part of a BB track. The
name is taken from either the song track name or from the BB track name.
My goal was to get the tracks individually exported, so that I could
combine them with other tracks in Ardour.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2012-11-03 19:28:40 +01:00
Raine M. Ekman
69947a624b Track: allow smaller height
Here's one way to cram more stuff onto small screens, or otherwise help
reducing visual clutter: Allow tracks to be shift-dragged all the way
down to 8 px height.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2012-11-01 21:36:31 +01:00
Tobias Doerffel
e7605ea045 Localizations: renamed ir.* to fa.* for ISO 639 conformance
As proposed by Octosquidopus renamed translation files containing
Farsi translations from ir.* to fa.*
2012-10-27 23:01:37 +02:00
Tobias Doerffel
95e1ef1c78 InstrumentTrack: show FX mixer when double clicking FX line LCD spinbox
As proposed by Danil <baza-nsk@ya.ru> on 2012-03-12.
2012-10-27 22:50:16 +02:00
Tobias Doerffel
c1368ddb1a SetupDialog: added option for disabling auto save feature
As requested by various users, it should be configurable whether the
auto save feature is active or not.
2012-10-27 22:45:59 +02:00
NoiseByNorthwest
d448e6743d Ergonomic enhancements for AudioFileProcessor plugin (interactive wave view).
This patch includes:
* sampleBuffer::visualise(): add possibility to specified a range to visualize instead of the whole sample
* add sampleBuffer::sampleRate() and sampleBuffer::sampleLength() getters
* definition of AudioFileProcessorWaveView and AudioFileProcessorWaveView::knob classes for AudioFileProcessor plugin
* knob::getValue() specified “virtual” to allow redefinition in child class  AudioFileProcessorWaveView::knob
* delete audioFileKnob class (made obsolete by AudioFileProcessorWaveView::knob)
* add audioFileProcessor::isPlaying() signal, which is emitted in audioFileProcessor::playNote
* change type of AudioFileProcessorView::m_startKnob and AudioFileProcessorView::m_endKnob (AudioFileProcessorWaveView::knob instead of audioFileKnob)
* replace AudioFileProcessorView::m_graph (QPixmap) by AudioFileProcessorView::m_waveView (AudioFileProcessorWaveView)

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2012-10-27 22:32:09 +02:00
Tobias Doerffel
ad3af97798 MidiClientRaw: fixed parsing of MIDI events
A break was missing in the function where MIDI events are generated from
raw MIDI data. This always has been broken as of commit d188056683
but was not observed as the code for all switch-cases has been identical.
2012-10-27 22:22:23 +02:00
Jesse Dubay
4ba4d8b4e0 ControllerConnectionDialog: fix crash on autodetect when using raw MIDI client 2012-10-27 22:17:13 +02:00
Tobias Doerffel
370ff26c2b LocalZynAddSubFx: added missing header include
ZASF fails to build with GCC 4.7 due to missing header include.

Thanks to Alexander Liebendorfer for pointing out the issue.
2012-10-27 22:01:08 +02:00
Raine M. Ekman
04c1a0906f AutomationEditor: show tooltip with exact value
Added tooltip telling the exact value under the cursor when editing
automation.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2012-05-20 19:01:21 +02:00
Tobias Doerffel
8b66dfc860 ZynAddSubFX: fixed possible buffer overflow
bankdir could be overflowed in the strncat function since the length
limit is not correctly specified.

Closes #3510466.
2012-05-20 18:55:30 +02:00
Raine M. Ekman
02db2fbd2f Piano roll: fix scale marking algorithm and improve rendering
A patch to fix the scale marking algorithm and possibly improve on the
looks

Closes #3493928.
2012-05-20 18:50:27 +02:00
Tobias Doerffel
12221d221f Updated Polish localization files
Thanks to Radek Słowik <radek/at/vibender/dot/com> for the contribution!
2012-02-13 22:04:14 +01:00
NoiseByNorthwest
0b057ec5df Fixed bugs with magnetic knobs
The problem comes from AutomatableModel::m_initValue wich is not fitted
either in constructor or in setter. Idem for m_value in constructor, imo
this is not enough consistent.

I propose to:
- call fittedValue() in init value setter.
- always call setter to initialize current & init values.
2012-02-13 22:02:03 +01:00
Tobias Doerffel
5d5189b1f4 Updated Polish localization files
Thanks to Radek Słowik <radek/at/vibender/dot/com> for the contribution!
2012-02-03 00:18:21 +01:00
Tobias Doerffel
68861678f6 Made 0.4.13 release
Bumped version number to 0.4.13 in CMakeLists.txt, README and lmms.rc.in.
v0.4.13
2012-02-02 23:22:12 +01:00
Tobias Doerffel
60b93e331e ZynAddSAubFX Microtonal: Fixing formatting of detune values
- Fixes bug that prints values like "4.0123" as "4.123"
(cherry picked from commit 5a1fa4f3c522f2f438e052273a544091133bb0eb)
2012-02-02 22:40:03 +01:00
Tobias Doerffel
59da243fed ZynAddSubFX: Pruning code from static analysis
Static analysis performed with cppcheck and clang
(cherry picked from commit 7540c6b46e2e6158a38464aeb9a8b35fefc3c9a9)
2012-02-02 22:28:44 +01:00
Tobias Doerffel
376f11a6c0 ZynAddSubFX: Env: fixing envelope scaling
Fixing bug introduced in 56d7e2e6ec
2012-02-02 22:21:50 +01:00
Tobias Doerffel
88d0c59903 CALF: revert upstream commit 460642bfae534679b4094e6887714828c90d8172
Upstream commit 460642bfae534679b4094e6887714828c90d8172 removes LADSPA
support from CALF which definitely is not desired for LMMS. Therefore
simply revert it in our sources.
2012-02-02 21:59:45 +01:00
Tobias Doerffel
c1db55c56a CALF: updated up to commit 657b36073cae77d9f0e191a7f09b6b8d2099aade 2012-02-02 21:45:36 +01:00
Tobias Doerffel
5f377ecdf2 German localization: updates and completions
Updated/completed various strings which have changed or not been
translated before.
2012-02-02 20:58:45 +01:00
Tobias Doerffel
6eb708ccee VeSTige/VstEffectControlDialog: fixed spelling error
Fixed minor spelling error.
2012-02-02 20:55:38 +01:00
Tobias Doerffel
edb540da52 AboutDialog: advanced copyright
We're living in 2012 now.
2012-02-02 20:55:19 +01:00