ardour.git
6 years agoUsers struggle with Pane Dividers. Make them larger, and set a min-size on the mixer...
Ben Loftis [Mon, 12 Feb 2018 22:16:09 +0000 (16:16 -0600)]
Users struggle with Pane Dividers.  Make them larger, and set a min-size on the mixer list pane.

6 years ago...and also for VCA strips.
Ben Loftis [Mon, 12 Feb 2018 21:50:35 +0000 (15:50 -0600)]
...and also for VCA strips.

6 years agoRemove track-adder button from the mixer-list, and add an obvious one at end of strips.
Ben Loftis [Mon, 12 Feb 2018 21:29:19 +0000 (15:29 -0600)]
Remove track-adder button from the mixer-list, and add an obvious one at end of strips.

6 years agofix definition of Temporal::Beats::max()
Paul Davis [Mon, 12 Feb 2018 12:04:47 +0000 (07:04 -0500)]
fix definition of Temporal::Beats::max()

Ticks can exceed PPQN, but if beats are already INT32_MAX, ::normalize() will not work correctly

6 years agoRe-pack Editor Toolbar:
Ben Loftis [Mon, 12 Feb 2018 17:42:21 +0000 (11:42 -0600)]
Re-pack Editor Toolbar:
Move zoom tools to right of toolbar.
Tweak numeric (mode) keybindings to more closely match the order they appear in the UI.
Add some new default keybindings.

6 years agoTimecode instead of SMPTE.
Ben Loftis [Mon, 12 Feb 2018 15:15:26 +0000 (09:15 -0600)]
Timecode instead of SMPTE.

6 years agoTweak combo-box sizing to match actual triangle size. Tweak size of grid_type_selector.
Ben Loftis [Mon, 12 Feb 2018 15:13:39 +0000 (09:13 -0600)]
Tweak combo-box sizing to match actual triangle size.  Tweak size of grid_type_selector.

6 years agoFix potential crash in snap_to_grid (grid-mark list is empty).
Ben Loftis [Sun, 11 Feb 2018 18:05:23 +0000 (12:05 -0600)]
Fix potential crash in snap_to_grid (grid-mark list is empty).

6 years agoSoloSelection: gui part.
Ben Loftis [Sun, 11 Feb 2018 15:39:45 +0000 (09:39 -0600)]
SoloSelection: gui part.

6 years agoSoloSelection: libardour part.
Ben Loftis [Sun, 11 Feb 2018 15:39:36 +0000 (09:39 -0600)]
SoloSelection: libardour part.

6 years agoResolve a few -Wunused-variable warnings in US2400.
Ben Loftis [Sun, 11 Feb 2018 00:12:16 +0000 (18:12 -0600)]
Resolve a few -Wunused-variable warnings in US2400.

6 years agoiCon device tweaks: faster timecode display refresh rate. Submitted by Michal Barhon.
Ben Loftis [Sun, 11 Feb 2018 00:07:05 +0000 (18:07 -0600)]
iCon device tweaks: faster timecode display refresh rate. Submitted by Michal Barhon.

6 years agoAdd qex + qcon mcp device file (expander on left). Submitted by Michal Barhon.
Ben Loftis [Sun, 11 Feb 2018 00:01:27 +0000 (18:01 -0600)]
Add qex + qcon mcp device file (expander on left). Submitted by Michal Barhon.

6 years agoResolve -Wreorder in qcon code.
Ben Loftis [Sat, 10 Feb 2018 23:59:37 +0000 (17:59 -0600)]
Resolve -Wreorder in qcon code.

6 years agoCopy+Paste thinko: use passed-in variable instead of member variable. Maybe fix...
Ben Loftis [Sat, 10 Feb 2018 15:06:46 +0000 (09:06 -0600)]
Copy+Paste thinko: use passed-in variable instead of member variable.  Maybe fix potential crash.

6 years agoCairo-fix cursor lines so they align perfectly with Rulers, Grids, and region edges.
Ben Loftis [Sat, 10 Feb 2018 13:51:28 +0000 (07:51 -0600)]
Cairo-fix cursor lines so they align perfectly with Rulers, Grids, and region edges.

6 years agoRemove unused code.
Ben Loftis [Fri, 9 Feb 2018 19:44:49 +0000 (13:44 -0600)]
Remove unused code.

