ardour.git
8 years agoredesign Route and VCA objects to inherit from ARDOUR::Stripable
Paul Davis [Mon, 7 Mar 2016 19:59:40 +0000 (14:59 -0500)]
redesign Route and VCA objects to inherit from ARDOUR::Stripable

8 years agoupdate VCA assign buttons to show status for VCA strips
Paul Davis [Fri, 4 Mar 2016 21:44:46 +0000 (16:44 -0500)]
update VCA assign buttons to show status for VCA strips

8 years agocorrectly restore VCA-VCA slave/master relationships at session load time
Paul Davis [Fri, 4 Mar 2016 21:44:30 +0000 (16:44 -0500)]
correctly restore VCA-VCA slave/master relationships at session load time

8 years agofix deadlock caused by VCA=>VCA slaving and set_state()
Paul Davis [Fri, 4 Mar 2016 21:09:14 +0000 (16:09 -0500)]
fix deadlock caused by VCA=>VCA slaving and set_state()

8 years agofix incorrect selection of all strips/tracks at opening.
Paul Davis [Fri, 4 Mar 2016 20:40:44 +0000 (15:40 -0500)]
fix incorrect selection of all strips/tracks at opening.

Old code was counting how many child nodes where in the MixerUI, assuming they
were all routes, and using that to decide if this was a from_scratch setup.
The addition of VCAs to the track_model changes that, so now we have to actually
check there are no existing Routes before doing the from_scratch setup

8 years agono self-assign for VCA masters
Paul Davis [Fri, 4 Mar 2016 20:02:56 +0000 (15:02 -0500)]
no self-assign for VCA masters

8 years agofix ambiguity in VCA constructors
Paul Davis [Fri, 4 Mar 2016 19:56:27 +0000 (14:56 -0500)]
fix ambiguity in VCA constructors

8 years agoadd GUI support for slaving VCAs to other VCAs
Paul Davis [Fri, 4 Mar 2016 19:53:13 +0000 (14:53 -0500)]
add GUI support for slaving VCAs to other VCAs

8 years agoadd solo/mute controls to VCAMasterStrip
Paul Davis [Fri, 4 Mar 2016 19:15:37 +0000 (14:15 -0500)]
add solo/mute controls to VCAMasterStrip

8 years agoadd solo/mute logic to VCA masters
Paul Davis [Fri, 4 Mar 2016 19:15:12 +0000 (14:15 -0500)]
add solo/mute logic to VCA masters

8 years agoensure that GainControl::get_value() never returns > Config->get_max_gain()
Paul Davis [Fri, 4 Mar 2016 16:42:43 +0000 (11:42 -0500)]
ensure that GainControl::get_value() never returns > Config->get_max_gain()

8 years agochange master-record management to use std::map to avoid const iterators; drop connec...
Paul Davis [Fri, 4 Mar 2016 15:06:36 +0000 (10:06 -0500)]
change master-record management to use std::map to avoid const iterators; drop connection to master Changed signal when unassigning

8 years agorevert GainMeter back to simpler code now that VCA model appears correct
Paul Davis [Fri, 4 Mar 2016 03:48:03 +0000 (22:48 -0500)]
revert GainMeter back to simpler code now that VCA model appears correct

8 years agoprobably get the design of VCAs basically correct: use a per-master ratio model
Paul Davis [Fri, 4 Mar 2016 03:47:25 +0000 (22:47 -0500)]
probably get the design of VCAs basically correct: use a per-master ratio model

See comments in the code for a bit more detail

8 years agoadd VCAMasterStrip::set_selected()
Paul Davis [Thu, 3 Mar 2016 18:28:42 +0000 (13:28 -0500)]
add VCAMasterStrip::set_selected()

8 years agofix restoration of editor pane positions
Paul Davis [Thu, 3 Mar 2016 17:02:35 +0000 (12:02 -0500)]
fix restoration of editor pane positions

8 years agoGUI modifications to improve VCA strips and their placement in the mixer
Paul Davis [Thu, 3 Mar 2016 16:47:01 +0000 (11:47 -0500)]
GUI modifications to improve VCA strips and their placement in the mixer

Note that this includes some changes that actually make mixer pane settings get restored,
which has been broken for some time. Of course, they are not restored perfectly, yet.

8 years agoadjust logic for slaved faders, not necessarily correctly.
Paul Davis [Thu, 3 Mar 2016 04:46:00 +0000 (23:46 -0500)]
adjust logic for slaved faders, not necessarily correctly.

