[Audacity-devel] Feature freeze todo list
A free multi-track audio editor and recorder
Brought to you by:
aosiniao
From: Juhana S. <ko...@ni...> - 2003-06-13 06:47:31
|
Hello. I have compiled this list of the features suggested to 1.2. Mostly I have copied texts from the mails posted here but have not included author names. James Crook mailed to me months ago privately, and his suggestions can be found here too. When I comment the copied suggestions I place my text between brackets [ and ]. When the freeze goes on, we implement the features in this list, polish the existing features, and fix the bugs. No new features are added to the list after the freeze. This way people are forced to take tasks from this list and not spend time in testing out some new features. Sounds ok to me; how about you? -*- 1. I suggest the following rules for save and export: -Save means saving the whole project or the selected tracks to a project file; no mixing -Export means playing the project to a file or files (when each track goes to separate file) Currently we are missing the "play to file" as the export mixes only the selected tracks, that is, it uses the selection properties for the track selection, and not the play properties such as mute and solo. In any case, the current situation is very bad (I already produced wrong mixes): (i) export depends on what tracks are selected, (ii) making selections is difficult and selections are very fragile. Of course, we could add "play to file" and add a warning sign to export: "use at your own risk". :-/ 2. A bars/beats time ruler and snap-to bars/beats. 3. A 'save as' or 'export as' dialog that allows export to all of the formats we support, including flac/ogg/mp3/etc., with different bitrates. The code could be smart enough to know how many tracks the saving operation would apply to. If more than one (or one stereo linked), it could refrain from listing the formats that can only handle one or two channels. I was hoping we could have something like GIMP has. 4. Single button/key that removes DC bias and amplifies to (configurable) 75 % of full scale, without prompting for amplification factor. [ I would leave this to later when the plug-in handling is better. But we could have a bias parameter per track, next to the track volume fader. The formula would be "out = volume*in + bias". As the waveform display already seems to compute RMS values, one such a RMS value could be displayed. User then could adjust the bias manually. ] 5. One-click preview for 'cut selection'. Plays (configurable) 3 seconds around the selection, _excluding_ the selection itself. [ We also need configuration for the one second play around pointer. We could add PlayPlayRegionList() routine similar to PlayPlayRegion() but which plays multiple regions without interrupts in the audio. How difficult it is to get uninterrupted play from outside of engine? ] 6. The zoom-toggle button that switches between two zoom levels. [ We could add two radio buttons and one standard button to toolbar: <Z1, level1 select>, <Z2, level2 select>, and <ZS, zoom set>. The set button would assign the current zoom level to the selected button. Initially the zoom level memories would be empty, and only press of <ZS> will change their values, i.e., user could change the zoom in anyway but he would get the memorized zoom value by clicking the <Z1> and <Z2> buttons. ] 7. Resize window to a larger size, including to full screen, also does a fit-to-window if we were fitted to window before the resize. [ Maybe post 1.2 as we also need multiple projects in the same window feature: either by (i) subwindows inside the main window, a common toolbars, (ii) no subwindows but the project is technically behind a pointer which can be changed from a "projects" menu, (iii) different projects are in tabbed windows, as commonly used in 3D graphics software. Tabbed windows could also contain preferences/controls for Audacity and for all plug-ins. That requires a way to build the tab pages on-the-fly. Certainly post-1.2 stuff. ] 8. Upgrade of cursors and tool-button-bitmaps so that cursors and button bitmaps match (on platforms where this is possible). 9. Some fine tuning of colours/bitmaps - this needs discussion :-). One example here: should the gain tooltips be the same shade as other tooltips or not? 10. Window resizing handle (bottom right corner) in windows [ Do you mean "in MS Windows"? This could be wxWindows issue as I'm able to resize the window. ] 11. More built in code for automated testing, not sure exactly what, ideas for how to do this would be welcome. [ It is more like continuous research job. Leave to post-1.2 version. ] 12. Related to this, a self-image-capture class. This puts the gui through its paces, capturing .pngs of toolbars, sliders, dialogs according to an external script file. This makes updating the images in the documentation much easier. [ Third party screen capture program which accepts remote commands via a named pipe, say. Audacity would then have a way to send one command only and a way to send commands repeatedly (n times per minute). ] 13. Half a dozen nyquist scripts, annotated and explained in the Audacity documentation. Nyquist looks an incredibly powerful feature, but I haven't a clue how to do some of the simplest things things with it. [ Continuous job. Leave it post-1.2. ] 14. Zooming wavetracks in the Y axis (amplitude) would be really nice; especially when you are using the drawing tool to hand modify a waveform. [ We need both the amplitude pan and the amplitude zoom. Later or now the routines can be used to implement automatic "fit to display" so that the amplitude pan and zoom values are automatically adjusted for having the waveform is fully visible. Pan and zoom could be locked to a fixed values, of course. ] 15. A function to export all tracks as separate wave files all at once. 16. A master gain control. 17. Track label could be changed to look like what is in commercial multitrack software. More compact, that is. 18. Timed recording. [ A dialog similar to the undo dialog containing the start times and the lengths of the recordings. Each recording goes to its own track. ] 19. Vertical resizing of tracks. [ Resizing all tracks together is what I want at minimum. Collapse of tracks and more complex operations could be post-1.2 in my opinon. ] 20. The keyboard layout for the release version, as well as at least one alternative. [ We should remember both left and right handed people. ] 21. In the Timeshift-tool mode I propose making [ctrl+mb1] do "Align track to cursor". Since they're only one clip per track, simply clicking anywhere in to the track should perform that function. Only the Selector tool can set the cursor, right? [ Checking the mouse button operations through should be done. Multitool should be considered as a base for the default mode. Some operations would work always, like making a selection. Then various tools would change function of some of the mouse buttons. Without the multitool the Audacity is very annoying to use, IMHO. ] 22. Time scrollbar < and > buttons do not work after 16 (say) zoom steps, e.g., with projects larger than 30 minutes of audio. 23. When drag selecting the tracks out of track window, the window should scroll and reveal more tracks. 24. After cut, the view is not at the cut point (if selection was 4 seconds, the view is 4 seconds forward from the cut point). 25. Editable marker system. What key would you suggest to "Save the Selection" then? [ What EMS would be and how "save the selection" relates to it? ] 26. A toolbar goes slightly over the transport toolbar when they are arranged automatically to the same row. (In wxGTK/Linux.) ---*--- Unedited list of bugs and features: (had no time to polish the list) mixer toolbar has no default device written on the menu, but clearly some mixer channel is controlled; even the play region is completely visible, the display jumps to left -- it jumps so that the start of the play region is on the left edge of display; plot spectrum does not work if the selection is too small; multitool slide stops when the pointer moves over the track labels; Drawing tool uses Alt modifier but that does not work in GNome. "Drag the label vertically to change the order of the tracks" performs "select all". Two operations in one. It is possible to extend the selection out of the track display (when the view is scrolled to end), but then the end edge of the selection cannot be grabbed and dragged. Solution: selection can be made only up to the end of the track. Opening multiple files. When a selection is readjusted by grab&drag, the release of the button at outside of the track panel could mean "undo". Similar for all other operations. ---*--- In the following section, authors are: JC == James Crook JS == Juhana Sadeharju (I left some suggestion out as they seems to be post-1.2 features.) [JC] Audio Preview feature. This allows you to hear an edit before you commit to it. This is window dressing on the GUI - implemented initially by making the change, playing it and then undoing it. [JC] Cross fades with preview: Don't know how this would look, but will combine a fade in a fade out and a shift. [JC] Clip-out Preview. The key thing here is being able to easily adjust the end points of the section you want to cut out, hear what it sounds like with that piece removed and repeat. [JS] Are all these preview features already done? Check also item 5 at above in this mail. [JC] L&R <-> Average+Difference display. This way you can see what a stereo track gets mixed down to as mono, and the stereo content separately. [JC] Split Track into band pass filtered components. Useful even just to view a waveform without background mains hum. [JS] Spectrogram would do that already? [JC] Sound-diff: Ability to compare waveforms and have this displayed graphically. [JS] Can a plug-in operate on two tracks and generate preview to third track? Or replace the second track with the result. It would be essential that the substraction between two tracks is made interactively so that user may time-shift the waveforms and manually find the alignment between the tracks. This may go post-1.2 if it requires changes to plug-in system. ---*--- (v. 1.1.3) In the input/output gain toolbar the pixmaps are in wrong places: the output has microphone pixmap. open followed by close makes an exit; it should not exit; user may want open another file instead of quitting run audacity; open large file so that importing takes time; run another audacity from command line; quit the another audacity; now the first audacity has problems in finding auf-files run audacity; open large file; user cannot now make a new editor where to work while the file is being imported very narrow selection is not always drawn; very narrow selections should be one pixel wide if samples/pixel value is high very narrow selection with high samples/pixel value causes problems in grabbing and dragging the selection edges zoom at low samples/pixel value; make a selection; zoom-out; now adjust an edge of the selection by one pixel; then adjust the edge to its original pixel location; now the selection differs from the original selection dragging the selection edge out of display starts moving the wave, but moving could start 100 or so pixels before the display edge so that the coming wave can be seen beat finder (nyquist script) caused core dump == end == |