13
0
Commit Graph

7495 Commits

Author SHA1 Message Date
318a9edab9 massive reworking of color selection implementation 2014-11-26 18:22:22 +02:00
c927eeb9ee ensure that Ardour recognizes its own MMC device ID as "all-call" when set to 0x7f (127) 2014-11-26 18:22:22 +02:00
b9be8d2652 Replace individual waf options for enabling backends with one --with-backends option 2014-11-26 22:47:05 +07:00
4358b8db79 Add test for Evoral::coverage()
Add a test function to test Evoral::coverage() with all possible overlap
types. The first test (line 161) that expects OverlapExternal will fail
with the current implementation of coverage().

There's possibly still a discussion to be had about what the overlap type of
ranges with negative lengths should be: there are currently places in the main
Ardour code base where coverage() is called with ranges where start > end.
2014-11-25 17:49:51 +00:00
3a6c9e3bb9 Fix build of evoral tests
Fix compile errors in libs/evoral/test/, by explicitly calling
Evoral::MusicalTime::to_double() wherever a double value is required of a
MusicalTime.

Some of the double variables should probably really be made into MusicalTime
ones instead, but I don't want to mess with this too much.

takeFiveTest still fails for me after this, but a failing test is probably
more informative in the long run than a test that won't even compile.
2014-11-25 14:59:48 +00:00
1f58f81aa6 Fix order of parameters to stop_touch() in Mackie::Control
Reverse the parameters of Mackie::Control::stop_touch() to make them
consistent with AutomationControl::stop_touch(), and fix up the call to
AutomationControl::stop_touch() to have the parameters in the correct
order.

Unfortunately, I don't possess any devices that speak the Mackie protocol, so
though the patch seems logical and correct to me, I have no way of testing it.
If anyone has a device with touch faders that speaks Mackie, I'd be glad of any
confirmation that it at least doesn't break anything.
2014-11-25 14:59:48 +00:00
ea5876b836 Remove dead code. 2014-11-25 02:11:44 -05:00
78218e8c07 fix OSX open URL in browser 2014-11-24 20:35:38 +01:00
c7ddedc5b8 Simulate 'trunc()' which isn't available in MSVC
(needed by 'gtk2_ardour/editor.cc')
2014-11-24 12:56:07 +00:00
018f559aad Remove a commented out line in 'pbd/stacktrace.h'
(was probably just needed for testing at some stage)
2014-11-24 12:53:24 +00:00
25745758aa Changes needed to accommodate building libevoral with MSVC
Note that class 'MusicalTime' needn't be exportable (with a little work, this could be reverted if it affects the other builds)
2014-11-24 12:51:54 +00:00
c0e8647806 amend c4533939b9 2014-11-24 00:04:45 +01:00
cd91fa0046 hotfix windows-compilation (unfinished bfe49540b9)
..at least it compiles and starts. Mackie support etc
is probably still broken.
2014-11-23 23:57:56 +01:00
8ddeb712f6 make debug message more useful 2014-11-23 23:57:55 +01:00
5aba4df252 fix/silence various compiler warnings.
* 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-23 23:57:55 +01:00
f1926dc863 Fix build with a certain awful broken compiler. 2014-11-23 16:31:59 -05:00
ec01682714 -Wunused-function on windows 2014-11-23 21:01:39 +01:00
40764f4cb3 use NULL not 0 for c-functions (even in c++ code)
4.3 KBytes less compiler warnings.
2014-11-23 21:01:39 +01:00
bfe49540b9 remove use of CrossThreadChannel::selectable() to allow cross-platform implementation of CrossThreadChannel via Glib::IOSource 2014-11-23 17:37:13 +02:00
57c1b6e261 Fix quantization and other time-related ops. 2014-11-22 21:49:42 -05:00
231e0009b4 Max is max and min is min and I am dumb. 2014-11-22 16:33:32 -05:00
42b5ed3904 Fix clang and MSVC build. 2014-11-22 15:26:41 -05:00
c1cfa12d6e Wrap MusicalTime in a class.
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.
2014-11-22 04:05:42 -05:00
cae74309a5 Fix assert failure in control list interpolation.
How we never hit this before is beyond me, it's in some ooooold code.
2014-11-22 00:46:15 -05:00
01493b14cf Fix const violation warnings in tempo.cc. 2014-11-22 00:46:15 -05:00
4bc0d1c475 Fix lost MIDI note offs and controllers.
Fix initial read of discrete MIDI controllers.

