[WIP] VSE Quick functions - Snaps, Fades, Zoom, Parenting, Titling, Play speed

hello guys I am new in blender
a week ago I try this addon and it seems snaping clip doesnt work inside meta strip.
I use version 0.85 I got from some blog (cant remember the name), because I cannot download version 0.86 from this thread attachment.

I made some changes so snaping will work inside meta strip :slight_smile:
dont bash me if my code so messy, I just learn python 2 days ago :wink:

VSEQuickFunctions-0_85_mod.zip (11.3 KB)

While parenting worked with the .85 version of the script, it no longer works with .86.
Auto-parenting does not work either.

Any ideas?

Tested with fa17e3b (latest git master)

Moreover, for some reason the newer version gives me this console error no matter what I do:

Traceback (most recent call last):
  File "../blender-git/script_addon_2-6x/addons/VSEQuickFunctions-0_86.py", line 1078, in draw
    fadein = fades(strip=strip, fade=0, type='in', mode='detect')
  File "../blender-git/script_addon_2-6x/addons/VSEQuickFunctions-0_86.py", line 296, in fades
    fcurves = bpy.context.scene.animation_data.action.fcurves
AttributeError: 'NoneType' object has no attribute 'action'

location: <unknown location>:-1

Interestingly, I haven’t added any fades.

muhammadfredo: oops, I hadn’t even tested with meta strips, what lines did you change?
ill start uploading the script to my website at: www.snuq.com/vseqf/

blendercomp: the error looks like your scene has no animation data, strange, but ill add in a check for that.
not sure about the parenting not working, are there any other errors? maybe try disabling and re-enabling continuous options (sometimes blender can ‘forget’ its enabled)

Oh yes I agree, you’ve don a really standout job. I love the pop ups and thought bend you addon. Sadly I think that this is related to the core developers more than the community developers.
I think that tools in tabs might be helpful as the properties panel gets VERY full of addon bits and pieces. But generally as addons increase functionality they are restricted to the bottom bar and pop ups or the properties panel which makes them not very discoverable.

So it would be nice to redevelop some of the UI to allow these great new scripts a place to play. If not a tabs bar then a tools bar, like every other Blender tool window.

The other thing that I like from other apps is the ability to right click an object for properties or drop down menu (in place as it were). So that you can make a selection and apply an action in one place instead of navigating around other menus. This would make them context sensitive and I don’t know what the Foundation’s stand on this is?

I just wish we could have an audio display like the scopes windows…

snu: I changed all “selected_sequences” funtion to “bpy.context.scene.selected_sequences”, so it will catch clip inside meta strip.
and I created 2 function to search clip from inside meta strip ( line 176, 188 ).
in operator I add some line to work with my function. line 623 ( auto snap ), line 1008 ( clip to previous ), line 1018 ( clip to next )
there is problem when you select muliple clip, I dont have time to fix this bcoz I should finish my work. sorry :spin:

Updated to 0.87.
I fixed a couple bugs, and continuous functions should work inside meta strips now. Thanks to everyone for the bug reports and ideas.