6 years agoFix potential crash with EditAtSelectedMarker, when no marker is selected.
Ben Loftis [Fri, 9 Feb 2018 19:43:20 +0000 (13:43 -0600)]
Fix potential crash with EditAtSelectedMarker, when no marker is selected.

6 years agonew_grid: Add grid_lines.cc
Ben Loftis [Fri, 9 Feb 2018 17:21:40 +0000 (11:21 -0600)]
new_grid:  Add grid_lines.cc

6 years agonew_grid: Rewrite of Snap and Grid. (squashed commit)
Ben Loftis [Fri, 9 Feb 2018 15:59:39 +0000 (09:59 -0600)]
new_grid:  Rewrite of Snap and Grid. (squashed commit)
Separate Snap from Grid.  Lots of naming changes.
Multiple simultaneous snap options allowed. Grid is one of the possible Snap options.
Grid uses the same data as the rulers.  Replace complicated tempo_lines with simple grid_lines.
The Grid is zoom-scale-sensitive along with the rulers.  If you are zoomed out, grid becomes coarser.

6 years agonew_grid: MidiRegionView::motion should propagate thru RegionView, so snapped_cursor...
Ben Loftis [Wed, 7 Feb 2018 01:49:32 +0000 (19:49 -0600)]
new_grid: MidiRegionView::motion should propagate thru RegionView, so snapped_cursor is updated.  This probably fixes other bugs as well.

6 years agonew_snap: Snapped Cursor ( squashed commit )
Ben Loftis [Fri, 9 Feb 2018 14:21:45 +0000 (08:21 -0600)]
new_snap:  Snapped Cursor ( squashed commit )
Snapped Cursor is a line that follows the edit point, and indicates where the operation will occur.
This replaces and extends the line that appears with the Cut tool.
New associated preferences:  snap_threshold and show_snap_cursor.

6 years agoOSC: clean up jog mode, simplify feedback
Len Ovens [Mon, 5 Feb 2018 18:39:58 +0000 (10:39 -0800)]
OSC: clean up jog mode, simplify feedback

6 years agoMSVC only allows static class members to be initialised in the class declaration
John Emmas [Sat, 3 Feb 2018 14:58:45 +0000 (14:58 +0000)]
MSVC only allows static class members to be initialised in the class declaration

6 years agoMake sure that 'libardour-config,h' only gets #included when building with waf (as...
John Emmas [Sat, 3 Feb 2018 13:55:37 +0000 (13:55 +0000)]
Make sure that 'libardour-config,h' only gets #included when building with waf (as it only gets generated when building with waf)

When building with MSVC this was getting #included in a few places which had the effect of making my session files get generated in a very old format.

6 years agoFurther defer changes of plugin Tags+Status, and consolidate code to call PluginListC...
Ben Loftis [Sat, 3 Feb 2018 01:25:01 +0000 (19:25 -0600)]
Further defer changes of plugin Tags+Status, and consolidate code to call PluginListChanged only once.

6 years agoFixes for the iCON Qcon mcp device - LED rings. Submitted by Michal Barhon : mbarhon...
Ben Loftis [Fri, 2 Feb 2018 15:26:17 +0000 (09:26 -0600)]
Fixes for the iCON Qcon mcp device - LED rings.  Submitted by Michal Barhon : mbarhon@seznam.cz

6 years agoOSC: jog mode and jog mode name should be sent at refresh
Len Ovens [Fri, 2 Feb 2018 06:03:04 +0000 (22:03 -0800)]
OSC: jog mode and jog mode name should be sent at refresh

6 years agoSupport for the iCON Qcon mcp device - sysex strings. Submitted by Michal Barhon.
Ben Loftis [Thu, 1 Feb 2018 20:39:17 +0000 (14:39 -0600)]
Support for the iCON Qcon mcp device - sysex strings.  Submitted by Michal Barhon.

6 years agoUpdated mcp files for iCON Qcon controller.
Ben Loftis [Thu, 1 Feb 2018 20:32:48 +0000 (14:32 -0600)]
Updated mcp files for iCON Qcon controller.

6 years agoAdd a script to jump to a named marker
Robin Gareus [Thu, 1 Feb 2018 01:18:40 +0000 (02:18 +0100)]
Add a script to jump to a named marker