More info in the code comments.

8 years agorename GainMeter::gain_adjusted() to GainMeter::fader_moved() to be more clear
Paul Davis [Thu, 3 Mar 2016 04:45:32 +0000 (23:45 -0500)]
rename GainMeter::gain_adjusted() to GainMeter::fader_moved() to be more clear

8 years agoadd GainControl::slaved() predicate
Paul Davis [Thu, 3 Mar 2016 04:43:42 +0000 (23:43 -0500)]
add GainControl::slaved() predicate

8 years agomake GUI fader positions reflect VCA master values
Paul Davis [Wed, 2 Mar 2016 22:24:16 +0000 (17:24 -0500)]
make GUI fader positions reflect VCA master values

8 years agoforward-propagate Changed signals through VCA master-slave connections
Paul Davis [Wed, 2 Mar 2016 22:23:55 +0000 (17:23 -0500)]
forward-propagate Changed signals through VCA master-slave connections

8 years agouse VCAUpdateStatus to keep VCA button current
Paul Davis [Wed, 2 Mar 2016 17:47:10 +0000 (12:47 -0500)]
use VCAUpdateStatus to keep VCA button current

8 years agoadd VCAStatusChange message to GainControl
Paul Davis [Wed, 2 Mar 2016 17:41:27 +0000 (12:41 -0500)]
add VCAStatusChange message to GainControl

8 years agoremove debug output
Paul Davis [Wed, 2 Mar 2016 17:25:37 +0000 (12:25 -0500)]
remove debug output

8 years agochange sort ordering model in mixer and editor
Paul Davis [Wed, 2 Mar 2016 17:13:45 +0000 (12:13 -0500)]
change sort ordering model in mixer and editor

This allows correct reordering of the mixer "track_model" even
when non-route elements are present.

This isn't really utilized in the Editor at present because we do
not show VCAs there at all, but it will become important in the
future when we represent VCA automation there

8 years agotweak mixer VCA button appearance and prepare for live updates to VCA state
Paul Davis [Wed, 2 Mar 2016 17:12:18 +0000 (12:12 -0500)]
tweak mixer VCA button appearance and prepare for live updates to VCA state

8 years agochange API for GainControl, VCA and VCAManager
Paul Davis [Wed, 2 Mar 2016 17:09:24 +0000 (12:09 -0500)]
change API for GainControl, VCA and VCAManager

This allows sane state save/restore

8 years agoadd VCA debug bit
Paul Davis [Wed, 2 Mar 2016 17:05:13 +0000 (12:05 -0500)]
add VCA debug bit

8 years agosingle button for VCA assignment, plus unassign now works
Paul Davis [Tue, 1 Mar 2016 13:48:54 +0000 (08:48 -0500)]
single button for VCA assignment, plus unassign now works

8 years agofix VCA name/number
Paul Davis [Tue, 1 Mar 2016 02:35:19 +0000 (21:35 -0500)]
fix VCA name/number

8 years agostart shaping up VCA assign process
Paul Davis [Tue, 1 Mar 2016 02:26:45 +0000 (21:26 -0500)]
start shaping up VCA assign process

8 years agoremove debug output
Paul Davis [Tue, 1 Mar 2016 02:26:30 +0000 (21:26 -0500)]
remove debug output

8 years agomostly restore VCA state on session loading.
Paul Davis [Mon, 29 Feb 2016 23:12:13 +0000 (18:12 -0500)]
mostly restore VCA state on session loading.

This does not restore VCA assignments

8 years agosave/restore VCAManager state
Paul Davis [Mon, 29 Feb 2016 21:16:31 +0000 (16:16 -0500)]
save/restore VCAManager state

8 years agoreorder destruction of VCAManager and Routes
Paul Davis [Mon, 29 Feb 2016 21:10:31 +0000 (16:10 -0500)]
reorder destruction of VCAManager and Routes

8 years agoadd a bit of state to VCAManager
Paul Davis [Mon, 29 Feb 2016 21:06:30 +0000 (16:06 -0500)]
add a bit of state to VCAManager

8 years agoadd a bit of state to VCAs
Paul Davis [Mon, 29 Feb 2016 20:52:27 +0000 (15:52 -0500)]
add a bit of state to VCAs

8 years agoinitial part of vca assignment via context menu
Paul Davis [Mon, 29 Feb 2016 19:45:03 +0000 (14:45 -0500)]
initial part of vca assignment via context menu

