Well, originally, 0.99 was due to be the next release, but Ron Parker
and his trusty intern Spencer uncovered some significant usability
issues with xfades and region layering. Fixing this required
substantive codes changes, and I want to make a 0.9beta24 release to
help flush out any issues. Besides, there is a rather large changelog
for this one :)
I have two remaining issues I would like to fix before 0.99, both of
them merely GUI organizational items. I expect to release 0.99 by the
end of next week, if not before.
Changes since 0.9beta23
=======================
* region duplication dialog grabs focus
* "Destroy" on a region or regions now posts a warning
dialog about its destructive potential and non-undoability.
* hide panners if a tracks outputs drop below 2, not below 1.
* add "-C filename" option to permit testing of spline generating code
* reduce height of xfade rects so they don't cover the colored name
highlight of a regionview
* context click in colored name highlight is the same as in the
waveform area. allows context menu access to a region even
when its in an xfade (well, for the top region, anyway)
* reset various editor state when a session is closed, avoiding
future segfaults caused by lingering pointers
* if there are no tracks selected, range selections appear in all
tracks
* keyboard range selection now has a "shift" variant that adds a
new range rather than replacing the existing one (bindings
are arrow-down to start a range selection, arrow-up to set,
shift-arrow-up to add)
* region splitting via "s" now obeys snap
* Control_R does all the same stuff as Control_L
* when cutting/copying using ranges, reset fades of created
regions so they do not overlap the region boundaries.
* fix "jumpy gain automation" where gain slider jumps during
automation playback (thread race condition)
* make "end" marker "remove" button in location UI insensitive
(i'd like to hide it but can't find a good way to do it)
* absolutely prevent end marker from ever being removed
* added mouse movement threshold before region drags start. This
makes it much less likely to accidentally move a region when
selecting it. For example, once you drag horizontally >4 pixels,
only then will the region start to move from its *current
location*. Try it, you'll be much less cautious about selecting
regions after this.
Right now only region dragging (in object mode) has this behavior.
Most other operations are dedicated, so a threshold to
prevent unwanted movement isn't really needed, AFAICT. But, if anyone
can think of other ops that you'd like to see a mouse threshold on, let us
know.
* fixed up corner dragging offset issues, noticed when trimming
range selections, cursors, fade-handles, etc.
* track port name changes
* when in range mouse mode, new range selections will be created
even when unmodified left mouse dragging on existing ranges
(before, it did nothing). Friendly reminder: ctrl-leftmouse
dragging of ranges in range mode will move the range.
* fixed range grab-copy to properly select the newly created region
before dragging. In case you didn't know this existed, if you
ctrl-alt (or shift-alt) drag a range in the Range mousemode, it
will create a new subregion copy of whatever portion of a region
it covered (from the clicked track only), and start dragging it.
* comment box changed to popup-from-button
* meter and fader size changed from 186 pixels to 250
"Enhanced fader sensitivity"
* hide Master bus in editor window of a new session
* if a new session is requested from the command line,
preload the New Session dialog with the name+path,
and display the configuration tab.
* no GUI-based rec-enabling of the session if there are
no tracks, plus message explaining what to do.
* show more rulers by default
* track port name changes, so that changing the name of a track
doesn't interfere with making JACK port connections
* update solo state after route removal
* added adjustable peak meter falloff
* falloff and peak hold parameters adjustable globally in the
Option Window's Display tab. for comparison purposes the
previous meters had no falloff and corresponds to the Off choice.
Medium is the new default.
* when naming ports, look for "holes" in the existing sequence of
ports
* major fix for audio rendering of regions on various layers +
xfades. the rendering now happens in layer order rather
than xfades always being last ("on top")
* remove extra Gtk::Frame around buttons in IO selector
* (some) fontset fixes from Karsten to help
FC3/X.org users
(in ardour_ui.rc - be sure to update yours)
* squish horrible bug that occurs when adding a control point to
a region gain line. an endless series of enter/leave
events were being generated because of interactions
with the "verbose cursor" text.
* make automation lines change color after an edit.
* always consolidate range selections (no more overlapping ranges)
* remove "auto connect input" option from Configuration object,
only use Session parameters that control the same thing
* share code for "coverage" function between various kinds of
objects
* fix from Karsten for a nasty bug in the NewSaveDialog, plus FC3
compilability
* CD marker patch from Nick Mainsbridge (thanks!)
- work for ranges as well as sessions.
- treat exported sessions/ranges without any track markers as
one track, with all indices being within that track. there is
no pregap in this case.
- ignore cd tracks/indexes that are wrong, such as indexes outside tracks
(except as above), tracks within tracks and incomplete tracks within
exported ranges.
- add an 'export cd markers only' checkbutton to the export dialog which
is desensitised appropriately.
- fix incorrectly exported preemphasis setting in previous patch.
- alters the ardour_ui.rc file to include a style for the
checkbutton.
* constrained drag operations for regions and control points now bind to
button2. button2-drag for x constrained and alt-button2 for y constrained dragging
* Disabled "split channels" for Insert Sndfile (activated from the popup
menu) because there isn't any code there for actually splitting the file.
* Fixed deselecting in the sfdb_tree.
* documentation patches from eric (thanks!)
* add "Hide/Show all crossfades" items in the "visual" menu for
audio tracks
* audio track context menu modified:
- if in a (visible) xfade, has entries for the xfade and all regions
under the mouse pointer
- otherwise has entries for all regions
under the mouse pointer
- moving through the regions in the menu will select each one in
turn
* changed ctrl-mousewheel down/up to be temporal zoom in/out
(used to be track height stepping) to match Gnome HIG.
* shift-mousewheel now does track height stepping (swapped with
zooming).
* fixed bug with mousewheel trackheight stepping (and zooming)
where it skipped heights.
* major changes to layering
a) when regions are created or moved so that that they
overlap, ardour now offers two different models
for how to layer them. The options editor
provides control between two models:
1) More recently moved or added regions are higher
2) regions with later starting positions on the timeline
are higher.
For most people, model #1 will be preferable while
recording, overdubbing and importing. For many,
model #2 will be preferable when editing by moving
regions around (within or between tracks)
* reinstate "raise to top layer" and "lower to bottom layer" in
region context menu.
- place at top of the menu for convenience
- only operates when layer model is "Most recently
moved/added regions are higher"
* major fix for Curve objects
- interpolating values for locations between the
any 2 control points was broken under certain
conditions.
- probably responsible for various "jumpy" audible
automation
* major work on Crossfade objects
- removed typed crossfades
- reimplement xfade updating model
- improve default curve shape slightly
- change color of xfade views to yellow+black lines
- get rid of "Remove" item of xfade context menu
- disable fade in/out of regions involved in an xfade
(restored when xfade is invalidated)
* fix nasty bug with buffer handling in a subdivided process() call
tree (ie. when handling events of some kind,
such as punch in/out) [ Karsten Wiese ]
* fix bug with buffer handling in IO objects in subdivided
process() call tree (ie. when handling events of some kind,
such as punch in/out) [ Karsten Wiese ]
* Alt-mousewheel now does horizontal scrolling (by half page
steps)
* fixed up some button capitalization and layout on some
dialogs and windows (not done yet)
* added Remove port button in the I/O connection editor, so
finally non-gurus can do it.
* hid some cancel buttons where they weren't appropriate
* toned down the alpha on active xfades
* fix for curve interpolation errors between second and third point in the
curve
* fix crashing bug when auditioning both sides of an xfade
* fix crashing bug caused by a track with zero inputs
and non-zero outputs.
* fix crashing bug caused by dragging across tracks
* hide xfades when dragging regions
* don't display "Create new session..." message if
-N session was used on the command line
* fix length of regions used to audition xfades
* CrossfadeEditor now inherits from ArdourDialog, not Gtk::Window,
so the usual key bindings, window-close ops etc. work
as expected.
* cleanup Editor::region_drag_motion_callback();
* remove plugin count debugging messages
* fix naming of regions created by "insert external soundfile"
* fix bug in automated connecting of outputs to physical ports