I finished version 1.03 which contains mainly bug fixes and a few enhancements. I am taking a couple weeks holiday from tomorrow so it was a bit of a rush and not much time to test the result, I hope I haven't broken anything. I have sent it to everyone kindly hosting this software for me so it should appear soon.
The following changes were made (they are also listed in the new help file) -
Added extra encode levels. This is not a final solution to the encode interface, just a temporary measure.
Added "Still Movie" encoding: only copy the I-pictures, heavily compressed. This gives huge compression as an alternative to deletion of the entire video stream, which people seem to want, but re-encoder module can't handle, because it alters the navigation structure of the DVD. Audio and subpicture streams will still play normally.
Increased number of samples taken during analysis, so it takes 50% longer but gives more accurate expected sizes. Maybe this should be a user option.
The "not a system pack" error is fixed, by removing non-system packs during the re-encode, rather than throwing an error. I still don't know what these non-system packs are doing in the VOBS, or if they shouldn't be included instead. If they occur, a little message pops up after re-encode is finished.
Increased brightness of video preview in re-author module, add and crop dialogs. Preview windows in other modules are DirectDraw YUV surfaces for performance, so not so easy to modify.
Removed support for multi-angle from re-author. Too many problems. Adding support again will require a virtual rewrite of the re-author module. User is now offered only angle 1, which will prevent crashes.
Added a message next to "include menus" checkbox in re-author, so hopefully people will stop thinking they can, um, include menus.
Added code to strip all buttons and button commands from menus that are added in re-author, actually from anything that is added at all. Most of them contain invalid links or commands, esp. in the case of menu vobs because they move from the menu domain to the VTS domain when the re-authored DVD is built. I guess no buttons is better than invalid buttons.
Fixed stupid bug where region and provider ID changes were written to the .IFO files but not the .BUP files, so they came out different.
Modified error reporting dialog. Now attempts to report the cause of an error using GetLastError() API.
Added check that source and destination folders are different. Not entirely foolproof because of shortcuts.
Just to make sure, encoding/copying will not proceed unless the destination folder is empty of DVD files.
Changed distribution name. From now on, DVDShrink103.exe, and so on. This seems to bugger up the list of recently-used-files which are stored in the registry under the old name, so they are reset when you first start the new version.
An undocumented feature: you can select "options..." from the system menu and delete the recent-used-file lists. Otherwise the lists can become full of invalid folders over time. Or you can just edit the registry
Thanks to everyone for all the feedback.