13
0
Commit Graph

9370 Commits

Author SHA1 Message Date
e1ea14f10a faderport: handle mute for monitor out by using monitor processor ops; try to blink mute button when cut-all is in effect.
Still some logic bugs when switching between master, monitor and other
2015-11-25 17:20:00 -05:00
9cbab4070f faderport: fix odd interaction when selecting master-then-monitor or monitor-then-master and toggling back 2015-11-25 16:55:14 -05:00
1450fc07c1 faderport: fix odd interaction when selecting master-then-monitor or monitor-then-master and toggling back 2015-11-25 16:51:53 -05:00
d53993fd83 faderport: output button is a toggle between master (or monitor) and currently used route 2015-11-25 16:47:20 -05:00
104ec39b50 faderport: enable "Output" button to select master out (or, with Shift, monitor out if it exists) as the target route 2015-11-25 16:34:11 -05:00
487ada6630 handle encoder changes. shift+knob = input trim. ToDo: panner control 2015-11-25 14:52:58 -06:00
4e014da61a cruft removal from faderport code 2015-11-25 13:37:00 -05:00
dd6cbac20e faderport: implement fader support 2015-11-25 13:37:00 -05:00
0189b1eae9 restore measured Insert latency
(XML underscore vs dash)
2015-11-25 19:09:23 +01:00
fe06e3b7e8 faderport: track GUI selection, use first selected route; implement mute, solo, rec 2015-11-25 12:38:22 -05:00
68da5a1402 faderport: put back the working version of operations.cc 2015-11-25 07:35:50 -05:00
3ded5fc3f6 stub file to enable nightly builds 2015-11-24 23:37:49 -06:00
000b11dc4d faderport: more global button functions added 2015-11-24 23:41:10 -05:00
2e3721ecf4 add goto_zero() function for BasicUI 2015-11-24 23:40:54 -05:00
7ae380c7f6 faderport: more interesting behaviour for the play button (locate to last start if pressed while rolling, then keep rolling) 2015-11-24 23:31:29 -05:00
9c64d63ebb clarify a DEBUG_TRACE remark 2015-11-24 23:29:03 -05:00
e7a3a5ab9c faderport: make loop, prev marker, next marker and marker buttons do stuff 2015-11-24 23:27:55 -05:00
35577f439d add debug "bits" for FaderPort 2015-11-24 23:20:39 -05:00
2ea4d5c7b5 faderport: allow forcing LED state for use in ::all_lights_out() 2015-11-24 23:13:02 -05:00
34d847e060 faderport: fix modifiers for rewind, stop, undo etc ; listen to session transport signals and display state with button LEDs; add blinking 2015-11-24 23:06:19 -05:00
3a86b386fa fadeport: restructure button info actions to allow modifiers (shift, rewind, stop) and set up undo and shift-undo (redo) 2015-11-24 22:32:40 -05:00
7c8cc3cfa9 give the faderport its own thread and event loop, rather than riding on the back of the MIDI UI thread in libardour 2015-11-24 21:41:44 -05:00
8765359db2 faderport: after connecting, turn off all lights, then party with them, then turn them all off 2015-11-24 21:10:22 -05:00
84ebad120e add some faderport infrastructure for button handling, and bind up the transport functions to their obvious methods 2015-11-24 21:02:18 -05:00
9106512000 namespace and filename cleanup 2015-11-24 20:12:12 -05:00
71520c7432 Prevent crash at session-close when analysing.
The Analyser only holds a weak-pointer the the Source,
session-destruction frees the actual Source, which is fatal for any
ongoing audio analysis.


This fix simply waits for the current ongoing analysis to complete,
ideally TransientDetector::run, EBUr128Analysis::run, OnsetDetector::run
and AudioAnalyser::analyse could be interrupted.

Alternate option: cancel the Analyser::work thread (and re-create with
the every session).
2015-11-25 00:56:05 +01:00
ff62cec27d remove debugging output 2015-11-24 18:20:24 -05:00
b280301a65 create data structure to handle the fact that faderport firmware 1.38 uses different button IDs for input and output (!!!) 2015-11-24 18:20:07 -05:00
a15cf9f0b3 get faderport i/o working, basics of identifying control activity 2015-11-24 18:00:11 -05:00
2f1cdd3ffe rough-in for faderport protocol backend 2015-11-24 14:18:14 -06:00
bfe92c5b4f prevent concurrent peak-file init.
When embedding external files. the same file is queued twice for peak-file
generation. Since there are two  peak_thread_work threas in SourceFactory,
this can lead to inconsistent/missing peaks.


TODO: fix the actual cause, duplicate call to  setup_peakfile():

#0  ARDOUR::SourceFactory::setup_peakfile (s=..., async=true) at ../libs/ardour/source_factory.cc:116
#1  0x00007ffff6c2552f in ARDOUR::SourceFactory::createExternal (type=..., s=..., path="/tmp/CB_bass_Track08.wav", chn=0, flags=(unknown: 0), announce=true, defer_peaks=true)
    at ../libs/ardour/source_factory.cc:254
