13
0
Commit Graph

7788 Commits

Author SHA1 Message Date
f3604814a4 use ldflags for wine linking
fixes issue with eg. wine-unstable:
--also-libdir=/usr/lib/i386-linux-gnu/wine-unstable/
2014-12-28 15:18:39 +01:00
4e2673ca2c add explicit chmod for good measure 2014-12-28 10:20:46 +01:00
28fb110dd3 fix [rare] concurrent build issue:
[709/779] subst: headless/hardev_common.sh.in -> build/headless/hardev_common_waf.sh
[710/779] hardev_common_waf.sh: -> build/headless/hardev_common_waf.sh
chmod: cannot access `headless/hardev_common_waf.sh': No such file or directory
2014-12-28 10:20:25 +01:00
e427724bd7 Some of libardour's istream and ostream operators are needed outside of libardour - so let's make them exportable
(currently, only the istream operators are needed but we might as well do them both)
2014-12-26 09:21:23 +00:00
6c50971eba Remove the source files which got transferred to libpbd 2014-12-26 09:18:23 +00:00
46d08595ff class 'PBD::Configuration' doesn't actually get exported from libpbd - so make sure we don't decorate it with LIBPBD_API 2014-12-26 09:16:58 +00:00
8eba7c5c0a Add some newly introduced source files to our MSVC project (libpbd) 2014-12-26 09:15:17 +00:00
7e25f21595 Conditionally remove possibly unused functions. 2014-12-25 20:07:57 -05:00
129cc4689a Remove warning when adding MIDI model controls.
This is fine, unlike the other cases, MidiTrack is not the only thing that can
have a MIDI automation control.
2014-12-24 20:41:14 -05:00
86242348ec Fix crash when getting width of item with no bbox. 2014-12-24 16:02:56 -05:00
b0f1c16e20 Support fancy controls for some AU units. 2014-12-24 13:00:32 -05:00
2e7cfe081f Add --no-lrdf configure option. 2014-12-24 13:00:32 -05:00
8c8bc51034 Fix OSX build. 2014-12-24 13:00:32 -05:00
0b471df0c3 fix clang compilation
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-24 05:00:39 +01:00
bec521c6a7 proper default setup and fallbacks for video on windows 2014-12-24 01:36:46 +01:00
f5f89d8c7e fix for case-sensitive FS - aa80515f3 2014-12-23 23:43:25 +01:00
96ee33aa5f fix and cleanup c404ef98 (windows config dir) 2014-12-23 23:43:25 +01:00
Greg Zharun
aa80515f3f [Summary] Fixed audio export on Windows. Added support of windows platform for the function that calculated hardware concurrency.
Because there was no implementation for this function on windows it used to return 0. This meant that no thread was created to process the data.
2014-12-23 12:55:35 -05:00
6b6d78c41f indent cleanup 2014-12-23 12:35:58 -05:00
280910fd53 new file, derived from old libs/ardour/configuration.cc 2014-12-22 19:48:30 -05:00
d854c5d93c move ARDOUR::Configuration and ARDOUR::ConfigVariable into libpbd 2014-12-22 19:48:30 -05:00
c404ef9856 don't append .config to %LOCALAPPDATA%\<ProgramName>\
::user_config_directory() could use some general cleanup
an x-platform consolidation, but today is not the day.
2014-12-22 23:04:44 +01:00
64fa63212f move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration 2014-12-22 13:39:46 -05:00
795c5c16f1 no use of GUI parameters in libardour 2014-12-22 13:39:46 -05:00
76d42ab644 change SessionEvent::Immediate to -1, and ensure that clear_events() uses it 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-21 11:45:53 -05:00
dafcaec023 Limit Wiimote surface discovery to 5 connection attempts
If you don't connect a Wiimote then the connection attempts were
endless.
2014-12-21 12:53:00 +07:00
282c563fce fix newly introduced deadlock when cloning MIDI regions 2014-12-20 14:09:39 -05:00
David Robillard
5d8021bf44 Maintain correct tracker state on MIDI overwrite.
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-20 01:13:25 -05:00
db92d62c95 Revert "Change default for region selection after split on Mixbus"
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 631467f0bb:
I now realise that I accidentally rolled another fix (missing "region-" in
config variable name) in there too: sorry about that.
2014-12-19 21:16:02 +00:00
631467f0bb Change default for region selection after split on Mixbus
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-19 17:12:05 +00:00
d4a3141927 Add a config option to control region selection after split.
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-19 17:12:04 +00:00
a494211e73 add ArdourCanvas::change_alpha()
Time to move away from rgba macros
2014-12-19 09:53:26 -05:00
Valeriy Kamyshniy
1b89055526 [Summary] Bug fix: mistakenly set states of freewheeling thread. 2014-12-18 17:07:37 -05:00
74be550698 change Item::visible() to Item::self_visible(); add Item::visible() which returns accurate visibility
Child items will be hidden when their ancestors are hidden. The old ::visible() implementation didn't reflect this. In addition,
when changes are made to hidden items (new definition of visible/not visible), don't bother to request redraws, since this will
be done when the item becomes visible again.
2014-12-18 10:30:38 -05:00
7eab4c6f33 Don't assume compiler can avoid copy to const ref. 2014-12-18 04:03:39 -05:00
e584ae0bf9 Mute automation via normal mute button. 2014-12-18 02:26:51 -05:00
64490e88e4 No need to yell. 2014-12-18 02:26:34 -05:00
0f759e9a93 MIDI bounce. 2014-12-17 21:48:09 -05:00
d2cafbe95a Remove some aborts that don't really need to be.
Enforce PatchPrimaryKey sanity at the type level rather than attempting to
check for it everywhere.

Remove dead file.
2014-12-17 19:43:09 -05:00
a706755710 Fix various MIDI locking issues.
Attempt to make mistakes much less likely in the future by statically requiring
caller to pass scoped locks where necessary.
2014-12-17 16:07:29 -05:00
ec6626f06a Fix oops in previous commit.
Professionalism is overrated.
2014-12-17 02:10:01 -05:00
0c3f4bd995 Fix occasional crash when recording MIDI. 2014-12-17 01:49:46 -05:00
12803c4255 use new parameter to limit minimum length of any range location 2014-12-16 13:06:13 -05:00
94e2b61a86 add new parameter for minimum value of any range location 2014-12-16 13:06:05 -05:00
0fdb846625 try alternate Glib:: API for conversion from UTF-8 to ascii in Mackie support code 2014-12-15 15:06:10 -05:00
e3f376107e nominal fix for sending UTF-8 text to Mackie surface 2014-12-15 14:44:05 -05:00
9831006c8e add getters for SVAModifier 2014-12-15 12:06:53 -05:00
995bcd3aa0 fix typo 2014-12-15 09:29:04 -05:00
aa57e9e032 more fixes to SVAModifier constructor(s) 2014-12-15 09:03:52 -05:00
9a454ab3d4 Add a newly introduced header file to our MSVC project (libpbd) 2014-12-15 10:26:06 +00:00
3fa4063d9b fix up SVAModifier constructors 2014-12-14 23:41:31 -05:00
427b93055f add SVAModifier to ArdourCanvas color code 2014-12-14 23:34:36 -05:00
0fa5643d20 move ScopedFileDescriptor into libpbd and use it 2014-12-14 12:26:00 -05:00
1b3fb142f0 Only attempt to close our peakfile '_fd' if we have a valid handle
(yesterday's fix was needed in a 2nd place)
2014-12-14 10:39:29 +00:00
90010d098f Only attempt to close '_peakfile_fd' if we have a valid handle 2014-12-13 12:46:24 +00:00
ee38c44109 Structure MIDI device selector by manufacturer.
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-13 00:37:34 -05:00
ec0a74276a Remove (no longer needed) sources from our MSVC project (libpbd) 2014-12-12 09:08:16 +00:00
050d46a33e Merge branch 'nofilemanager' 2014-12-10 18:29:41 -05:00
a4273ee224 Revert "fix some cast warnings"
This reverts commit 17707b9674.
2014-12-10 18:29:00 -05:00
294b99aabf remove file manager LRU cache from code.
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-10 18:28:55 -05:00
a25d945c3e fix some cast warnings 2014-12-10 18:27:11 -05:00
17707b9674 fix some cast warnings 2014-12-10 18:13:12 -05:00
3e27a71c71 simpler approach for Apple setrlimit() compatibility issue 2014-12-10 15:59:11 -05:00
b91c7836de try some alternate, hard numbers when resetting open file limits on OS X 2014-12-10 15:27:32 -05:00
a0fcf2fc66 remove ugly and unnecessary debugging output 2014-12-10 13:37:03 -05:00
2f300085ea Use DEBUG_THREAD_SELF when using DEBUG_TRACE with pthread IDs
(supports both normal pthreads usage and PTW32)
2014-12-10 16:56:33 +00:00
635578b30b use correct conditional to choose between different DEBUG_THREAD_SELF macros 2014-12-10 11:07:18 -05:00
c06c15596b add DEBUG_THREAD_SELF to allow use of DEBUG_TRACE with thread IDs on both normal pthreads platforms and PTW32 2014-12-10 09:34:32 -05:00
e66752cec1 add set-session-extents-from-edit-range 2014-12-09 16:18:47 -06:00
1e0c1751a5 more DEBUG::Butler output, formatting corrections, and a warning on cerr if capture/playback buffers are too full/empty 2014-12-09 16:36:52 -05:00
724febc82c remove superfluous PBD/ARDOUR:: init calls
this reverts 339670b
2014-12-09 19:41:53 +01:00
8e44a0bff7 add DEBUG::Butler and use it 2014-12-09 10:18:29 -05:00
246a4f3018 correct install location for .mo files (i18n) and cleanup LOCALEDIR use a bit 2014-12-09 08:19:11 -05:00
624a86c39d lots more color work, closer and closer to being ready for ... being taken apart again 2014-12-08 22:02:38 -05:00
9ac7ddb31d remove all explicit button text colors; use contrasting_text_color() instead.
Also, use a slightly off-white rather than pure white, which should really be configurable
2014-12-07 13:55:40 -05:00
a81a79adce Add some newly introduced source files to our MSVC project (libardour) 2014-12-07 13:31:41 +00:00
bfbb0f6178 Add legatize and remove overlap MIDI operations.
We're going to need the ability to apply MIDI edit operations to a note/control
selection soon...
2014-12-06 23:42:11 -05:00
e1e2b919c3 Remove unnecessary includes. 2014-12-06 22:43:06 -05:00
eb86971d2d Invalidate iterator whenever model changes.
I suspect this is an underlying cause of several tricky to reproduce bugs, but
we'll have to wait around and see...
2014-12-06 22:43:06 -05:00
6f7ee67c71 midnam test: don't clutter up output. 2014-12-06 23:51:45 +01:00
60f4f5b9d8 Fix inappropriately massive flag font. 2014-12-06 16:07:32 -05:00
f9c74319a2 Fix seek in linearly interpolated control lists. 2014-12-06 15:44:10 -05:00
4650912ae3 Adapt range when copying between automation types.
For things like copying from pitch bender to a CC.

Also things like fader to pan, but that seems a bit funny.  The conversion
probably needs to be a bit smarter here, perhaps taking the normal into
consideration...
2014-12-06 13:40:35 -05:00
82be2325d9 Fix uninitialized members. 2014-12-06 12:06:48 -05:00
ddb7cc6d66 More potential SMF crash fixes. 2014-12-06 11:19:48 -05:00
2e92ae90a6 Possible half-fix for SMF crash. 2014-12-06 10:37:08 -05:00
9266e7524a experimental drawing optimization.
Q: is bounding_box(); etc more complex than queuing draw?

either way, canvas should eventually switch to
use an optimized OptimizingLookupTable.
2014-12-05 22:40:26 +01:00
587dc283ea Fix stuck faders on very fine adjustments.
I attempted to preserve the "don't draw unless different" by ditching rounding for more
precise display_span, but that didn't work.  An alternative solution would be
to draw on adjustment change if there's text, since then we need to redraw
regardless of slider position, but it seemed weird even just with respect to
the slider, so I opted for this, which really definitely redraws when the
adjustment changes, period.

If this proves to be a performance issue we'll have to figure that out.
2014-12-05 15:19:43 -05:00
fb406e5b36 fix small memory leak in the tests 2014-12-05 20:57:07 +01:00
8714fab1bc update to 'new' ControlList API
add (double when, double value, bool with_guards=true, bool with_default=true);
2014-12-05 20:57:07 +01:00
91d3e8ead0 if a Route's processor lock cannot be taken, fill buffers with silence (causing click) rather than abort() 2014-12-05 14:49:30 -05:00
cf3faf1b42 fix "expected" <> "actual" semantics in test-util 2014-12-05 18:32:16 +01:00
207fd04587 include alpha-delta computation in HSV::delta() 2014-12-05 09:01:55 -05:00
17ad6a5078 Add 'pbd/crossthread.cc' to the MSVC build 2014-12-05 08:40:47 +00:00
0bf778c847 Make recorded MIDI controls discrete, take 2.
Hopefully-desired behaviour is that controls created in the GUI are linear, so
clicking in stuff works like other automation, but controls that originated
from recording are set to discrete so Ardour plays back the input exactly,
instead of doing crazy things like linear interpolation of already high-rate
user input, hold pedals, and so on.

Hopefully that remains the desired behaviour, because we're basically screwed
for ever making any control discrete by default, since we only save the mode to
XML at all if it's not the default, which is currently linear.
2014-12-05 00:15:40 -05:00
ad340333f4 Revert "Create discrete lists for recorded MIDI controls."
This broke saving/restoring interpolation style.

This reverts commit 07a381a8f5.
2014-12-05 00:03:47 -05:00
124e54f01b Fix crash when twiddling MIDI controllers (#6050). 2014-12-04 22:23:16 -05:00
59af923b77 Fix steps for log controls with wide range. 2014-12-04 21:22:31 -05:00
55c4889c9a fix windows compilation 2014-12-04 17:13:43 +01:00
b996f07122 add required header 2014-12-04 11:05:33 -05:00
697c397f37 move WSAStartup() and WSACleanup() out of per-object methods into per-library init/cleanup methods 2014-12-04 10:07:11 -05:00
4e8dfda880 clean up whitespace 2014-12-04 09:11:46 -05:00
5f9e81b105 Include pbd/crossthread.cc in the mingw build 2014-12-04 16:16:06 +07:00
12acce0d0e Use correct name for windows.h 2014-12-04 16:15:07 +07:00
24727e65be Make gain controls step by roughly 1.0/0.1 dB.
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-04 00:30:47 -05:00
9b770c7aff actual expected test results:
We should not add an initial implicit value
at time ‘0’ to automations.
2014-12-04 03:55:03 +01:00
b437de714f make all tests pass 2014-12-04 03:53:26 +01:00
fb63b3ffc3 fix to follow changes to evoral/libardour split 2014-12-03 21:22:53 -05:00
602e390649 changes to Mackie Control support for new crossthreadchannel implementation 2014-12-03 21:22:34 -05:00
2f0c998210 adapt changes to async MIDI port to use new evoral/libardour split 2014-12-03 21:11:24 -05:00
7ab3da66b5 fix up BaseUI to use crossthreadchannel on all platforms 2014-12-03 21:11:02 -05:00
d3e2de8b4e modify Mackie surface code to use crossthreadchannel on all platforms 2014-12-03 20:57:58 -05:00
f4726cc6fa modify MidiUI code to use crossthreadchannel on all platforms 2014-12-03 20:55:44 -05:00
d762ed8c22 alter Async MIDI port implementation to use crossthreadchannel on all platforms 2014-12-03 20:53:49 -05:00
f72b87b448 new platform specific crossthreadchannel files 2014-12-03 20:47:59 -05:00
5c51b302ce manually merge new CrossThreadChannel implementation for windows from Tracks 2014-12-03 20:47:27 -05:00
888bf2d551 Test: update AutomationList properties for v3.5 2014-12-03 23:37:27 +01:00
40087eb378 Test: print assert message if XML property mismatch 2014-12-03 23:27:14 +01:00
b52d8e5151 fix audioengine use in unit-tests. 2014-12-03 20:47:29 +01:00
89d48f4459 fix MTDM test 2014-12-03 20:45:27 +01:00
339670b6fa Tests: ensure that libardour is initialized 2014-12-03 20:45:01 +01:00
32269f0c5a 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.
2014-12-03 20:44:47 +01:00
9268d2e699 allow to auto-start dummy backend (needed for tests) 2014-12-03 18:24:56 +01:00
d45e19eda5 fix test segfault
whe XMLTree goes out of scope, the root-node is deleted
2014-12-03 16:03:57 +01:00
0d677f70b4 use Dummy backend for tests 2014-12-03 16:03:19 +01:00
0ec85a4164 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
2014-12-03 17:44:48 +07:00
dd976d8c7a Add DEBUG_TRACE output to PBD::canonical_path 2014-12-03 17:31:05 +07:00
81d47f5b8c Call PBD::init() from libmidi++ test runner
This is mostly just to be able to set PBD_DEBUG for testing if
necessary
2014-12-03 17:31:05 +07:00
d360bc3906 Add ability to set libpbd debug options via PBD_DEBUG environment var 2014-12-03 17:31:05 +07:00
9eb8b73b43 Call PBD::init from evoral testrunner
This is needed to set _fmode = O_BINARY for libsmf/fread and
fixes takeFiveTest on windows
2014-12-03 17:31:05 +07:00
4b751f9e87 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.
2014-12-03 17:31:05 +07:00
dc4d76b1d4 Remove references in pbd test script to libs no longer in source tree 2014-12-03 17:31:04 +07:00
01a17f296f Make pbd test script consistant with other test scripts
remove running script from pwd limitation
2014-12-03 17:31:04 +07:00
4fe6bf3530 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
2014-12-03 17:31:04 +07:00
23c0452e05 Add test_search_path to find test files in MidnamTest 2014-12-03 17:31:04 +07:00
aed58d6f39 Use test_output_directory() in pbd filesystem test
This prevents directory being created in pwd and means deletion of
directory is unnecessary
2014-12-03 17:31:04 +07:00
61f9ca9f3c Use test utility function to find evoral test files
either via EVORAL_TEST_PATH env var or on windows via directory relative
to dll
2014-12-03 17:31:04 +07:00
f6e15a3b6b Use PBD::tmp_writable_directory to write evoral test file into
no need to remove directory as it is temporary
2014-12-03 17:31:04 +07:00
929fc3d235 Use PBD::tmp_writable_directory in libardour test_util.cc 2014-12-03 17:31:04 +07:00
376340a29f Remove unnecessary comma in pbd wscript file 2014-12-03 17:31:04 +07:00
1c1eff8845 Use PBD::tmp_writable_directory in test_output_directory 2014-12-03 17:31:04 +07:00
1abe8f4e42 Add PBD::tmp_writable_directory utility function to pbd/file_utils.h/cc 2014-12-03 17:31:04 +07:00
2b03521ef9 Fixes for AudioEngine test 2014-12-03 17:31:04 +07:00
e83bb2f4e2 Remove unused test_common.h/cc files 2014-12-03 17:31:04 +07:00
f1b66b86b4 Move libardour test utility code into one source file 2014-12-03 17:31:04 +07:00
b9567b6d46 Use ardev_common.sh to setup environment for running libardour tests 2014-12-03 17:31:03 +07:00
7a3c54f031 Fix evoral test suite. 2014-12-02 23:30:16 -05:00
25efe5953c Fix range of pan controls.
Set default range to [0,1] since [0,0] is problematic and useless anyway.
2014-12-02 19:02:03 -05:00
94b26cd9af Make 'ARDOUR::ParameterDescriptor' exportable, so that it can get used outside of libardour 2014-12-02 18:59:43 +00:00
a13ff7b604 Remove accidentally committed file. 2014-12-02 12:15:54 -05:00