Giter Site home page Giter Site logo

doakey3 / vse_transform_tools Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kgeogeo/vse_transform_tools

222.0 18.0 22.0 340 KB

Quickly transform, crop and fade video strips in Blender's Video Sequence Editor

License: GNU General Public License v3.0

Python 100.00%
blender vse sequencer addons addon video editing foss updated

vse_transform_tools's Introduction

VSE_Transform_Tools

Installation

  1. Go to the Releases page and download the latest VSE_Transform_Tools.zip
  2. Open Blender
  3. Go to File > User Preferences > Addons
  4. Click "Install From File" and navigate to the downloaded .zip file and install
  5. Check the box next to "VSE Transform Tools"
  6. Save User Settings so the addon remains active every time you open Blender

Use the correct release for your Blender version. Add-ons for Blender 2.80 and above will not work for Blender 2.79

Operators

Add Transform Delete Mouse Track Set Cursor 2D
Adjust Alpha Duplicate Pixelate Track Transform
Autocrop Grab Rotate
Call Menu Group Scale
Crop Meta Toggle Select

A transform modifier must be added to a strip before the strip can be scaled or rotated by this addon. If you're planning to make keyframes to adjust the scale or the rotation, ensure that you are modifying a transform strip by adding one with this operator.

Shortcut Function Demo
T

Add Transform

Shortcut Function Demo
Q

Begin alpha adjusting

CTRL

Round to nearest tenth

RIGHTMOUSE

Escape alpha adjust mode

LEFTMOUSE

Set alpha, end alpha adjust mode

RET

Set Alpha, end alpha adjust mode

ZEROONETWOTHREEFOURFIVESIXSEVENEIGHTNINEPERIOD

Set alpha to value entered

Sets the scene resolution to fit all visible content in the preview window without changing strip sizes.

Shortcut Function Demo
SHIFTC

Autocrop

Bring up the menu for inserting a keyframe. Alternatively, you may enable automatic keyframing.
Automatic Keyframe Insertion

Shortcut Function Demo
I

Call menu

Shortcut Function Demo
C

Begin/Set cropping, adding a transform if needed

ESC

Escape crop mode

LEFTMOUSE

Click the handles to drag

RET

Set crop, end cropping

ALTC

Uncrop

Deletes all selected strips as well as any strips that are inputs of those strips. For example, deleting a transform strip with this operator will also delete the strip it was transforming.

Shortcut Function Demo
DEL

Delete

SHIFTDEL

Delete strips and remove any other strips in the timeline with the same source. For scene strips, the scenes themselves will also be deleted.

Duplicates all selected strips and any strips that are inputs of those strips. Calls the Grab operator immediately after duplicating.

Shortcut Function Demo
SHIFTD

Duplicate

Shortcut Function Demo
G

Grab

SHIFT

Hold to enable fine tuning

CTRL

Hold to enable snapping

RIGHTMOUSE

Escape grab mode

ESC

Escape grab mode

LEFTMOUSE

Set position, end grab mode

RET

Set position, end grab mode

ZEROONETWOTHREEFOURFIVESIXSEVENEIGHTNINEPERIOD

Set position by value entered

XY

Constrain grabbing to the respective axis

MIDDLEMOUSE

Constrain grabbing to axis

ALTG

Set position to 0,0

Shortcut Function
CTRLG

Group together selected sequences

ALTSHIFTG

Ungroup selected meta strip

Toggles the selected strip if it is a META. If the selected strip is not a meta, recursively checks inputs until a META strip is encountered and toggles it. If no META is found, this operator does nothing.

Shortcut Function Demo
TAB

Meta toggle

Select a transform strip or a strip with "image offset" enabled. Press Alt+A to play, hold M to continuously add keyframes to transform strip while tracking the position of the mouse.

Shortcut Function Demo
M

Hold to add keyframes, release to stop

Pixelate a clip by adding 2 transform modifiers: 1 shrinking, 1 expanding.

Shortcut Function Demo
P

Pixelate

Shortcut Function Demo
R

Begin rotating, adding transform if needed.

SHIFT

Hold to enable fine tuning

CTRL

Hold to enable stepwise rotation

RIGHTMOUSE

Escape rotate mode

ESC

Escape rotate mode

LEFTMOUSE

Set rotation, end rotate mode

RET

Set rotation, end rotate mode

ZEROONETWOTHREEFOURFIVESIXSEVENEIGHTNINEPERIOD

