VP9 Wishlist - Item 001 - Render Pause

DataMeister wrote on 9/12/2007, 1:14 AM
I've never started one of these, so I figured it was my turn. It would be just as happy if these showed up in the 64bit version. The theory behind the subject line is to keep each subject in a separate thread since we all can't resist discussion. And it should still keep the VP9 Wishlist searchable.

Item 001

I know you can reduce the thread priority and that helps a little when you need responsiveness during the day. But sometimes I just end up canceling the whole render and waiting until the next day or weekend. It would be much better if I could pause during the day and resume the next night.

That feature is of course for projects that are not time critical. But still, is there a technical reason this can't happen?


Comments

DJPadre wrote on 9/12/2007, 1:16 AM
now with smartrendering of long gop, i dont se why this couldnt be implemented..
Chienworks wrote on 9/12/2007, 4:22 AM
I'm probably the person who first brought this up and has been most vocal about it over the years. But now with XP process priority settings i no longer have any need for this. I almost always set Vegas' priority to below normal when rendering and then i can pretty much forget it's running. Windows allocates every spare cpu cycle to the rendering process so renders still run almost full speed, but gracefully lets other programs run smoothly when you need them to.

What i still want though is the ability to resume a stopped render in cases where the computer crashes or the power goes out. It would be nice if at some interval Vegas saved it's rendering state, maybe every 5 or 10 minutes or so. Then when restarting Vegas after a crash it could prompt, "You have an incomplete render in progress. Would you like to resume?" If you say yes, it would pick up from the last state saved and you wouldn't lose any more than 5 or 10 minutes' worth of time. I do realize this would require a substantial amount of programming in order to capture all the variables and memory in use and save it, then be able to restore it. But i also think this would be a killer feature and might attract lots of new customers just for this alone.
DJPadre wrote on 9/12/2007, 5:01 AM
what he said...... LOL
farss wrote on 9/12/2007, 6:18 AM
Agree it'd be perhaps handy but wouldn't it need to address certain issues at the OS level?

Bob.
Chienworks wrote on 9/12/2007, 7:32 AM
I wouldn't think so. On some scheduled interval, perhaps user selectable, Vegas would merely dump it's memory to a temporary file on the hard drive. Hopefully not all of it would have to be stored or it would be writing a huge file. I think it's quite possible that the memory that contains all the current information about the current rendering state is within a smaller data structure (at least i'd program it that way, and i'm sure the Madison guys are MUCH better and brighter programmers than i am), so perhaps the amount wouldn't be huge. When the render finishes this file can be deleted.

When Vegas starts it can check for the presence of this file and prompt for a render resume if found.

Sound Forge already does something similar. If the system goes down while an unsaved file is still open in the workspace it will prompt for recovery of the workspace on the next startup. Vegas also prompts for recovery of an unsaved .veg file if it finds a changed auto-backup without a more recent save. So it would seem like some of the groundwork already exists.

Now, of course, the ideal implementation of this would also include a button in the rendering progress dialog for "Pause Render", which would then let you shut Vegas and the PC down and resume cleanly later, picking right up where it left off..
farss wrote on 9/12/2007, 7:45 AM
What I was getting at was Vegas has the file open but the directory isn't being updated until the file is closed. Watching the file sizes that Windoz reports during a render some of them only update every so often, some seem to stay at 0 bytes until after the render completes. Notice how at times Vegas reports render completion at 100% and then can take minutes doing something with the disk thrashing before it reports render complete?

Can't say I understand all this, never got down to the nuts and bolts of Windows but I know it's got problems when writing to files if you pull the plug. Of course a button to Pause the render should be able to elegantly close the file and as you say Vegas could save it's state ready to resume.

Bob.
Chienworks wrote on 9/12/2007, 7:53 AM
I see what you're saying. Of course, data is being written into the file even if Windows explorer display isn't updating. At worst there might be a small amount of data in an OS buffer that hasn't been physically written to the disk yet. The chances of this data being part of what was generated before the last 'state save' was done will be miniscule, especially since the state save operation itself will be buffered after the video data that was being generated.

