ardour.git
9 years agofix MTDM test
Robin Gareus [Wed, 3 Dec 2014 19:45:27 +0000 (20:45 +0100)]
fix MTDM test

9 years agoallow spaces in TOP, cd to gtk2_ardour to avoid dup midnam, etc warnings
Robin Gareus [Wed, 3 Dec 2014 19:45:12 +0000 (20:45 +0100)]
allow spaces in TOP, cd to gtk2_ardour to avoid dup midnam, etc warnings

9 years agoTests: ensure that libardour is initialized
Robin Gareus [Wed, 3 Dec 2014 19:45:01 +0000 (20:45 +0100)]
Tests: ensure that libardour is initialized

9 years agofix audio-engine dtor.
Robin Gareus [Wed, 3 Dec 2014 19:44:23 +0000 (20:44 +0100)]
fix audio-engine dtor.

backends - once instantiated - keep a reference to the engine.
when audioengine is destroyed, the backends must be deinstantiated.
This fixes various unit-test cases.

9 years agoallow to auto-start dummy backend (needed for tests)
Robin Gareus [Wed, 3 Dec 2014 17:24:56 +0000 (18:24 +0100)]
allow to auto-start dummy backend (needed for tests)

9 years agofix test segfault
Robin Gareus [Wed, 3 Dec 2014 15:03:57 +0000 (16:03 +0100)]
fix test segfault

whe XMLTree goes out of scope, the root-node is deleted

9 years agouse Dummy backend for tests
Robin Gareus [Wed, 3 Dec 2014 15:03:19 +0000 (16:03 +0100)]
use Dummy backend for tests

9 years agoreduce confusion.
Robin Gareus [Wed, 3 Dec 2014 11:47:46 +0000 (12:47 +0100)]
reduce confusion.

9 years agoFix running libpbd unit tests when $TOP(in test scripts) is set as relative path
Tim Mayberry [Tue, 2 Dec 2014 13:40:50 +0000 (20:40 +0700)]
Fix running libpbd unit tests when $TOP(in test scripts) is set as relative path

Add test for PBD::canonical_path that was used to track down silly mistake
in test code

9 years agoAdd DEBUG_TRACE output to PBD::canonical_path
Tim Mayberry [Tue, 2 Dec 2014 13:39:48 +0000 (20:39 +0700)]
Add DEBUG_TRACE output to PBD::canonical_path

9 years agoCall PBD::init() from libmidi++ test runner
Tim Mayberry [Tue, 2 Dec 2014 13:37:45 +0000 (20:37 +0700)]
Call PBD::init() from libmidi++ test runner

This is mostly just to be able to set PBD_DEBUG for testing if
necessary

9 years agoAdd ability to set libpbd debug options via PBD_DEBUG environment var
Tim Mayberry [Tue, 2 Dec 2014 13:36:14 +0000 (20:36 +0700)]
Add ability to set libpbd debug options via PBD_DEBUG environment var

9 years agoCall PBD::init from evoral testrunner
Tim Mayberry [Tue, 2 Dec 2014 05:48:23 +0000 (12:48 +0700)]
Call PBD::init from evoral testrunner

This is needed to set _fmode = O_BINARY for libsmf/fread and
fixes takeFiveTest on windows

9 years agoMove setting _fmode flag on windows into PBD::init
Tim Mayberry [Wed, 5 Nov 2014 01:24:39 +0000 (11:24 +1000)]
Move setting _fmode flag on windows into PBD::init

This moves setting of _fmode slightly later in the initialization
of the application via Ardour::init.

9 years agoCopy evoral test files to correct location Fedora mingw bundle
Tim Mayberry [Tue, 2 Dec 2014 05:21:28 +0000 (12:21 +0700)]
Copy evoral test files to correct location Fedora mingw bundle

9 years agoAdd midi++2 unit tests to the Fedora based mingw build
Tim Mayberry [Mon, 1 Dec 2014 14:44:42 +0000 (21:44 +0700)]
Add midi++2 unit tests to the Fedora based mingw build