Set rotation to value entered

ALTR

Set rotation to 0 degrees

Shortcut Function Demo
S

Begin scaling, adding transform if needed.

SHIFT

hold to enable fine tuning

CTRL

Hold to enable snapping

RIGHTMOUSE

Escape scaling mode

ESC

escape scaling mode

LEFTMOUSE

Set scale, end scaling mode

RET

Set scale, end scaling mode

ZEROONETWOTHREEFOURFIVESIXSEVENEIGHTNINEPERIOD

Set scale by value entered

XY

Constrain scaling to respective axis

MIDDLEMOUSE

Constrain scaling to axis

ALTS

Unscale

Shortcut Function Demo
RIGHTMOUSE

Select visible strip

SHIFT

Enable multi selection

A

Toggle selection

Set the pivot point (point of origin) location. This will affect how strips are rotated and scaled.

Shortcut Function Demo
LEFTMOUSE

Cusor 2D to mouse position

CTRLLEFTMOUSE

Snap cursor 2D to nearest strip corner or mid-point

Use a pair of track points to pin a strip to another. The UI for this tool is located in the menu to the right of the sequencer in the Tools submenu. To pin rotation and/or scale, you must use 2 tracking points.
UI

Shortcut Function Demo

vse_transform_tools's People

Contributors

doakey3 avatar irmitya avatar kgeogeo avatar nathanlovato avatar tin2tin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vse_transform_tools's Issues

Blender 2.93: no attribute 'use_translation'

When I try to grab or select this error happens:

Python: Traceback (most recent call last):
File "/home/aobatroz/.config/blender/2.93/scripts/addons/VSE_Transform_Tools-master/operators/grab/grab.py", line 328, in invoke
if strip.use_translation:
AttributeError: 'TransformSequence' object has no attribute 'use_translation'

Using a proxy resolution breaks crop in 2.82+

The crop function works correctly when no proxy resolution is used but breaks when Proxy Resolution is used(on Movie strips, but Color strips still works):
Crop_proxy_bug

On a different note, I've made a fork and implemented toolbar buttons for the main Transform Tools operators: https://github.com/tin2tin/VSE_Transform_Tools When it is finished, I'll send you a patch:
Transform_toolbar

The VSE maintainer expressed interest in having the main Transform Tools included in Blender as either build-in python operators or as an add-on.

Discussion on the toolbar work can be found here: https://blender.chat/channel/vse

VSE Transform Tools do not behave the same in 2.8 as in 2.79...

Hello,

seems like there are some issues with this addon:

When the cursor is not in the preview window, the T command does not work.

Also when using the addon in 2.79, the distortion of the image (or video) was instantly removed, when adding the transform modifier, this does not work anymore in 2.8.

Thank you very much for your help,
Ralph

VSE transform as an official Blender add-on

Hi Daniel,

I've gotten in touch with the people working around the Blender VSE, and Richard, the maintainer. There's interest in having a few add-ons distributed as official ones, including the VSE Transform one. Would you be interested in having it distributed there? Do you still have time to maintain it?

If you need a hand with anything, please tell me.

Improvements for the Crop tool.

This is a feature Blender should have by default and for some reason doesn't, but I feel we could improve this just a little bit by adding two essential functionalities of any selection tool: Ctrl+LMB or Shift+LMB for "fixed ratio resize of the box", which could default to a square, and maybe some field to set a custom ratio if we wanted something else, like 4:3, 16:9...

I would gladly dive on the code to add it myself, but I'm kinda short on time, so I'm posting this issue just in case it is a problem that has been overlooked.

Allow changing opacity for all selected strips

Currently, pressing Q will adjust the alpha of only the active strip. Instead, alpha should be adjusted for all selected strips.

If the opacity is different for each of the selected strips, set the opacity of all selected strips to the Max opacity of them all and edit from there.

Blender 3.4 grabbing / scaling color strip attribute error

When grabbing color layer in the VSE:

Python: Traceback (most recent call last):
  File "C:\Users\[user]\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\VSE_Transform_Tools\operators\grab\grab.py", line 328, in invoke
    if strip.use_translation:
AttributeError: 'ColorSequence' object has no attribute 'use_translation'

When scaling a color layer in the VSE:

