ardour/DOCUMENTATION/TODO

233 lines
6.8 KiB
Plaintext

ARDOUR TO-DO: $Id$
----------------------------------------------------------------------
ITEMS REQUIRED FOR 1.0
----------------------
* Automation
- must be able to apply a fade to a selected range
* Drag handles for region/xfade curves
* ensure I/O port is selected in connection dialog
* add a small buffer near the left edge of the editor canvas to
make mouse operations near that edge easier to get right
* context menus everywhere
- edit groups
- mix groups
- track lists
- region list
- click button
(miscellany)
* propagate name changes to equivalent regions in region list
* destroy region removes equivalent regions from region list
* fix edit group visibility toggle
META ITEMS
----------
* there must be a manual
POST 1.0 WORK
-------------
* make region state of a playlist be position,length,layer, and save
that for BoundsChange or Layer change.
* automation modes (from protools):
- relative trim
- etc.
* 2-step file expunge
* allow sends/inserts and perhaps plugins to be named
* popup a big panner
* mix groups (adding new kinds of relationships to the groups, as per
old ideas from tom pincince)
* add meter range control
* change meter tap point
* cassowary-based constraints for edit groups
* serializing the edit history (i have a plan for this now)
* gtk2 port
* like, totally rock, dude.
* make rulers reorderable
* set of useful click sounds
* use snapshot mechanism to provide persistent undo/redo
- needs better integration of automation state
into session state.
* duplicate-with-gap
* panner multichannel backend code
* select new port display when its created
* copy/paste io configurations
* Better temporal navigation
* new region via plugin.
* digital input trim.
* possibly allow metering max-level adjustment at run-time
* use multi-loop-take ala Samplitude/PT
* song mode autonames for locate points
intro, verse1, verse N, chorus, bridge, outro/tag
* different clock display modes:
elapsed
remaining
time since location start
time till location end
* handle missing audio sources when loading
* option/action to snap selection to zero crossings
* pitch shift?
- Some global solo routing buttons and a sine/noise generator to
test all the connections. Possibly a talkback input and
control. Pretty much like the equivalent strip on a analog
console.
WAITING FOR GTK+/gtkmm 2.0:
---------------------------
general gtkmmext::ui solution to delete_event in recursive Gtk::Main::run()
float<->ulong conversion in a GtkAdjustment (GTK2 uses doubles)
* fix the problems caused by range (float) limits on Locations.
figure out how to get frames/timebars to extend to max_frames.
UNDO ITEMS
----------
track height?
capture?
I/O connection state, etc.
BUGS
----
initial Tempo marker can be dragged
duplicate region names can be created automatically
THREAD QUESTIONS
----------------
- which thread should:
- change playlists on a diskstream?
- change diskstreams on a track? (we don't support that in the UI)
- can we reliably construct a copy of the RT state, instead of
using locks everywhere?
NOTES FROM THE MAILING LISTS
----------------------------
-- gerard --
Region gain has some bugs. They dissappear when trimming. Don't always
playback correctly.
I had some strange things with a chunk where the last region seemed to use
the audio file as a peakfile. It played back correctly, but it showed up
frames_per_peak too large.
-- gerard2 ---
Automation.
I see that automation editing is in the TODO. How about the whole deal:
Changing it during aplay. relative or absolute, latch (is that the word) or
momentary override etc
Is this for >1.0 ? It is not that important for me but maybe for some
folks...
Better metering configurability. Post/pre etc.
Gui interface consistency.
more keyboard shortcuts for f.i. (are they hard to add?):
-arrow keys to move selection from region to region
-seperate region. This one can be the same for split region, if there is
a range selected seperate, if not split.
Should playhead also snap to grid?
Adding/removing snapshots through snapshot pane.
I would prefer to move the pre and post roll adjustments to the options
menu, and have a start/end/duration of selection clocks.
A way to deal with misbehaving plugins. They shouldn't be able to freeze
ardour.
What is the current (and planned) edit-group functionality? It doesn't seem
to much.
-----
make use of transients a run-time option
panning for export
mute automation event
region length/end editor clocks don't modify position
should we allow N-channels regions to be inserted into non-N-channel routes?
auto-crossfades are unreliable/hard to predict/confusing
reset declick curves when doing a region copy (only if auto-crossfading?)
audio clock editing
- make drag work again
- use tick field
post fader plug/inserts get into a very inconsistent state wrt active/not active
mixer strip widths are not persistent across state save/restore
automation-read updates in mixer-strip in editor
don't initiate MIDI binding if there is no MMC control
export to audiofile
- exports tracks not marked for export (?)
- contains clicks/pops even with no SRC/dither (FIXED?)
timefx region length error (check back with audacity crew)
send gain control is clicky.
some regionview names don't seem sensitive to canvas events
splice mode needs to work correctly all the time, at the right times
removing a port then adding a new one can cause duplicate names
plugin automation buttons don't update from a plugin signal
how to handle multichannel selections
apparently selected location on startup of locations window, or
when creating new location from selection is *not* selected
source/region naming/region list display
LONG TERM CHECKING
------------------
RT-ness of all RT-thread STL usage
GUI DETAILS
-----------
Use mouse wheel events (button4/5)
Remove regions from region list
Some location window ops need dbl click, some don't
CHROME
------
make prompters look nicer still.
make ladspa plugin selector look nicer
don't popup "no group" when there are no groups (mixer strip).
fix bug in Gtkmmext with wrapping on Gtkmmext::ClickBox
make region editors look nicer
region editor audition button doesn't pop up after audition is finished
allow same color for all streamviews
AUDIO STREAM
------------
[ These are JACK TODO's ]
* need to ensure that cards like the Hammerfall are really set
to the correct sample rate when connected to an external
clock source.
* ::connect_to_session() should indicate a problem if the
sample rate is wrong ....
MIDI Machine Control
-----------------------
* handle stupid Mackie TC buttons
* send MMC rec-enable messages
* allow control (MMC/Local) selection to work
* make sure that MMC ID works
EDITOR, etc.
------------
* "use location to define selection"