13
0
Commit Graph

21847 Commits

Author SHA1 Message Date
80541de283 Introduce a macro for imprecise configurations
It enables only setting the imprecise audio channel count if the
configuration is indeed selected.
2016-08-06 19:38:09 +02:00
961b9c8be8 Set \imprecise midi channel count in FOUNDCFG
So that it can depend on the actual configuration selected.
2016-08-06 19:38:09 +02:00
08f3ef4ecd Set \imprecise when a configuration is chosen
Instead of setting \imprecise at the end of the loop if a configuration
was found (which clobbered valuable information, see dae2406187), set it
each time a new configuration is chosen.

In the second loop that tries harder, resetting \imprecise also avoids a
previous "imprecise->set(AUDIO, 0)" to last even if another
configuration is chosen later.

Last but not least, it will enable correctly setting the midi input
count hoped for by the configuration.
2016-08-06 19:38:09 +02:00
865ab375d6 Merge some cases to avoid duplicated logic
Merge the cases in == -1 and in == -2 since those are both wildcards,
almost symmetric in the AU spec, and handled completely symmetrically by
the code here considering it accepts invalid or unspecified demands.

Also merge the cases in > 0 and in < -2 since they are handled exactly
the same as far as outputs are concerned.
2016-08-06 19:38:09 +02:00
f7c3156960 Remove code with no actual effect
That code modifies \imprecise if it is not NULL, but
 - if a configuration is found, \imprecise will be set to in, clobbering
   the tentative changes done here;
 - if a configuration is not found, a last-resort loop will be run that
   will set the same member of \imprecise, also clobbering our changes.

Remove it since it does nothing that is looked at before being
forgotten. A way to get the intended outcome will be introduced later.
2016-08-06 19:38:09 +02:00
0f00d51471 Move a MIDI test in the table handling loop...
...to later enable that condition truthiness to depend on the
loop iteration. The goal here is to prepare for the upcoming rewrite,
without introducing any policy change for now.

There is no behavior change because if all loop iterations are skipped,
then \found will be false, and with \imprecise being null the last
attempt will be skipped and we will return false.
2016-08-06 19:38:09 +02:00
4c7242545b Replace the exact_match logic by a negative penalty
Instead of doing an initial loop for detection of exact matches, then
letting the following loop set \audio_out yet ignore its value, merge
the two loops but give exact matches a negative penalty so that the
\audio_out value they set won't change afterwards.

No policy change.
2016-08-06 19:38:09 +02:00
dde13d288e Remove wrong asserts 2016-08-06 19:38:09 +02:00
b6c3e55372 LuaProc::can_support_io_configuration: don't mix int and int32_t 2016-08-06 19:38:09 +02:00
a992ac0b75 OSC: make sure this is c++98 compatible. 2016-08-06 09:25:57 -07:00
Edgar Aichinger
595684ddf7 update german translation 2016-08-06 16:49:41 +02:00
8da9000cbc C++98 compat for 032139ac3 2016-08-06 14:40:18 +02:00
f0a54d0f9c mark session dirty when changing plugin presets 2016-08-06 14:28:45 +02:00
032139ac30 osc: provide human readable reading for gain. 2016-08-05 19:08:43 -07:00
e78a177dbb OSC: provide human readable level for sends. 2016-08-05 17:24:09 -07:00
Maurizio Berti
384a2fb805 Improve midnam for Waldorf Blofeld 2016-08-05 22:03:11 +02:00
836f48457d add a "Pin Management" button to the plugin UI-header 2016-08-05 02:35:51 +02:00
Nils Philippsen
65c2e089ab workaround changes in glibmm 2.49.x
Glib::RefPtr defines the operator bool() as explicit which breaks
comparisons like "some_ref_ptr == 0" or "... != 0".

https://bugzilla.gnome.org/show_bug.cgi?id=769502
2016-08-04 09:52:22 +02:00
d6fd0486ae add support for VST default values (instantiation time value) 2016-08-03 20:53:49 +02:00
fcf9836da0 add a wrapper to launch the vst-scanner manually 2016-08-03 19:56:22 +02:00
388a8fc9be if we can't determine the gcc4/5 prefer the new gcc5 ABI 2016-08-02 15:51:54 +02:00
34290320f6 include XT* plugins with Ardour bundles and x42 on OSX/Win 2016-08-02 15:51:54 +02:00
3cda7bcbfb ptformat: Decrypt ptf files exported from ptx sessions 2016-08-02 22:25:20 +10:00
480e0b2a5f make Session::get_remote_nth_stripable() ignore hidden stripables unless asked.
this more closely matches the semantics of ye olde get_*_by_rid() from ardour 4.x and earlier
2016-08-01 12:02:30 -04:00
e168664167 Be more tolerant to missing values or errors in io_config() 2016-08-01 09:46:20 +02:00
91414f52e2 Remove redundant condition
Since can_replicate is true at loop start, and in the loop body there is
a break; after every can_replicate=false, there's no point to test its
value in the loop condition.
2016-08-01 09:46:20 +02:00
eb7a364628 Remove duplicate setters that don't affect the outcome
There is no code that read the set value in between the removed line and
its exact counterpart below. There is no similar duplicate in the
AudioUnit code due to the way AudioUnit handles midi.
2016-08-01 09:46:20 +02:00
ae599f0a79 Fix state features array 2016-07-31 22:48:15 -04:00
7c23026515 Support thread-safe LV2 state restoration
The original LV2 state extension required that run() is suspended during
restore().  Ardour violates this rule, which can lead to crashes and
other issues.

