90845af8fa
hopefully get dynamic tabbable menu state right this time
2016-02-22 15:31:22 -05:00
e2dfc10698
thicken up lines of close cross icon
2016-02-22 15:31:22 -05:00
1c41f75488
provide a sigc::signal to track display state changes for a Tabbable
2016-02-22 15:31:22 -05:00
308f6ed828
changes to get show/hide/attach/detach working
2016-02-22 15:31:22 -05:00
fd938d95bf
change/extend Tabbable API to allow for show/hide/attach/detach
2016-02-22 15:31:22 -05:00
8e14496919
use new CairoIcon to add a tab-close "button" to tabs
2016-02-22 15:31:22 -05:00
e026adf4a9
second part of: add new CairoWidget-derived class that does nothing but shown an ArdourIcon.
2016-02-22 15:31:22 -05:00
c06c2c29db
add new CairoWidget-derived class that does nothing but shown an ArdourIcon.
...
Somewhat necessary by placement of ArdourButton class in directory heirarchy. But these are also
much simpler
2016-02-22 15:31:22 -05:00
434ef34229
add tab-closing buttons to tabs.
...
Images are non-scalable, too big and ugly. Next commit ...
2016-02-22 15:31:22 -05:00
347ba94bcd
add ::make_visible() to Tabbable class
2016-02-22 15:31:22 -05:00
436706c8d4
remove debug output
2016-02-22 15:31:22 -05:00
e46b518319
classes derived from WindowProxy are responsible for their own window creation in ::set_state().
...
Fixes a crash reported by A.Prokoudine when opening a session with visible plugin GUIs
2016-02-22 15:31:22 -05:00
37fce09a18
widespread changes to get the new (oldArdour binding scheme to be used for keyboard accelerators
2016-02-22 15:31:22 -05:00
d84f655495
add suggestive tooltips for tabs; remove position argument for Tabbable since it isn't really usable
2016-02-22 15:31:21 -05:00
552e995297
save/restore tabbable state
2016-02-22 15:31:21 -05:00
9f0ea99fac
better way to switch to a tab
2016-02-22 15:31:21 -05:00
03b354a99e
make tabs reorderable
2016-02-22 15:31:21 -05:00
a5150d500d
when tearing off a tab, make the window be the same size as the allocation of the tab
2016-02-22 15:31:21 -05:00
9010262bed
first compilable version of tabbable design.
...
I would have loved to split this apart, but there are just so many interrelated changes,
it makes little sense and would be a huge effort that would break future git bisect
use because so many intermediate commits would not compile
2016-02-22 15:31:21 -05:00
85eee3b09d
compilable version of WindowProxy
2016-02-22 15:31:21 -05:00
a29f76c1c4
initial versions of Tabbable object
2016-02-22 15:31:21 -05:00
df05e97288
first version of Gtkmm2ext::WindowProxy
2016-02-22 15:31:21 -05:00
Adrian Knoth
6fa88273aa
Spelling correction patch from Debian
...
Patch taken (and forward-ported to HEAD) from
<https://anonscm.debian.org/cgit/pkg-multimedia/ardour.git/plain/debian/patches/0100-fix-typos.patch >
2016-02-22 15:13:01 -05:00
André Nusser
1afbdaff58
Fix compilation warnings. (libs part)
2016-02-22 15:11:02 -05:00
86d27a736c
better system for managing kbd focus after cmd-w closing a dialog.
...
Key, Button and Focus In events in the editor+mixer windows cause the respective window to be noted
as the window to which focus should return after a dialog is closed with cmd/ctrl-w
2016-02-22 14:03:55 -05:00
60c4b30b7e
manually revert most of previous commit related to dialog/main window focus management
2016-02-22 13:55:31 -05:00
3a08ac5e1f
os x: an initial attempt at fixing loss of keyboard focus after cmd-w to close dialog
2016-02-22 11:49:17 -05:00
30497db823
prepare for gcc6 rint() precision degradation
...
gcc6 returns a float for "rint ((float) val)"
2016-02-22 00:07:21 +01:00
f6fe87d63e
prevent some mess when automating control ports on midi synths
2016-02-21 22:19:08 +01:00
3cc4ee8029
alsa: allow environment variable ARDOUR_ALSA_DEVICE to identify a single, arbitrary ALSA PCM name as the only available/allowed device
2016-02-21 12:44:54 -05:00
2d18283379
make threaded waveview rendering a configure time option (enabled by default)
2016-02-21 12:34:10 -05:00
344cf05540
OS X: fix the handling of SUPER,HYPER,META (see code comment for more)
2016-02-21 10:48:35 -05:00
43d3b4656a
add an OOM check.
2016-02-20 20:47:13 +01:00
67d99a3c5b
help clang static analyzer
2016-02-20 20:36:58 +01:00
f519edbe8e
fix segfault in libardour unit-tests (possible crash in mackie sf)
2016-02-20 20:26:34 +01:00
ff427be0fa
add processor lookup by PBD::ID via session
...
In preparation for Lua bindings this completes the basic set of
Session object lookup: route, source, controllable, region, processor
2016-02-20 20:26:18 +01:00
318f3850de
third time lucky
2016-02-19 23:25:15 +01:00
452bca79eb
and now without typo
2016-02-19 23:19:19 +01:00
9633ea3b01
fix Windows OSC support
2016-02-19 23:16:38 +01:00
b0518fa2be
Revert "disable threaded waveform rendering for 4.7"
...
This reverts commit b0032adb44
.
2016-02-19 21:13:29 +01:00
b0032adb44
disable threaded waveform rendering for 4.7
2016-02-18 18:56:05 -05:00
c92e822332
remove HYPER,SUPER,META modifier masks from Keyboard::RelevantModifierMask so that modifier_state_equals() works on OS X
...
GTK on OS X adds META when Command is pressed even though it also uses MOD2 to indicate COMMAND. So Cmd-w was actually META-MOD2-w and modifier_state_equals(MOD2)
would fail. This should have nothing but good side effects
2016-02-18 09:44:50 -05:00
dd7649a409
add a static utility function (should really be in utils.cc and public) to show modifier state in english; use said function
2016-02-18 09:43:03 -05:00
ec708926fa
now with return value
2016-02-17 17:03:14 +01:00
5e50a7d6cf
allot to open OSX Finder with arbitrary paths
2016-02-17 16:29:25 +01:00
58f7a11287
Make sure that MSVC knows which version of 'ceil()' we want
...
(it doesn't have a version that understands 'framecnt_t')
2016-02-17 12:17:05 +00:00
f8bc9c66a5
OSC: remove "/session/loaded" message altogether, for testing on Win.
2016-02-16 16:06:39 -06:00
86edc1ccfe
Fill some more VST transport flags.
2016-02-16 15:33:12 -06:00
f30d1d6073
fix normalize + trim silence at end.
2016-02-16 22:24:01 +01:00
0ce4113dbb
prepare threshold for silence trim
2016-02-16 21:25:54 +01:00
31442cd63d
work-around case where metric is NULL in split cycles.
...
This really needs to be fixed on a higher level.
e.g Pluin::connect_and_run() needs to be passed the current time identical to
PluginInsert::connect_and_run()
2016-02-16 18:17:13 +01:00
cbdae78511
try to catch https://github.com/rncbc/synthv1/issues/1#issuecomment-183041991
...
(n_samples = 64 but Ardour sends midi-buffer with an event at 960)
some guesses as to why:
- split cycle for looping (nominal: 1024, cycle split:64)
- plugin uses _session.transport_frame() directly :(
(not latency compensated offset or looped position)
- "offset" is not taken into account for midi buffers
- tempo/metric change (metric iterator is wrong after loop)
2016-02-16 15:36:43 +01:00
c1910351a5
Revert "proper debug prints for Analyser"
...
This reverts commit 9a281963e1
.
audiographer cannot use symbols from libardour (cyclic dependency)
(only headers only are ok)
"DebugBits ExportAnalysis" symbol break windows and unit-test builds.
2016-02-16 15:13:12 +01:00
240daf95f5
re-bin analysis results to take silence striping into account.
2016-02-16 15:09:31 +01:00
a664fb703e
chunk data before analysis, prefer 8K
...
* consistent spectrum display for all reports (same binsize)
* improved performance (power of two)
2016-02-16 14:25:49 +01:00
c52854fd3d
Analysis: 1 sample slack (for resampling rounding)
2016-02-16 14:24:08 +01:00
a929b8b872
fix Export SRC buffer report:
...
the resampler is always fed with N channels, it won't output half channels
2016-02-16 14:00:31 +01:00
e18e765c75
Fix Analysis duration for added silence
2016-02-16 13:22:12 +01:00
9ab061c6cb
don't re-use variable names
2016-02-16 13:21:45 +01:00
9a281963e1
proper debug prints for Analyser
2016-02-16 13:21:28 +01:00
de94f3ce83
fix typo in previous commit
2016-02-15 17:29:54 -06:00
136f705af9
Defer session_loaded until AFTER lo_server_new.
...
This seems like the right thing to do, and -might- fix OSC on Windows.
2016-02-15 16:55:21 -06:00
1355d186cb
extend analysis spectral range to -120dB
2016-02-15 18:55:04 +01:00
e6ea35c3de
Add normalization gain factor to Export Analysis
2016-02-15 15:46:49 +01:00
f23bb163a8
Ensure export starts with a clean state
2016-02-14 13:23:45 +01:00
455f07d087
fix rare livelock in std::map thread_buffer_requests
...
During initial session load it's possible that two threads call
PBD::notify_event_loops_about_thread_creation() simultaneously
(in particular the process threads). This can lead to an
endless loop in stl_tree.h when assigning thread_buffer_requests[key]
Now we only have WriteLocks.. unless some better solution comes up a
Mutex will do.
2016-02-14 02:13:04 +01:00
820bd0fe51
and another typo in d442190b
2016-02-14 00:10:41 +01:00
09167d3e59
fix typos in d442190b
2016-02-14 00:02:00 +01:00
48532baaa7
remove C++11'isms from libptformat. back to C++98 compat.
2016-02-13 23:15:47 +01:00
d442190b8a
slightly improved windows post-export hook support.
2016-02-13 23:12:50 +01:00
73245c6217
some half-baked support for windows command-arg substitutions
2016-02-13 17:04:11 +01:00
fbbde01f25
Add preliminary PTX support for Protools 10 and 11
...
Signed-off-by: Damien Zammit <damien@zamaudio.com>
2016-02-13 09:50:52 +01:00
81a9f7a956
Unjumble the PT5 wav ordering in regions/tracks
...
by sorting alphanumerically and case insensitively
Signed-off-by: Damien Zammit <damien@zamaudio.com>
2016-02-13 09:50:52 +01:00
Julien ROGER
a3dd27c41b
Fix 6677: Post-export script reinterprets timestamp format placeholder giving incorrect filename
...
Due to localtime and its statically allocated buffer, time_struct variable is
set at construct time but its value changes over time due to subsequent calls to localtime
in ardour process. Replacing localtime by localtime_r fix the problem.
This also fix 6713: Name of Audio (timestamp) does not match with written Filename in CD-Cue file
2016-02-13 12:45:40 +10:00
108528b63d
amend d814acb
- SystemExec/Export debugging
2016-02-13 01:39:41 +01:00
d814acbb8f
add some debugging capability for users of SystemExec. Needs review.
2016-02-12 18:22:12 -06:00
4fdd03892d
add NULL check for VST audioMasterSizeWindow
2016-02-13 00:51:17 +01:00
4a9ffee486
Allow partial CairoWidget exposure
2016-02-12 22:57:46 +01:00
2bdb078b63
include timespan-option with export preset
2016-02-12 14:01:40 +01:00
258c816554
fix copy constructor.
2016-02-12 14:01:40 +01:00
52ebf94c1e
Class 'AudioGrapher::Analyser' needs to be exportable for building with MSVC
2016-02-12 12:31:24 +00:00
48fd05c391
Accommodate newly introduced source(s) in our MSVC project (audiographer)
2016-02-12 12:31:23 +00:00
fcf757139f
Accommodate newly introduced source(s) in our MSVC project (portaudio_backend)
2016-02-12 12:31:23 +00:00
3f43e5cd04
Remove no longer needed 'prolooks' source(s) from our MSVC projects (gtkmm2ext & gtk2_ardour)
2016-02-12 12:31:22 +00:00
50145a93e6
export analysis: include true-peak positions.
2016-02-12 12:42:51 +01:00
a60312cfea
vamp-true-peak: collect peak locations >= -1dBTP
2016-02-12 12:38:54 +01:00
4fd47182f2
Help clang static analyzer.
2016-02-11 23:12:20 +01:00
2c2002ee9c
Prepare for optional timespan name during export.
2016-02-11 20:58:05 +01:00
e6b06597b7
remove all traces of "prolooks" and related classes
2016-02-11 13:03:24 -05:00
2429308bac
Open URis with spaces.
2016-02-11 16:43:35 +01:00
f9e526dab8
tweak spectrum logscale
2016-02-11 16:09:34 +01:00
4b17bcb8b8
update export analyser for dBTP
2016-02-11 14:14:01 +01:00
d2fa4b3388
add dBTP Vamp plugin
2016-02-11 14:14:01 +01:00
148f2ab8e5
Add debugging output for WinMME midi device names
2016-02-11 12:15:07 +10:00
1499cd8670
Only build one version of the Portaudio backend that supports both blocking and callback API
2016-02-11 12:15:07 +10:00
85b4acc916
Change CairoWidget::get_active() to be const
2016-02-11 12:15:07 +10:00
830db39585
Implement new AudioBackend API in PA backend to choose between callback and blocking API
2016-02-11 12:15:07 +10:00
16835032ab
Add API to AudioBackend for choosing between portaudio blocking or callback API
2016-02-11 12:15:07 +10:00
d50a821374
Add a missing include from portaudio WINMME source file
...
Apparently this is now required by my version of gcc/mingw
2016-02-11 12:15:07 +10:00
b2cf028fcb
Implement MIDI device enumeration and latency offset/calibration in portaudio backend
2016-02-11 12:15:07 +10:00
6c10b31af1
only instantiate Analysis Processor if needed
2016-02-11 02:22:54 +01:00
df0f1b5ced
stereo waveform, prepare spectrum faceplate
2016-02-11 02:22:54 +01:00
b01485f61f
use short-term ebur128 histogram
2016-02-11 02:22:54 +01:00
837f8fac2b
make post-export analysis optional (default to enabled)
2016-02-10 22:35:01 +01:00
8bc7ff85fb
audiographer unit-test libs
2016-02-10 19:28:43 +01:00
d8b04d3124
cleanup: unhardcode spectrum size, logscale, whitespace fixes
2016-02-10 19:28:21 +01:00
4928d53f8d
Add VAMP SDK to audiographer deps.
2016-02-10 17:08:06 +01:00
e41296bf5d
Add loudness histogram Feature to the EBUr128 VAMP plugin
2016-02-10 15:11:45 +01:00
6c8a062be9
move export-analysis implementation into cc-file.
...
lib/libfftw3f.a(apiplan.o):apiplan.c:(.text+0x430): multiple definition of `fftwf_destroy_plan'
This is because static symbols in a .dll have no fixed address and
are mapped when loading the dll. Static functions in .exe do have a fixed
address.
With a header-only implementation the functions are provided
libardour.dll and ardour.exe
2016-02-10 15:11:45 +01:00
7c3d3031dc
Fix for undefined references to fftw lib when using gcc/mingw
2016-02-10 23:10:17 +10:00
dd431de07d
Add newly introduced source(s) to our MSVC project (audiographer)
2016-02-10 10:55:42 +00:00
7cb8b94d07
Add newly introduced source(s) to our MSVC project (libardour)
2016-02-10 10:54:44 +00:00
c1642fead8
Post-export Analysis
2016-02-10 03:01:05 +01:00
1ec78d26ee
Fix crash when aborting export.
...
The "Stop" button results in ExportHandlerPtr being destroyed.
This must not happen while it's in use -- in particular during
ExportHandler::start_timespan() and ExportHandler::finish_timespan()
2016-02-09 21:36:49 +01:00
c00a07e811
detailed export state, prepare resolution for #6512
...
(Post-processing step should announce itself during an export)
2016-02-09 13:15:54 +01:00
a1d2c13077
mackie: if device type is unknown, make -D mackie show that
2016-02-07 10:28:07 -05:00
80a678de28
handle Mackie control device type ID = 0x6 (Behringer X-Touch Compact)
2016-02-07 10:28:07 -05:00
d862c357b3
change faderport name
2016-02-06 16:42:34 -06:00
09921e1d76
Mackie: shift+marker needs to remove marker. moved session-range to shift+solo.
...
Originally cbbd87f50b in mixbus/master
2016-02-06 15:47:27 -05:00
5516e3bdd2
mackie: better fix for
2016-02-06 14:24:06 -05:00
3b1d1675de
mackie: stop crashes when switching to X-Touch Compact device
2016-02-05 17:59:29 -05:00
ff14f4d63c
Mackie Protocol: more fixes for aac6a5
2016-02-04 11:44:23 -06:00
8f7ae26a96
Fix reporting of compressor mode (Mixbus)
2016-02-04 11:41:17 -06:00
1b5931a028
Mackie Protocol: fixes for aac6a5
2016-02-04 11:17:45 -06:00
37d6265e13
mackie: try to improve logic and management of device profiles
2016-02-04 11:24:26 -05:00
d3081fd816
mackie: reverse previous profile editor changes; allow profile to define anything except plain and shift actions.
...
For Fn keys we also allow plain and shift definitions
2016-02-04 11:24:26 -05:00
aefa63aaa6
mackie: radically shrink down the profile editor
...
We only expose user control over Fn keys and only the shift modifier
2016-02-04 11:24:26 -05:00
23b1944bea
Mackie protocol: set-session-from-edit-range moved to shift+marker
2016-02-04 09:30:37 -06:00
aac6a59071
Mackie Protocol: Move buttons to more accurately reflect default mcp legends.
...
Modifiers are only modifiers (no actions directly on modifiers).
Punch indicators moved to Drop/Replace.
Added Save, Undo, Cancel (select none) and Enter (select all tracks)
Fixed click button.
Up&Down buttons now move the selected track up & down.
2016-02-03 18:11:21 -06:00
10a11492dd
mackie: fix gain control display
2016-02-03 17:27:14 -05:00
eeff08aac4
mackie: use bus shortname in send subview.
...
Also slightly tighten route name display
2016-02-03 17:27:01 -05:00
7f82e7769f
zero more stuff out when leaving subview mode
2016-02-03 17:25:28 -05:00
dc4daa892d
Mackie Protocol: Show dB values for Mixbus "Send" levels.
...
No sense rewriting it now, but the correct way to approach
this stuff is to pass in the control, and use
the appropriate one of: interface, internal, or user values.
in this case, get_user would have returned dB for both Ardour and Mixbus sends.
2016-02-03 13:48:56 -06:00
7d5671a411
mackie control: Fix crash when selecting Track on MIDI strip, don't create phase control if there is none.
2016-02-03 10:35:35 -08:00
9cce8d10a9
faderport: save+restore footswitch setting
2016-02-03 11:53:56 -05:00
57b9dab27c
manually revert ec8cf4e4
with an extra comment explaining the significance
2016-02-03 11:45:23 -05:00
dd05f1e257
Fix bug #5633 , Don't drop all midi bindings when a track is removed
...
Only drop the controllable that is being destroyed, not all of them.
2016-02-03 22:30:41 +10:00
07f8c04e2e
Add a newly introduced source file to our MSVC project (libardour)
2016-02-03 10:14:48 +00:00
0ddbf665d8
generic MIDI: if a CC is bound to a toggled controllable, toggle the controllable only when the incoming CC value > 0x40
...
See comment in code for more details
2016-02-02 22:28:36 -05:00
b4a9bf5878
Mackie Control: Save old bank before we change it to new.
2016-02-02 18:41:49 -08:00
2367240735
fix mistaken logic for Route::MuteControllable::set_value()
2016-02-02 19:00:53 -05:00
fea89a7f9b
fix compiler warning
2016-02-02 18:30:51 -05:00
8df1baa659
Fix for previous commit
2016-02-02 16:14:00 -06:00
ea08354c17
fix for knob scaling
2016-02-02 15:47:05 -06:00
2cb3343eec
when looking up controllables via descriptors (e.g. generic MIDI control) use the new "well-known" route controllables
2016-02-02 16:42:50 -05:00
99a53ed7f0
Mackie Control: Fix Flip mode getting confused if subview is not sends.
2016-02-02 09:38:55 -08:00
7229dccb3b
Mackie Control: Shift/Select now toggles individual channels within group. Makes this the same as other grouped controls.
2016-02-02 09:03:27 -08:00
a7775559c1
Mackie Control: remove Shift/select zeros fader.
2016-02-02 08:55:36 -08:00
abb151b8b0
Mackie Control: Moved encoder fine modifier from Control to Shift (Shift will be only modifier)
2016-02-02 08:49:16 -08:00
9b1a150dd9
mackie: update fader+pot when changing flip status
2016-02-02 11:17:38 -05:00