GNOME Bugzilla – Bug 339895
[Advanced Timeline] Zooming in too much causes X error
Last modified: 2008-10-11 10:39:17 UTC
When zooming in a lot, X raises the following error : The program 'pitivi' received an X Window System error. This probably reflects a bug in the program. The error was 'BadAlloc (insufficient resources for operation)'. (Details: serial 277724 error_code 11 request_code 53 minor_code 0) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the --sync command line option to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.) The problem would be that we are requesting a much too big area for the timeline widget ('BadAlloc (insufficient resources for operation)') We need to limit the requested size in some way.
We in fact need to limit zooming in/out to sensible values: * Zooming in : seeing frames over more than 100 pixels seems.... excessive (2500 pixels for a second). We need to think about why people would want to zoom in as much. Once we have complete thumbnailing, the sensible choice would be to enable the users to see each frame completely. So <thumbnail-width + borders> for a frame seems sensible. * Zooming out : one hour for 100 pixels seems good enough (for a 1280 width screen, that would enable seeing 12hours in a go).
Here's what I know from my experience: Maximum zoom in level should be 1 full frame wide (across the whole screen). That seems a bit excessive, but you will find that there are always going to be users asking to be able to zoom in further. If you have it so you can zoom up to 1 full frame you cover everyone. At this zoom level, you should be able to move to the right or left (forward and back, respectively) by half frames. That way you might have two half frames in your screen (which ultimately make up one whole frame). Perhaps this could be a variable in options. Maximum zoom out level should be the whole project (the entire length that video or audio goes) plus 1/3 that total length. For example, if all the audio and video runs 66 minutes long, the timeline would zoom out to the maximum of showing 99 minutes. At default though, when no video is in the project, it should default to 3 hours (180 minutes). Thats just my opinion though and my opinion changes a lot. I'll play around with Sony Vegas Movie Studio some more to get a feeling of how that works and report back.
*** Bug 424983 has been marked as a duplicate of this bug. ***
*** Bug 457142 has been marked as a duplicate of this bug. ***
Fixed in 0.11.2 due to brandon's goocanvas timeline and some other fixes in the ruler.