"Numpad 1" shortcut to set preview view zoom to 1:1 (i.e. 100%) did
not exist in View menu. While investigating this, I found that the
operator was missing a description/tooltip, so added one too.
This fixes Orig Dimension display (mostly).
* orx, ory both didn't get calculated, if dimension already matched
* putting them into Strip instead of StripData ment, that using images
of different dimensions in one strip could lead to incorrect results
Still TODO: on file open, timeline display happens before preview
display which means: orig_width and height are calculated after the
first draw of N-keys dialog. You have to hit refresh (or scrub one
frame) to get the right values displayed.
* documented and rewrote the render interface of the sequencer.
(now, the geometry / render_type / etc. settings are stored within a
seperate structure called SeqRenderData that is passed within the code.)
* that fixes
* cache problems, since the caching system didn't keep track of
proxy files vs. final renders.
* is a necessary step, to bring back frame blending in speed effect
(the SeqRenderData structure elements are already there)
* will make motion blur render options available within the sequencer!
* this patch also fixes:
* "easy retiming" using speed effects. (in Blender 2.49, you could
add a speed effect and resize the source track to retime it to that
length)
* adds labels for the Original dimensions for Image + Movie tracks
(worked in 2.49, too)
* Related to bug report [#24329] scene length not updated in VSE
* This data is nice to have in the sequencer without having to go the actual scene that's added as a strip.
* No way currently to know the order of effect inputs, so I added a swap operator for the inputs.
* Also added the effect inputs to the strip property panel (weren't even in rna before). These are not yet editable, but can be very helpful in determining what the inputs are if the strip is too short to see the name in the timeline.
* This fix is really only a bandage, as the underlying issue is that sequencer preview render doesn't yet use the job system.
* The sequencer preview can start a full render of the scene, and this can collide with other preview/actual renders in many cases.
* Drawing the sequencer preview is now disabled when an other render is in progress, but the sequence preview rendering could have already been started before the other render, so this doesn't really fix anything.
* For now only OpenGL rendering can be used for the sequencer preview reliably until it's reimplemented using the job system.
* Using the job system in the future can handle the clashes between different renders properly and will give users a nice progress bar to indicate something is happening while the preview is recalculated.
* Sequence speed effect was functional in theory, but very difficult to actually use.
* Now the effect works as follows:
- "Speed Factor" (formerly "speed fade") controls the current speed of the sequence (can be animated).
- "Use as speed" (formerly "f-curve velocity") is now the default behavior so that the "speed effect" by default changes the "speed" of the sequence.
- "Multiply Speed" (formerly "global speed") is a scale factor that's applied to the calculated frame (can't be animated).
- Without animation "Speed Factor" and "Multiply Speed" work exactly the same (in this case "multiply speed" could perhaps be disabled in ui, but currently there's no easy way to check this).
- If "Use as speed" is not checked the effect simply remaps the current frame to the given "Frame Number" (can be animated).
- "Scale to length" (formerly "f-curve compress y")scales "Frame numbers" from 0.0-1.0 to the length of the target strip to allow easy animation.
* Tooltips added for all values and options.
* Code for frame blending was nowhere to be seen, so I commented the option out from ui.
* This should fix at least bugs #20979 and #21309.
poll() function is now a static method in python, this is more correct, matching C where the operator is not created to run poll.
def poll(self, context): ...
is now...
@staticmethod
def poll(context): ...
Pythons way of doing static methods is a bit odd but cant be helped :|
This does make subclassing poll functions with COMPAT_ENGINES break, so had to modify quite a few scripts for this.
- Okey sets the border in the display.
- Okey resets the frame offset in the sequencer timeline.
- ghost icon in the header can enable/disable.
- frame offset can be relative or absolute (lock icon)
Not very happy that this commit adds a call to BKE_animsys_evaluate_animdata(scene, ...) in do_build_seq_array_recursively()
without this the offset frames dont have fcurves applied.
Though we will need something like this for prefetch frames to work too.
Fairly closely match some mac application colin has called 'Looks', to give better results.
- lift is now applied non linear (was being added to the color)
- change the color wheel to preserve the luminance of the gamma and gain values, this stops the color from being set too dark (option for the color wheel template).
- sub-pixel precission for the color wheel since the white area at the center can make a lot of difference with a very small change.
This change will make existing node and sequencer setups lift render slighly differently however discussed this with Ton and he's ok with it.
Added operator (and menu entry) to deinterlace all selected movie strips.
(does also walk into selected meta strips)
Also: small fix for multicam cutting tool (now works also within metas)
Made Multicam-Editing really work:
* added a panel within N-keys, so that one can start/stop playback
and cut between cameras directly from the panel
* made "active_strip" RNA editable, to make that work correctly
(is usefull anyways :) )