ardour.git
8 years agoAppData: do the right thing on './waf clean'
Nils Philippsen [Mon, 23 Nov 2015 12:49:41 +0000 (13:49 +0100)]
AppData: do the right thing on './waf clean'

8 years agoAppData: Add German translation.
Nils Philippsen [Fri, 6 Nov 2015 16:06:58 +0000 (17:06 +0100)]
AppData: Add German translation.

8 years agoAdd project version to AppData file.
Nils Philippsen [Fri, 6 Nov 2015 15:59:46 +0000 (16:59 +0100)]
Add project version to AppData file.

8 years agoImplement translation of AppData file.
Nils Philippsen [Fri, 6 Nov 2015 15:57:39 +0000 (16:57 +0100)]
Implement translation of AppData file.

Use the ITS rules file from KDE for itstool:

https://websvn.kde.org/trunk/l10n-kf5/scripts/as-metainfo.its?revision=1395611&view=markup

8 years agoAdd an AppData file.
Nils Philippsen [Mon, 26 Oct 2015 10:04:06 +0000 (11:04 +0100)]
Add an AppData file.

This file gets used by GNOME Software to present an application to users
so they can install it from a software repository.

8 years agocont'd 20262abe (GUI to keep all playlists)
Robin Gareus [Sat, 21 Nov 2015 21:45:43 +0000 (22:45 +0100)]
cont'd 20262abe (GUI to keep all playlists)

8 years agocont'd 20262abe (keep all playlists)
Robin Gareus [Sat, 21 Nov 2015 21:45:26 +0000 (22:45 +0100)]
cont'd 20262abe (keep all playlists)

8 years agoGUI support for "Delete All Unused" playlists.
Robin Gareus [Sat, 21 Nov 2015 20:12:17 +0000 (21:12 +0100)]
GUI support for "Delete All Unused" playlists.

8 years agoprepare "delete all playlists" cleanup option
Robin Gareus [Sat, 21 Nov 2015 20:11:45 +0000 (21:11 +0100)]
prepare "delete all playlists" cleanup option

8 years agoupdate editor-mixer frozen state - fixes #6689
Robin Gareus [Sat, 21 Nov 2015 18:47:01 +0000 (19:47 +0100)]
update editor-mixer frozen state - fixes #6689

8 years agofix playlist refcount on track un-freeze.
Robin Gareus [Sat, 21 Nov 2015 17:36:05 +0000 (18:36 +0100)]
fix playlist refcount on track un-freeze.

8 years agoremove cruft
Robin Gareus [Sat, 21 Nov 2015 10:09:51 +0000 (11:09 +0100)]
remove cruft

8 years agoadd mixbus profile checks to prefs panel, to simplify future merges
Ben Loftis [Fri, 20 Nov 2015 22:03:38 +0000 (16:03 -0600)]
add mixbus profile checks to prefs panel, to simplify future merges

8 years agoprevent deletion of playlists on frozen tracks:
Robin Gareus [Fri, 20 Nov 2015 21:57:13 +0000 (22:57 +0100)]
prevent deletion of playlists on frozen tracks:

bug:
1) freeze a track
2) Session Cleanup > Cleanup unused sources
2a) confirm playlist deletion
3) quit, reload ->  track is no longer frozen
  because _freeze_record.playlist is missing.
  session is in an odd state.

8 years agouse platform-specific modifier name for tooltip
Ben Loftis [Fri, 20 Nov 2015 21:24:47 +0000 (15:24 -0600)]
use platform-specific modifier name for tooltip

8 years agoImprove the layout of Preferences widgets:
Ben Loftis [Fri, 20 Nov 2015 19:08:08 +0000 (13:08 -0600)]
Improve the layout of Preferences widgets:

Grouped "checkbox" preferences together, reducing visual clutter.

Some widget settings affected the visibility/sensitivity of other widgets.
In some cases they were not adjacent; this has been fixed.

Added some additional grouping headers.

8 years agouse dedicated parameter for plugin bundling
Robin Gareus [Tue, 17 Nov 2015 11:19:18 +0000 (12:19 +0100)]
use dedicated parameter for plugin bundling

8 years agorefine video-export notice, incl license info.
Robin Gareus [Tue, 17 Nov 2015 11:18:51 +0000 (12:18 +0100)]
refine video-export notice, incl license info.

