Commit graph

13215 commits

Author SHA1 Message Date
nick_m
1c51435fa3 Calculate clamped tempo stretch ratios using the correct (musical) domain 2017-07-22 02:15:20 +10:00
nick_m
90547112e2 TempoMap : Remove old solve_map debugging code 2017-07-22 02:15:20 +10:00
nick_m
bb71a31b0c Move some duplicated replace/add tempo section code
Resets the previous tempo section's end ntpm to match the start
of a new section whenever a section is added to the map.
2017-07-22 02:15:20 +10:00
nick_m
1399ef391d Remove redundant beat arg from TempoMap::add_meter
BBT time should be enough to determine the beat.
2017-07-22 02:15:20 +10:00
nick_m
c03da364ad Fix incorrect double-snap when moving audio-locked tempi 2017-07-22 02:15:20 +10:00
nick_m
b0a306f9d0 Check for identical meter positions in old sessions by beat rather than pulse 2017-07-22 02:15:20 +10:00
Len Ovens
8af27a7a2e OSC make all group dispositions the same 2017-07-21 08:22:02 -07:00
Johannes Mueller
0109042e7b Increase range of a-comp#stereo release time
Like for the mono version in f52443e17e
2017-07-21 16:11:17 +02:00
Robin Gareus
d977cc3238 Non-layered MIDI recording
This does not merge MIDI data, but trims MIDI regions at rec-stop like
non-layered audio-recording does.
2017-07-21 00:39:22 +02:00
Johannes Mueller
67bec5b5be Set the name of the route in a route template to the template name 2017-07-20 20:09:53 +02:00
Robin Gareus
adc2c756e6 Allow adding tracks w/o running backend 2017-07-20 16:45:24 +02:00
Robin Gareus
9992ea10b3 Allow listening to channels being exported (w/ realtime export)
It would be nice to change get_audio_buffer() to not set
AudioBuffer::_written to false (all but one other user of this API also
only get read-only data), but that requires chaning the rationale of the
underlying ::set_data() API.
2017-07-19 22:15:22 +02:00
John Emmas
951404475c MSVC changes needed to implement the new 'waveview' library 2017-07-19 08:20:18 +01:00
John Emmas
bf150f049f MSVC changes needed to implement the new 'widgets' library 2017-07-19 08:16:30 +01:00
Robin Gareus
b1c73b11fc FP8: use separate bank offsets per MixMode 2017-07-19 03:04:58 +02:00
Robin Gareus
7893cac718 Fix well-known send API for mixbusses. 2017-07-19 02:11:10 +02:00
Robin Gareus
601604972c FP8: Fix Mixbus solo-state and indicate implicit solo (blink) 2017-07-19 01:52:14 +02:00
Robin Gareus
9a0a2a29b5 Fix NSGLView invalidation 2017-07-18 21:34:03 +02:00
Léo Andrès
81eb619dc2 Fix french translation mistake 2017-07-18 18:59:50 +02:00
Robin Gareus
5f485f964e Fix OSX builds in the wake of the source-tree layout changes 2017-07-18 18:29:22 +02:00
Paul Davis
8c6d78c188 add required stdint.h 2017-07-17 18:15:42 -04:00
Robin Gareus
ac37c9b7b8 PluginInsert::silence is used after all (fix 07aeb12d3) 2017-07-17 23:52:45 +02:00
Robin Gareus
4922d9f941 FP8: save/restore "two line text" option 2017-07-17 22:59:12 +02:00
Robin Gareus
521e4f676b Remove unused clearlooks-older 2017-07-17 21:06:04 +02:00
Robin Gareus
beb73edf55 Purify libcanvas, remove libardour dependency
A canvas is just a canvas. Move WaveView into its own library.
2017-07-17 21:06:04 +02:00
Robin Gareus
601c317d70 Clean up library inheritance (colors.h, utils.h)
make libwidget independent of libcanvas.
Confine basics to pbd and gtkmm2ext.
2017-07-17 21:06:04 +02:00
Robin Gareus
eb1e423b75 Remove <gtkmm.h> include from header files. 2017-07-17 21:06:04 +02:00
Robin Gareus
f9e5e4360e Move more Gtkmm2ext widgets into libwidget 2017-07-17 21:06:04 +02:00
Robin Gareus
b5e9451bc7 Remove unused sources & includes 2017-07-17 21:06:04 +02:00
Robin Gareus
f6e182b937 Move Gtkmm2ext widgets into libwidget 2017-07-17 21:06:04 +02:00
Robin Gareus
5c92613698 Separate Ardour UI widgets into dedicated library 2017-07-17 21:06:04 +02:00
Robin Gareus
e0b4767d2e Fix loading bundles #7426 2017-07-16 21:44:00 +02:00
Robin Gareus
157d4b2c57 Data less than or equal to zero should be considered "off" 2017-07-16 21:01:08 +02:00
Robin Gareus
5b9822ab98 Fix merging boolean automation + mute disconnect. 2017-07-16 21:01:03 +02:00
Robin Gareus
07aeb12d3a Some notes for later. 2017-07-16 17:09:22 +02:00
Robin Gareus
69ecb0db70 Remove unused API and a never used execution-branch 2017-07-16 16:54:32 +02:00
Robin Gareus
dee990103a Consistent Automation evaluation:
Rule #89: The *owner* of each automation-control is responsible to
evaluate automation of automated automation-controls (and emit Changed()
signals to notify the GUI and slaved controls).

