~ubuntu-branches/ubuntu/utopic/ardour3/utopic

« back to all changes in this revision

Viewing changes to libs/surfaces/mackie/TODO

  • Committer: Package Import Robot
  • Author(s): Felipe Sateler
  • Date: 2013-09-21 19:05:02 UTC
  • Revision ID: package-import@ubuntu.com-20130921190502-8gsftrku6jnzhd7v
Tags: upstream-3.4~dfsg
ImportĀ upstreamĀ versionĀ 3.4~dfsg

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
* implement handle_port_inactive properly
 
2
* two bcf doesn't work
 
3
* remappable buttons (OSC or Surfax?)
 
4
* 7/1 configurable to 8
 
5
* need an object that can encapsulate different port types, ie BCF vs MCU. Not at the surface level.
 
6
* finish button implementations.
 
7
* concurrency for bank switching? And make sure "old" events aren't sent to "new" faders
 
8
* TODOs in code
 
9
* removal of a route results in a strip that isn't dead, but doesn't have any effect on the session
 
10
* use i18n. see string_compose
 
11
 
 
12
MCU
 
13
---
 
14
* if mackie wheel moves too fast, it's ignored.
 
15
* gain/panner display in second line
 
16
* metering on second line
 
17
* per-strip signal led
 
18
* midi bandwidth?
 
19
* Zoom buttons, from Jean-Martin Barbut. In fact I'm a bit desappointed with those functions, because I was used
 
20
        to use the 4 "N-E-S-W" buttons to zoom in and out with horizontal
 
21
        buttons and zoom in/out on track height with vertical buttons. That is
 
22
        with the zoom button in. with the zoom button off, it selects tracks
 
23
        with vertical buttons and selects regions with horizontal buttons. This
 
24
        was quite useful. The fact that the zoom button switches the wheel to
 
25
        zoom is fine, but it would be great to also have the track/region
 
26
        selection and the track height available from those buttons. I.e : you
 
27
        select a track with the vertical arrows and you increase/decrease the
 
28
        eight of the track with the zoom btn on. This combined with the region
 
29
        selection allows to zoom in a region (vertical and horizontal zoom) very
 
30
        easily.
 
31
 
 
32
 
 
33
Later
 
34
-----
 
35
* how long can UI signal callbacks take to execute? What happens if they block?
 
36
  where ENSURE_CORRECT_THREAD is a macro that is modelled on ENSURE_GUI_THREAD
 
37
  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.
 
38
* alsa/sequencer ports unstable. possibly problems with use of ::poll
 
39
* use glib::Timer instead of mine. Actually don't because it's not very useable.
 
40
* crash when mmc port set to mcu?
 
41
* remove commented couts
 
42
* Perhaps MackieControlProtocol shouldn't implement MackieButtonHandler
 
43
* Need a HostAdapter class to encapsulate ardour calls
 
44
* talk to route plugins
 
45
* check for excessiveness (ie too many events making other subsystems work too hard)
 
46
* Queueing of writes?
 
47
* Generic surface code to common location
 
48
* bulk remote id changes cause too many surface updates. use Config->remote_model.
 
49
* which bank switching - overlap or dead faders? Option?
 
50
* signals for buttons?
 
51
* MackieControlProtocol in namespace Mackie?
 
52
* power-cycling of surface. fd_midiport doesn't close.
 
53
* mix busses and/or a "bus-only" bank/mode
 
54
* what about surfaces like Mackie C4 and BCR2000?
 
55
 
 
56
UI integration
 
57
--------------
 
58
 
 
59
* maybe use current snap state for jog wheel and ffwd/rew
 
60
* Some indication on the UI of currently bank-switched-in routes?
 
61
  Useful for surfaces that don't have a scribble strip.
 
62
 
 
63
Bugs
 
64
----
 
65
* when using alsa/sequencer, some midi events intended for mcu port end up being
 
66
  read by the seq port.
 
67
* MIDI::Port::type() returns _type, which is undefined. It might be in the descriptor
 
68
* auditioner doesn't connect to master 1 and master 2 - it loses the spaces.