13
0
Commit Graph

9322 Commits

Author SHA1 Message Date
03518b90a2 allow to rename the session root folder - fixes #6557 2015-11-19 16:11:59 +01:00
07b2518979 Fix windows build when using pthreads-win32 library 2015-11-19 20:54:38 +10:00
ac301b998a Use a range of values for ASIO buffer sizes if provided by driver
This has been tested on four devices:

- A RME HDSP Multiface
- A Yamaha AG06
- A Focusrite 2i2
- A built-in soundcard running ASIO4ALL

The HDSP and the AG06 only return one buffer size when queried so the preferred
size is used as before.

The Focusrite returns a min corresponding to the position of the slider in the
control dialog and the max is 1024. The granularity is 1 so this means that the
number of values needs to be reduced for the current UI design with a combo
box so the granularity is increased until there are around 8-9 buffer sizes to
choose from evenly spaced between min and max(but we could easily change this
if the UI changes etc).

The ASIO4ALL driver returns a min of 64 and a max of 2048 and a granularity of
8. So where the minimum buffer size and granularity is a power of 2 use only
buffer sizes that are power of 2.

If the driver returns different values for min and max it is not currently
possible to indicate which is the driver preferred value. A checkbox or other
UI element could be added to the AudioSetup dialog to only use the preferred
value but that is more work and perhaps not necessary.
2015-11-19 10:23:26 +10:00
f1b336b01e Add support for callback API to portaudio backend but keep blocking API as default
Don't use the callback API for now until further and wider testing.
2015-11-19 10:23:26 +10:00
9d867cfd87 add dedicated API to check plugin class 2015-11-18 18:11:19 +01:00
1c83df80db reduce math weirdness (thanks to Steven Yi) 2015-11-18 14:29:13 +01:00
81103d822a use thread private data **pointer** correctly for Stateful::ID regeneration 2015-11-17 08:53:29 -05:00
d2cba4d7ac fix inadvertently commit error related to at-process-exit deletion for thread private variable 2015-11-16 21:55:57 -05:00
e1dc2d4604 correct value testing for Stateful thread-private variable controlling ID regeneration 2015-11-16 21:24:10 -05:00
108634c3f3 get PlaylistDisposition argument of Session::new_route_from_template() working 2015-11-14 16:01:24 -05:00
fb96170178 Fix fader in mackie control to work with groups. 2015-11-14 10:39:53 -08:00
b6925e274f substantial part of infrastructure required for track/bus duplication
This includes removing the removal of ID values in XML, and its replacement with
thread-local forcing of ID resets, implemented in a previous commit
2015-11-13 16:14:49 -05:00
f5e71fd817 fix return value from Route::save_as_template() 2015-11-13 16:14:49 -05:00
nick_m
6210b63a13 Ardour::Region - add method required to fix #6673. 2015-11-14 03:05:53 +11:00
4b25c80cb9 fix edge-case in Dummy-backend random number generator initialization 2015-11-12 09:49:40 -06:00
92fe47bdee provide a mechanism to force ID regeneration/reset in PBD::Stateful when settingthe ID object from XML or string sources 2015-11-12 10:24:41 -05:00
487a2563a6 remove requirement for transport speed to be 1.0 when generating click (metronome)
This is experimental and may not work
2015-11-12 09:46:25 -05:00
a4daf93f2f Use XMLNode::remove_child_and_delete in Stateful::add_extra_xml
As the node being replaced has been added with XMLNode::add_child_nocopy the
node also needs to be deleted or a memory leak occurs.
2015-11-10 23:14:17 +10:00
4e6cdb4daa Use constructor initialization list in Stateful class 2015-11-10 23:14:16 +10:00
9e4dc284ee Replace spaces with tabs in pbd/stateful.h 2015-11-10 23:14:16 +10:00
3c4e9cb64e more correct semantics for reserved IO name checking 2015-11-09 08:24:35 -05:00
647a60d35d slightly improved fix for reserved name handling 2015-11-07 22:23:23 -05:00
3d5bdbbe66 don't force rename of reserved route/IO names if the name isn't taken yet 2015-11-07 22:16:07 -05:00
09672f4a50 Mackie Control: Initialize vpot assignment on start-up. 2015-11-06 19:28:24 -08:00
ace771bc91 Mackie Control: Add send functionality to vpot assign section. 2015-11-06 16:18:13 -08:00
9013f1afe6 Add some newly introduced sources to our MSVC project (libardour) 2015-11-06 08:22:58 +00:00
André Nusser
f048eb7d02 Make duplicate start at position, not position + 1. (libs part) 2015-11-04 17:50:12 -05:00
02124c0d16 add required header 2015-11-04 07:58:10 -05:00
5eaaa5fcae libardour wrapper for EBUr128 VAMP plugin 2015-11-03 19:21:32 +01:00
72ec5e9a01 add basic VAMP plugin for EBUr128 analysis
FeatureSet will be extended to report detailed analysis.
2015-11-03 19:21:32 +01:00
nick_m
3b0f068fe9 AutomationList::set_automation_state () only needs a memento for toggled. 2015-11-03 04:18:09 +11:00
66f39ddcd0 Class 'PhaseControllable' needs to be importable since it gets referenced outside of libardour
Specifically, 'PhaseControllable::channel()' and 'PhaseControllable::set_channel()' get called from 'mackie/strip.cc'

