Commit graph

20512 commits

Author SHA1 Message Date
nick_m
9eeccf0c17 Tempo ramps - port audio unit and midi clock slave.
- untested.
2016-05-27 23:38:09 +10:00
nick_m
2d649ceac1 Tempo ramps - get tests to comile again. 2016-05-27 23:38:09 +10:00
nick_m
af07762f98 Tempo ramps - play nicely with legacy sessions. 2016-05-27 23:38:09 +10:00
nick_m
6dac0e0f14 Fis inability to make the first tempo section constant tempo. 2016-05-27 23:38:09 +10:00
nick_m
dbfe991cd8 Tempo ramps - fix changing from const to ramp in the gui.
- also fixes some midi mouse over problems
	- start using replacements for frames_per_bar() frames_per_beat() etc.
2016-05-27 23:38:09 +10:00
nick_m
0d0e458dde tempo ramps - fix dumb iterator error. thanks robin. 2016-05-27 23:38:09 +10:00
nick_m
6cb752dc15 Tempo ramps - locking debugging. 2016-05-27 23:38:09 +10:00
nick_m
7fc3b0c34c Initial stab at tempo ramps.
Replaces the list of points in TempoMap with TempoSection functions, which
compute tempo-at or tick-at time relative to tempo section start.
TempoMap consults them additively to determine things like bbt_time(),
frame_time() get_grid() etc.
This has a marked effect on scrolling speed along with the code simplification
in the places it has been attempted.

Several things are broken here.
Currently every ramp except the last one is an exponential ramp. this may
be simple to fix :).
Mouse-over midi grid doesn't match mouse click grid. should also be simple.

Many things seem to work, but their accuracy should be in question until
each area has been addressed.
2016-05-27 23:38:09 +10:00
Robin Gareus
94187e66a2 add a test-sequence for polyphonic pressure 2016-05-27 12:12:00 +02:00
Robin Gareus
56471fd352 ensure that amp/fader is present on every route 2016-05-26 15:42:33 +02:00
Robin Gareus
00967a1982 take read-lock when saving processor order 2016-05-26 15:05:06 +02:00
Robin Gareus
eadc2ca88a fix maths thinko 2016-05-26 10:44:13 +02:00
Robin Gareus
602344f0c5 ticks are not affected by metrum 2016-05-26 02:22:10 +02:00
Robin Gareus
d6d5903a24 fix Audio Unit BBT 2016-05-26 02:20:32 +02:00
Robin Gareus
9678be9b6a fix clang compile 2016-05-26 01:52:34 +02:00
Robin Gareus
cf6f9627e4 update VST audioMasterGetTime
* don't use a static struct. this fixes a concurrency issue with flags
  and valid values
* send kVstTransportChanged IFF there is an actual change
* set system time
* send loop location
2016-05-26 01:04:43 +02:00
Robin Gareus
1d48648a73 fix timecode update after locate.
Various session rt-events set "_send_timecode_update" to true,
but at the same time queue post-transport-work.