Python: Traceback (most recent call last):
  File "C:\Users\ravdw\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\VSE_Transform_Tools\operators\scale\scale.py", line 369, in invoke
    left, right, bottom, top = get_group_box([strip])
  File "C:\Users\ravdw\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\VSE_Transform_Tools\operators\utils\geometry\get_group_box.py", line 32, in get_group_box
    boxes.append(get_strip_box(strip))
  File "C:\Users\ravdw\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\VSE_Transform_Tools\operators\utils\geometry\get_strip_box.py", line 32, in get_strip_box
    if not strip.use_translation and not strip.use_crop:
AttributeError: 'MovieClipSequence' object has no attribute 'use_translation'

Batch rendering a file with Transform Tools installed crashes on exit

In __init__.py, in register(), there's this line of code:

        km = wm.keyconfigs.addon.keymaps.new(name="SequencerPreview", space_type="SEQUENCE_EDITOR", region_type="WINDOW")

In a batch environment, where I'm calling the blender binary to make it render frames without starting up the whole UI, it seems that wm.keyconfigs.addon is None, causing an exception. It looks like the rendering actually happens but my render script thinks that Blender failed and keeps rerendering the same chunk.

I don't know if it's the right solution, but a solution is to test for None and exit early:

    if not wm.keyconfigs.addon:
        return
    km = wm.keyconfigs.addon.keymaps.new(name="SequencerPreview", space_type="SEQUENCE_EDITOR", region_type="WINDOW")

From bl_info at the top of the file:

    "version": (1, 2, 9),
    "blender": (2, 83, 0),

when I add VSE transform tools to blender, there are some error info

Traceback (most recent call last):
File "D:\blender-3.0.1-windows-x64\3.0\scripts\modules\addon_utils.py", line 387, in enable
mod.register()
File "C:\Users\lenovo\AppData\Roaming\Blender Foundation\Blender\3.0\scripts\addons\VSE_Transform_Tools_init_.py", line 451, in register
register_class(cls)
ValueError: register_class(...): already registered as a subclass 'PREV_OT_set_cursor_2d'

Auto-update does not seem to work

When I tried to use the auto-updater for the add-on, it somehow doesn't work. It says something like "Redo Unsupported" and "Restart Blender to complete update", but when I restart, it still shows the same old version. I never had this problem before.

This problem started since 1.1.6.

Keyframe doesn't Work on Alpha in Preview Window Without Adding Transform Strip

I understand that you can change alpha straight away on a movie strip in the Preview Window without needing to add a Transform Strip. However, attempting to keyframe Alpha by pressing I on the Preview Window doesn't work without the Transform Strip. I presume it doesn't work because all the options in the Insert Keyframe Menu on the Preview Window only work on a Transform Strip. But since you are able to change alpha straight away on a movie strip in the Preview Window without adding a Transform Strip, it would be good if I can also keyframe on the alpha in the Preview Window without adding a Transform Strip.

Does not work with Blender 2.92 alpha

In Blender 2.92 alpha the patch D8393 is incorporated. The attributes use_crop and use_translation are no longer used and throw an error. The use of a transformation strip is also no longer necessary for standard scale, crop, rotate and translate opertions.

Doesn't seem to work with 2.92

When I try to use g in the preview I get the following error

Python: Traceback (most recent call last):
  File "/home/gavinok/.config/blender/2.92/scripts/addons/VSE_Transform_Tools/operators/grab/grab.py", line 328, in invoke
    if strip.use_translation:
AttributeError: 'MovieSequence' object has no attribute 'use_translation'

location: <unknown location>:-1

Here is my current blender version

Blender 2.92.0
        build date: 2021-02-25
        build time: 21:24:05
        build commit date: 2021-02-24
        build commit time: 16:25
        build hash: 02948a2cab44
        build platform: Linux
        build type: Release
        build c flags:  -Wall -Wcast-align -Werror=implicit-function-declaration -Werror=return-type -Werror=vla -Wstrict-prototypes -Wmissing-prototypes
-Wno-char-subscripts -Wno-unknown-pragmas -Wpointer-arith -Wunused-parameter
-Wwrite-strings -Wlogical-op -Wundef -Winit-self -Wmissing-include-dirs -Wno-div-by-zero -Wtype-limits -Wformat-signedness -Wrestrict -Wnonnull -Wabsolute-value -Wuninitialized -Wredundant-decls -Wshadow -Wno-error=unused-but-set-variable -Wimplicit-fallthrough=5 -D_FORTIFY_SOURCE=2 -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fuse-ld=gold -fopenmp -std=gnu11 -msse -pipe -fPIC -funsigned-char -fno-strict-aliasing -ffp-contract=off -msse2
        build c++ flags:  -Wredundant-decls -Wall -Wno-invalid-offsetof -Wno-sign-compare -Wlogical-op -Winit-self -Wmissing-include-dirs -Wno-div-by-zero -Wtype-limits -Werror=return-type -Wno-char-subscripts -Wno-unknown-pragmas
