Robin Gareus
e3690cf653
Add Lua Bindings to clone/copy regions
2017-08-07 03:08:36 +02:00
Robin Gareus
771a4a4e0c
Add Lua bindings for RegionMap and region list
2017-08-07 02:40:52 +02:00
Robin Gareus
fff9a3cc7f
Allow FaderPort to select VCAs
2017-08-06 22:18:01 +02:00
Robin Gareus
d18a43422c
Emit SelectionChange when VCA is removed
...
chicken/egg:
Stripable d'tor which calls remove_stripable_by_id() will only be called
when the Stripable is destroyed. But as long as the GUI selection holds a
shared-ptr reference to the Stripable, it won't be destroyed.
2017-08-06 22:17:05 +02:00
Robin Gareus
2f1405db5a
Broadcast info according to EBU tech-specs
2017-08-06 17:56:59 +02:00
Robin Gareus
515bd5ad4d
Remove some debug output
2017-08-06 14:48:18 +02:00
Robin Gareus
f25824ed28
"Selected" is a PresentationInfo Property.
...
This fixes MIDI Input follows MIDI track selection (and maybe other
issues) and hopefully breaks nothing else (most places subscribe to
both Stripable::PropertyChanged and PresentationInfo::PropertyChanged).
2017-08-05 21:12:52 +02:00
Robin Gareus
fde07d4f4f
amend bc46a7e2e9; fix blind coding typos
2017-08-05 16:17:31 +02:00
Robin Gareus
8c61c7f14a
amend f4c76f89d3; fix blind coding typos
2017-08-05 16:06:15 +02:00
Robin Gareus
bc46a7e2e9
PortAudio backend RT-safe MIDI buffer allocation
2017-08-05 15:36:36 +02:00
Robin Gareus
f4c76f89d3
Coreaudio backend RT-safe MIDI buffer allocation
2017-08-05 15:36:36 +02:00
Robin Gareus
59a63a08f9
ALSA backend RT-safe MIDI buffer allocation
2017-08-05 15:36:36 +02:00
Robin Gareus
2b7c585dba
Update backend API: read-only MIDI input buffers
2017-08-05 15:36:36 +02:00
Robin Gareus
f21a66797a
Revert 542d021f, fix number of DSP threads
...
The main process-callback does not participate in DSP computation
2017-08-05 03:02:17 +02:00
Robin Gareus
2d60a69c2d
Consolidate ctrl surface code
2017-08-05 01:28:11 +02:00
Robin Gareus
8374e23014
Add API to set thread-priority (for ctrl-surfaces)
2017-08-05 01:28:11 +02:00
Robin Gareus
c125cd2647
Reduce DSP thread priority (main-i/o > midi i/o > computation)
2017-08-05 01:28:11 +02:00
Robin Gareus
cec84d242d
NO-OP: whitespace
2017-08-04 16:26:37 +02:00
Robin Gareus
1ed9564ffd
Graph profiling: allow to override max DSP thread count & calc avg.
2017-08-04 16:26:26 +02:00
Robin Gareus
38c5e9de6d
CoreAudio: Set MachThread RT Priority
2017-08-04 06:25:23 +02:00
Robin Gareus
4ec72b5c76
DummyBackend: allow changing SPP
2017-08-04 03:53:51 +02:00
Robin Gareus
9036f89311
Fix typo in Lua Vamp API
2017-08-04 01:27:46 +02:00
Robin Gareus
34936f3654
Allow calling IO::silence for yet unregistered ports (Click)
2017-08-03 23:54:26 +02:00
Robin Gareus
6b5d374352
Some more assert() debugging
2017-08-03 23:46:05 +02:00
Robin Gareus
1937c74191
Ignore cycle-start/end for unregistered ports
...
Should fix a race during Session::destroy(), Port::PortDrop
which unregisters ports with the backend, but the actual port instance
will still exist.
The engine does no longer have a session-pointer and only calls
CycleStart(); CycleEnd() to clear port-buffers. Trying to clear
and already unregistered Port will crash.
2017-08-03 19:25:14 +02:00
Robin Gareus
8b380a423a
improve 1a288ddd, destroy IO after disconnecting from signals.
...
This does not completely fix the race-condition. The GUI
(e.g. connection-manager) may still hold a shared-ptr reference.
2017-08-03 19:25:14 +02:00
Robin Gareus
d0c934a9de
Fix crash when cleaning up w/o destroying session
...
- Control-protocols may transmit data during cleanup
(e.g. reset surface), and need the Audio-engine to do so.
- destroying the ControlProtocolManager w/o the Session calling
::drop_protocols(), lead to a double free.
2017-08-03 19:25:14 +02:00
Len Ovens
81f12f602b
OSC: Fix to make sure buses created with Ardour 4.7 sessions show up
2017-08-03 09:09:02 -07:00
Robin Gareus
4e1772425d
prevent duplicate playlist-names when re-naming #7438
2017-08-03 02:04:57 +02:00
Len Ovens
d1558dcab5
OSC: Add command to select Master
2017-08-02 10:43:13 -07:00
Robin Gareus
1a288ddd95
Fix some more crashes at session-close
...
PortDrop unregisters backend ports, the backend will return a NULL
buffer-pointer, but the I/O object still exists (Metronome, LTC)
AudioBuffer::_data == 0
#0 msvcrt!memset () from C:\Windows\System32\msvcrt.dll
#1 ARDOUR::AudioBuffer::silence (this=0x2c410710, len=256, offset=0) at ../libs/ardour/audio_buffer.cc:88
#2 ARDOUR::AudioPort::cycle_end (this=0x34918730, nframes=256) at ../libs/ardour/audio_port.cc:66
#3 ARDOUR::PortManager::cycle_end (this=this@entry=0x23342770, nframes=nframes@entry=256)
[process callback w/o session]
2017-08-01 23:27:34 +02:00
Robin Gareus
9694986a85
Fix LTC encoder removal
...
Fixed a crash if an x-run or graph-reorder happens after the LTC encoder
has been destroyed (possible at session-close or after disabling
the encoder). This also fixes duplicate callbacks in case the
encoder was re-enabled times in an active session.
2017-08-01 17:48:42 +02:00
Len Ovens
ab02284fc2
OSC: expand plugin_descriptor to split into smaller OSC messages (issue #0007433 )
2017-08-01 07:23:27 -07:00
Len Ovens
e4925a90cb
OSC: add param to plugin_list response which indicates plugin enable state (OnkelDead)
2017-08-01 07:04:59 -07:00
Johannes Mueller
6663a26755
Signal wish to show inline display in gui by lv2:optionalFeature
...
... in .ttl file rather than by extension_data() in code. That's more in the
spirit of LV2.
2017-07-31 21:31:23 +02:00
Johannes Mueller
e75db87bf6
Tweaking the a-comp inline display a bit. Make it more skinny.
2017-07-31 21:31:23 +02:00
Johannes Mueller
2716ce41e0
Indicate whether to show plugin's inline display in GUI
...
This is currently done by an extension data similarly to
LV2_INLINEDISPLAY__interface.
2017-07-31 21:31:23 +02:00
Johannes Mueller
59775df9be
Simplified inline display if the channel strip is not wide enough
...
If the width of the display area is below 200 px, we switch from the graph
display to displaying only two bars, one for output level and one for gain
reduction. In the bar mode we also visualize threshold and ratio.
2017-07-31 21:31:22 +02:00
Johannes Mueller
24cbb1b153
Honor attack and release parameters in a-comp's inline graph
2017-07-31 21:31:22 +02:00
Johannes Mueller
ccab32654b
Indicate gain reduction in a-comp
2017-07-31 21:31:22 +02:00
Robin Gareus
e65ff3fb4a
Show range -60 .. +10 dBFS in acomp's inline display
2017-07-31 21:31:22 +02:00
Johannes Mueller
85106d81a0
Set makeup to 0.f when bypassed also in stereo version
2017-07-31 21:31:22 +02:00
Johannes Mueller
29df879edd
Adjust the indication of the treshold value by the makup gain.
...
When lifting the compressor curve by the makeup gain value the actual
treshold (the level when the curve kinks in) is also lifted. Therefore we need
to adjust the dashed line indicating the threshold as well as the level when
the color gradient to show compression kicks in.
2017-07-31 21:31:22 +02:00
Johannes Mueller
dff4153024
Also the stereo version needs to set need_expose
2017-07-31 21:31:22 +02:00
Johannes Mueller
f68754b19d
Show a-comp's makeup grain in inline rendering
2017-07-31 21:31:22 +02:00
Robin Gareus
660096b037
Fix typo
2017-07-31 19:54:23 +02:00
Len Ovens
f51fab35b1
OSC: Make stripname refresh in automation play mode as well.
2017-07-31 07:55:09 -07:00
Len Ovens
e94771a58f
OSC: fix VCAs try to connect to controls it does not have.
2017-07-30 18:35:38 -07:00
Robin Gareus
008c3db9cd
Some session cleanup fixes (delete slave, take lock for lua)
2017-07-31 01:48:28 +02:00
Robin Gareus
edcfa23e14
Binding Proxy: Drop references as requested.
2017-07-30 02:42:55 +02:00