8 years agoexpand and improve VCA API
Paul Davis [Mon, 29 Feb 2016 19:44:25 +0000 (14:44 -0500)]
expand and improve VCA API

8 years agoadd 4 harrison-style vca assign buttons to the mixer strip
Paul Davis [Mon, 29 Feb 2016 14:10:13 +0000 (09:10 -0500)]
add 4 harrison-style vca assign buttons to the mixer strip

8 years agovca design: gain controls cannot silently "merge" the master(s) value into their own
Paul Davis [Mon, 29 Feb 2016 14:09:53 +0000 (09:09 -0500)]
vca design: gain controls cannot silently "merge" the master(s) value into their own

8 years agochange VCA model to facilitate Harrison *and* SSL designs
Paul Davis [Sun, 28 Feb 2016 16:57:18 +0000 (11:57 -0500)]
change VCA model to facilitate Harrison *and* SSL designs

8 years agodon't force size allocation to recompute pixfader patterns unless size actually changes
Paul Davis [Sun, 28 Feb 2016 16:15:53 +0000 (11:15 -0500)]
don't force size allocation to recompute pixfader patterns unless size actually changes

8 years agochange packing of GainMeter so that the fader+meter will expand to fill available...
Paul Davis [Sun, 28 Feb 2016 16:06:38 +0000 (11:06 -0500)]
change packing of GainMeter so that the fader+meter will expand to fill available space

8 years agofirst pass at making the GUI for a VCA visible
Paul Davis [Sun, 28 Feb 2016 03:16:37 +0000 (22:16 -0500)]
first pass at making the GUI for a VCA visible

8 years agofix manual merge error
Paul Davis [Fri, 26 Feb 2016 04:15:18 +0000 (23:15 -0500)]
fix manual merge error

8 years agoextend add route dialog to include VCA masters
Paul Davis [Tue, 26 Jan 2016 05:18:31 +0000 (00:18 -0500)]
extend add route dialog to include VCA masters

8 years agoSession HAS-A VCAManager
Paul Davis [Tue, 26 Jan 2016 05:18:03 +0000 (00:18 -0500)]
Session HAS-A VCAManager

8 years agoinitial implementation of a VCA Manager object
Paul Davis [Tue, 26 Jan 2016 03:15:07 +0000 (22:15 -0500)]
initial implementation of a VCA Manager object

8 years agoadd a new packer to the mixer, to hold vca master faders (if any)
Paul Davis [Mon, 25 Jan 2016 20:59:36 +0000 (15:59 -0500)]
add a new packer to the mixer, to hold vca master faders (if any)

8 years agoremove the entire idea of a tabbable for VCA master faders
Paul Davis [Mon, 25 Jan 2016 20:56:59 +0000 (15:56 -0500)]
remove the entire idea of a tabbable for VCA master faders

Conflicts:
gtk2_ardour/master_faders.cc

8 years agofix API of VCA strip
Paul Davis [Mon, 25 Jan 2016 17:51:29 +0000 (12:51 -0500)]
fix API of VCA strip

Conflicts:
gtk2_ardour/master_faders.cc

8 years agoset controls for VCA strip
Paul Davis [Mon, 25 Jan 2016 17:51:10 +0000 (12:51 -0500)]
set controls for VCA strip

8 years agocorrectly set up members of GainMeterBase in ::set_controls()
Paul Davis [Mon, 25 Jan 2016 17:50:27 +0000 (12:50 -0500)]
correctly set up members of GainMeterBase in ::set_controls()

8 years agoadd name() method to VCA
Paul Davis [Mon, 25 Jan 2016 17:49:53 +0000 (12:49 -0500)]
add name() method to VCA

8 years agofake the existence of a master fader strip
Paul Davis [Mon, 25 Jan 2016 02:27:39 +0000 (21:27 -0500)]
fake the existence of a master fader strip

Conflicts:
gtk2_ardour/master_faders.cc

8 years agoskeleton versions of VCA master strips
Paul Davis [Mon, 25 Jan 2016 02:27:25 +0000 (21:27 -0500)]
skeleton versions of VCA master strips

8 years agocall ::set_session on master faders section
Paul Davis [Mon, 25 Jan 2016 02:26:49 +0000 (21:26 -0500)]
call ::set_session on master faders section

8 years agoremove unused "old-order" stuff from AxisView
Paul Davis [Mon, 25 Jan 2016 02:02:07 +0000 (21:02 -0500)]
remove unused "old-order" stuff from AxisView