It's possible that the directory entry for the output file might be incorrect. Vegas could fix that too when it discovers an existing incomplete render. I could open the file, move to the end of the data, see what's actually there, and fix the file header and directory entry.
farss wrote on 9/12/2007, 8:02 AM
I think we're getting to the nub of the problem or my foggy memory is being restored. The problem is the "move to the end of the file bit".
I *think* windows doesn't update the FAT (something like that) until you close the file or maybe at regular intervals. The idea is to minimise head movement. So after a crash shutdown there's no way to find the missing parts of the file.
This is HUGE problem with most HDD audio recorders. Ignore the shutdown sequence and goodbye hours of recordings and believe me, no way to recover them.

From memory Novells Netware fixed this problem by using transaction tracking on the directories, no matter what, worse case you lost the last file write but never the whole file.

Bob.
rmack350 wrote on 9/12/2007, 8:26 AM
Seems to me that this sort of file writing must already exist for accounting, financial institutions, military applications, things like that.

It'd be a nice feature if Vegas could incrementally save the render and the render job parameters so that it could recover from a crash AND/OR allow a render to be paused. Maybe it'd just require a temporary wrapper format that gets removed once the render is finalized. The wrapper could save the render parameters and render state.

Good idea.

Rob Mack
Chienworks wrote on 9/12/2007, 8:28 AM
"I *think* windows doesn't update the FAT (something like that) until you close the file or maybe at regular intervals."

Yet another reason we write all our business critical apps under Linux. Windows makes a nice desktop, but even there we're using it less and less. If the data is important here, Windows doesn't touch it.
rmack350 wrote on 9/12/2007, 8:59 AM
Again, Id' point out that an accounting app like Quicken commits the data every time you save an entry. You'd only lose the current in-progress record (unless you lose the entire file). Vegas could certainly save a render incrementally.

Rob Mack
rmack350 wrote on 9/12/2007, 9:01 AM
All NLEs need a method of batch rendering, including Vegas. This is an extremely useful feature and a major sellling point.

There are scripts that do this but it's a core feature and ought to be in the main product.

Rob Mack
jbrawn wrote on 9/12/2007, 9:03 AM
I'm not familiar with the internals of Vegas, but it seems to me that very little information needs to be stored in order to restart a render.

I'm guessing that is the case because Vegas knows how to render a loop that starts anywhere in the project. Also, network rendering doesn't involve huge amounts of data shared between the various rendering processes.

As long as Vegas occasionally closes and reopens the output file (to solve the various FAT issues) and stores a table that relates frame number to output position in the file at appropriate boundaries (GOP, I-frame, whatever). Then it should be able to pick up and carry on with very little additional change in the network rendering code.

If someone knows why this is wrong, I'll quickly stand down. But I'd also like to know what I'm missing.

John.
rjkrash wrote on 9/15/2007, 12:30 PM
RE this discussion Bezier Mask

Would be nice to have a more robust editing techniques/tools available for editing/creating Bezier Masks. Things like Free Transform, Rotate, Scale or selecting points by rubber band selection. This would help a lot when doing rotoscoping work.
rmack350 wrote on 9/15/2007, 12:40 PM
In flash it's possible to arrange a selection of FLA files into a project file. It's rudimentary, but it allows you to compile a collection of animations all at once.

Vegas could have something like this that would allow you to view a list of associated projects and maybe keep track of the associated vidcap files too. This could be tied in with the underlying database of the media manager.

Rob Mack
rmack350 wrote on 9/15/2007, 12:46 PM
The Vegas Project Media and Explorer windows both offer some useful features, but not in the same window. It'd be nice if these were better coordinated. For example, I'd like to be able to browse regions from the Project Media window, and I'd like it if I could chose to find the media in either Windows Explorer or Vegas explorer.

As it is, you can see subclips in the project media window and regions in the Vegas explorer window. Awkward.

Rob Mack
Chienworks wrote on 9/17/2007, 3:58 AM
On the flipside, i couldn't care less about the Project Media Pool. In fact, i find it a (slight) detriment to my usual workflow, in that it retains any piece of media i've used even after i've removed it from the project. When i create a still from a frame, that still image is added to the project media pool, even when i have no intention of ever using that still file in my project. Not only that, but Vegas switches from explorer view to the project media pool view when saving still frames.

OK, i know these are minor annoyances. I get around them by frequently cleaning the media pool (a single click) and moving back to explorer view (also a single click). But why do i have to do these manual maintenance steps to get around a feature i never use? I'd like to have a checkbox somewhere that simply turns off the project media pool and then have Vegas operate as if it didn't even exist. Failing that, i'd like some setting that automatically removed media from the media pool when it is no longer on the timeline (use count = 0).