8 years agoadd Yamaha KX25 midi-map from Gerard Aberkrom
Robin Gareus [Fri, 20 Nov 2015 10:37:42 +0000 (11:37 +0100)]
add Yamaha KX25 midi-map from Gerard Aberkrom

8 years agoimmediately show plugin GUI if only one plugin is instantiated
Robin Gareus [Fri, 20 Nov 2015 10:14:36 +0000 (11:14 +0100)]
immediately show plugin GUI if only one plugin is instantiated

8 years agosession-load: default to most-recently-used snapshot
Robin Gareus [Fri, 20 Nov 2015 02:21:57 +0000 (03:21 +0100)]
session-load: default to most-recently-used snapshot

8 years agoadd API to read snapshot name from instant.xml
Robin Gareus [Fri, 20 Nov 2015 02:11:39 +0000 (03:11 +0100)]
add API to read snapshot name from instant.xml

8 years agoremember in-use snapshot/session name in instant.xml
Robin Gareus [Fri, 20 Nov 2015 02:10:57 +0000 (03:10 +0100)]
remember in-use snapshot/session name in instant.xml

8 years agoremove cruft
Robin Gareus [Fri, 20 Nov 2015 02:09:29 +0000 (03:09 +0100)]
remove cruft

8 years agoprovide user preference for pre-roll
Ben Loftis [Thu, 19 Nov 2015 22:55:34 +0000 (16:55 -0600)]
provide user preference for pre-roll

8 years agoremove debug message
Robin Gareus [Thu, 19 Nov 2015 16:24:00 +0000 (17:24 +0100)]
remove debug message

