The Video Sequence Editor - Reworked (a ready to patch suggestion)

Do you guys think that we(the vse users & vse add-on coders) can agree on and produce python UI scripts as a working suggestion for the default settings and UI of the VSE workspace in 2.80 here in the vse chat room?

The main goal is simply to improve the user experience(not adding new functions).

Try out the current working VSE proposal:

I and other people have been throwing up some balls in the air ex.:
On the default settings: Suggestions for VSE UI cleanup and default settings in 2.8
On the VSE File Browser UI: Blender UI paper cuts
On the Menus: https://docs.google.com/document/d/1lVPxEgR5bnMr4jV-OkLifeU4v9Qp9x-eoCOWADn8u7I
On the potential uses of the new top bar: https://docs.google.com/document/d/1AaniHjm7nKjiBUhHR7NgqLaDwjKqXgiYyNyZRsk9oh4/edit
And on the strip property settings(it has to be one column from now, right?): https://blender.community/c/rightclickselect/zfbbbc/sequencer-panels-update Or the compact Strip Properties in VSEQF: https://github.com/snuq/VSEQF

Do you think it would be possible? Whoā€™s up for it? And would the Blender Institute be interested in us doing this work for the VSE?

Join the discussion in the VSE chat here: https://blender.chat/channel/vse

2 Likes

There is huge problem with VSE which needs to be fixed, it doesnā€™t handle video clips with different fame rates properly. if i have clips from two different sources with different frame rates, i canā€™t just import both of them in VSE. i need to first convert them to a common frame rate. this is the deal breaker for many people. most people donā€™t need any other fancy effects , they just want the ability to import clips and cut and join them, with basic transitions.

3 Likes

Thank you for sharing you thoughts, however my original suggestion is concerning how to improve the VSE interface. The UI can be improved by changing ā€œexternalā€ python scripts, which can be handled by add-on coders.

What youā€™re talking about needs to be fixed ā€œinternallyā€, and right-click select may be a better place for your suggestion.

As someone that has been around the park for too many years regarding the VSE, the best advice is do the work with no expectations.

That sounds odd, but the VSE is essentially a dead end as it is currently coded. There are far too many glaring problems with pixel handling to make it fit into the current ā€œtop needā€ usage of even the Blender Instituteā€™s projects. Iā€™ve written extensively about this issue; it is a core confused identity issue.

In terms of rearranging the deck chairs on the Titanic, just hack the bits into shape and then play the meritocracy political game.

This is impossible without proper compositing based tools to resample image buffers. Frame skipping etc. is garbage.

Donā€™t make wanky assumptions about ā€œmostā€ and other crap. Realize that the VSE is part of a larger project and that it must fit into that design paradigm. In terms of the highest grade needs to be met, the BIā€™s Open Movies should be a key target, complete with their unique needs and higher end output requirements. Smaller studios would also be in this need outline.

Making garbage claims followed up with ā€œmostā€ just screams that you arenā€™t paying attention to key design needs, and makes your opinion part of the problem.

3 Likes

What essential strip-editing functions are missing in the VSE?

Iā€™ve realized that it is possible not only change the ui, but also add functions via python, in the default files of Blender, so Iā€™m messing around with the menu trying to keep consistency and make it more user-friendly and Iā€™ve also added the extract/ripple delete function from here: https://developer.blender.org/T24991 - https://developer.blender.org/F13619

If you want to try it out download this file: https://blender.chat/file-upload/TdDfEq2GuEMcCwhmo/VSE_Menus_Reworked_v2.zip and do as written in the readme.txt

How the changes look right now - I need help fixing the Markers Menu and the Timecode Style menu:

The idea is to keep the menus short and then add shortcut keys for all of them so they will work as pop up menus at mouse point.

So, in other words, it is possible to add new functions to the VSE only through python, so the question is what essential strip-editing functions are missing?

(NB. this is just a suggestion, not a patch)

New in version v3:

Added:

  • Select Under Time Cursor
  • Select Channel
  • Time Code selection
  • Render/downmix audio
  • Rearranged the menus in the order the user will need them. Except ā€œViewā€ because of consistency.