The timecode-update is generated, but due to pending transport work
session->silent() is true and the timecode was never sent.
2016-05-25 19:20:09 +02:00
Robin Gareus
ad7295f5e1 use updated API from prev. commit 2016-05-25 17:59:28 +02:00
Robin Gareus
6c502b8315 allow to configure transient detection sensitivity
NB. this does not yet re-analyze regions when the config changes
and is hence also not [yet] exposed in the GUI.
2016-05-25 17:52:50 +02:00
Robin Gareus
5550eebe2f fix MTC alignment 2016-05-25 17:13:09 +02:00
Robin Gareus
f34722bf49 treat different normalization settings as different formats 2016-05-25 14:24:13 +02:00
Robin Gareus
80cc70966c missing local export config is not an error 2016-05-25 13:56:11 +02:00
Robin Gareus
925501c851 don't clear export-channel selection when switching presets 2016-05-25 13:53:21 +02:00
Robin Gareus
4cd82846b7 fix script button sensitivity 2016-05-25 03:17:53 +02:00
Robin Gareus
cec449871e fix region gain via range tool
Moving the mouse over another region's gain line changed
clicked_regionview.  clicked_regionview is used along with range-time
when initiating an AutomationRangeDrag.
2016-05-25 02:46:57 +02:00
Robin Gareus
b487954722 fix menu order: consistent for region and range bounce 2016-05-25 02:28:41 +02:00
Robin Gareus
f42fc3e45d hide Freesound tab (until it gets fixed) 2016-05-24 22:45:47 +02:00
Robin Gareus
cab6ae7137 backend check for rec-safe (only allow to lock if not armed) 2016-05-24 21:31:10 +02:00
Robin Gareus
ac7df69b49 rec-safe GUI 2016-05-24 21:30:33 +02:00
Robin Gareus
cfee8ac852 fix UI wire display to not coalesce views for non-linear i/o. 2016-05-24 18:18:26 +02:00
Robin Gareus
a525055ce0 additional in-place check 2016-05-24 18:04:29 +02:00
Robin Gareus
1f17784ac5 fix potential undefined DnD behavior for external drags
dragging from the tree-view (e.g. favorite sidebar or plugin-manager)
will not set _drag_source.
drag-motion may wrongly interpret it as "re-order".
2016-05-24 17:58:24 +02:00
Robin Gareus
2074dbdbe2 freeze thread is not detached and needs to be joined 2016-05-24 03:33:11 +02:00
Robin Gareus
7aa85887da more inter-thread progress fixes; slight change of semantics:
Background thread now *must* set "done" as last step. (they already do
since various error conditions don't result in "done")

This fixes a race: background thread Session::write_one_track() sets "done"
to true. Editor::freeze_route () continues, sets current_interthread_info
to NULL. thread continues and tries to set current_interthread_info.done
before terminating -> Crash.

This also ensures that singleton threads created with
"pthread_create_and_store" remain unique.
2016-05-24 03:33:08 +02:00
Robin Gareus
cd5cd2f8f2 cont'd work & fix bug introduced in 03660573e
not every code path using InterthreadProgressWindow unsets cancel
after creating the Window.
2016-05-24 03:33:02 +02:00
Robin Gareus
6605b52c17 centralize rec-en sensitivity & prepare for rec-safe 2016-05-24 03:01:27 +02:00
Robin Gareus
f683f534a4 vamp API/ABI uses gcc4/5 specific C++ :( 2016-05-24 00:02:53 +02:00
Robin Gareus
491d183c78 lua script to remove all unknown processors 2016-05-23 22:27:09 +02:00
Robin Gareus
207d9c81db some more route related lua bindings 2016-05-23 21:55:49 +02:00
Robin Gareus
455d4683f6 more harrison packaging 2016-05-23 16:46:08 +02:00
Robin Gareus
bc05c56fba add missing include 2016-05-23 03:50:43 +02:00
Robin Gareus
2b53558e66 remove misspelled unused define 2016-05-23 02:29:55 +02:00
Robin Gareus
1cf6661196 add a lua high/low pass filter with configurable slope 2016-05-23 00:43:55 +02:00
Robin Gareus
f03252cf88 possible fix or workaround[?] for pt track-name encoding 2016-05-23 00:05:02 +02:00
Robin Gareus
fd56c33f20 import audio/midi at "session start by default
Too many users report they import their first tracks and can't find them.

Previous default was "at file timestamp". If a file has no timestamp,
the import dialog shows "00:00:00:00" but in absence of a timestamp,
Editor::add_sources() first checks target tracks and adds add it after
the last region, then falls back to use preferred edit position as
insert point.

In the rare case where a file has timestamps it may show up a few hours
in the future.

conclusion: import-at-timestamp is not a good default.
2016-05-22 22:13:03 +02:00
Robin Gareus
afc1186759 NO-OP indent 2016-05-22 19:36:54 +02:00
Robin Gareus
1b3b42403b overhaul region/range spectrum analysis 2016-05-22 19:33:00 +02:00
Robin Gareus
ef365d0310 tooltips for export analysis -- russian-fraction lost challenge :) 2016-05-22 19:33:00 +02:00
John Emmas
39ba60aaef Make sure MSVC knows which version of 'floor()' we want 2016-05-22 15:53:16 +01:00
Robin Gareus
03660573e2 fix import-thread SNAFU
* pressing Esc or WM close button did not cancel import thread
 * proper Abort does not wait for import thread either

It was possible to launch a 2nd (and Nth) import thread, all sharing
the Editor's ImportStatus data-structure, all having the same
registered thread-name and same thread-pool name.  Plenty of room for
crashes.
2016-05-21 23:30:11 +02:00