-Wpointer-arith -Wunused-parameter -Wwrite-strings -Wundef -Wformat-signedness -Wrestrict -Wuninitialized -Wundef -Wmissing-declarations -Wimplicit-fallthrough=5 -I /usr/include/python3.9 -fuse-ld=gold -fopenmp -std=c++17 -msse -pipe -fPIC -funsigned-char -fno-strict-aliasing -ffp-contract=off -msse2
        build link flags:  -Wl,--version-script='/build/blender/src/blender/source/creator/blender.map'
        build system: CMake

Error while installing in V2.91.0

I get this error when installing VSE

Traceback (most recent call last):
File "D:\Program Files\Blender Foundation\Blender\2.91\2.91\scripts\modules\addon_utils.py", line 382, in enable
mod.register()
File "C:\Users\XXXXX\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\VSE_Transform_Tools_init_.py", line 451, in register
register_class(cls)
ValueError: register_class(...): already registered as a subclass 'PREV_OT_set_cursor_2d'

Error when i try to enable the addon

Traceback (most recent call last):
File "C:\Program Files\Blender Foundation\Blender 2.93\2.93\scripts\modules\addon_utils.py", line 351, in enable
mod = import(module_name)
File "C:\Users\username\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\gscatter\libmanager\t3dn.py", line 595, in _packer_import
return _orig_import(name, globals, locals, fromlist, level)
ModuleNotFoundError: No module named 'VSE_Transform_Tools-1'

Rotation Locks up at -360 or +360

If the rotation of a strip reaches the limit (-360 or +360), the rotation function will no longer work.

mickey

Fixing this issue would require coming up with a different method for rotating strips. It could also be solved if Blender did not have the -360 or +360 limits. Since the rotate function works well otherwise, and seeing no important reason for there to be a rotation limit, I have submitted a feature request for this rotation limit to be removed.

How to activte the "Track Transform" UI. Tools submenu is always empty

Hello, I can't manage to get the "Track Transform" UI window appear. The Tool menu is always empty even if some tracker exists. Does this functionality work ? Is there any special procedure to activate the "Track Transform" UI ?
Blender version used: 2,82a on Linux Debian (Same behavior under Windows).
Screenshot_2020-03-14_22-26-38

Add-on does not show up in Add-on list in the user preferences

Hey -
I just tried to install the Add-on but after loading the .zip, it does not show up in the list.
The files are copied just fine in the .config/blender/2.79/scripts/addons directory, but nothing shows up.
Tested on 2.79 and 2.8. A friend on discord could replicate the issue.

Testing on 2.91

Trying Transform Tools on 2.91:

  • Crop seems broken again.

  • Interpolation in Transform Strip: None = Fast(maybe this should be set as default value when adding a Transform strip).

  • Maybe the first Select and move icon should be a select only icon?

  • I wish there was a better crop icon.

  • Should the reset options be exposed in the menu? (anything else should be added to the menu?)

  • 2.91 will have multithreaded transformations, which have been detected to give a speed up of 3.5%

  • There are discussions on moving all transform operations into the strip settings, so at some point the Transform strips may not be necessary.

Crop-tool is visual not correct

I like VSE Transform Tools: it makes Blender a usefull video-editor. I have a visual problem with Crop. My videofragment is 3840x2160x25fps and renderoutput is 1920x1080x25fps and you cannot drag the handles to the edges. See printscreen: this is the maximun cropbox.
VSE Transform Tools - crop-bug

Scale takes already scaled and interpolated image and scale it again, loosing quality.

Steps to reproduce and understand this issue

  • Configure scene resolution to 720x1280 (portrait proportions)
  • Import a 1280x720 image/video
    -- (Image/video is scaled automatically to fit in portrait shape)
  • Apply VSE Transform Tool by pressing "S".
  • Chage its scale to original proportion by pressing "Alt-S".
  • Image is like:
    imagen

Steps to avoid this quality loss

  • Don't apply VSE Transform Tool. Instead of that, check "Offset" in "Transform" / "Adjust" panel.
  • Change "Position X" to -440.
  • Image is:
    imagen

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.