#2  0x0000000000886f50 in Editor::embed_sndfiles (this=0x3810340, paths=std::vector of length 1, capacity 1 = {...}, multifile=false, check_sample_rate=@0x7fffffffc2df: true,
        disposition=Editing::ImportDistinctFiles, mode=Editing::ImportAsTrack, pos=@0x7fffffffc458: -1, target_regions=1, target_tracks=-1, track=..., instrument=...)
    at ../gtk2_ardour/editor_audio_import.cc:630
#3  0x0000000000885c7c in Editor::do_embed (this=0x3810340, paths=std::vector of length 1, capacity 1 = {...}, import_as=Editing::ImportDistinctFiles, mode=Editing::ImportAsTrack,
        pos=@0x7fffffffc458: -1, instrument=...) at ../gtk2_ardour/editor_audio_import.cc:414
#4  0x0000000000e93aeb in SoundFileOmega::do_something (this=0x490f530, action=-5) at ../gtk2_ardour/sfdb_ui.cc:1983



#0  ARDOUR::SourceFactory::setup_peakfile (s=..., async=true) at ../libs/ardour/source_factory.cc:116
#1  0x0000000000888954 in Editor::add_sources (this=0x3810340, paths=std::vector of length 1, capacity 1 = {...}, sources=std::vector of length 1, capacity 1 = {...},
        pos=@0x7fffffffc458: 0, disposition=Editing::ImportDistinctFiles, mode=Editing::ImportAsTrack, target_regions=1, target_tracks=-1, track=..., instrument=...)
    at ../gtk2_ardour/editor_audio_import.cc:883
#2  0x0000000000887131 in Editor::embed_sndfiles (this=0x3810340, paths=std::vector of length 1, capacity 1 = {...}, multifile=false, check_sample_rate=@0x7fffffffc2df: true,
        disposition=Editing::ImportDistinctFiles, mode=Editing::ImportAsTrack, pos=@0x7fffffffc458: 0, target_regions=1, target_tracks=-1, track=..., instrument=...)
    at ../gtk2_ardour/editor_audio_import.cc:653
#3  0x0000000000885c7c in Editor::do_embed (this=0x3810340, paths=std::vector of length 1, capacity 1 = {...}, import_as=Editing::ImportDistinctFiles, mode=Editing::ImportAsTrack,
        pos=@0x7fffffffc458: 0, instrument=...) at ../gtk2_ardour/editor_audio_import.cc:414
#4  0x0000000000e93aeb in SoundFileOmega::do_something (this=0x490f530, action=-5) at ../gtk2_ardour/sfdb_ui.cc:1983
2015-11-24 18:58:11 +01:00
6d08797297 update configure time tests and code to use libsndfile 1.0.26's version of the R64 auto-downgrade-to-WAV code 2015-11-24 08:45:10 -05:00
3c9b71b50e allow use of (N)RPN messages in generic MIDI binding maps (UNTESTED) 2015-11-23 12:27:51 -05:00
3095cbc4f9 more corrections for libmidi++ (N)RPN API 2015-11-23 12:27:51 -05:00
5f7784e4f2 change API for libmidi++ RPN-related signals to be more useful 2015-11-23 11:49:08 -05:00
14fe7a0ae8 add (N)RPN handling to libmidi++ 2015-11-23 10:44:40 -05:00
Nils Philippsen
e25ddc39f8 make copies of global lists before extending
Not doing so can make source or object files appear multiple times in
the list of files to be compiled or linked, e.g. when doing './waf build
install', subsequently leading to linker errors.
2015-11-23 08:43:19 -05:00
8a26e561c5 cont'd 20262abe (keep all playlists) 2015-11-21 22:45:26 +01:00
20262abe7f prepare "delete all playlists" cleanup option 2015-11-21 21:11:45 +01:00
65d3f6523f fix playlist refcount on track un-freeze. 2015-11-21 18:36:05 +01:00
6b79bd5e42 remove cruft 2015-11-21 11:09:51 +01:00
619727ef73 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.
2015-11-20 22:58:00 +01:00
4c04e8028a add API to read snapshot name from instant.xml 2015-11-20 03:22:41 +01:00
c4084932fa remember in-use snapshot/session name in instant.xml 2015-11-20 03:22:41 +01:00
489622bdb6 remove cruft 2015-11-20 03:22:41 +01:00
ca381a908e provide user preference for pre-roll 2015-11-19 16:56:09 -06:00
ceab8cf313 remove debug message 2015-11-19 17:24:00 +01:00
a5b2965cf5 line-wrap fatal message (that's not done automatically) 2015-11-19 17:04:02 +01:00
03518b90a2 allow to rename the session root folder - fixes #6557 2015-11-19 16:11:59 +01:00
07b2518979 Fix windows build when using pthreads-win32 library 2015-11-19 20:54:38 +10:00