8 years agoline-wrap fatal message (that's not done automatically)
Robin Gareus [Thu, 19 Nov 2015 16:04:02 +0000 (17:04 +0100)]
line-wrap fatal message (that's not done automatically)

8 years agoallow to rename the session root folder - fixes #6557
Robin Gareus [Thu, 19 Nov 2015 15:08:04 +0000 (16:08 +0100)]
allow to rename the session root folder - fixes #6557

8 years agoFix windows build when using pthreads-win32 library
Tim Mayberry [Thu, 19 Nov 2015 10:52:29 +0000 (20:52 +1000)]
Fix windows build when using pthreads-win32 library

8 years agoUse a range of values for ASIO buffer sizes if provided by driver
Tim Mayberry [Mon, 2 Nov 2015 05:22:43 +0000 (15:22 +1000)]
Use a range of values for ASIO buffer sizes if provided by driver

This has been tested on four devices:

- A RME HDSP Multiface
- A Yamaha AG06
- A Focusrite 2i2
- A built-in soundcard running ASIO4ALL

The HDSP and the AG06 only return one buffer size when queried so the preferred
size is used as before.

The Focusrite returns a min corresponding to the position of the slider in the
control dialog and the max is 1024. The granularity is 1 so this means that the
number of values needs to be reduced for the current UI design with a combo
box so the granularity is increased until there are around 8-9 buffer sizes to
choose from evenly spaced between min and max(but we could easily change this
if the UI changes etc).

The ASIO4ALL driver returns a min of 64 and a max of 2048 and a granularity of
8. So where the minimum buffer size and granularity is a power of 2 use only
buffer sizes that are power of 2.

If the driver returns different values for min and max it is not currently
possible to indicate which is the driver preferred value. A checkbox or other
UI element could be added to the AudioSetup dialog to only use the preferred
value but that is more work and perhaps not necessary.

8 years agoAdd support for callback API to portaudio backend but keep blocking API as default
Tim Mayberry [Thu, 27 Aug 2015 22:53:10 +0000 (08:53 +1000)]
Add support for callback API to portaudio backend but keep blocking API as default

Don't use the callback API for now until further and wider testing.

8 years agoadd new (unfinished) device info file for FaderPort
Paul Davis [Wed, 18 Nov 2015 22:14:56 +0000 (17:14 -0500)]
add new (unfinished) device info file for FaderPort

8 years agouse new plugin class API for filter
Robin Gareus [Wed, 18 Nov 2015 17:11:33 +0000 (18:11 +0100)]
use new plugin class API for filter

8 years agoadd dedicated API to check plugin class
Robin Gareus [Wed, 18 Nov 2015 17:11:19 +0000 (18:11 +0100)]
add dedicated API to check plugin class

8 years agorelayout plugin-manager filter & related details
Robin Gareus [Wed, 18 Nov 2015 16:20:36 +0000 (17:20 +0100)]
relayout plugin-manager filter & related details

8 years agopass release signal up to ArdourButton (_grabbed state)
Robin Gareus [Wed, 18 Nov 2015 15:50:27 +0000 (16:50 +0100)]
pass release signal up to ArdourButton (_grabbed state)

8 years agoreduce math weirdness (thanks to Steven Yi)
Robin Gareus [Wed, 18 Nov 2015 13:29:13 +0000 (14:29 +0100)]
reduce math weirdness (thanks to Steven Yi)

8 years agoreduce clutter in Plugin Manager List
Robin Gareus [Wed, 18 Nov 2015 02:46:50 +0000 (03:46 +0100)]
reduce clutter in Plugin Manager List

8 years agoAdd --profile waf option so frame pointer isn't omitted in optimized builds
Tim Mayberry [Tue, 27 Oct 2015 11:26:12 +0000 (21:26 +1000)]
Add --profile waf option so frame pointer isn't omitted in optimized builds

8 years agoRemove -O0 optimize flag from debuggable flags to enable debuggable optimized builds
Tim Mayberry [Tue, 27 Oct 2015 11:08:24 +0000 (21:08 +1000)]
Remove -O0 optimize flag from debuggable flags to enable debuggable optimized builds

This allows debug symbol information to be included for optimized builds. This
may not always be useful for debugging but it is necessary to use profiling
tools like perf.

The default optimize level is -O0 if no other optimize flag is specified so the
optimization level will be the same unless overridden.

8 years agotweak selection code for mixer strip Duplicate func
Ben Loftis [Tue, 17 Nov 2015 23:34:33 +0000 (17:34 -0600)]
tweak selection code for mixer strip Duplicate func

8 years agoadd Duplicate action to track and mixer context menus
Ben Loftis [Tue, 17 Nov 2015 22:55:11 +0000 (16:55 -0600)]
add Duplicate action to track and mixer context menus

8 years agonew test tools to check thread-pool based disk i/o
Paul Davis [Tue, 17 Nov 2015 15:14:44 +0000 (10:14 -0500)]
new test tools to check thread-pool based disk i/o

8 years agouse thread private data **pointer** correctly for Stateful::ID regeneration
Paul Davis [Tue, 17 Nov 2015 13:53:29 +0000 (08:53 -0500)]
use thread private data **pointer** correctly for Stateful::ID regeneration

8 years agofix inadvertently commit error related to at-process-exit deletion for thread private...
Paul Davis [Tue, 17 Nov 2015 02:55:57 +0000 (21:55 -0500)]
fix inadvertently commit error related to at-process-exit deletion for thread private variable

8 years agocorrect value testing for Stateful thread-private variable controlling ID regeneration
Paul Davis [Tue, 17 Nov 2015 02:23:39 +0000 (21:23 -0500)]
correct value testing for Stateful thread-private variable controlling ID regeneration

8 years agoFix bug #6506, crash when moving tempo markers with automation on midi tracks
Tim Mayberry [Thu, 12 Nov 2015 13:17:44 +0000 (23:17 +1000)]
Fix bug #6506, crash when moving tempo markers with automation on midi tracks

8 years agofix logic errors in duplicate tracks dialog
Paul Davis [Sat, 14 Nov 2015 21:02:05 +0000 (16:02 -0500)]
fix logic errors in duplicate tracks dialog

8 years agoget PlaylistDisposition argument of Session::new_route_from_template() working
Paul Davis [Sat, 14 Nov 2015 21:01:24 +0000 (16:01 -0500)]
get PlaylistDisposition argument of Session::new_route_from_template() working

8 years agoremove leftover declaration
Paul Davis [Sat, 14 Nov 2015 20:24:40 +0000 (15:24 -0500)]
remove leftover declaration

8 years agoremove leftover declarations
Paul Davis [Sat, 14 Nov 2015 20:22:36 +0000 (15:22 -0500)]
remove leftover declarations

8 years agomove logic of track/bus duplication into DuplicateRouteDialog
Paul Davis [Sat, 14 Nov 2015 20:21:20 +0000 (15:21 -0500)]
move logic of track/bus duplication into DuplicateRouteDialog

8 years agoFix fader in mackie control to work with groups.
Len Ovens [Sat, 14 Nov 2015 18:39:53 +0000 (10:39 -0800)]
Fix fader in mackie control to work with groups.

8 years agotweak duplicate routes dialog appearance depending on whether or not busses/tracks...
Paul Davis [Sat, 14 Nov 2015 16:05:15 +0000 (11:05 -0500)]
tweak duplicate routes dialog appearance depending on whether or not busses/tracks are the target

8 years agoexpose count widgets for duplicate track dialog
Paul Davis [Sat, 14 Nov 2015 15:35:07 +0000 (10:35 -0500)]
expose count widgets for duplicate track dialog

8 years agopartial dialog to control track duplication
Paul Davis [Sat, 14 Nov 2015 15:29:50 +0000 (10:29 -0500)]
partial dialog to control track duplication

8 years agolinux installer tweak:
Robin Gareus [Fri, 13 Nov 2015 23:36:19 +0000 (17:36 -0600)]
linux installer tweak:

check architecture before gcc4/5 compat

8 years agoinitial/partial implementation of duplicate track/bus
Paul Davis [Fri, 13 Nov 2015 21:14:42 +0000 (16:14 -0500)]
initial/partial implementation of duplicate track/bus

8 years agosubstantial part of infrastructure required for track/bus duplication
Paul Davis [Fri, 13 Nov 2015 21:14:09 +0000 (16:14 -0500)]
substantial part of infrastructure required for track/bus duplication

This includes removing the removal of ID values in XML, and its replacement with
thread-local forcing of ID resets, implemented in a previous commit

8 years agofix return value from Route::save_as_template()
Paul Davis [Fri, 13 Nov 2015 21:12:53 +0000 (16:12 -0500)]
fix return value from Route::save_as_template()

8 years agoFix #6673 - another prematurely closed undo transaction.
nick_m [Fri, 13 Nov 2015 16:14:23 +0000 (03:14 +1100)]
Fix #6673 - another prematurely closed undo transaction.

- add_midi_region used to commit, resulting in
  _region->set_position() adding a command when there was
  no current transaction. The sub-bug here was that repeatedly
  calling set_position() on the new region resulted in nonsensical
  automation movement after the drag.

8 years agoArdour::Region - add method required to fix #6673.
nick_m [Fri, 13 Nov 2015 16:05:53 +0000 (03:05 +1100)]
Ardour::Region - add method required to fix #6673.

8 years agofix edge-case in Dummy-backend random number generator initialization
Robin Gareus [Thu, 12 Nov 2015 15:49:40 +0000 (09:49 -0600)]
fix edge-case in Dummy-backend random number generator initialization

8 years agoprovide a mechanism to force ID regeneration/reset in PBD::Stateful when settingthe...
Paul Davis [Thu, 12 Nov 2015 15:24:41 +0000 (10:24 -0500)]
provide a mechanism to force ID regeneration/reset in PBD::Stateful when settingthe ID object from XML or string sources

8 years agoremove requirement for transport speed to be 1.0 when generating click (metronome)
Paul Davis [Thu, 12 Nov 2015 14:46:14 +0000 (09:46 -0500)]
remove requirement for transport speed to be 1.0 when generating click (metronome)

This is experimental and may not work

8 years agoUse XMLNode::remove_child_and_delete in Stateful::add_extra_xml
Tim Mayberry [Sat, 7 Nov 2015 05:26:27 +0000 (15:26 +1000)]
Use XMLNode::remove_child_and_delete in Stateful::add_extra_xml

As the node being replaced has been added with XMLNode::add_child_nocopy the
node also needs to be deleted or a memory leak occurs.

8 years agoUse constructor initialization list in Stateful class
Tim Mayberry [Fri, 6 Nov 2015 12:16:27 +0000 (22:16 +1000)]
Use constructor initialization list in Stateful class

8 years agoReplace spaces with tabs in pbd/stateful.h
Tim Mayberry [Fri, 6 Nov 2015 10:04:48 +0000 (20:04 +1000)]
Replace spaces with tabs in pbd/stateful.h

8 years agomore correct semantics for reserved IO name checking
Paul Davis [Mon, 9 Nov 2015 13:24:35 +0000 (08:24 -0500)]
more correct semantics for reserved IO name checking

8 years agoslightly improved fix for reserved name handling
Paul Davis [Sun, 8 Nov 2015 03:23:23 +0000 (22:23 -0500)]
slightly improved fix for reserved name handling

8 years agodon't force rename of reserved route/IO names if the name isn't taken yet
Paul Davis [Sun, 8 Nov 2015 03:15:59 +0000 (22:15 -0500)]
don't force rename of reserved route/IO names if the name isn't taken yet

8 years agoMackie Control: Initialize vpot assignment on start-up.
Len Ovens [Sat, 7 Nov 2015 03:28:24 +0000 (19:28 -0800)]
Mackie Control: Initialize vpot assignment on start-up.

8 years agoMackie Control: Add send functionality to vpot assign section.
Len Ovens [Sat, 7 Nov 2015 00:18:13 +0000 (16:18 -0800)]
Mackie Control: Add send functionality to vpot assign section.

8 years agoAdd some newly introduced sources to our MSVC project (libardour)
John Emmas [Fri, 6 Nov 2015 08:22:58 +0000 (08:22 +0000)]
Add some newly introduced sources to our MSVC project (libardour)

8 years agoMerge branch 'chaot4-feature_open_dialog_before_chat'
Paul Davis [Wed, 4 Nov 2015 22:53:15 +0000 (17:53 -0500)]
Merge branch 'chaot4-feature_open_dialog_before_chat'

8 years agoShow info dialog when opening chat via Help -> Chat.
André Nusser [Mon, 2 Nov 2015 21:51:45 +0000 (22:51 +0100)]
Show info dialog when opening chat via Help -> Chat.

This should clarify for users that in IRC you post your question and
wait, and not leave after a few minutes.

8 years agoMerge branch 'chaot4-f_overwrite_dialog_improvement'
Paul Davis [Wed, 4 Nov 2015 22:52:10 +0000 (17:52 -0500)]
Merge branch 'chaot4-f_overwrite_dialog_improvement'

8 years agoRemove explicit positioning of overwrite_file_dialog.
André Nusser [Sun, 1 Nov 2015 21:24:02 +0000 (22:24 +0100)]
Remove explicit positioning of overwrite_file_dialog.

ArdourDialog takes care of this.

8 years agoFix ordering of buttons in midi export dialog.
André Nusser [Sun, 1 Nov 2015 21:23:01 +0000 (22:23 +0100)]
Fix ordering of buttons in midi export dialog.

[Cancel] [Save] instead of [Save] [Cancel].

8 years agoImprove behavior of overwrite_file_dialog.
André Nusser [Sun, 1 Nov 2015 20:00:05 +0000 (21:00 +0100)]
Improve behavior of overwrite_file_dialog.

- Make overwrite file dialogs transient.
- Cancelling the overwrite dialog doesn't close initial dialog.

8 years agono-op; reordering of class forward declarations in editor.h.
André Nusser [Sun, 1 Nov 2015 20:56:09 +0000 (21:56 +0100)]
no-op; reordering of class forward declarations in editor.h.

8 years agoMerge branch 'chaot4-fix_duplicate_fencepost_error'
Paul Davis [Wed, 4 Nov 2015 22:50:24 +0000 (17:50 -0500)]
Merge branch 'chaot4-fix_duplicate_fencepost_error'

8 years agoFix fencepost error in duplicate_some_regions. Adapt start position.
André Nusser [Wed, 28 Oct 2015 21:09:39 +0000 (22:09 +0100)]
Fix fencepost error in duplicate_some_regions. Adapt start position.

8 years agoMake duplicate start at position, not position + 1. (libs part)
André Nusser [Wed, 28 Oct 2015 21:06:46 +0000 (22:06 +0100)]
Make duplicate start at position, not position + 1. (libs part)

8 years agoMerge branch 'chaot4-fix_click_gain_entry_enter'
Paul Davis [Wed, 4 Nov 2015 22:49:24 +0000 (17:49 -0500)]
Merge branch 'chaot4-fix_click_gain_entry_enter'

8 years agoLet Entry of FaderOption react on ENTER and allow only numerical input.
André Nusser [Wed, 4 Nov 2015 22:10:27 +0000 (23:10 +0100)]
Let Entry of FaderOption react on ENTER and allow only numerical input.

This enables setting click gain and solo gain in the preferences using
the text field. -- fixes #6668

8 years agoadd required header
Paul Davis [Wed, 4 Nov 2015 12:58:10 +0000 (07:58 -0500)]
add required header

8 years agolibardour wrapper for EBUr128 VAMP plugin
Robin Gareus [Tue, 3 Nov 2015 18:20:00 +0000 (19:20 +0100)]
libardour wrapper for EBUr128 VAMP plugin

8 years agoadd basic VAMP plugin for EBUr128 analysis
Robin Gareus [Tue, 3 Nov 2015 06:51:39 +0000 (07:51 +0100)]
add basic VAMP plugin for EBUr128 analysis

FeatureSet will be extended to report detailed analysis.

8 years agoGUI checkbox to disable plugins
Robin Gareus [Tue, 3 Nov 2015 07:02:22 +0000 (08:02 +0100)]
GUI checkbox to disable plugins

for the benefit of Windows and OSX users and everyone else who does
not run Ardour from the commandline.

8 years agoupdate midi channel button display when mode changes
Robin Gareus [Tue, 3 Nov 2015 18:16:06 +0000 (19:16 +0100)]
update midi channel button display when mode changes

8 years agoClean up selection history in Editor destructor.
nick_m [Mon, 2 Nov 2015 18:25:15 +0000 (05:25 +1100)]
Clean up selection history in Editor destructor.

8 years agoAutomationList::set_automation_state () only needs a memento for toggled.
nick_m [Mon, 2 Nov 2015 17:18:09 +0000 (04:18 +1100)]
AutomationList::set_automation_state () only needs a memento for toggled.

8 years agoClass 'PhaseControllable' needs to be importable since it gets referenced outside...
John Emmas [Mon, 2 Nov 2015 11:27:43 +0000 (11:27 +0000)]
Class 'PhaseControllable' needs to be importable since it gets referenced outside of libardour

Specifically, 'PhaseControllable::channel()' and 'PhaseControllable::set_channel()' get called from 'mackie/strip.cc'

At some point we might also need to do this for the related classes (SoloControllable and MuteControllable) although it doesn't seem to be needed right at this moment.

8 years agofix crash when cleaning up canvas items
Robin Gareus [Mon, 2 Nov 2015 04:15:55 +0000 (05:15 +0100)]
fix crash when cleaning up canvas items

Backport from Mixbus. In Ardour this does not currently matter
since there is no top-level canvas destroyed top-down.

...
Editor::session_going_away
MixerStrip::~MixerStrip
MixbusStripCanvas::~MixbusStripCanvas
ArdourCanvas::GtkCanvas::~GtkCanvas
ArdourCanvas::Canvas::~Canvas
ArdourCanvas::Root::~Root
ArdourCanvas::Container::~Container
ArdourCanvas::Item::~Item
ArdourCanvas::Item::clear_items
GtkCanvas::item_going_away()
queue_draw_item_area()

..expose can take place async to garbage collection: crash in one of the
items.

8 years agoDon't handle possible phase change if no audio channels in mackie control
Len Ovens [Mon, 2 Nov 2015 03:25:45 +0000 (19:25 -0800)]
Don't handle possible phase change if no audio channels in mackie control

8 years agoFix Mackie surface phase control for flip and more than one audio channel.
Len Ovens [Sun, 1 Nov 2015 23:30:36 +0000 (15:30 -0800)]
Fix Mackie surface phase control for flip and more than one audio channel.

8 years agoAdded Phase control mackie controls as part of the Trim (track) vpot assignment.
Len Ovens [Sun, 1 Nov 2015 21:35:02 +0000 (13:35 -0800)]
Added Phase control mackie controls as part of the Trim (track) vpot assignment.

8 years agoFix missing undo for record mute automation.
nick_m [Sun, 1 Nov 2015 18:34:09 +0000 (05:34 +1100)]
Fix missing undo for record mute automation.

8 years agoClean up _before XMLNode in AutomationList if no automation write occurred.
nick_m [Sun, 1 Nov 2015 15:12:54 +0000 (02:12 +1100)]
Clean up _before XMLNode in AutomationList if no automation write occurred.