View Issue Details

IDProjectCategoryView StatusLast Update
0001291ardourbugspublic2007-02-23 16:59
ReporterBenLoftis Assigned To 
Status newResolutionopen 
Summary0001291: Redraw of "tape" tracks is very slow when zooming
DescriptionSVN 1067

Zooming a session with "tape" mode tracks results in a very slow screen redraw. The same number of "normal" tracks will redraw quickly.

TagsNo tags attached.



2007-02-20 15:07

developer   ~0003331

vertical scrolling is also painfully slow on larger sessions


2007-02-23 16:59

administrator   ~0003372

what we know about this bug:

it is caused by the region gain lines being set up with two control points, one at frame zero, the other at max_frames. when the canvas does an update on canvas objects (which affects hidden objects as well as visible ones), this cause the Canvas::Line object to compute a list of "micro-tile-arrays" (UTA, 32x32 pixel blocks) to span the entire distance from 0 ... 2^32-1, which consumes vast amounts of memory and a lot of CPU cycles as the list is scanned.

it is likely that Cairo will handle this better, and its possible to comment out the creation of the gain line without side-effects.

next step: check if Cairo handles this properly. if so, defer till we use a Cairo canvas. if not, figure out a "real" solution.

Issue History

Date Modified Username Field Change
2006-11-03 16:41 BenLoftis New Issue
2007-02-20 15:07 BenLoftis Note Added: 0003331
2007-02-23 16:59 paul Note Added: 0003372