13
0
livetrax/libs/surfaces/mackie/TODO

45 lines
1.7 KiB
Plaintext
Raw Normal View History

* 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.
* occasional hang on startup. deadlock?
* 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
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
* timecode & 55 char displays
* midi bandwidth
Bugs
----
* get_state isn't called on deactivate
* close existing and load other session doesn't start control surface
* set_state is called twice from the control_manager
* 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