Commit Graph

16764 Commits

Author SHA1 Message Date
Robin Gareus
74566fc006 Add "+" icon 2021-01-30 16:47:44 +01:00
John Emmas
b496a71d2e Some preliminary changes needed to support building with VS2019
(these get me about as far as 'libardour' )
2021-01-30 13:55:25 +00:00
Robin Gareus
2e5ba08286 Add signal to indicate any track rec-arm change 2021-01-30 02:38:54 +01:00
Robin Gareus
2abf9c66a4 Fix size-request that rely on Pango::Layout
A Pango::Layout created by Gtk::Widget::get_pango_context ()
does not have any font set. The Font is inherited from the
layout's context.

The actual font is set when the layout is used in
on_expose_event() via get_window ()->create_cairo_context ().

In some cases we rely on the font-size to calculate the widget's
size before rendering. At this point in time there is no drawing
context from which to inherit the style.

Furthermore, even after a call to `ensure_style()` in the c'tor
of a Widget get_font() simply returns the default value.

All Widgets that rely an Pango::Layout font size during
size-requests have to explicitly set the font.

This fixes various overlarge buttons with the initial default layout.
2021-01-30 02:23:35 +01:00
John Emmas
42aef22e17 Add/remove source(s) in our MSVC project (gtkmm2ext) 2021-01-28 10:50:27 +00:00
Robin Gareus
42ac0f1d64 ArdourButton: Render text on pixel boundaries
This fixes some occasional blurry font display when text
was rendered to non-integer pixel positions.
2021-01-27 18:33:03 +01:00
Robin Gareus
6636bba6ae Add missing file (amend 70ad205bc1) 2021-01-27 04:42:38 +01:00
Robin Gareus
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
Robin Gareus
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
Robin Gareus
f0a89c4f1d ALSA: allow to select clock-source when using multiple devices 2021-01-24 18:23:37 +01:00
Len Ovens
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
Len Ovens
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
Robin Gareus
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
Robin Gareus
e07e9eb2da Fix typo in vst3-scanner --help text 2021-01-23 23:43:14 +01:00
Robin Gareus
eed07770e1 Fix Faderport1 port-connection (amend bbb68514) 2021-01-22 18:46:17 +01:00
Robin Gareus
24f69d5174 Fix linking with gcc-10.2
Explicit libardour/fftw3f is needed for thread-safe-planner
2021-01-22 18:36:59 +01:00
Robin Gareus
8426bb3aaf ALSA: explicitly list millisecond buffer-sizes 2021-01-22 16:07:33 +01:00
Robin Gareus
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
Robin Gareus
cff58bd9da ALSA: Fix slave device lookup 2021-01-22 16:07:24 +01:00
Robin Gareus
b9966cf69d Fix implicit Vkeybd MIDI meta-data 2021-01-22 05:20:36 +01:00
Robin Gareus
7b4aaeb5cd Remove unused code 2021-01-22 05:20:31 +01:00
Robin Gareus
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
Paul Davis
5ff330bd7e fix thinko when in ParameterDescriptor::from_interface() for toggled parameters 2021-01-19 13:05:12 -07:00
Robin Gareus
8386874a03 OSC: Allow to specify marker name #8543
Patch from atsampson
2021-01-18 23:36:35 +01:00
Robin Gareus
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
Robin Gareus
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
Robin Gareus
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
Robin Gareus
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
Robin Gareus
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
Robin Gareus
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
Robin Gareus
c5b986f420 ALSA: set pretty port names for audio I/O 2021-01-18 03:18:21 +01:00
Robin Gareus
bbb6851468 Subscribe to pretty-port name changes (surfaces) 2021-01-18 03:18:20 +01:00
Robin Gareus
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
Robin Gareus
01502c6805 Allow to set pretty name for all port 2021-01-18 03:18:20 +01:00
Damien Zammit
0890b638b9 ptformat: Update to upstream 232ba25 2021-01-17 13:19:54 +11:00
Damien Zammit
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
Damien Zammit
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
Damien Zammit
2645ab2e73 pt import: Fix import -> cancel -> import by clearing status 2021-01-17 13:19:54 +11:00
Damien Zammit
5d0de7e037 pt import: Fix progress bar to span the whole import 2021-01-17 13:19:54 +11:00
Damien Zammit
ea8b855b4a pt import: Clean up track naming 2021-01-17 13:19:54 +11:00
Damien Zammit
12d62cd16e pt import: Fix race condition/threading, don't call new_audio_track() in bg thread 2021-01-17 13:19:54 +11:00
Robin Gareus
21822a45fb Remove duplicate rdfs label in a-comp 2021-01-14 18:35:07 +01:00
Robin Gareus
0c81ba33d2 JACK latency compensation for newly created tracks #8472
Ardour native backends trigger a latency-callback when ports_changed.
This was lost for JACK when the shared port engine was implemented.
2021-01-14 03:22:25 +01:00
Robin Gareus
fa791ae9cc Static input port meters, ignore dynamic ports for now
Hotplugging devices will need to be special-cased.
Currently there is no API to notify the PortManager about
hotplugged devices.
2021-01-14 01:54:40 +01:00
Robin Gareus
c803911873 Sort input port signal meters by port name 2021-01-11 00:07:08 +01:00
John Emmas
6c1dea8df2 Add/remove source(s) in our MSVC project (libardour) 2021-01-10 18:45:25 +00:00
Robin Gareus
36d2b4ea2e Fix C++11ism 2021-01-09 05:18:50 +01:00
Robin Gareus
0257804c57 Fix default track name patterns, remove additional space 2021-01-08 22:50:50 +01:00
Robin Gareus
5974e61854 Add option to skip MIDI track input auto-connect 2021-01-08 22:50:45 +01:00
Robin Gareus
038307fef6 Allow Lua bindings up to 11 args 2021-01-08 22:50:37 +01:00