9 years agoFix definition of application name in Fedora based mingw packaging scripts
Tim Mayberry [Mon, 1 Dec 2014 14:42:33 +0000 (21:42 +0700)]
Fix definition of application name in Fedora based mingw packaging scripts

Probably needs to be configurable at some point

9 years agoRemove references in pbd test script to libs no longer in source tree
Tim Mayberry [Tue, 2 Dec 2014 02:53:16 +0000 (09:53 +0700)]
Remove references in pbd test script to libs no longer in source tree

9 years agoMake pbd test script consistant with other test scripts
Tim Mayberry [Tue, 2 Dec 2014 02:32:05 +0000 (09:32 +0700)]
Make pbd test script consistant with other test scripts

remove running script from pwd limitation

9 years agoexport MIDIPP_TEST_PATH in midi++ test script so test files can be located
Tim Mayberry [Tue, 2 Dec 2014 02:27:55 +0000 (09:27 +0700)]
export MIDIPP_TEST_PATH in midi++ test script so test files can be located

Modify formatting of script to be consistant with other test scripts

9 years agoAdd test_search_path to find test files in MidnamTest
Tim Mayberry [Mon, 1 Dec 2014 14:41:40 +0000 (21:41 +0700)]
Add test_search_path to find test files in MidnamTest

9 years agoRemove old scripts from when scons was used for build system
Tim Mayberry [Sat, 29 Nov 2014 13:33:53 +0000 (20:33 +0700)]
Remove old scripts from when scons was used for build system

9 years agoUse test_output_directory() in pbd filesystem test
Tim Mayberry [Sat, 29 Nov 2014 09:53:56 +0000 (16:53 +0700)]
Use test_output_directory() in pbd filesystem test

This prevents directory being created in pwd and means deletion of
directory is unnecessary

9 years agoUse test utility function to find evoral test files
Tim Mayberry [Sat, 29 Nov 2014 09:30:35 +0000 (16:30 +0700)]
Use test utility function to find evoral test files

either via EVORAL_TEST_PATH env var or on windows via directory relative
to dll

9 years agoUse PBD::tmp_writable_directory to write evoral test file into
Tim Mayberry [Sat, 29 Nov 2014 09:11:22 +0000 (16:11 +0700)]
Use PBD::tmp_writable_directory to write evoral test file into

no need to remove directory as it is temporary

9 years agoUse PBD::tmp_writable_directory in libardour test_util.cc
Tim Mayberry [Sat, 29 Nov 2014 07:55:58 +0000 (14:55 +0700)]
Use PBD::tmp_writable_directory in libardour test_util.cc

9 years agoRemove unnecessary comma in pbd wscript file
Tim Mayberry [Sat, 29 Nov 2014 06:58:07 +0000 (13:58 +0700)]
Remove unnecessary comma in pbd wscript file

9 years agoUse PBD::tmp_writable_directory in test_output_directory
Tim Mayberry [Sat, 29 Nov 2014 06:56:26 +0000 (13:56 +0700)]
Use PBD::tmp_writable_directory in test_output_directory

9 years agoAdd PBD::tmp_writable_directory utility function to pbd/file_utils.h/cc
Tim Mayberry [Sat, 29 Nov 2014 06:44:11 +0000 (13:44 +0700)]
Add PBD::tmp_writable_directory utility function to pbd/file_utils.h/cc

9 years agoFixes for AudioEngine test
Tim Mayberry [Sun, 9 Nov 2014 12:28:24 +0000 (22:28 +1000)]
Fixes for AudioEngine test

9 years agoRemove unused test_common.h/cc files
Tim Mayberry [Sat, 29 Nov 2014 07:41:03 +0000 (14:41 +0700)]
Remove unused test_common.h/cc files

9 years agoMove libardour test utility code into one source file
Tim Mayberry [Fri, 29 Nov 2013 02:16:18 +0000 (12:16 +1000)]
Move libardour test utility code into one source file

9 years agoexport ARDOUR/PBD_TEST_PATH so that ./waf test finds the pbd test files
Tim Mayberry [Fri, 21 Nov 2014 06:48:36 +0000 (13:48 +0700)]
export ARDOUR/PBD_TEST_PATH so that ./waf test finds the pbd test files

