13
0
Commit Graph

9950 Commits

Author SHA1 Message Date
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