samytichadou / blender_vse_reworked Goto Github PK
View Code? Open in Web Editor NEWA proof-of-concept attempt to rework and reorganize the blender Video Sequence Editor (VSE)
License: GNU General Public License v3.0
A proof-of-concept attempt to rework and reorganize the blender Video Sequence Editor (VSE)
License: GNU General Public License v3.0
Billrey: "In Blender consistency is important. Try and use the same names for things as in the other Editors. For example, the Home key does ‘Frame All’ in the 3D View, but ‘All Sequences’ in the Seqencer, even though it’s the same feature.
We must use the same terminology everywhere."
https://devtalk.blender.org/t/can-we-in-collaboration-produce-a-working-suggestion-for-improving-the-user-interface-of-the-vse/3264/26
So those strips can be pasted in afterward. However, the built-in copy function chokes on strips involved in transitions.
However, this sub-menu is not defined in space_sequencer.py - but maybe these functions could be pre-pended or appended in the submenu though?
Instead, it should work on all selected channels.
If there is a crossfade between two strips in the same channel and a strip is extracted before the crossfade there will be an error. Watch the error here in this gif:
https://blender.chat/file-upload/dGADThmyMZ8FnvQ9P/Extract_error.gif
Related: https://developer.blender.org/T58011
If you select a handle while pressing alt the adjoined handle will be selected too. This function needs to be added to the menu.
The functions are only working when called from the VSE Header Menu. They should also work from the hotkey induced popup menu.
Meaning it can't add the new selection to the existing selection, because the "extend" switch is not working in the built-in selection function.
Billrey: "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."
This way it will be visible if all modifiers are enabled or not.
Maybe this function actually should be moved into the VSE menu header with a toggle icon button like the all audio on/off button?
The overall goal is to add a windowless, fullscreen, correctly scaled video-preview function to the VSE view menu(shortcuts: alt+F10, alt+F11 and home).
Working code by Snu here:
https://blender.stackexchange.com/questions/118741/how-to-make-the-sequencer-preview-area-fullscreen-with-python/118878#118878
Import the source material of the active strip in full length in the first empty channel starting from frame zero, so you can easily add more material from the same source strip.
This kind of import can be used as an alternative to two preview monitor 3 point editing. So you'll import the full source strip, trim it and then copy it into the right position with the 3 new paste functions(active strip determines channel and playhead determines frame).
Monitor size changes in the Sequencer Preview area and call “Fit Preview In Window” if changed - inserted as a checkbox option in the Sequencer/Preview/View menu.
The ctrl+mouse drag to snap the time cursor or snap moved strips to the nearest strip is one of those very useful functions which doesn't have any UI entry - and new users will never find it. So this needs to be added to the menu.
When these functions are assigned to hotkeys, instead of zoom in or out, a mouse position dependant zoom mode is started. The functions should work like when initiated from the menu.
There is an add-on included in Blender for batch export of video strips, should this be included in the default options?
More batch export add-ons:
Export Selected Strips - https://github.com/sambler/myblendercontrib/blob/master/sequencer_tools/export_strips.py
Export Selected Audio Strips - https://gist.github.com/Pullusb/c1a82f79bd3a47e77d1c9d53721975e5
Export Selected Frames - https://github.com/agapas/render-selected-frames/blob/master/render_selected_frames.py
Add: Places the pasted strip selection in first channel with room for the pasted strip at playhead position.
Insert: Places the strip in the channel with the active strip at playhead position. If there already is a strip at that position, a cut is made in the existing strip and the rest is pushed to the right, in order to make room for the new strip. This function should be disabled if more than one strip is to be pasted.
Overwrite: Places the strip in the channel with the active strip at playhead position. If there already is a strip at that position, the new strip overwrites the old one. This function should be disabled if more than one strip is to be pasted.
Suggestion: Use the numeric keyboard for navigation & playback-control of the sequencer
The numeric keyboard isn't used for anything in the sequencer, and at the same time, the playback controls are difficult to find and remember(ex. alt+a for play/pause). The 'k' button is used for cutting so, the standard NLE controls: J, K, L can't be used unless cut is moved to a different key. So why not move the playback controls to the numeric keyboard? That would have some consistency with using the numeric keyboard for navigating the 3D View.
As an alternative the move selection(not currently implemented) function could be mapped to ex. shift +arrow keys and the ALT + numpad keys could be mapped to the zoom functions(ex. zoom x/y has been implemented).
VSEQF has implemented these functions.
The optimal implementation would include speeds slower speeds like 3/4, 1/2, 1/4 a sec.
Ex. alt+select handle, you will select the adjoined handle too.
Same with ctrl+ drag time cursor or strip will snap to nearest strip.
It would be great to expose these functions in the menu.
More functions to be found in:
https://github.com/dfelinto/blender/blob/master/source/blender/editors/space_sequencer/sequencer_ops.c
I hope the File-Browser can be altered when in VSE mode. The import options are missing:
The VSE workspace File-Browser, if you open the lower area, it will cover almost the entire left area with an odd result:
Also, the various import settings are not available in the default VSE workspace File Browser. I mean these:
VSE Header > Add (menu) > Sound
NB. Right aligned - the following import settings are left aligned.
VSE Header > Add (menu) > Movie
Could be very helpful if the “Add Movie Strip” import options also had “Use Movie Resolution” and maybe “Use Movie Ratio” too?
VSE Header > Add (menu) > Image
Let the “Filter”/"Show… " file browser buttons determine what import options are available:
Currently, the selected audio strips swap state, is this okay or should it be a switch on/off function?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.