8 years agoremove stupid, unused function
Paul Davis [Mon, 25 Jan 2016 02:01:49 +0000 (21:01 -0500)]
remove stupid, unused function

8 years agomake the master faders visibility button work
Paul Davis [Mon, 25 Jan 2016 01:50:12 +0000 (20:50 -0500)]
make the master faders visibility button work

8 years agomost of the changes required to add a new master faders tabbable
Paul Davis [Sat, 23 Jan 2016 21:26:41 +0000 (16:26 -0500)]
most of the changes required to add a new master faders tabbable

the visibility button isn't actually working correctly

8 years agoinitially pass at libardour VCA implementation
Paul Davis [Fri, 22 Jan 2016 19:42:25 +0000 (14:42 -0500)]
initially pass at libardour VCA implementation

8 years agoremove old logos (old shape) which shouldn't be used anymore
Robin Gareus [Mon, 30 May 2016 19:02:04 +0000 (21:02 +0200)]
remove old logos (old shape) which shouldn't be used anymore

8 years agothere won't be an Ardour 4.8 release
Robin Gareus [Mon, 30 May 2016 19:01:16 +0000 (21:01 +0200)]
there won't be an Ardour 4.8 release

8 years agoMake TempoMap::framepos_plus_beats() & TempoMap::framepos_minus_beats() more correct.
nick_m [Mon, 30 May 2016 01:03:45 +0000 (11:03 +1000)]
Make TempoMap::framepos_plus_beats() & TempoMap::framepos_minus_beats() more correct.

8 years agoprototype lua midi generators & filters and port event-rewrite
Robin Gareus [Sun, 29 May 2016 18:36:16 +0000 (20:36 +0200)]
prototype lua midi generators & filters and port event-rewrite

8 years agobump max number of possible ALSA backend channels
Robin Gareus [Sun, 29 May 2016 12:30:05 +0000 (14:30 +0200)]
bump max number of possible ALSA backend channels

8 years agoMake TempoMap::framewalk_to_beats () more correct.
nick_m [Sun, 29 May 2016 15:23:19 +0000 (01:23 +1000)]
Make TempoMap::framewalk_to_beats () more correct.

8 years agoFix bbt dragging wrt audio-locked tempos.
nick_m [Sat, 28 May 2016 20:58:24 +0000 (06:58 +1000)]
Fix bbt dragging wrt audio-locked tempos.

8 years agoRevert terrible thinko in 647c86e. (back to slow for now)
nick_m [Sat, 28 May 2016 19:57:19 +0000 (05:57 +1000)]
Revert terrible thinko in 647c86e. (back to slow for now)

8 years agoSpeed up redraw while tempo dragging with midi regions (and possibly other redraws)
nick_m [Sat, 28 May 2016 19:47:11 +0000 (05:47 +1000)]
Speed up redraw while tempo dragging with midi regions (and possibly other redraws)

8 years agoHopefully finally fix tempo curve flickering.
nick_m [Sat, 28 May 2016 19:12:07 +0000 (05:12 +1000)]
Hopefully finally fix tempo curve flickering.

8 years agoEmulate 'log1p()' and 'expm1()' using 'log()' and 'exp()'
John Emmas [Sat, 28 May 2016 18:07:22 +0000 (19:07 +0100)]
Emulate 'log1p()' and 'expm1()' using 'log()' and 'exp()'