The state extension has been updated to allow restoring state in a
thread-safe way by using the worker to enqueue state changes.  This
commit supports that new specification, i.e. supports dropout-free state
restoration properly.

However, the bug with old plugins that do not use this facility is still
not fixed.
2016-07-31 21:59:21 -04:00
ae71e57e24 Support LV2 log trace messages 2016-07-31 20:58:47 -04:00
4805747260 Fix possible ringbuffer overflow 2016-07-31 20:06:51 -04:00
96511688a1 Add some controls for the Waldorf Blofeld 2016-07-31 19:01:02 -04:00
5583929a34 Fix validation of midnam files
The MMA in all their wisdom has broken midi.org, so modify the DTD to
use a local system name which xmllint will find in the current
directory.
2016-07-31 18:48:59 -04:00
cooltehno
57e9b502a7 Update clear-gray-ardour.colors
A peak rectangle in the mixer strip is ruled by "gtk_bright_indicator". In the previous commit I mixed up this item with "meterbridge label" & "meterbridge peakindicator". This commit changes "gtk_bright_indicator" from white to red and returns "meterbridge label" & "meterbridge peakindicator" state to primordial. So now the peak rectangle in the mixer strip will be red when a sound peak has a place.
2016-07-31 19:22:42 +04:00
nick_m
0a3aa9c324 Use S_ macro when comparing modifier names in User Interaction Preferences.
- Fixes bug where selecting 'Shift' as a modifier was ignored.
2016-08-01 01:04:28 +10:00
cooltehno
1a481e661b Update clear-gray-ardour.colors 2016-07-31 17:11:58 +04:00
pablus
68b78ac357 Update Spanish translation 2016-07-30 12:52:58 +02:00
456596bced yet another multi-ABI bundle installer fix 2016-07-30 01:23:38 +02:00
efcf5d3866 and now with proper bash syntax 2016-07-29 23:58:07 +02:00
46a69ade78 Update French translation 2016-07-29 22:10:49 +02:00
f41e0cd4a2 Make monitor detection reuse the port name translation
So that they never get out of sync, and translators don't get confused.

Also replace some N_() where X_() was really intended.
2016-07-29 22:10:49 +02:00
73c0f9e529 prepare installer for multiabi bundles 2016-07-29 21:50:47 +02:00
3647d47b6d make makeself compression options optional. 2016-07-29 20:45:21 +02:00
6fa25a1258 Don't compress linux bundle, compress installer (with xz)
This halves the installer size from about 60MB to 29MB.
2016-07-29 18:56:07 +02:00
YQ-YSY
d0126be806 2016-07-29 Update zh.po for Ardoru 5.0 2016-07-29 21:34:52 +08:00
3f88a660b3 OSC: make send enables work in MB 2016-07-28 17:51:12 -07:00
67cbdc6cf2 GenericUI: Update all input controls on preset load
The existing code relies on AutomationControls for getting parameter
changes and update the UI accordingly. One case where this doesn't yet
work is preset loading, where ARDOUR::Plugin is responsible for actually
loading the preset but doesn't notify the changes to AutomationControls.

Since the input_controls vector now contains all ControlUI's that rely on
AutomationControls to get updates, just listen to Plugin::PresetLoaded()
and trigger an update of all elements in input_controls.

This is temporary until a better solution is devised to make
AutomationControls aware of preset loading.
2016-07-29 02:06:55 +02:00
7e30161dc0 GenericUI: Show automation UI for dropdowns
Also merge the ControlUI local layout of dropdows with the local layout
of other control types (except FileButton).
2016-07-29 00:54:25 +02:00
5c5b7746a2 GenericUI: disable super rapid timer for input controls
The super rapid timer was disconnected by GenericPluginUI::stop_updating
but never connected again, so the generic UI worked often without
getting periodic update triggers anyway.

Try to disable the mechanism altogether, and see if there are updating
glitches.
2016-07-29 00:14:20 +02:00
a7b29d7966 GenericUI: replace if() by assert()
It makes no sense to check for the validity of mcontrol only for
controller creation, since the remainder of the code assumes that the
controller will have been created correctly.

Replace that by an assert.
2016-07-29 00:07:02 +02:00