[ardour-dev] ardour-0.9beta27 released
pauld at vermouth.dreamhost.com
Sat Feb 26 18:36:04 PST 2005
Alas, we're still grinding out the remaining issues. There are still
some MIDI/MTC issues to fix before I am comfortable declaring
0.99. Because of problems with my laptop power supply (I hope!), it
will be several days before I can work on these. In the meantime, here
is a large list including some very significant bug fixes:
* significant reorganization of inter-object signalling
during region motion/trimming to scale correctly
(prompted by a brush-mode-edited session with
46 duplicate overlapping regions and 490
* add key actions for each snap-to setting
* add default keybindings for snap-to-beats (F9) and
* move brush-at-mouse command (not brush mode) to Ctrl-b
This fixes a problem with the first "b" in a brush
motion from adding a region over the top of the existing
one. The general problem of keyboard auto-repeat has
not been solved, however.
* correctly identify uppermost region when proxying a mouse
event in a crossfade. this helps with a pathological
test case that only wacko southern hemisphere types
would ever come up with :))
* radical overhaul of many aspects of multi-region motion
and deletion. these changes make several actions much
more efficient and scalable to hundreds or even thousands
of selected regions. however, they are also very deep
changes, so its possible/probable that they have broken
* fixes for a couple of erroneous LockMonitor declarations
* switch to per-playlist layer-op counters instead of time,
to deal with cases where two layers receive the same
* cleanup playlist data structure and code
* minor fix in editor_canvas_events.cc (missing return value)
* fix lifetime management problem for "instant XML" state
(stuff that saves mostly GUI-related state to disk)
* fix for massive bug in track buffer allocation, causing 4x
more memory to be allocated than was intended.
* dragging multiples regions leftward now stops when one
of them hits zero.
* a couple of valgrind related fixes for lifetime-of-temporary issues
* fix for a nasty bug found by nick mainsbridge using valgrind,
that involved crossfade invalidation being ignored
during a refresh (e.g. after a region move), which
on (at least) gcc 3.4 can lead to *cough* notable problems.
* patch from Sampo to fix several issues with paths, session names
etc. Use glibc's canonicalize_file_path() to fix several
potential problems. Ron Parker, this one should be for you :)
* fix hanging-design-assumption thread/race problem with peakfiles.
This code was written with the model that the peakfiles got
built, then read. When Jesse added dynamic display of the
recorded waveform, this assumption was broken, and it became
possible for the peakfile reader and writer to interfere with
each other via the FILE* used to access the peak data.
This has been changed to use the ::pread() system call as has
always been used with audio regions.
* fix memory leak that caused rapidly growing memory size when
* Fixes to libardour to use realpath().
* Fixes to gtkmmext for new session dialog path handling.
* small fix in bbt calculations to get better results when snapping to
beat subdivisions when frames_per_beat_subdivision is not an integer
* simplified constrained dragging:
dragging a control point with button two will limit the movement to
-strictly vertical if the drag movement is bigger in the y-direction,
-strictly horizontal if the drag movement is bigger in the
There is no longer a special modifier key for vertically restrained
* when entering and exiting regionviews with visible gain
envelopes, show/hide control point as per automation tracks.
* correct placement of new (clicked) region gain control points
* don't brush a new region over the original
* change height of "in-progress" regions/rects while recording
if track height is changed
* when splitting or separating regions, correctly select
just part of the parent region's gain envelope. also
added a fix to XML loading code to fix broken
end points of region gain envelopes caused by
incorrect implementation of the above issue.
* fix incorrect logic for region separate/cut edits
when range starts before a region and extends into it.
* made polarity inversion work even when gain is at 1.0 (0dB)
* save+restore route active status
* remove code that duplicated work done by realpath()
* fix nasty error in AutomationList::cut_copy_clear() that
allowed duplicate points to be added to the list. This
fixes wierdness with region splitting noticed after my
* regions created by splitting retain envelope-visibility
setting of the parent.
* toggle gain envelope visibility/active status from region context
* fix a bug that allowed addition of region gain points outside the
* keyboard-driven audition-at-mouse command added. default binding
* region gain lines change color to reflect active status
* disconnect sends + port inserts when they are removed from a
* make "cleanup" work the way most people would expect
* fix for "make install DESTDIR=foo" in templates dir
* new layer model: "Most recently added regions are higher"
With this model, no edits made to a playlist will cause
relayering to take place. Added following working reports
from Ron Parker.
* changing layer models does not recompute the layering of any
* cleanup fixes for multi-snapshot situations
More information about the Ardour-Dev