What additional edit functions(existing python operators) should we add?

Download:
https://blender.chat/file-upload/P2Ejx7LhnJvZCNwpE/VSE_Menus_Reworked_v3-2.zip

Installation:
Place the two files included into these paths before starting Blender 2.80:

2.80\scripts\startup\bl_operators\sequencer.py
2.80\scripts\startup\bl_ui\space_sequencer.py

A new home for the VSE Reworked files: https://github.com/samytichadou/blender_vse_reworked

2 Likes

Even though there has been some interest in the VSE lately, this still feels a bit like rearranging the deck chairs on the Titanic, like Troy explained.

It would be both, extremely interesting and helpful to think about an entirely new VSE design. How would a modern VSE design look if we were to remake it from scratch?
This would give us a better idea of how much work a VSE rewrite would need, even in early stages of the design process. And it would probably raise interest of developers (Iā€™m personally interested, but shy away from designing such a beast given that Iā€™m by far not experienced enough in video editing).

We then may still decide itā€™s worth working on the current VSE UI. But I suggest to first get a rough idea how the future of the VSE may look and how far away it is.

@tintwotin: This generally seems like some ok UI improvements. I have a few minor nitpicks, like the order of the Add and Select menus could be made consistent with the rest of Blender. Or we could re-order them everywhere else to fit this?

We should also add the contextual menu to the Sequencer too, inside space_sequencer.py. Look at how this is added for the other editors.

@julianeisel: I agree with your sentiment overall, that it would be good think ahead, and reconsider the way the sequencer works. Itā€™s both not competitive in terms of technology (inability to handle hardware accelerated 4k or 8k streams), and in terms of UI and interaction (Look at Resolve or Final Cut Pro X, for examples of modern video editing).

However, these changes are really minor in the grand scheme of things, and really only make the sequencer more consistent with the rest of Blender. These changes donā€™t hinder a larger Seqencer re-write, which may or may not happen, or at the very least would likely take years.

We should not limit ourselves from making minor UI fixes because of a phantom re-write far off in the future.

I think everyone agrees on the VSE needing a full overhaul, but these small improvements in UI and handy tools are needed anyway and most can be implemented in a full VSE re-write in the future (thereā€™s only so many tools in a Video Editing software). Especially with a team of enthusiastic users willing to maintain the Python code.

@tintwotin Yes a lot of features can be implemented through Python only, thatā€™s why there are so many add-ons doing crazy awesome things. Some of these tools might be already in big add-ons such as PowerSequencer by @GDquest ! Perhaps the more general ones are already implemented and tested and can be brought in as built-in operators.

We should not limit ourselves from making minor UI fixes because of a phantom re-write far off in the future.

+1 !

2 Likes

@julianeisel It is possible to add some new functions this way, so it isnā€™t only rearranging and a few has already been added. This work does not solve the main problems of the VSE, but the current work on the cache makes me hopeful. For now, this is only what I/we can do with python which means mainly UI stuff, but extract, ā€œselect under cursorā€ and ā€œselect channelā€ has been added. Iā€™ve spent a lot of time trying to understand and write down the challenges I see with the current VSE: you can find links to the open shared documents here: Shared Docs Suggestion, Addons, Menus and TopBar ideas for the VSE Video Sequencer Editor ā€” Blender.Community

The redesigning the VSE for the future would have to start with coding an Eevee equivalent video handling engine or enabling the possibilities for using the VSE for unrendered Gpencil/Eevee filmmaking, maybe by separating scenes from sequences, so the VSE only will deal with sequences like the text editor only deals with text independently of the current scene, so in the same window you can work on a scene and add that scene to the sequencer, change scene without changing the sequence, work on that scene, and add that to the sequencer.

Or playing the sequence which automatically switch scenes and cameras within those scenes, so the 3D View could be used for previewing the sequencer, and you could immediately work on the scene where the time cursor in the sequencer is.

@billrey Iā€™ve swapped the positions of Add and Select(I arranged them in the order the users will need them - but no worries). The is a bit of contextual stuff going on in the Strip menu - depending on what type of strip is selected.