6 years agoOSC: Add group name feedback to strips
Len Ovens [Wed, 31 Jan 2018 19:47:03 +0000 (11:47 -0800)]
OSC: Add group name feedback to strips

6 years agoCreate M-Audio_Axiom_AIR_Mini_32.map
Shawn Doherty [Wed, 31 Jan 2018 15:34:19 +0000 (10:34 -0500)]
Create M-Audio_Axiom_AIR_Mini_32.map

List CC events for transport controls and knobs. List Note events for Trigger Pads. Map transport controls and knobs.

6 years agoRevert "Clean up help-text, use multi-line single labels"
Robin Gareus [Wed, 31 Jan 2018 14:21:00 +0000 (15:21 +0100)]
Revert "Clean up help-text, use multi-line single labels"

This reverts commit 17cdc8114c0efa568f4a2f6f5eefb43c747f3b0c.

Using table row-pacing between labels provides a nicer layout
(less vertical blank space)

6 years agoOnly list hidden plugins with "Show hidden only"
Robin Gareus [Wed, 31 Jan 2018 14:16:49 +0000 (15:16 +0100)]
Only list hidden plugins with "Show hidden only"

6 years agoUse new tag-search API
Robin Gareus [Wed, 31 Jan 2018 13:04:14 +0000 (14:04 +0100)]
Use new tag-search API

This fixes an issue where "By Tag" dropdown contained empty menu-items,
in case a hidden plugin is the only one with a given tag.

6 years agoAllow to filter tags by hidden + favorite
Robin Gareus [Wed, 31 Jan 2018 13:02:44 +0000 (14:02 +0100)]
Allow to filter tags by hidden + favorite

This in preparation to not populate context-menus with unused tags.

6 years agoClean up help-text, use multi-line single labels
Robin Gareus [Wed, 31 Jan 2018 13:01:43 +0000 (14:01 +0100)]
Clean up help-text, use multi-line single labels

6 years agoFix sensitivity of Tag-reset-button and row activation
Robin Gareus [Wed, 31 Jan 2018 03:50:22 +0000 (04:50 +0100)]
Fix sensitivity of Tag-reset-button and row activation

6 years agoconst where const is due
Robin Gareus [Wed, 31 Jan 2018 02:34:21 +0000 (03:34 +0100)]
const where const is due

6 years agoText case change (_VSTInfo::Category needs to be capitalized)
John Emmas [Wed, 31 Jan 2018 11:01:56 +0000 (11:01 +0000)]
Text case change (_VSTInfo::Category needs to be capitalized)

6 years agoFix editing/replacing plugin-tags
Robin Gareus [Tue, 30 Jan 2018 19:03:13 +0000 (20:03 +0100)]
Fix editing/replacing plugin-tags

6 years agoPlugin-Selector: Use ArdourButton instead of Gtk::CheckButton
Robin Gareus [Tue, 30 Jan 2018 18:51:45 +0000 (19:51 +0100)]
Plugin-Selector: Use ArdourButton instead of Gtk::CheckButton

6 years agoArdour Button Toggle explosion
Robin Gareus [Tue, 30 Jan 2018 17:33:15 +0000 (18:33 +0100)]
Ardour Button Toggle explosion

Add option to use ArduorButton as standalone Toggle/Checkbox.
Usually ArdourButton relegates this to Actions or is backed by Config.
This allows to use the Button as standalone Toggle, get_active()
It should maybe be a derived Class, but ArdourButton is already beyond
that..

6 years agoRemove GUI-side LADSPA author-name tweaks.
Robin Gareus [Tue, 30 Jan 2018 18:12:47 +0000 (19:12 +0100)]
Remove GUI-side LADSPA author-name tweaks.

6 years agoMove LADSPA Author string sanitation to libardour.
Robin Gareus [Tue, 30 Jan 2018 18:12:01 +0000 (19:12 +0100)]
Move LADSPA Author string sanitation to libardour.

