summaryrefslogtreecommitdiff
path: root/libs/surfaces/mackie/TODO
blob: 8e7e795acd2d393dfab15b37b2d08b62fa3a7575 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
* how long can UI signal callbacks take to execute? What happens if they block?
  where ENSURE_CORRECT_THREAD is a macro that is modelled on ENSURE_GUI_THREAD
  if the handler is not called in the "correct thread", it will use a pseudo-RT-safe-enough technique to get the correct thread to recall "handler" later on, and return.
  
* finish button mapping
* discuss button mapping for Ardour
* concurrency for bank switching? And make sure "old" events aren't sent to "new" faders
* concurrency in write( bytes ). Queueing?
* Are remote_ids supposed to be 1-based or 0-based?
* TODOs in code
* handle remote_control_id changed signal from Route.
* handle removal of route. Need another session signal?
* Some indication on the UI of remote_ids?
  Useful for surfaces that don't have a scribble strip.
* use i18n. see string_compose
* MackieControlProtocol in namespace Mackie?
* Generic surface code to common location
* power-cycling of surface. fd_midiport doesn't close.
* remove couts
* jog with transport rolling doesn't work properly
* docs in manual

Later
-----
* which bank switching - overlap or dead faders? Option?
* signals for buttons?

Actual Mackie
-------------
* docs claim that unit will send a host query on init.
* test Mackie surface object. Apparently led rings don't work. Stereo busses?
* timecode & 55 char displays
* midi bandwidth

Bugs
----

* get_state isn't called on deactivate
* routes "forget" their remote_id between session save and the next session load
* definitely something wrong with remote_id assignment on session create
  (master strip assigned 0).
* gui enables record for tracks with no inputs