But for contextual popup menus I would suggest you tried VSEQF add-on which have right-click-and-hold popup menus which are contextual depending on mouse position ex. over strip, time cursor, handle, empty area. Is this the kind of menus youā€™re thinking of? (I donā€™t think, I personally will have the skills for coding that stuff - but someone else in the community might)

Hereā€™s the daily VSE menu. :slight_smile: I hope all native VSE functions now have menu entries, including reverse, flip x/y.

https://s2.gifyu.com/images/Menu_Poc_v4.gif

When the patch is accepted, you can download it here:

1 Like

Great. Btw, the contextual menu is really quite easy to add, but I can also do it, no worries.

Perhaps there can be a useful thread here on devtalk to begin discussing the design needs for a Shot View interface element?

Iā€™m willing to slog at the wiki component, assuming there is a reasonable place for it?

Iā€™ve modified the Video Editing workspace UI in Blender 2.8 slightly. And also added some feature requests. My Suggestion is less Menu and please add Icons for simple and easy workflow as we have in other Workspaces.

Blender VSE UI Feature Requests:

Blender Compositor UI Feature Requests:

Blender Final Video Renderer

2 Likes

If you do the work like @tintwotin has, someone might care.

This isnā€™t a feature request thread. This is about doing work.

I would like to add some shortcut keys for ex. the menus (like Shift+A for ā€˜Addā€™ menu), but except from avoiding doubles in the VSE, are there any other consistency things or anything else I should know, before starting on that work?

If thereā€™s a way to contribute Python code, and if we can turn some of the tools we make into built-in operators, that would be a pleasure!

Iā€™d also gladly contribute to a full redesign doc, now weā€™ve editedā€¦ ~400+ videos with Blender? Would you have a design document dedicated to another area of Blender we could use as a reference, to produce specs that devs could work with? @tintwotin is already doing a lot of work, and thanks to him we have a solid collection of ideas to work from. On top of past proposals.

Just ping me anytime, here or on Twitter, when you need me. I just need a clear task to contribute without stepping on other peopleā€™s toes. :grinning_face_with_smiling_eyes:

1 Like

The work Iā€™m doing is altering two native Blender files in python, which determines what additional python vse classes to import at startup, and another py file which sets up the vse UI. Since they are native Blender files, they can be submitted as patches for inclusion in the official Blender - if the Blender devs like it and the code complies to Blender standards. Thatā€™s my ambition, but I need help: https://github.com/tin2tin/blender_vse_reworked

The other way to add py to the official Blender is by including add-ons.

This is how the suggestion for the VSE Menus is looking right now:


A toggle audio on/off button has been added, toggle all modifiers on/off in menu, zoom border and such things have been added.

I feel some more ā€œEditā€ and ā€œNavigationā€ functions could be useful?

Pablo, did you go ahead and work on a redesign of the VSE Sidebar/Strip Preferences Panel? If not, should we try to do a working suggestion(basically a patch) for inspiration for you guys, like weā€™re doing with the VSE menus? (With no strings attached)

If yes, are there any other guidelines except now panels should be only one column? And the width and design should match the (general) Properties panel?

For me, design-wise, the main thing is to get the functions most used moved to the top of the panel, while still keeping things organized. Maybe an info tab and a proxy tab could be introduced?

2 Likes

For anyone wanting to adjust the vertical size of the stripsā€¦

In D:\Blender\blender\source\blender\makesdna\DNA_sequence_types.h, look forā€¦

#define SEQ_STRIP_OFSBOTTOM 0.2f
#define SEQ_STRIP_OFSTOP 0.8f

These values are the start and end positions ( from 0 to 1 ) of the strip drawing within each row ( so 0.2 from each side ). Lets reduce the offset from 0.2 ( 60% coverage, 40% uncovered ) to 0.05 ( 90% coverage, 10% uncovered )

#define SEQ_STRIP_OFSBOTTOM 0.05f
#define SEQ_STRIP_OFSTOP 0.95f

The look changes fromā€¦


toā€¦

8 Likes