3pointEdit: I know there are some new ui features being developed, including pie menus, which could be a great improvement for the sequence editor. Personally, I’d really like to have multi-column properties panel (to for instance, place the quick list panel in its own scrollable column.
It would be cool to do a context-sensitive menu - might not be possible… but ill be looking into it tho.
And lack of audio monitoring is one of the biggest problems with the sequencer I think, unfortunately I don’t think thats remotely possible to add in python.

Last time I spoke to a dev about it there was no frame work for audio handling of output, even though you can mix stereo/mono per strip and add pitch effects. I had asked if we could access some of the EQ stuff that gets analysed for surround in the game engine but it wasn’t deemed necessary. I think that choice comes down to the issue of what the VSE is for. I have been told (often) that the VSE is for doing simple string outs not video editing. So no matter how smart you addon coders are, the tool will not move towards greater flexibility.

Sad really as it is already sooooo close :slight_smile:

The context sensitive pop up would be really cool. So many of the keyboard shortcuts (that are standard in NLEs) are used already in Blender, the space-bar is a good example. It makes it really challenging to create a sensible shortcut system for new functions. So simply right clicking to perform a new action would be a real time saver indeed.

After using it for a week or so, here’s my review:

#1 follow cursor doesn’t work or I can’t get it to work (didn’t find it intuitive enough)
update: it’s obvious that I’ve missed the point of this feature; paying close attention to the demo video helped

#2 it appears that fades don’t work unless you’ve added one keyframe at least; loading a clip gives you no buttons in the fades panel to work with; (could be that I’m doing something very wrong here)
update: everything works as intended so this no longer applies with 2.71 & latest trunk

#3 2D font should be the default IMHO - I find 3d fonts to be excessive for video
#3a. In principle font color should also be exposed in the UI so that’s directly configurable from there. That would be a huge usability boost

#4 parenting audio to video --which is the coolest feature by far – is unfortunately very buggy. It works when adding a few strips and then all of a sudden it stops working (for no obvious reason really). Enabling/disabling it (as you suggested) is a work around but we cannot count on it for serious editing work. Parenting it manually seems to solve the problem but only temporarily.

Please don’t get me wrong, don’t mean to sound negative --on the very contrary I love this addon and would love to see it develop further :slight_smile:

Have been using it for a week or so and I can’t even go back.

I think that the 3D text is mostly a title type of effect, whereas lower third supers typically are simple and need to be read quickly. So flat text would suffice. However it would be nice to incorporate a means of adding soft drop shadow with editable parameters like softness, opacity and distance.

I confirm this is the case all the time: if it’s enabled it has to be disabled first and then re-enabled to work. If it’s disabled to begin with, then the exact opposite happens.
How about adding an automatic toggle which will invert its state every time the user switches to the sequencer? Would that work?

Sorry ive been silent for the last couple weeks, been too busy to work on the script, or even think about it! Things should be getting back to normal now tho. I worked on adding shadows to the text, and i like the idea of a color picker being built in to the interface, ill add that too.

Im still trying to figure out why quick continuous sometimes doesnt enable itself correctly (breaks the parenting and follow cursor). The script is supposed to load a handler that will check if continuous is enabled, and turn on the modal operator if it is… something about this doesnt work right sometimes and i have no idea why :
Not sure why it would STOP working randomly either…

I see the point of making the text default to flat, i guess ill make it that way if the general consensus is that it should be that way, but its easy enough to change the setting and that will apply to all future titles. Regardless, since the addon settings arent blender settings, what ive done with my video editing setup is make a blend file that has everything set the way i would want it for editing, and just open that to start a new editing project.

Wow ! I just discovered the thread and this great-looking script ! Thank you for sharing, Snu ! It looks very promising ! I´ll try all these and will come back with an, hopefully, useful feedback. Thanks again,


Updated to 0.88.
Added drop shadows to the QuickTitler, improved the look of the QuickTitler panel.
Added a color picker and material duplicate button to the QuickTitler.
QuickTitler now defaults to flat text.

Hopefully fixed the continuous function from throwing errors when no strips are loaded.

Hopefully fixed the fades bug, adding/changing fades should behave better now when the in and out points have been moved.
QuickFades would try to add crossfades to audio clips too, oops.
Added a Clear Fades button, nice to have if the fades get screwed up.
QuickFades will now pay attention to the opacity/volume that the clip has set before adding fades.

Also tested it with Blender 2.71, seems to be fully working.

Great work. I’ll give it a test when I have time.


Hey snu, nice to see that you keep improving it, incorporating user feedback as you go along :slight_smile:
Have to say that this is quickly becoming one of my favorite VSE addons.

I’ve tested it for a couple of hours on older and new projects. The bad news is that clip parenting is consistently inconsistent. It’s almost as if it has a personality of sth :wink:
It’s on and it works smoothly for a while and then it stops working and turning it on/off will no longer have an effect. Then it can start working again. Sometimes reloading the project works. At other times it doesn’t. As automatic clip parenting is such a high profile feature, I’ll keep testing.

The other thing that I’ve thoroughly tested is the titler part and it’s turning out to be even greater. I mean just wow!
The panel looks tidy. Both the shadows and the color picker tools are cool additions and boost functionality considerably.

Feature request: is it possible to add an option of loading a different font directly from the titler panel? This will eliminate loading the font scene, picking a different font and then returning to the scene.

Can I add a title tool suggestion? It would be nice to add a template selection. That is some user created background plate or objects. Perhaps from a modified base scene that a user can iterate and change. They could add a plinth or animate a preset slide in. Then back in the vse you would have a small list of the preset scenes to choose from. You would select one and a duplicate would be made with a new text object added to edit.

@snu, I’m a VSE heavy user and you’ve created a very useful addon! Thank you so much and congratulations for such great effort!

There’s a little bug when viewing Quick List with a Clip strip in the timeline. Console:

Traceback (most recent call last):
  File "/home/paulo/.config/blender/2.71/scripts/addons/VSEQuickFunctions-0_88.py", line 581, in draw
    if (sequence.use_proxy):
AttributeError: 'MovieClipSequence' object has no attribute 'use_proxy'

It seems MovieClipSequence class don’t have “use_proxy” attributes. So it’s easy to correct it, just edit line 579:

if (sequence.type != 'SOUND' and sequence.type != 'MOVIECLIP' ):

Hi …
just a heads up…in case it wasn’t noticed.
As of the new 2.73 test build the “s” key is assigned to a new function “slide” in the VSE.
Might be worth remapping the snap functions to another key.
THank you for an invaluable addon by the way…:slight_smile:

nirmaldavid: Ah, ill change that shortcut in the next version then. Also the 2.73 builds have implemented clip auto-snapping! (at last!). And its done the right way too, the way I wanted to implement it but couldn’t. So, the next version of the script will remove the ‘clip auto snapping’ feature.
Any suggestions on what to make the shortcut? I really don’t want to make it require two modifier keys, but it seems all the single modifier and ‘s’ combinations are taken.

Pauloup: Thanks for pointing that out, didn’t even occur to me that image sequences wouldnt have proxy ability :\

HDMI: to change the font, you need to load the font in to the blend file by adding a text object and changing its font… yeah, its a pain, Ill add a load font button in the next version.

3pointedit: Awesome idea on the templates, Ill definitely look into implementing that!

blendercomp: I’m aware the parenting is rather unreliable… I really can’t seem to nail down why tho, I’m not sure if handlers are unreliable, or if something is wrong in my code that i’m missing.