* Move m_key member of Effect into Plugin * Pass key to Instrument ctors and instantiaters * Add pluginKeys to all plugin selector widgets, and let them pass the keys when instantiating the instruments; or, if the keys must be passed over threads, pass the keys to the Engine using `Engine::setDndPluginKey()` * As instrument plugin libraries now also need to get their key passed, their second argument, which was always the same as the first, is now used to pass the sub plugin keys. This affects *all* instrument plugins. * Plugin.h: Add more virtuals to `SubPluginFeatures` in order to draw logos and images into instrument selector widgets * LadspaSubPluginFeatures: Implement the `displayName` virtual because the new behaviour to resolve displayNames is to first look at the SubPluginFeatures, which, without override, returns the superior plugin's name (Plugin.cpp) Additional: * PluginFactory.h: Allow setting up search paths without discovering plugins yet * Plugin.h: Add full documentation (should be checked)
LMMS
What is LMMS?
LMMS is a free cross-platform alternative to commercial programs like FL Studio®, which allow you to produce music with your computer. This includes the creation of melodies and beats, the synthesis and mixing of sounds, and arranging of samples. You can have fun with your MIDI-keyboard and much more; all in a user-friendly and modern interface.
Homepage
Downloads/Releases
Developer Wiki
Artist & User Wiki/Documentation
Sound Demos
LMMS Sharing Platform Share your songs!
Features
- Song-Editor for composing songs
- A Beat+Bassline-Editor for creating beats and basslines
- An easy-to-use Piano-Roll for editing patterns and melodies
- An FX mixer with unlimited FX channels and arbitrary number of effects
- Many powerful instrument and effect-plugins out of the box
- Full user-defined track-based automation and computer-controlled automation sources
- Compatible with many standards such as SoundFont2, VST(i), LADSPA, GUS Patches, and full MIDI support
- MIDI file importing and exporting
Building
See Compiling LMMS on our wiki for information on how to build LMMS.
Join LMMS-development
If you are interested in LMMS, its programming, artwork, testing, writing demo songs, (and improving this README...) or something like that, you're welcome to participate in the development of LMMS!
Information about what you can do and how can be found in the wiki.
Before coding a new big feature, please always file an issue for your idea and suggestions about your feature and about the intended implementation on GitHub or post to the LMMS developers mailinglist (lmms-devel@lists.sourceforge.net) and wait for replies! Maybe there are different ideas, improvements, hints or maybe your feature is not welcome/needed at the moment.