At some point we might also need to do this for the related classes (SoloControllable and MuteControllable) although it doesn't seem to be needed right at this moment.
2015-11-02 11:27:43 +00:00
160b24b137 fix crash when cleaning up canvas items
Backport from Mixbus. In Ardour this does not currently matter
since there is no top-level canvas destroyed top-down.

...
Editor::session_going_away
MixerStrip::~MixerStrip
MixbusStripCanvas::~MixbusStripCanvas
ArdourCanvas::GtkCanvas::~GtkCanvas
ArdourCanvas::Canvas::~Canvas
ArdourCanvas::Root::~Root
ArdourCanvas::Container::~Container
ArdourCanvas::Item::~Item
ArdourCanvas::Item::clear_items
GtkCanvas::item_going_away()
queue_draw_item_area()

..expose can take place async to garbage collection: crash in one of the
items.
2015-11-02 05:15:55 +01:00
84d44eb5a3 Don't handle possible phase change if no audio channels in mackie control 2015-11-01 19:25:45 -08:00
8ae23c6952 Fix Mackie surface phase control for flip and more than one audio channel. 2015-11-01 15:30:36 -08:00
2e9de2def0 Added Phase control mackie controls as part of the Trim (track) vpot assignment. 2015-11-01 13:35:02 -08:00
nick_m
e709512f14 Fix missing undo for record mute automation. 2015-11-02 05:34:09 +11:00
nick_m
7ade596c92 Clean up _before XMLNode in AutomationList if no automation write occurred. 2015-11-02 02:12:54 +11:00
nick_m
2d47196f43 Automation watch sets position for new write pass when transport stopped. 2015-11-01 23:21:08 +11:00
nick_m
be47c84508 Revert starting write pass only in write mode when transport located. 2015-11-01 23:13:40 +11:00
nick_m
fcc626132e Handle paste from non-toggled to boolean automation track.
- sort-of fixes #6431
2015-10-31 03:54:18 +11:00
7abfe85498 add API to suspend timers signal emission. 2015-10-30 15:55:26 +01:00
661ffe7576 fix JACK/windows compilation 2015-10-28 14:11:17 +01:00
997f47360d use weak-jack's jack_port_rename wrapper
This avoids "[ERROR]: JACK: jack_port_set_name: deprecated".

if libjack does not have jack_port_rename(), weak_libjack.def provides
a fallback using jack_port_set_name().
2015-10-28 01:21:24 +01:00
3e3a5e1cff and another LV2-1.0.0 compat ifdef 2015-10-26 13:32:51 +01:00
677531addb amend 311adde (LV2-1.0.0 compat) 2015-10-26 13:24:23 +01:00
8ab69cba58 properly translatable plural forms 2015-10-25 17:46:39 +01:00
7c24957d30 Changed MCP trim detection to match method used in GUI. 2015-10-25 08:22:02 -07:00
eb6b4f4b15 fix crash on SystemExec::Terminate
if Terminated() connects in the same thread and deletes the class itself
the closure in interposer_thread() can fail.
2015-10-23 23:29:04 +02:00
311adde023 add ifdefs for LV2-1.0.0 compat 2015-10-23 18:58:55 +02:00