(Also allow dot as valid char: e.g. "James T. Kirk" but keep stripping
common suffixes like <e@mail>.

6 years agoPlugin-Selector replace Gtk::ComboBox with ArdourDropdown
Robin Gareus [Tue, 30 Jan 2018 15:27:55 +0000 (16:27 +0100)]
Plugin-Selector replace Gtk::ComboBox with ArdourDropdown

6 years agoArdourButton: honor text-ellipsis width for size-request
Robin Gareus [Tue, 30 Jan 2018 15:27:18 +0000 (16:27 +0100)]
ArdourButton: honor text-ellipsis width for size-request

6 years agoAdd ArdourDropdown API for use as dumb text dropdown.
Robin Gareus [Tue, 30 Jan 2018 14:21:45 +0000 (15:21 +0100)]
Add ArdourDropdown API for use as dumb text dropdown.

6 years agotom's-loop: Allow pasting at loop-end (needs future rework after nutempo)
Robin Gareus [Tue, 30 Jan 2018 13:44:00 +0000 (14:44 +0100)]
tom's-loop: Allow pasting at loop-end (needs future rework after nutempo)

6 years agoUse backend-API to reset tags, remove unused category
Robin Gareus [Tue, 30 Jan 2018 12:10:32 +0000 (13:10 +0100)]
Use backend-API to reset tags, remove unused category

6 years agoAdd backend-API to reset plugin tags
Robin Gareus [Tue, 30 Jan 2018 12:10:00 +0000 (13:10 +0100)]
Add backend-API to reset plugin tags

6 years agoDon't automatically open plugin-GUI if there are no controls
Robin Gareus [Tue, 30 Jan 2018 11:40:22 +0000 (12:40 +0100)]
Don't automatically open plugin-GUI if there are no controls

6 years agoFurther tweaks to Plugin-Selector:
Robin Gareus [Tue, 30 Jan 2018 11:40:06 +0000 (12:40 +0100)]
Further tweaks to Plugin-Selector:

* update current search when toggling search_ignore_checkbox
* take filter-view into account when changing plugin-status,
  immediately hide hidden or un-favorerd plugins from view.
* default to "effects only"

6 years agoFix plugin factory tags
Robin Gareus [Tue, 30 Jan 2018 02:59:47 +0000 (03:59 +0100)]
Fix plugin factory tags

* tag-file is loaded early on (before scanning plugin) retain factory
  set tag from file, don't use plugin-categories.
* load user plugin-tag file after factory plugin-tag file

6 years agoPlugin Selector: ui tweaks.
Ben Loftis [Tue, 30 Jan 2018 02:15:06 +0000 (20:15 -0600)]
Plugin Selector: ui tweaks.

6 years agoClean up tag tokenization code
Robin Gareus [Tue, 30 Jan 2018 02:12:09 +0000 (03:12 +0100)]
Clean up tag tokenization code

* accept " ,\n" as separator
* produce only " " as separator
* squelch error message for empty-string tokenization
* clean up code, use existing API methods for lower-case transform

6 years agoAdd factory plugin tags + favorites
Robin Gareus [Tue, 30 Jan 2018 00:32:59 +0000 (01:32 +0100)]
Add factory plugin tags + favorites

6 years agoRemove unused API
Robin Gareus [Tue, 30 Jan 2018 00:32:32 +0000 (01:32 +0100)]
Remove unused API

6 years agoMajor overhaul of plugin-selector: tag-management & filter
Robin Gareus [Tue, 30 Jan 2018 00:32:15 +0000 (01:32 +0100)]
Major overhaul of plugin-selector: tag-management & filter

This is a squashed commit of various 'nutag' topic branch commits:
* re-layout plugin-manager
* remove category, add tags
* combine I/O columns in list.
* update filter to search name and tags

6 years agoAdd plugin tag-filter to Mixer-favorites sidebar
Robin Gareus [Mon, 29 Jan 2018 23:45:42 +0000 (00:45 +0100)]
Add plugin tag-filter to Mixer-favorites sidebar

6 years agoNew PluginStatusesChanged API
Robin Gareus [Mon, 29 Jan 2018 23:45:02 +0000 (00:45 +0100)]
New PluginStatusesChanged API

6 years agoNO-OP: whitespace
Robin Gareus [Mon, 29 Jan 2018 23:44:09 +0000 (00:44 +0100)]
NO-OP: whitespace

6 years agoUpdate PluginManager: implement plugin tags
Robin Gareus [Mon, 29 Jan 2018 23:33:44 +0000 (00:33 +0100)]
Update PluginManager: implement plugin tags

* move plugin-meta-data (status, tag) into dedicated sub-dir
* load/save space separated tags
* pre-seed tags with plugin-category (if unset)
* breaking API change: PluginStatusesChanged() signal includes change

6 years agoPrepare for PluginStatusesChanged API change
Robin Gareus [Mon, 29 Jan 2018 23:33:02 +0000 (00:33 +0100)]
Prepare for PluginStatusesChanged API change

6 years agoUpdate plugin classification
Robin Gareus [Mon, 29 Jan 2018 22:55:20 +0000 (23:55 +0100)]
Update plugin classification

* dedicated API for classes (effect, instrument, util)
* prepare for tags (rather than categories)
* prepare removal of per-plugin in_category() API

6 years agoPrepare plugin-meta-data config-dir and files
Robin Gareus [Mon, 29 Jan 2018 21:29:52 +0000 (22:29 +0100)]
Prepare plugin-meta-data config-dir and files

6 years agoLuaInstance: prepare for 3 argument signal/slot callbacks
Robin Gareus [Mon, 29 Jan 2018 21:21:59 +0000 (22:21 +0100)]
LuaInstance: prepare for 3 argument signal/slot callbacks

6 years agoAdds support for building in Mac OS High Sierra
Chris Dennis [Wed, 10 Jan 2018 19:15:00 +0000 (14:15 -0500)]
Adds support for building in Mac OS High Sierra

6 years agoAdd icon for MIDI sysex transmit script
Robin Gareus [Sun, 28 Jan 2018 11:58:35 +0000 (12:58 +0100)]
Add icon for MIDI sysex transmit script

6 years agoFP8/16: Update Plugin List when Selection changes.
Robin Gareus [Sat, 27 Jan 2018 19:54:17 +0000 (20:54 +0100)]
FP8/16: Update Plugin List when Selection changes.

6 years agoFP8/16: Don't show Channelstrip as Plugin, use well-known API only
Robin Gareus [Sat, 27 Jan 2018 19:53:31 +0000 (20:53 +0100)]
FP8/16: Don't show Channelstrip as Plugin, use well-known API only

6 years agoEmit a single change when changing track selection in the mixer.
Robin Gareus [Sat, 27 Jan 2018 19:51:32 +0000 (20:51 +0100)]
Emit a single change when changing track selection in the mixer.

Previously changing track-selection emitted 2 "stripable_selection_changed"
events: select (nil); select (new).

This fixes an issue with the FaderPort ctrl surface when editing plugins:
Switching from one track to another follows selection, but if no track is
selected, the FP switches from "Edit Plugins" to "Track" mode.

6 years agoremove accidentally commited file
Robin Gareus [Sat, 27 Jan 2018 19:48:55 +0000 (20:48 +0100)]
remove accidentally commited file

6 years agoFix some small memory leak (libardour)
Robin Gareus [Sat, 27 Jan 2018 14:45:12 +0000 (15:45 +0100)]
Fix some small memory leak (libardour)

6 years agoFix some small memory leaks (GUI)
Robin Gareus [Sat, 27 Jan 2018 14:44:59 +0000 (15:44 +0100)]
Fix some small memory leaks (GUI)

6 years agoFix some clang warnings (argument with 'nonnull' attribute passed null)
Robin Gareus [Fri, 26 Jan 2018 12:56:19 +0000 (13:56 +0100)]
Fix some clang warnings (argument with 'nonnull' attribute passed null)

6 years agoAdd tooltip to markers so they can be found without zooming in.
Ben Loftis [Thu, 25 Jan 2018 14:20:25 +0000 (08:20 -0600)]
Add tooltip to markers so they can be found without zooming in.

6 years agoAccommodate newly introduced source(s) in our MSVC project (gtk2_ardour)
John Emmas [Wed, 17 Jan 2018 12:52:58 +0000 (12:52 +0000)]
Accommodate newly introduced source(s) in our MSVC project (gtk2_ardour)

6 years agoOSC: reorder /set_surface parameters to fit manual
Len Ovens [Tue, 23 Jan 2018 19:16:02 +0000 (11:16 -0800)]
OSC: reorder /set_surface parameters to fit manual
remove unused call

6 years agoOSC: Make sure observers are restarted if port changes
Len Ovens [Tue, 23 Jan 2018 03:34:19 +0000 (19:34 -0800)]
OSC: Make sure observers are restarted if port changes

6 years agoOSC: Allow Surface to set it's own receive port
Len Ovens [Tue, 23 Jan 2018 00:30:38 +0000 (16:30 -0800)]
OSC: Allow Surface to set it's own receive port

6 years agoOSC: allow each surface to set portmode for that IP.
Len Ovens [Tue, 16 Jan 2018 23:16:12 +0000 (15:16 -0800)]
OSC: allow each surface to set portmode for that IP.

6 years agoFix FP16 Solo (0x53 is mapped to encoder-press, 0x56 to loop)
Robin Gareus [Tue, 23 Jan 2018 18:00:18 +0000 (19:00 +0100)]
Fix FP16 Solo (0x53 is mapped to encoder-press, 0x56 to loop)

6 years agoUpdate Japanese translation
Hiroki Inagaki [Sat, 20 Jan 2018 19:28:01 +0000 (20:28 +0100)]
Update Japanese translation

6 years agoFix ffmpeg/ffprobe parser (sample/frame 30b087ab) - #7544
Robin Gareus [Sun, 21 Jan 2018 10:35:22 +0000 (11:35 +0100)]
Fix ffmpeg/ffprobe parser (sample/frame 30b087ab) - #7544

6 years agoUse "frame" for video-frames, fixes video-monitor state.
Robin Gareus [Sun, 21 Jan 2018 10:27:26 +0000 (11:27 +0100)]
Use "frame" for video-frames, fixes video-monitor state.

revert/amend/undo 30b087ab for video-related units

6 years agoFix Export-format timecode spec (frames: timecode frames)
Robin Gareus [Sun, 21 Jan 2018 10:00:57 +0000 (11:00 +0100)]
Fix Export-format timecode spec (frames: timecode frames)

undo/fix 30b087ab3d

6 years agoFix video preview request - #7544
Robin Gareus [Sun, 21 Jan 2018 09:50:40 +0000 (10:50 +0100)]
Fix video preview request - #7544

see also 2e9fcceb1e and 30b087ab3

6 years agoExplicit encoding for bindings html.
Robin Gareus [Wed, 17 Jan 2018 15:52:16 +0000 (16:52 +0100)]
Explicit encoding for bindings html.

6 years agoAdd Lua bindings to change Location/Maker names
Robin Gareus [Mon, 15 Jan 2018 16:25:53 +0000 (17:25 +0100)]
Add Lua bindings to change Location/Maker names

6 years agoOSC: Added feedback for /strip/hide
Len Ovens [Sun, 14 Jan 2018 21:06:37 +0000 (13:06 -0800)]
OSC: Added feedback for /strip/hide

6 years agoOSC: add /strip/hide
Len Ovens [Sun, 14 Jan 2018 16:42:13 +0000 (08:42 -0800)]
OSC: add /strip/hide

6 years agofix DSP load indicator color
Robin Gareus [Sun, 14 Jan 2018 18:17:11 +0000 (19:17 +0100)]
fix DSP load indicator color

6 years agoAdd Toolbar disk-space widget.
Robin Gareus [Sun, 14 Jan 2018 17:41:21 +0000 (18:41 +0100)]
Add Toolbar disk-space widget.

6 years agoSeparate DSP load indicator into generic gauge widget
Robin Gareus [Sun, 14 Jan 2018 16:38:49 +0000 (17:38 +0100)]
Separate DSP load indicator into generic gauge widget

6 years agoOSC: Add feedback for hidden strip
Len Ovens [Sat, 13 Jan 2018 16:41:58 +0000 (08:41 -0800)]
OSC: Add feedback for hidden strip

6 years agoOSC: add /select/hide
Len Ovens [Sat, 13 Jan 2018 15:58:37 +0000 (07:58 -0800)]
OSC: add /select/hide

6 years agoRefine 31f79489, de-duplicate AU I/O configurations
Robin Gareus [Fri, 12 Jan 2018 00:09:45 +0000 (01:09 +0100)]
Refine 31f79489, de-duplicate AU I/O configurations

6 years agoFix AU i/o busses accounting.
Robin Gareus [Thu, 11 Jan 2018 19:16:59 +0000 (20:16 +0100)]
Fix AU i/o busses accounting.

This fixes issues for synths with zero audio input, explicit default
stereo config and optional busses.