Fix spurious note offs when starting to play in the middle of a note.

Faster search for initial event when cached iterator is invalid.

So much for dropping the cached iterator.  The iterator is responsible for
handling note offs, so that doesn't work.  This design means we have some stuck
note issues at the source read level, but they should be taken care of by the
state tracker anyway.
2014-11-20 15:36:11 -05:00
8bba63282a Reduce unnecessary non-const MIDI buffer access. 2014-11-20 15:32:06 -05:00
8f8a4878f3 Clean up some MIDI code. 2014-11-20 11:31:31 -05:00
0c4869dc35 debug trace lost midi-messages 2014-11-20 02:46:30 +01:00
a9936205b1 Fix dropped MIDI events, especially with record enabled.
I am not precisely sure why the cached iterator was causing this problem, it
shouldn't be invalidated, and the times make sense.  It may be some lock
related issue since the iterator holds a lock on the source.

In any case, this cached iterator was just to avoid repeated linear search of
the model, but since the model has a logarithmic search, instead just scrap all
this problematic persistent state and search for the appropriate start time
every read.  No need to be careful about invalidating when anything changes.
2014-11-19 19:24:16 -05:00
e3e85a92db some const'ness and hints for clang 2014-11-19 20:38:50 +01:00
0fb91e10b4 allow dummy backend for any product 2014-11-18 17:04:23 -06:00
bd577a0663 Avoid possible use of uninitialized values.
This could only happen with a broken widget, but it shuts up clang and doesn't
hurt.
2014-11-18 02:55:03 -05:00
976a150e6b Remove obviously dead/redundant code. 2014-11-18 02:55:03 -05:00
07d4f50689 Clean up funny code and initialize variables. 2014-11-18 02:55:03 -05:00
881d77f1e5 Constrain variable scopen and avoid uninitialized values existing at all.
Note: dead assignments trigger scan-build dead code warnings, which
initializations do not.
2014-11-18 02:55:03 -05:00
6e482b3488 Remove unused variable and redundant arithmetic. 2014-11-18 02:55:03 -05:00
8dde26da7b Gracefully avoid importing audio that somehow has 0 channels. 2014-11-18 02:55:03 -05:00
e5d9fd1aac Fix potential use of uninitialized value. 2014-11-18 02:53:28 -05:00
fed4e8446b Fix NULL pointer dereference on malformed Playlist XML. 2014-11-18 02:53:28 -05:00
afd67800b9 Avoid potential division by zero. 2014-11-18 02:53:28 -05:00
c4c7598adb Fix broken logic and possible NULL pointer dereference for Bundle XML. 2014-11-18 02:53:28 -05:00
26f6f80a53 Fix incredibly unlikely NULL pointer dereference. 2014-11-18 02:53:28 -05:00
9aec0c627d Fix Region::verify_length() so it actually does something. 2014-11-18 02:53:27 -05:00
b6db707989 amend 484e38053 2014-11-18 05:28:27 +01:00
484e380536 silence clang "dead assignment" warnings 2014-11-18 04:46:37 +01:00
37937d9c69 synchronize preferences and monitor-section 2014-11-18 03:49:20 +01:00
5e90b97c42 files should have at least one channel. 2014-11-18 02:15:07 +01:00
f2273dc3b6 remove dead assignment 2014-11-18 02:15:06 +01:00
c194e4df18 remove superfluous if-branch (_session is checked a few lines above) 2014-11-18 02:15:06 +01:00