summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour
AgeCommit message (Collapse)Author
2015-01-07MusicalTime => Beats.David Robillard
2015-01-06Add modulus operator to MIDI transformer.David Robillard
Useful for doing things like making alternating bowing patterns.
2014-12-30Fix some mangled whitespace (noop).David Robillard
2014-12-28MIDI transform dialog.David Robillard
2014-12-28Clean up note delta command code.David Robillard
Use Variant to store the value and the same code path for all properties. Factor out getting the value of whatever property instead of special casing the handling. Towards using this stuff for some fancy things...
2014-12-26Some of libardour's istream and ostream operators are needed outside of ↵John Emmas
libardour - so let's make them exportable (currently, only the istream operators are needed but we might as well do them both)
2014-12-24Support fancy controls for some AU units.David Robillard
2014-12-24Fix OSX build.David Robillard
2014-12-24fix clang compilationRobin Gareus
error: call to function 'operator>>' that is neither visible in the template definition nor found by argument-dependent lookup. 'operator>>' should be declared prior to the call site. IOW. types.h must be included before using ‘ss >> (T) value’ in template in pbd/configuration.h
2014-12-24proper default setup and fallbacks for video on windowsRobin Gareus
2014-12-23indent cleanupPaul Davis
2014-12-22move ARDOUR::Configuration and ARDOUR::ConfigVariable into libpbdPaul Davis
2014-12-22move all (G)UI related configuration parameters into UIConfiguration, not ↵Paul Davis
RCConfiguration
2014-12-21change SessionEvent::Immediate to -1, and ensure that clear_events() uses it ↵Paul Davis
rather than a hard-coded value This fixes a design error of using zero as the flag for an "Immediate" event's action frame. Zero is a perfectly legitimate action frame for an event (e.g. a Skip event), and using zero was causing skip events with action-frame == 0 to be treated as immediate, not scheduled.
2014-12-20Maintain correct tracker state on MIDI overwrite.David Robillard
This is a little hard-edged in that edits while rolling will prematurely chop off any playing notes, but at least the state of things actually reflects reality. More sophisticated solution hopefully to come...
2014-12-19Revert "Change default for region selection after split on Mixbus"Colin Fletcher
This shouldn't be necessary: Mixbus should probably just have a different value for the default in their source tree instead. This (partially) reverts commit 631467f0bb2a2756c4216738ded804663b44a2a1: I now realise that I accidentally rolled another fix (missing "region-" in config variable name) in there too: sorry about that.
2014-12-19Change default for region selection after split on MixbusColin Fletcher
Mixbus prefers that both the newly-created regions as well as the existing selection are selected after splitting selected regions: make this the default on Mixbus.
2014-12-19Add a config option to control region selection after split.Colin Fletcher
Add a configuration variable to choose the behaviour of the region selection after splitting selected regions. Add options to choose between all eight possible combinations of 'existing unmodified selected regions', 'newly-created regions to left of split', and 'newly-created regions to right of split', but comment out all but the three least crazy ones for now. If anyone wants them, they're there.
2014-12-18Mute automation via normal mute button.David Robillard
2014-12-17MIDI bounce.David Robillard
2014-12-17Remove some aborts that don't really need to be.David Robillard
Enforce PatchPrimaryKey sanity at the type level rather than attempting to check for it everywhere. Remove dead file.
2014-12-17Fix various MIDI locking issues.David Robillard
Attempt to make mistakes much less likely in the future by statically requiring caller to pass scoped locks where necessary.
2014-12-16add new parameter for minimum value of any range locationPaul Davis
2014-12-13Structure MIDI device selector by manufacturer.David Robillard
Unfortunately we store the state of models as simply model, so if there's ever duplicate model names, we're somewhat screwed, but this makes the (previously unmanageably huge) menu usable, while retaining the "model name as global identifier" state unmodified.
2014-12-10remove file manager LRU cache from code.Paul Davis
This was a very clever attempt to fix a non-problem. If the platform doesn't have enough file descriptors available then the platform is broken and we're not going to hack around trying to fix it.
2014-12-09add set-session-extents-from-edit-rangeBen Loftis
2014-12-09add DEBUG::Butler and use itPaul Davis
2014-12-06Add legatize and remove overlap MIDI operations.David Robillard
We're going to need the ability to apply MIDI edit operations to a note/control selection soon...
2014-12-04Fix crash when twiddling MIDI controllers (#6050).David Robillard
2014-12-04Make gain controls step by roughly 1.0/0.1 dB.David Robillard
Shoot for roughly 30 steps for all controls. Always keep sensible step information in ParameterDescriptor and just convert for the UI. This is a little weird, but it's less weird than it was before, and works.
2014-12-03adapt changes to async MIDI port to use new evoral/libardour splitPaul Davis
2014-12-03alter Async MIDI port implementation to use crossthreadchannel on all platformsPaul Davis
2014-12-02Make 'ARDOUR::ParameterDescriptor' exportable, so that it can get used ↵John Emmas
outside of libardour
2014-12-02Fix lost MIDI events due to broken range check.David Robillard
2014-12-01Replace half-baked param metadata with descriptor.David Robillard
Among other things, this means that automation controls/lists have the actual min/max/normal/toggled of parameters, and not those inferred from the Parameter ID, which is not correct for things like plugin parameters. Pushing things down to the Evoral::ParmeterDescriptor may be useful in the future to have lists do smarter things based on parameter range, but currently I have just pushed down the above-mentioned currently used attributes.
2014-11-30Trim the include tree.David Robillard
2014-11-30Move EventRingBuffer to libardour.David Robillard
This is not used anywhere in Evoral and is just a wrapper around the PBD RingBuffer anyway. Towards a (once again?) independently buildable/testable Evoral and fewer cross-dependencies.
2014-11-30Add missing namespace qualifiers.David Robillard
2014-11-30Clean up state tracking of raw MIDI.David Robillard
2014-11-30update_steps(), properly handle integer rangesRobin Gareus
2014-11-30fix ladpsa default value.Robin Gareus
because get_parameter_descriptor() is const, also wrap default_value() in a const function.
2014-11-29change ownership of processor window-proxyRobin Gareus
fixes crashes: * If the Editor-Mixer shows a channel with a plugin that has been edited in the Mixer, double-clicking the plugin will try to bring up a 2nd instance of the plugin-UI. * When closing Ardour both the Mixer and the Editor-Mixer try to delete the underlying plugin, resulting in a double free.
2014-11-26remove "port sources" management from MidiControlUI and Mackie support.Paul Davis
This was necessary due to a bug/design issue between Glibmm and Glib (see https://bugzilla.gnome.org/show_bug.cgi?id=561885) but the problem needs to be managed by the *creator* of the IOSource and that has now moved inside CrossThreadChannel.
2014-11-25Remove dead code.David Robillard
2014-11-24amend c4533939b9Robin Gareus
2014-11-23hotfix windows-compilation (unfinished bfe49540b9)Robin Gareus
..at least it compiles and starts. Mackie support etc is probably still broken.
2014-11-23fix/silence various compiler warnings.Robin Gareus
* ifdef unused static functions * brackets around assignment and comparision * no return statement in function returning non-void * boost concept_checks.hpp unused-local-typedefs
2014-11-23remove use of CrossThreadChannel::selectable() to allow cross-platform ↵Paul Davis
implementation of CrossThreadChannel via Glib::IOSource
2014-11-22Fix quantization and other time-related ops.David Robillard
2014-11-22Wrap MusicalTime in a class.David Robillard
This lets us get a more explicit handle on time conversions, and is the main step towards using actual beat:tick time and getting away from floating point precision problems.