This can happen during run(), when the Processor evaluates automation
(eg. PluginInsert does that), but needs to regardless, every cycle.
Emit Changed signal for GainControl

This follow the same concept as PluginInsert: The Changed signal
is called on demand when evaluating automation.
2017-07-16 16:53:39 +02:00
Robin Gareus
06ca52d5a5 Add API to run automation only (emit Changed signal).
Note: MuteControl already implemented this,
This removes the special case of boolean_automation_run().

Likewise this removes special-cases for actually_set_value() during
automation playback.
2017-07-16 16:52:12 +02:00
Robin Gareus
906cf85982 Rename private method
The same name (automation_run) is used in different context (mute) for
only processing automation.
2017-07-16 16:49:30 +02:00
Robin Gareus
542d021fbc Fix total number of process threads 2017-07-13 17:16:31 +02:00
Johannes Mueller
eb79ae7d41 Don't try to chop of the file name extension from a template dir
Template files reside in
.config/ardour5/templates/$(template_name)/$(template_name).template

We run through .config/ardour5/templates/ and find there the names of the
directories the .template-files are located in. These directory names don't
have a .template extension. So we shouldn't try to chop the non existing
extension of, because then we only modify template names with a '.' in them.
2017-07-12 16:15:03 +02:00
Jelle van der Waa
b1cf27bed4 Fix duplicate ‘const’ declaration specifier 2017-07-12 12:09:59 +02:00
Robin Gareus
fd8053da9e Don't use VST ->user points, prefer host-reserved ptr
Apparently "user" is for plugins (not hosts) to use.
2017-07-08 18:13:42 +02:00
Robin Gareus
82278af424 Add API to expand/flatten AC groups 2017-07-08 15:35:30 +02:00
Robin Gareus
60df2a342c Don't drop processor references with process-lock
_processors = new_list; may drop the last shared-ptr reference.
This may deadlock in ~IO() for I/O processors or plugins with sidechain
inputs. It's been mostly a non-issues since the GUI usually holds a last
shared-ptr reference for a processor to be deleted, but that is
not always the case.
2017-07-07 23:05:59 +02:00
Robin Gareus
deba170d6c Consistent ControlList freezing -- fixes #7419
AudioRegion::set_fade_in() freezes the original ControlList, then
assigns a new one and thaws that.
Frozen state needs to be retained during assignment.

Related: The overloaded assignment operator in AutomationList
performed duplicate signal emission and didn't freeze the list.
2017-07-07 02:35:00 +02:00
Robin Gareus
b732aa2ca1 fix void return with value (amend d5d297c4) 2017-07-06 18:01:49 +02:00
Robin Gareus
d5d297c407 Fix FP8 shutdown sequence (amend d421e56fc) 2017-07-06 16:55:02 +02:00
Robin Gareus
73ad5c97f2 Consistently set parameter steps.
And it's actually mostly moot. interface_to_internal maps
any range to 0..1.
The GUI could just hardcode min/max 0, 1 and steps 1/30, 1/300.
Except for controls that have explicit range-steps & ctrl surfaces.
2017-07-06 16:32:27 +02:00
Len Ovens
2a809dcf70 OSC: add delta controls to master, monitor and select as well 2017-07-05 08:08:57 -07:00