GNOME Bugzilla – Bug 647023
When saving a project, the render settings are not saved
Last modified: 2011-06-12 14:24:51 UTC
After rendering a project with the following settings: Container format: Matroska Video Codec: x264enc Audio Codec: AAC ..I save it, and the export-settings element in the xptv file looks like: <export-settings aencoder="" audiochannels="2" audiodepth="16" audiorate="44100" muxer="oggmux" vencoder="" videoheight="540" videopar-denom="1" videopar-num="1" videorate-denom="1" videorate-num="50" videowidth="960" /> ..but it should look like: <export-settings aencoder="faac" audiochannels="2" audiodepth="16" audiorate="44100" muxer="matroskamux" vencoder="x264enc" videoheight="1080" videopar-denom="1" videopar-num="1" videorate-denom="1" videorate-num="50" videowidth="1920" />
Please ignore the videoheight and videowidth attributes, what matters is that the following attributes are not saved correctly: aencoder="" muxer="oggmux" vencoder=""
I'm working on a fix.
In the actioner cleanup branch: 1. go in the render dialog, change the scale (to 25% for example) 2. close the rendering dialog 3. reopen the dialog 4. The scale is now set to 100% but the resolution is lower 74c945ea70a167cd1b23293b36576262654dd8a3 is the first bad commit. As hinted in comment 1, codecs and rendering-specific settings are the only things that should be saved. It should *not* override/reset the project settings such as resolution and amount of channels etc. The point is that you set your project settings, and then when you are rendering you may want to temporarily use different output settings to export to various other formats; but you should never lose the information that was set globally in the project settings.
commit 82970acd6a0738e2bfd5bd7ab70e0b3f9014640c Author: Alex Băluț <alexandru.balut@gmail.com> Date: Sun May 1 23:58:58 2011 +0200 Changed EncodingDialog to apply the settings changed in the UI to the project settings. Fixes bug 647023.
Partly fixed; my point about distinguishing project settings and rendering settings still stands: > It should *not* override/reset the project settings such as resolution and > amount of channels etc. The point is that you set your project settings, and > then when you are rendering you may want to temporarily use different output > settings to export to various other formats; but you should never lose the > information that was set globally in the project settings. I consider Project Settings to be independent of most rendering settings. Think of it as a parent-child relationship :) the child (rendering settings) should not override the project settings. The only things from rendering settings that should be saved in the project are things like the choices of containers/codecs/codec settings; basically, things that are not already set in the rendering settings To summarize: - remember the container/codec choices - remember the codec settings - remember render-specific settings (like "render only selected clips"), if any - forget the rest, otherwise there's no point in having project settings! An example to illustrate this: - Let's say we have a 1280x720 23.97 fps project with stereo audio - When rendering, we want to render to ten different output formats for publishing... some of them are mono, some of them are at 12 fps instead of 23.97, etc. In this scenario, we don't want the actual project settings to be set to 12fps and mono sound. We only want this particular rendering instance to be set that way. For what it's worth, that's also how other video editors (Vegas, Kdenlive, Premiere, ...) work. You can "temporarily override" the project settings at render time, but to permanently override them, you need to actually change the project settings.
The side effects introduced by the fix of this bug have been fixed with the following commit: commit 9f87204c75c2b936796dcd0ed78896212c2d0895 Author: Alex Băluț <alexandru.balut@gmail.com> Date: Thu May 26 16:56:09 2011 +0200 Change the actioner.Renderer class to work with a settings instance which is not the settings instance of the project The reason is that the changes to the settings which can also be made in the Project Settings dialog must not be saved when they are changed in the Render dialog.