9 years agoUse ardev_common.sh to setup environment for running libardour tests
Tim Mayberry [Sat, 29 Nov 2014 13:42:21 +0000 (20:42 +0700)]
Use ardev_common.sh to setup environment for running libardour tests

9 years agoFix evoral test suite.
David Robillard [Wed, 3 Dec 2014 04:30:16 +0000 (23:30 -0500)]
Fix evoral test suite.

9 years agoFix range of pan controls.
David Robillard [Wed, 3 Dec 2014 00:02:03 +0000 (19:02 -0500)]
Fix range of pan controls.

Set default range to [0,1] since [0,0] is problematic and useless anyway.

9 years agoBecause we're building the gdk-pixbuf modules statically (i.e. no longer as DLLs...
John Emmas [Tue, 2 Dec 2014 19:08:12 +0000 (19:08 +0000)]
Because we're building the gdk-pixbuf modules statically (i.e. no longer as DLLs) it's not necessary to edit the user's 'gdk-pixbuf.loaders' file (MSVC build only)

9 years agoMake 'ARDOUR::ParameterDescriptor' exportable, so that it can get used outside of...
John Emmas [Tue, 2 Dec 2014 18:59:43 +0000 (18:59 +0000)]
Make 'ARDOUR::ParameterDescriptor' exportable, so that it can get used outside of libardour

9 years agoRemove accidentally committed file.
David Robillard [Tue, 2 Dec 2014 17:15:54 +0000 (12:15 -0500)]
Remove accidentally committed file.

9 years agoalsa-backend: drop midi during freewheel processing.
Robin Gareus [Tue, 2 Dec 2014 16:03:29 +0000 (17:03 +0100)]
alsa-backend: drop midi during freewheel processing.

9 years agofirst pass at optimization for low-level canvas code
Paul Davis [Tue, 2 Dec 2014 10:32:34 +0000 (05:32 -0500)]
first pass at optimization for low-level canvas code

9 years agoFix lost MIDI events due to broken range check.
David Robillard [Tue, 2 Dec 2014 08:36:33 +0000 (03:36 -0500)]
Fix lost MIDI events due to broken range check.

9 years agoCreate discrete lists for recorded MIDI controls.
David Robillard [Tue, 2 Dec 2014 05:21:52 +0000 (00:21 -0500)]
Create discrete lists for recorded MIDI controls.

9 years agoFix automation write/touch.
David Robillard [Tue, 2 Dec 2014 00:37:05 +0000 (19:37 -0500)]
Fix automation write/touch.

9 years agoFactor out copy-paste code.
David Robillard [Mon, 1 Dec 2014 23:36:24 +0000 (18:36 -0500)]
Factor out copy-paste code.

9 years agoRemove unused method.
David Robillard [Mon, 1 Dec 2014 21:59:10 +0000 (16:59 -0500)]
Remove unused method.

9 years agoReplace half-baked param metadata with descriptor.
David Robillard [Mon, 1 Dec 2014 19:28:03 +0000 (14:28 -0500)]
Replace half-baked param metadata with descriptor.

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.

9 years agoMake it compile with C++11 support.
Julien de Kozak [Sat, 1 Nov 2014 17:35:44 +0000 (18:35 +0100)]
Make it compile with C++11 support.
Reference : https://bugs.webkit.org/show_bug.cgi?id=59249

9 years agoRelax VAMP version from 2.4 to 2.1
Julien de Kozak [Sat, 1 Nov 2014 16:17:25 +0000 (17:17 +0100)]
Relax VAMP version from 2.4 to 2.1

9 years agofix linux installer:
Robin Gareus [Mon, 1 Dec 2014 22:15:12 +0000 (23:15 +0100)]
fix linux installer:

 * allow to override install dir with environment variable.
 * create /opt if if it does not exist and INSTALL_DEST_BASE env is unset.

9 years agoTidy up comments in Evoral::coverage
Colin Fletcher [Mon, 1 Dec 2014 19:48:30 +0000 (19:48 +0000)]
Tidy up comments in Evoral::coverage

