Spekular 17565caf53 Improved relative paths (#5117)
* Create PathUtils

* Replace old SampleBuffer calls

* Fix automatic track names

* Fix things

* Remove accidental duplicate file

* Add includes

* More incldues

* PhysSong's code review + style

* Fix vestige loading?

Seems more reasonable to convert from relative on load and to relative on save than vice versa.

* Typo fix

* More Bases

* Enable more bases

* Add missing semicolons in prefixes

* Nicer sample track tooltip

* Use correct directories

"userXDir" gives the default dir for ladspa, sf2, and gig. "xDir" gives the user dir.

* Make relative to both default and custom locations

Part 1

* Make relative to both default and custom locations

Part 2

* Typofix

* Typofix

* Fix upgrade function after base renaming

* Fix Tests

* Update tests/src/core/RelativePathsTest.cpp

Co-Authored-By: Hyunjin Song <tteu.ingog@gmail.com>

* Choose UserXBase over DefaultXBase if identical

toShortestRelative sticks with the first base found if two bases give the same path length. By placing UserXBase Bases before DefaultXBase Bases in the relativeBases vector, toShortestRelative will prioritize them.

* Ensure baseLocation always has trailing slash

Otherwise, a user configuring a path without one will break things.

* Move loc declaration out of switch

* Semicolon

* Apply suggestions from code review...

* Include PathUtil and sort includes

* More granular includes

* Apply suggestions from code review

Co-Authored-By: Hyunjin Song <tteu.ingog@gmail.com>

* Update include/PathUtil.h

* Leave empty paths alone

* Fix stupid merge

* Really fix merge. Hopefully

* Switch Base from enum to class enum

* Don't pass Base by reference

* Use QStringLiteral for static QString allocation in basePrefix method

* Make VST loading more similar to previous implementation

* Fix tests after enum change

* Attempt to fix VST loading, nicer name for sample clips

* Fix last review comment

Don't append a "/" that will be removed by cleanPath later

* Apply suggestions from code review

Co-authored-by: Dominic Clark <mrdomclark@gmail.com>

Co-authored-by: Hyunjin Song <tteu.ingog@gmail.com>
Co-authored-by: Dominic Clark <mrdomclark@gmail.com>
2020-07-28 17:07:35 +02:00
2020-07-05 11:27:33 +09:00
2016-03-26 14:23:22 +08:00
2018-03-07 23:54:28 +09:00
2020-05-24 12:50:50 +02:00
2020-07-26 11:14:18 -07:00
2020-04-04 12:08:55 +09:00
2020-07-05 11:27:33 +09:00
2020-07-28 17:07:35 +02:00
2020-07-28 17:07:35 +02:00
2020-07-28 17:07:35 +02:00
2020-07-28 17:07:35 +02:00
2019-06-25 03:37:14 +02:00
2018-09-15 09:32:29 -04:00
2020-04-04 12:08:55 +09:00
2019-09-15 21:08:33 +09:00
2020-07-05 11:27:33 +09:00
2020-07-05 11:27:33 +09:00
2017-09-14 08:09:54 +09:00

LMMS Logo LMMS

Build status Latest stable release Overall downloads on Github Join the chat at Discord Localise on transifex

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.

Description
No description provided
Readme 169 MiB
Languages
C++ 87.7%
C 6.4%
CMake 3.5%
CSS 1%
HTML 0.9%
Other 0.4%