13
0
Commit Graph

31200 Commits

Author SHA1 Message Date
70ad205bc1
Separate static widget theme into abstract class
This allow the style to be used in classed that are not
directly derived from Ardour's CairoWidget, notably
container widgets or plugin UIs.
2021-01-26 23:37:54 +01:00
046d7d01f5
Fix boost 1.74 + gcc 10.2 warnings
bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the
Bind placeholders (_1, _2, ...) in the global namespace is deprecated.
Please use <boost/bind/bind.hpp> + using namespace boost::placeholders,
or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.
2021-01-26 01:54:37 +01:00
cf6e785ed3
Move Playlist GUI functions to RouteUI
This allows to re-use playlist editing in all RouteUI derivatives,
not just the main editor time axis header.

The change is mostly a NO-OP, simply moving methods from
RouteTimeAxisView (is-a RouteUI), to RouteUI.
2021-01-26 01:54:33 +01:00
e78de225d4
ArdourButton: LED-sized buttons w/o LED
This is useful for consistent layout in the recorder Window,
where Buttons are either push-buttons or LED toggle-buttons.
2021-01-25 19:18:56 +01:00
98847b115e
VST3: Allow multiple identical timer-handlers (#8550)
Also prefer `const_iterator`, following
```
iterator boost::unordered_map::erase(const_iterator position);
```
2021-01-25 02:27:46 +01:00
e568434300
Remove cruft from previous commit 2021-01-25 02:18:33 +01:00
35552abc4d
VST3: allow multiple fdes per plugin UI (#8550) 2021-01-25 02:14:26 +01:00
f0a89c4f1d
ALSA: allow to select clock-source when using multiple devices 2021-01-24 18:23:37 +01:00
cd524f70dc OSC, strip and select share all main strip functions
Allow blocking strip commands for master or monitor
2021-01-23 21:18:32 -08:00
a9f0f771c1 Reuse the same code for strip and select
Combine Maser and Monitor to reuse code

Started adding query functionality

	Added query functionality to all touchosc fixed commands
2021-01-23 21:17:46 -08:00
ed603ea8dd
Add Playlist::set_name() Lua binding & unique name check
Note: Previously only the GUI dialog to rename playlists
performed the test to check for unique playlist names.
2021-01-23 23:44:31 +01:00
e07e9eb2da
Fix typo in vst3-scanner --help text 2021-01-23 23:43:14 +01:00
2e25148136 fix up previous commit, which contained API from nutempo2 branch 2021-01-22 10:50:16 -07:00
eed07770e1
Fix Faderport1 port-connection (amend bbb68514) 2021-01-22 18:46:17 +01:00
24f69d5174
Fix linking with gcc-10.2
Explicit libardour/fftw3f is needed for thread-safe-planner
2021-01-22 18:36:59 +01:00
99817e1170 change grid display when grid is bars
All lines are shown, all lines are numbered, all have same visual density
2021-01-22 09:52:42 -07:00
8426bb3aaf
ALSA: explicitly list millisecond buffer-sizes 2021-01-22 16:07:33 +01:00
0b97175d49
ALSA: fall back to nearest available buffer-size
The warning "samples per period does not match." never triggered.
Previously not being able to set the requested buffersize was a
fatal error.

This adds support for soundcards that only support msec.
e.g. recent HDA Intel via SOF (Sound Open Firmware)
2021-01-22 16:07:29 +01:00
cff58bd9da
ALSA: Fix slave device lookup 2021-01-22 16:07:24 +01:00
b9966cf69d
Fix implicit Vkeybd MIDI meta-data 2021-01-22 05:20:36 +01:00
7b4aaeb5cd
Remove unused code 2021-01-22 05:20:31 +01:00
959f83244e
Fix ArdourButton text-align when button size grows
This is mainly relevant when the button is placed inside a
Gtk::SizeGroup.
2021-01-21 02:19:06 +01:00
cbd2cc7b2e
Enable FMA support for windows 64bit 2021-01-20 14:23:53 +01:00
5ff330bd7e fix thinko when in ParameterDescriptor::from_interface() for toggled parameters 2021-01-19 13:05:12 -07:00
7a536524db no need to compute x-axis coordinate when adding an automation event 2021-01-19 13:04:34 -07:00
7cf435a876 deselect everything when the first MIDI note is selected
See comments in code for more information
2021-01-18 16:07:20 -07:00
6bd12a4e83 clearing note selection in internal edit mode also deselects regions 2021-01-18 16:07:20 -07:00
8386874a03
OSC: Allow to specify marker name #8543
Patch from atsampson
2021-01-18 23:36:35 +01:00
983c577945
Fix send panner when copying sends
* Unlinked panners now retain their state during copy/paste.
 * Linked send panners can no longer override parent route panning
 * Unlinked panner state is retained across link/unlink.
2021-01-18 18:58:10 +01:00
9c06f693e9
Fix mp3 and video-export (ffmpeg/ffprobe detection)
A call to `transcoder_exe (unused, unused)` passes the same
string reference for `ffmpeg` and `ffprobe`. If this happens
during the first call of this function, the path for the latter
is cached for both external tools.
2021-01-18 17:21:26 +01:00
528cf92ed5
Hide "Midi Through" on Linux only
Note HAVE_ALSA is mandatory for Linux builds, even when only
using JACK.
2021-01-18 16:16:25 +01:00
c02169a6c8
Micro-optimization: pre-calculate pan-law
powf() is very expensive to call, and as long as the pan-law
is fixed, there is no need to re-calculate coefficient scale
factor on every update.
2021-01-18 16:14:16 +01:00
31691a6ad4
Fix Aux-send copy/paste
* Create new IDs
* Allow to link with route's panner
2021-01-18 16:07:31 +01:00
1fc8b55314
Fix Intel/AMD FMA mix_buffers_with_gain()
_mm256_fmadd_ps (a, b, c) performs (a * b + c)
2021-01-18 16:07:21 +01:00
097e5a7145
Implement dynamic input port meters
This is a revision of the initial API 8ba7df9105, to
address issues with dynamica ports (fa791ae9cc).

* Group meter + scope/monitor per port (atomic access)
* Use shared pointer to allow access while ports change
* Use RCU to update port map
* Add/remove ports without clearing the map
* Add signal to notify GUI about Input Port changes
2021-01-18 03:18:21 +01:00
c5b986f420
ALSA: set pretty port names for audio I/O 2021-01-18 03:18:21 +01:00
edd3179fbf
VKeybd: show pretty-name in port-connector
This follows a special case in PortGroupList::gather().
The Virtual Keyboard is an Ardour owned async terminal port,
that is in a session bundle (not a UserBundle).

See also 728d2a3771 and 559ffcff63
2021-01-18 03:18:21 +01:00
e49adb55c0
Fix MidiPortOptions Preferences
* Show Treeview again if it was hidden
* Hide heading(s) and table when no ports are available
* Fix memory leak, unmanaged OptionEditorHeading
* remove unused members
2021-01-18 03:18:20 +01:00
0b0339f089
Re-implement MidiPortOptions with new API 2021-01-18 03:18:20 +01:00
bbb6851468
Subscribe to pretty-port name changes (surfaces) 2021-01-18 03:18:20 +01:00
b2c4e71a45
Subscribe to pretty-port name changes (GUI) 2021-01-18 03:18:20 +01:00
21e66216be
Separate user-set pretty-names from hardware I/O names
This allow to restore original engine port-names as set
by the backend. ALSA MIDI, CoreAudio, CoreMIDI and PortAudio
drivers can provide human readable physical port names for
some devices.
2021-01-18 03:18:20 +01:00
01502c6805
Allow to set pretty name for all port 2021-01-18 03:18:20 +01:00
a04a2bd0be
Prepare for API change, MidiPortOptions::setup_midi_port_view 2021-01-18 03:18:20 +01:00
0890b638b9 ptformat: Update to upstream 232ba25 2021-01-17 13:19:54 +11:00
ec5a809f54 pt import: Fix crash with bringing in material
Hopefully the weird pt import crash is now gone!
2021-01-17 13:19:54 +11:00
772512a62d pt import: Correct the log warning message when at least one audio file failed to load 2021-01-17 13:19:54 +11:00
2645ab2e73 pt import: Fix import -> cancel -> import by clearing status 2021-01-17 13:19:54 +11:00
5d0de7e037 pt import: Fix progress bar to span the whole import 2021-01-17 13:19:54 +11:00
ea8b855b4a pt import: Clean up track naming 2021-01-17 13:19:54 +11:00