Remove old (already #if 0'ed) implementation of Evoral::coverage() and its
comments.

Tidy up the comment enumerating all the possible ways in which two ranges
can overlap, note the Evoral::OverlapType corresponding to each one, and add
comments to the if()s in coverage corresponding to the cases in the list of
overlap types.

Remove some commented-out assert()s that actually do happen, and re-instate
one that really shouldn't.

Fix a small typo (with -> within)

9 years agoSimplify Evoral::RangeList::subtract(), and make it pass amended tests
Colin Fletcher [Sun, 23 Nov 2014 19:16:42 +0000 (19:16 +0000)]
Simplify Evoral::RangeList::subtract(), and make it pass amended tests

The various conditionals in Evoral::RangeList::subtract() appear to have
been there to work around
 (a) coverage() not always returning the correct value, &
 (b) the test suite assuming that the ->to point lies outside the range

Now that these are both fixed, the implementation of subtract() becomes
quite a bit clearer. I replaced the if()s with assert()s for now, but these
shouldn't trip if coverage() is working as I expect.

Also (attempt to) clarify the comments in subtract.

9 years agoComments in various call-sites of coverage()
Colin Fletcher [Mon, 1 Dec 2014 20:12:51 +0000 (20:12 +0000)]
Comments in various call-sites of coverage()

Comments in various call sites of Evoral::coverage() marking things I think
are dubious (with XXX). Also straightened up the alignment of some ASCII
art in libs/ardour/diskstream.cc

9 years agoAdd comment about parameters to coverage() including the end point.
Colin Fletcher [Mon, 1 Dec 2014 20:06:08 +0000 (20:06 +0000)]
Add comment about parameters to coverage() including the end point.

9 years agoRework Evoral::coverage() to pass unit tests
Colin Fletcher [Mon, 1 Dec 2014 20:03:22 +0000 (20:03 +0000)]
Rework Evoral::coverage() to pass unit tests

Rewrite Evoral::coverage() to (hopefully) do what it's supposed to.

Return OverlapNone for invalid ranges: if either of the ranges passed to
Evoral::coverage() have negative length (i.e.  start > end), return OverlapNone
- it seems reasonable to say that a negative-length range can't overlap
anything. Also return OverlapNone from the fallthrough case, though this should
never happen.

9 years agoMake tests of Evoral::Range functions include both endpoints in Range
Colin Fletcher [Sun, 30 Nov 2014 11:17:58 +0000 (11:17 +0000)]
Make tests of Evoral::Range functions include both endpoints in Range

Some of the tests for Evoral::RangeList::subtract() assume that ranges
don't contain their end (->to) point. This appears inconsistent with how
they are used elsewhere.

Add some ASCII art comments to the tests to try to clarify what they're
really testing for, and amend subtractTest1, subtractTest4, & subtractTest5
to incorporate the assumption that ranges include their end points.

9 years agoexclude fader-reserve from range
Robin Gareus [Mon, 1 Dec 2014 16:36:17 +0000 (17:36 +0100)]
exclude fader-reserve from range

9 years agoRemove braindead Parameter inheritance abuse.
David Robillard [Mon, 1 Dec 2014 04:14:03 +0000 (23:14 -0500)]
Remove braindead Parameter inheritance abuse.

9 years agoReplace thinning static state with parameter.
David Robillard [Mon, 1 Dec 2014 03:18:18 +0000 (22:18 -0500)]
Replace thinning static state with parameter.

9 years agoRemove dead code.
David Robillard [Mon, 1 Dec 2014 02:41:06 +0000 (21:41 -0500)]
Remove dead code.

9 years agoRemove bogus test and noisy output.
David Robillard [Mon, 1 Dec 2014 01:38:16 +0000 (20:38 -0500)]
Remove bogus test and noisy output.

9 years agoFix test runner for tests that use files.
David Robillard [Mon, 1 Dec 2014 01:37:35 +0000 (20:37 -0500)]
Fix test runner for tests that use files.

9 years agoTrim the include tree.
David Robillard [Mon, 1 Dec 2014 00:57:15 +0000 (19:57 -0500)]
Trim the include tree.

9 years agoMove EventRingBuffer to libardour.
David Robillard [Sun, 30 Nov 2014 23:51:24 +0000 (18:51 -0500)]
Move EventRingBuffer to libardour.

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.

9 years agoAdd missing namespace qualifiers.
David Robillard [Sun, 30 Nov 2014 23:27:04 +0000 (18:27 -0500)]
Add missing namespace qualifiers.

9 years agoClean up state tracking of raw MIDI.
David Robillard [Sun, 30 Nov 2014 23:33:22 +0000 (18:33 -0500)]
Clean up state tracking of raw MIDI.

9 years agoFactor out duplicated track automation code.
David Robillard [Sun, 30 Nov 2014 21:24:18 +0000 (16:24 -0500)]
Factor out duplicated track automation code.

Mute automation for MIDI tracks.

9 years agoSave mute automation state.
David Robillard [Sun, 30 Nov 2014 19:48:35 +0000 (14:48 -0500)]
Save mute automation state.

9 years agoupdate interface for processor-box faders step/page
Robin Gareus [Sun, 30 Nov 2014 23:33:11 +0000 (00:33 +0100)]
update interface for processor-box faders step/page

see also 4d4c20b8c

9 years agoCLA approved consistent fine-grained scale modifier
Robin Gareus [Sun, 30 Nov 2014 20:26:55 +0000 (21:26 +0100)]
CLA approved consistent fine-grained scale modifier

9 years agoProcess 'default_ui_config.in' when building with MSVC
John Emmas [Sun, 30 Nov 2014 17:57:44 +0000 (17:57 +0000)]
Process 'default_ui_config.in' when building with MSVC

9 years agogtk interface update for controller step/page size
Robin Gareus [Sun, 30 Nov 2014 14:04:56 +0000 (15:04 +0100)]
gtk interface update for controller step/page size

9 years agoconsistent step+page sizes for fader+spinbox
Robin Gareus [Sun, 30 Nov 2014 14:04:03 +0000 (15:04 +0100)]
consistent step+page sizes for fader+spinbox

9 years agouse update_steps() instead of custom function
Robin Gareus [Sun, 30 Nov 2014 14:03:36 +0000 (15:03 +0100)]
use update_steps() instead of custom function

9 years agoupdate_steps(), properly handle integer ranges
Robin Gareus [Sun, 30 Nov 2014 14:02:53 +0000 (15:02 +0100)]
update_steps(), properly handle integer ranges

9 years agofix ladpsa default value.
Robin Gareus [Sat, 29 Nov 2014 21:57:46 +0000 (22:57 +0100)]
fix ladpsa default value.

because get_parameter_descriptor() is const, also wrap
default_value() in a const function.

9 years agofix LV2 default port value.
Robin Gareus [Sat, 29 Nov 2014 21:24:24 +0000 (22:24 +0100)]
fix LV2 default port value.

9 years agoFix write for boolean automation.
David Robillard [Sat, 29 Nov 2014 19:32:12 +0000 (14:32 -0500)]
Fix write for boolean automation.

9 years agodon't move faders on click.
Robin Gareus [Sat, 29 Nov 2014 16:31:41 +0000 (17:31 +0100)]
don't move faders on click.

for one, it can mess up the value when switching to
numeric-entry. It is also rather useless and not
Fader-like (faders are not scrollbars).
Besides, "stepvalue" is way to large and causes jumps
(sometimes step-value is even negative, see
"fast lookahead limiter", "release time"
 -> some other bug)

9 years agoshow values on faders (fixes bug in 55c6165)
Robin Gareus [Sat, 29 Nov 2014 13:49:03 +0000 (14:49 +0100)]
show values on faders (fixes bug in 55c6165)

9 years agochange ownership of processor window-proxy
Robin Gareus [Sat, 29 Nov 2014 00:35:49 +0000 (01:35 +0100)]
change ownership of processor window-proxy

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.

9 years agoSet discrete by default for boolean parameters.
David Robillard [Sat, 29 Nov 2014 06:40:23 +0000 (01:40 -0500)]
Set discrete by default for boolean parameters.

9 years agoSomewhat working gain automation.
David Robillard [Sat, 29 Nov 2014 06:25:27 +0000 (01:25 -0500)]
Somewhat working gain automation.

This probably isn't correct in several ways, but it works more than it did, so
I figure it's push worthy.

Still not working:

 * Saving mute automation list
 * Dragged control points are not snapped to model restrictions
   (boolean, in this case, but general problem)
 * Line goes funny if you record mute automation
   (as opposed to drawing it which works)

9 years agoShow discrete/toggled automation as stepped line.
David Robillard [Sat, 29 Nov 2014 00:17:39 +0000 (19:17 -0500)]
Show discrete/toggled automation as stepped line.

9 years agoFix crash when deleting all points from a line.
David Robillard [Sat, 29 Nov 2014 01:03:16 +0000 (20:03 -0500)]
Fix crash when deleting all points from a line.

9 years agoUse a button as controller for toggled parameters.
David Robillard [Fri, 28 Nov 2014 23:40:23 +0000 (18:40 -0500)]
Use a button as controller for toggled parameters.

9 years agoRemove redundant calls to start/end_touch.
David Robillard [Fri, 28 Nov 2014 23:31:18 +0000 (18:31 -0500)]
Remove redundant calls to start/end_touch.

The controllers do this automatically.

9 years agoSet the toggled default metadata of parameters.
David Robillard [Fri, 28 Nov 2014 23:04:51 +0000 (18:04 -0500)]
Set the toggled default metadata of parameters.

This is so generic code looking at the Parameter for gain, solo, and
rec-enable will get the correct value for toggled.

9 years agoAdd some newly introduced header files to our MSVC project (gtk2_ardour)
John Emmas [Fri, 28 Nov 2014 14:43:34 +0000 (14:43 +0000)]
Add some newly introduced header files to our MSVC project (gtk2_ardour)

9 years agoAdd some newly introduced source files to our MSVC project (cairocanvas)
John Emmas [Fri, 28 Nov 2014 14:42:17 +0000 (14:42 +0000)]
Add some newly introduced source files to our MSVC project (cairocanvas)

9 years agochange extention of linux installers to .run
Robin Gareus [Fri, 28 Nov 2014 02:41:49 +0000 (03:41 +0100)]
change extention of linux installers to .run

9 years agoRemove dead code.
David Robillard [Thu, 27 Nov 2014 09:17:15 +0000 (04:17 -0500)]
Remove dead code.

9 years agoFix calculation using uninitialized value.
David Robillard [Thu, 27 Nov 2014 09:15:30 +0000 (04:15 -0500)]
Fix calculation using uninitialized value.

Implicit "this" is the devil.

9 years agoremove "port sources" management from MidiControlUI and Mackie support.
Paul Davis [Mon, 24 Nov 2014 20:21:19 +0000 (22:21 +0200)]
remove "port sources" management from MidiControlUI and Mackie support.

    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.

9 years agovariable name change for slightly increased clarity
Paul Davis [Fri, 21 Nov 2014 00:49:10 +0000 (19:49 -0500)]
variable name change for slightly increased clarity

9 years agoget correct ::distance() and ::delta() implementations for cases involving achromatics
Paul Davis [Thu, 20 Nov 2014 19:01:41 +0000 (14:01 -0500)]
get correct ::distance() and ::delta() implementations for cases involving achromatics

9 years agocontinue tweaks on the color road
Paul Davis [Thu, 20 Nov 2014 19:01:12 +0000 (14:01 -0500)]
continue tweaks on the color road

9 years agonewly generated, quantized-hue relative color definitions
Paul Davis [Thu, 20 Nov 2014 19:00:37 +0000 (14:00 -0500)]
newly generated, quantized-hue relative color definitions

9 years agoadd back grays
Paul Davis [Thu, 20 Nov 2014 19:00:13 +0000 (14:00 -0500)]
add back grays

9 years agoadd default values for base colors (configurable colors) to default_ui_config.in
Paul Davis [Wed, 19 Nov 2014 19:01:04 +0000 (14:01 -0500)]
add default values for base colors (configurable colors) to default_ui_config.in