(for MSVC which didn't implement those functions until very recent versions).

8 years agoAccommodate newly introduced source(s) in our MSVC project (gtk2_ardour)
John Emmas [Sat, 28 May 2016 09:44:28 +0000 (10:44 +0100)]
Accommodate newly introduced source(s) in our MSVC project (gtk2_ardour)

8 years agoAccommodate newly introduced source(s) in our MSVC project (cairocanvas)
John Emmas [Sat, 28 May 2016 09:43:50 +0000 (10:43 +0100)]
Accommodate newly introduced source(s) in our MSVC project (cairocanvas)

8 years agoAllow non-musical snap when dragging bbt ruler.
nick_m [Fri, 27 May 2016 20:50:22 +0000 (06:50 +1000)]
Allow non-musical snap when dragging bbt ruler.

- probably not what the user wants,
  unless snapping beats to timecode frames.

8 years agoRevert 2d7f755
nick_m [Fri, 27 May 2016 19:17:43 +0000 (05:17 +1000)]
Revert 2d7f755

8 years agoIfdef out some debugging-related code.
nick_m [Fri, 27 May 2016 18:37:52 +0000 (04:37 +1000)]
Ifdef out some debugging-related code.

8 years agoAllow user to have the snap modifier pressed when using the constraint modifier to...
nick_m [Fri, 27 May 2016 18:34:10 +0000 (04:34 +1000)]
Allow user to have the snap modifier pressed when using the constraint modifier to initiate a bbt ruler drah.

8 years agoEnable snap for tempo dilation.
nick_m [Fri, 27 May 2016 17:21:16 +0000 (03:21 +1000)]
Enable snap for tempo dilation.

8 years agoDon't change snap settings when dragging audio-locked meters.
nick_m [Fri, 27 May 2016 17:16:06 +0000 (03:16 +1000)]
Don't change snap settings when dragging audio-locked meters.

8 years agoForce snap when dragging meters.
nick_m [Fri, 27 May 2016 16:57:53 +0000 (02:57 +1000)]
Force snap when dragging meters.

8 years agoRestore snap setting in eterMarkerDrag::aborted()/
nick_m [Fri, 27 May 2016 16:47:12 +0000 (02:47 +1000)]
Restore snap setting in eterMarkerDrag::aborted()/

8 years agofix some false-positive compiler warnings
Robin Gareus [Fri, 27 May 2016 15:55:26 +0000 (17:55 +0200)]
fix some false-positive compiler warnings

8 years agoAU tempo API updates
Robin Gareus [Fri, 27 May 2016 16:28:23 +0000 (18:28 +0200)]
AU tempo API updates

8 years agoDragging a meter sets editor snap type to bars during drag.
nick_m [Fri, 27 May 2016 14:48:18 +0000 (00:48 +1000)]
Dragging a meter sets editor snap type to bars during drag.

8 years agoTempo ramps - fix missing rt call.
nick_m [Fri, 27 May 2016 14:24:02 +0000 (00:24 +1000)]
Tempo ramps - fix missing rt call.

8 years agoTempo ramps - fix merge conflicts, add bbt_at_frame_rt().
nick_m [Fri, 27 May 2016 14:10:53 +0000 (00:10 +1000)]
Tempo ramps - fix merge conflicts, add bbt_at_frame_rt().

8 years agoTempo ramps - more comment fixes.
nick_m [Fri, 27 May 2016 00:59:50 +0000 (10:59 +1000)]
Tempo ramps - more comment fixes.

8 years agoTempo ramps - comments,
nick_m [Fri, 27 May 2016 00:22:51 +0000 (10:22 +1000)]
Tempo ramps - comments,

8 years agoTempo ramps - code cleanup.
nick_m [Thu, 26 May 2016 23:58:05 +0000 (09:58 +1000)]
Tempo ramps - code cleanup.

8 years agoTempo ramps - implement TempoMap::tempo_at_beat().
nick_m [Thu, 26 May 2016 23:30:01 +0000 (09:30 +1000)]
Tempo ramps - implement TempoMap::tempo_at_beat().

8 years agoTempo ramps - fiddle with gradient limit.
nick_m [Thu, 26 May 2016 21:03:55 +0000 (07:03 +1000)]
Tempo ramps - fiddle with gradient limit.

8 years agoTempo ramps - add a gradient limit to the ramp, more comments.
nick_m [Thu, 26 May 2016 20:48:45 +0000 (06:48 +1000)]
Tempo ramps - add a gradient limit to the ramp, more comments.

- things are fine without this, but overall it feels slicker with a linit.

8 years agoTempo ramps - rename meter/tempo_section_at() -> meter/tempo_section_at_frame()
nick_m [Thu, 26 May 2016 19:39:28 +0000 (05:39 +1000)]
Tempo ramps - rename meter/tempo_section_at() -> meter/tempo_section_at_frame()

8 years agoTempo ramps - fix up previous commit.
nick_m [Thu, 26 May 2016 18:17:49 +0000 (04:17 +1000)]
Tempo ramps - fix up previous commit.

8 years agoTempo ramps - add TempoMap::frame_at_tempo()
nick_m [Thu, 26 May 2016 17:55:11 +0000 (03:55 +1000)]
Tempo ramps - add TempoMap::frame_at_tempo()

8 years agoTempo ramps - rename bbt_time() -> bbt_at_frame(), frame_time() -> frame_at_bbt()
nick_m [Thu, 26 May 2016 17:22:24 +0000 (03:22 +1000)]
Tempo ramps - rename bbt_time() -> bbt_at_frame(), frame_time() -> frame_at_bbt()