- add markup to match formatting from PDF - link to the images extracted into the website Git-repository - adjust image sizes to fit into the text - add some cross references (incidentally: TimelineDiscussion.txt -- store image locally)
1101 lines
60 KiB
Text
1101 lines
60 KiB
Text
Lumiera Workflow Proposals
|
|
==========================
|
|
:Author: Wouter Verwijlen
|
|
:Date: 29 June 2025
|
|
:TOC:
|
|
|
|
I would like to share a first version of a collection of workflow ideas for Lumiera. These ideas come
|
|
from having cut hundreds (or possibly thousands) of videos over the past 20 years as a professional
|
|
editor, working in Avid Media Composer, Adobe Premiere Pro (from before it was called "Pro"),
|
|
Lightworks and DaVinci Resolve.
|
|
|
|
This document focuses on analysing the behaviour of Non-linear Editors (NLE's), in other words
|
|
software in which a user can edit films and videos, in order to discuss possible solutions for the
|
|
design of Lumiera.
|
|
|
|
The main ideas behind these proposals are:
|
|
|
|
* Editing should feel as organic as possible. An editor should perceive the NLE as an
|
|
extension of their body, where interaction with the NLE will ultimately become natural. This
|
|
does not mean that a user should immediately understand everything without there being a
|
|
certain learning curve. Some new concepts might take a while to master.
|
|
|
|
* An editor should not be able to accidentally overwite part of their work in the timeline when
|
|
that part is not within sight (in other words: when it's offscreen). This includes throwing
|
|
things out of sync, losing transitions, or overwriting clips.
|
|
|
|
* Interaction with an NLE shouldn't depend on a specific device. It should be possible to
|
|
operate Lumiera with only the keyboard, only the mouse, other peripherals or a combination
|
|
of these. We can nudge people towards ways of working we think are optimal, but we
|
|
shouldn't dictate how to use this application. Many different editors work on many different
|
|
types of content, and each type of content requires different workflows, some of which we
|
|
might not even foresee. We can't make a one size fits all solution in terms of workflow,
|
|
unless we would target Lumiera at a very specific professional field (for example: only long
|
|
form films and not short social media content). But even within the same types of content
|
|
I've seen different editors using different ways of working.
|
|
+
|
|
So if the aim for Lumiera is to be a general purpose video editing application, then we can
|
|
not force any specific way of doing things and instead we should support many different
|
|
workflows, in other words: provide a platform with possibilities for each editor to make it
|
|
their own (which will arguably be a harder goal to achieve). Instead of a "we know what's
|
|
best for you" approach I propose a "smart defaults with many options for configuration"
|
|
approach.
|
|
|
|
* A big question is: who is "the user"? We aim to create a tool for professionals, but there are
|
|
many types of professionals working in entirely different parts of the media industry or in
|
|
other fields. In the previous paragraph it was mentioned that different types of content
|
|
require different types of workflows. How to accomodate all of these different people who
|
|
work on different things?
|
|
+
|
|
I would like to propose a set of personas to keep in mind while designing the application.
|
|
Examples of such personas could be:
|
|
+
|
|
** The highly specialised editor who works in an environment where different parts of the
|
|
post-production of a film are handled by different people: assisant editors, colorists,
|
|
audio engineers, etc.
|
|
** The allround contracted editor who handles all aspects of post-production
|
|
** The allround artistic filmmaker who also edits
|
|
** The allround social media creator who values the use of visual effects, motion graphics
|
|
and sound effects.
|
|
** The free-flowing editor who doesn't have a fixed idea of how the edit should be and
|
|
instead wants to play and move things around, and who might not work in a linear
|
|
fashion: they might do a bit of color correction to get a better sense of how a scene feels,
|
|
then go back to editing, etc.
|
|
** The editor who has the film already cut in their head and have a very strong sense of
|
|
what they want to do and work in a very structured way towards accomplishing this
|
|
vision.
|
|
+
|
|
Of course, there are many more types of people and many people who are a combination of
|
|
personas. These are only meant to paint the spectrum of possibilities.
|
|
|
|
* Lumiera provides a chance to reimagine how an NLE could work, in other words: how it
|
|
can be designed around modern ways of interacting with computers. In that sense there is
|
|
total freedom to create innovative new solutions to improve how people edit videos. On the
|
|
other hand, if we create paradigms that are too uncommon, new users might not understand
|
|
Lumiera fast enough and move on to something else. There's a balance to be found between
|
|
providing familiarity and innovation, and we need to think carefully when breaking
|
|
traditional paradigms about the reason they have existed for so long and if it's worth
|
|
breaking them.
|
|
+
|
|
In any case, I think we should at least make an effort to study the way current NLE's work,
|
|
and while we might never know for sure what the reasoning behind their workflow designs
|
|
was, we should make an attempt to understand this reasoning. Some designs might have
|
|
come from technical limitations, and others might have had really clever thinking behind
|
|
them. Let's see what we can learn from that.
|
|
|
|
* Ideally we should also include workflows for editors using XR headsets in combination with
|
|
controllers or even hand tracking. While I do have a headset at work that I experiment with,
|
|
we might want someone with actual XR design skills to be involved here.
|
|
|
|
Initially I would like to focus on the most fundamental tasks that each and every editor has to deal
|
|
with while creating a video:
|
|
|
|
1. Finding the parts you need out of a lot of source material (logging and organizing footage)
|
|
2. The timeline as the editor's canvas: inserting and grouping material, arranging clips,
|
|
trimming and other timeline features
|
|
3. Finishing: audio mixing, color correction, titles, effects, exporting
|
|
4. The broader GUI concept
|
|
|
|
Many of the ideas presented here are not necessarily unique: a lot of these either exist in one NLE
|
|
or another, or might be more common in so-called Digital Audio Workstations (DAWs). This
|
|
document closely inspects the working of other software applications to see how we can learn from
|
|
those.
|
|
|
|
These proposals are by no means finished or complete. They are merely meant to be the starting
|
|
point for discussion and would also require user testing. We will want to iterate over certain ideas so
|
|
that they will evolve over time, while others might be rejected completely, which is totally fine, of
|
|
course.
|
|
|
|
The current NLE landscape
|
|
-------------------------
|
|
A few decades ago there was this idea that only a single application could be called ``the best'', in
|
|
other words: the one true NLE to rule them all. Some even went as far as calling it ``the NLE wars''.
|
|
There was fierce competition between Avid Media Composer, Final Cut Pro, and Adobe Premiere
|
|
and each had its fans. Over the years this discussion faded away. Final Cut Pro was disregarded by
|
|
many after the radical rewrite that was released as Final Cut Pro X. Avid Media Composer retained
|
|
its spot as the industry standard for television and feature film, while Adobe Premiere Pro
|
|
conquered the rest of the media industry. It became clear that no single NLE would be ``the best'' for
|
|
all people and all purposes. They each had their own sets of strengths and weaknesses, and therefore
|
|
each would find its own audience.
|
|
|
|
While NLE's evolved in the 2010's, differences between them grew.
|
|
|
|
Media Composer and Lightworks were already very powerful NLE's, specialised in the core editing
|
|
process, mostly for longer format productions. They offered many configuration options and in turn
|
|
had a high learning curve.
|
|
|
|
Final Cut Pro X sat on the other end of the spectrum. It had few configuration options but was easy
|
|
to learn. It became popular among a new crowd: the solo content creators.
|
|
|
|
Then in between sat Premiere Pro, comfortably. It profited massively from being part of the
|
|
Creative Suite, later the Creative Cloud: for many media companies it was very cost effective to pay
|
|
Adobe a single sum of money (pre-Creative Cloud) and later subscription fees, and receive all the
|
|
tools they could possibly need for media creation. But also the application itself was an all-in-one
|
|
solution for all parts of post-production: it offered many tools for audio mixing, color grading,
|
|
visual effects, etc. Sure, Media Composer and FCPX also offered tools for these jobs, but were less
|
|
developed in these areas and often required plugins to achieve many of the more advanced tasks.
|
|
|
|
Then came along DaVinci Resolve, a color grading application that was bought by Blackmagic
|
|
Design and transformed into another all-in-one powerhouse, which slowly started to take a seat next
|
|
to Premiere's throne.
|
|
|
|
In the meantime the media landscape changed. NLE's became more affordable and hardware more
|
|
capable, and the result was that editing was no longer a thing only done by professionals: everybody
|
|
became an editor, and everybody could edit any moment, anywhere, on laptops, tablets or
|
|
smartphones. Social media became a huge new platform where many new makers developed their
|
|
own channels and found an audience for their videos. And so came NLE's that were focussed on
|
|
social media content, most notably CapCut. It took FCP's idea of easy to learn even farther and
|
|
offered many one-click visual effects, automatic subtitles and mostly: a lot of effect presets and
|
|
assets (titles, other graphics, music) available within the application.
|
|
|
|
Right now we are witnessing the early stages of the introduction of AI in most NLE's. This expands
|
|
the possibilities for manipulating video and audio without requiring much technical knowledge.
|
|
Voices, music, video clips and even rough cuts can be generated. Audio issues can easily be fixed,
|
|
mixing and mastering can be done automatically, tracking en keying becomes a lot easier than it
|
|
used to, to name a few things.
|
|
|
|
And that's basically where we are now. There's not one editor to rule them all, there are many, and
|
|
they all shine in different fields or sectors. Some NLE's try to expand and cater to different crowds
|
|
(Lightworks for example, received an easier GUI and many presets and assets to attract social
|
|
media content creators), others decided to just keep on doing what they've always been good at.
|
|
|
|
The question is: where will we position Lumiera? Due to targeting the Linux platform, it makes
|
|
most sense to try and sit in the middle of everything. If we specialise too much, the potential user
|
|
base might be too small, although in all fairness, this is an assumption not backed by any real world
|
|
data. Would there be a way to check the validity of this statement? And how should we quantify
|
|
"too small"? This is a topic that requires more discussion.
|
|
|
|
|
|
Chapter 1: working with source material
|
|
---------------------------------------
|
|
This chapter will not cover every detail of the process of ingesting, project organisation and
|
|
logging. It will focus on the main strategies of how a user goes through all of their material within a
|
|
specific project in order to select the parts needed for the final edit. I will compare the ways in
|
|
which different NLE's handle this and will propose possible directions for Lumiera to support
|
|
certain workflows.
|
|
|
|
[red]#To be written:#
|
|
|
|
- Asset organisation: bins vs metadata-based structures (+ search bins/filters)
|
|
- Viewing footage: single clips vs source reels; continuous playback from browser
|
|
- Source monitor + program monitor vs a single monitor
|
|
- Creating selects: selects reels, subclips and keyword collections
|
|
- On markers and notes
|
|
- From selects to editing in the timeline: Timelines in the source viewer: reel to reel editing
|
|
|
|
Chapter 2: the timeline
|
|
-----------------------
|
|
The timeline is the core of the editing application. This is the editor's canvas: the space where the
|
|
actual film or video is constructed, or rather: crafted. Therefore it is of the highest importance for
|
|
Lumiera to feature a timeline that takes the best of what current NLE's have to offer, while thinking
|
|
carefully on how we can improve upon these ways of working. There are many different aspects to
|
|
working in the timeline which I will explore in the different subsections of this chapter.
|
|
|
|
Tracks vs trackless
|
|
~~~~~~~~~~~~~~~~~~~
|
|
In general, we can observe two extremes when it comes to editing:
|
|
|
|
* On the one hand, there are NLE's modeled to resemble working with analog gear (i.e.
|
|
classic editing stations from KEM, Steenbeck, Moviola). A lot of terminology in editing
|
|
software (``bins'', ``reels'', ``cut'', ``mark in/out'', among many others) stems from the analog
|
|
origins of editing. Lightworks is an example of this. When trimming you ``unjoin'' a cut,
|
|
make changes, and then ``join'' the cut again, as if working with analog film that needs to be
|
|
taped together. It works best in conjunction with the Lightworks Console, a hardware device
|
|
that was designed specifically to make software editing feel as if editing analog film. Very
|
|
hands-on, very tactile, according to editors who have worked with these consoles
|
|
(unfortunately I haven't had a chance to try this myself).
|
|
+
|
|
Not just Lightworks, but also Avid is said to have been greatly influenced by analog
|
|
equipment, and Adobe Premiere's predecessor ReelTime was created to work like 3/4" tape
|
|
decks. Blackmagic's Speed Editor (and corresponding Cut Page in Resolve) has also been
|
|
designed according to this principle: to make editing feel like you're operating a machine.
|
|
Pressing buttons, rotating dials. This has a great feel to it, but it's less flexible than the other
|
|
extreme:
|
|
|
|
* Editing and trimming designed to be performed by mouse. Most NLE's added this earlier or
|
|
later during their development. Final Cut Pro was from its core designed to be used this way.
|
|
It's fast, and in combination with the clip connections and magnetic timeline, it's the least
|
|
destructive way to edit. Trimming and editing by mouse is less precise though, which is why
|
|
even FCP offers many keyboard shortcuts for precise trimming by keyboard. Using a mouse
|
|
feel slightly less tactile than using physical buttons and dials.
|
|
+
|
|
In this same category we can also mention touch screens (as they offer similar interactions
|
|
as a mouse, with the addition of finger gestures). Editing on a smartphone or tablet, when
|
|
not using a pen, feels even further removed from giving you a physical connection between
|
|
your hands and the buttons on the screen.
|
|
|
|
Because of its analog roots, traditionally, NLE's have been track-based. I'd like to quote Randy
|
|
Ubillos, original creator of ReelTime and Final Cut Pro:
|
|
____
|
|
``In a track based system the layers at the beginning, middle and end all share the exact same tracks
|
|
and you're always potentially disrupting things in other parts of the project when you make changes
|
|
in another area. One of the most common things I heard from editors was that as a project
|
|
progressed the likelihood of a change in one part of a project having an unintended effect
|
|
somewhere else in the timeline went up dramatically. Tracks implicitly put a relationship between
|
|
all of the items in that track, even though they may be actually completely unrelated.''
|
|
____
|
|
Source: https://www.linkedin.com/pulse/interview-randy-ubillos-developer-fcp-x-david-busse[Interview with Randy Ubillos]
|
|
|
|
Tracks have several advantages:
|
|
|
|
* They give us a way to organise our timeline by dedicating certain types of clips to certain
|
|
tracks.
|
|
|
|
** For example:
|
|
*** Interview shots on V1
|
|
*** B-roll on V2
|
|
*** Graphics on V3
|
|
|
|
** Or for audio:
|
|
*** Dialog on A1 + A2
|
|
*** Music on A3 + A4
|
|
*** Sound effects on A5-A8
|
|
|
|
* They allow for track-based effects (usually only implemented on the audio side).
|
|
|
|
* They support editing by keyboard, as you can toggle tracks on and off and bind this to keys.
|
|
|
|
Tracks have disadvantages as well:
|
|
|
|
* They're quite inflexible: you can't easily change their order.
|
|
|
|
* As we saw in Randy's quote, later in the editing process, when timelines become more
|
|
complex, it's easy to mess things up. Often not all tracks are visible within the viewport and
|
|
therefore you will need to remember its state (enabled/disabled/sync locked) and contents
|
|
or else a trim operation might throw things out of sync, or you might accidentally overwrite
|
|
clips. Similar issues can happen horizontally. In Avid for example, I've seen people make an
|
|
entire row of empty cuts at the end of their timeline, simply so they can check later if
|
|
anything was accidentally thrown out of sync. Lightworks has out-of-sync indicators to
|
|
mitigate sync issues.
|
|
|
|
* Clips that naturally belong together are separated, for example b-roll and associated sound
|
|
effects. Instead, clips that only share a shallow relation are grouped together.
|
|
|
|
* To me, personally, track management (i.e. the enabling and disabling of tracks and/or sync
|
|
locks in order to get a certain result when performing editing operations) takes me out of
|
|
my storytelling flow. It's a necessity that doesn't directly aid in the creative process.
|
|
|
|
Editors often proudly share screenshots of their timelines on social media, and they do look
|
|
impressive, but these are in fact pretty fragile structures.
|
|
|
|
.One of my own timelines, which is relatively simple by comparison to those of many Hollywood movies
|
|
image::{imgg}/wouter/01-timeline.jpg[width="110%", alt="Screenshot of a timeline", link="{imgg}/wouter/01-timeline.jpg"]
|
|
|
|
So naturally, a question would be: what will happen if we would let go of the track paradigm? This
|
|
is what Final Cut Pro has done, starting from the rewrite of Final Cut Pro X. At the time, a
|
|
disastrous marketing campaign caused many editors to leave the application, although more and
|
|
more people are starting to realise that many of its ideas were way ahead of its time. It's still the
|
|
only big NLE out there that was designed with computers in mind, and not analog hardware.
|
|
|
|
It's not entirely trackless, but it manages to hide the concept of tracks from the user. There are no
|
|
buttons to enable or disable tracks or other track controls, and instead, the tracks are called ``layers''.
|
|
In a nutshell, it works by having a primary storyline (in a track-based NLE this would be V1+A1)
|
|
where you build the foundation of your edit. Then the video clips you put on top and the audio clips
|
|
you put below get connected to one or more clips from the primary storyline. Move a clip on the
|
|
primary storyline, and all connected clips automatically move with it. With a modifier key you can
|
|
ignore clip connections, so that you can also easily move a primary clip elsewhere without its
|
|
connected siblings coming along.
|
|
|
|
image::{imgg}/wouter/02-trim-magnetic-1.jpg[width="100%", alt="(before trim)"]
|
|
|
|
.Extending one clip will automatically move all connected clips in order to keep sync
|
|
image::{imgg}/wouter/02-trim-magnetic-2.jpg[width="100%", alt="(after trim)"]
|
|
|
|
_Sounds good._ Why not just copy this? One reason is that FCP assumes that all clips that are not on
|
|
the primary storyline should be connected to this primary storyline. This might work well for fiction
|
|
films, but not necessarily for other types of video. Earlier I mentioned an example of sound effects
|
|
that share a connection to b-roll on a higher layer. FCP won't allow you to connect them. Another
|
|
limitation of FCP is that it's primarily designed to be operated by mouse. It's not possible to use
|
|
keyboard commands to, for example, swap the position of clips (other than by cut and paste), or to
|
|
perform slip edits (the trim keys will work, but the clip needs to be selected by mouse using the
|
|
Trim tool).
|
|
|
|
How else could we group clips together that ought to be connected? +
|
|
We could create groups that are directly editable, like so:
|
|
|
|
.Compound clips
|
|
image::{imgg}/wouter/03-grouped-1.png[width="100%", alt="Timeline with compound clips"]
|
|
|
|
However, there are a few problems with this: we expect rendering to happen from top to bottom, in
|
|
which case the b-roll would cover the subtitles. On top of that, it's hard to see at which points video
|
|
clips overlap. Last but not least: it looks rather unorganised.
|
|
|
|
Can we restructure this? Perhaps like this:
|
|
|
|
.Overlapping compound clips
|
|
image::{imgg}/wouter/03-grouped-2.png[width="100%", alt="Timeline with stacked overlapping compound clips"]
|
|
|
|
But how exactly would a user interact with a timeline like this? I will leave the answer to that
|
|
question for an actual design document, as for now I just wanted to show the concept of grouping so
|
|
that it becomes clear that alternative ways to organise the timeline might be of great value.
|
|
|
|
Tools + modes + views
|
|
~~~~~~~~~~~~~~~~~~~~~
|
|
If we observe existing NLE's, we can distinguish several ways to change timeline interactions.
|
|
Some use a tool-based approach (Adobe Premiere, Final Cut Pro), others a mode-based approach
|
|
(Avid Media Composer, Lightworks and DaVinci Resolve), and we can also see a view-based
|
|
approach (FCP's use of the precision editor, explained in more detail later). Which of these
|
|
interaction methods would be preferred for Lumiera?
|
|
|
|
* Using *modes* is somewhat controversial, as it increases cognitive load (the user needs to remember
|
|
which mode they're in) and can lead to user errors (an action in one mode might do something
|
|
different than intended in another mode). Another thing about modes is that they require a user
|
|
action for entering and exiting.
|
|
* A *tool*-based approach however, is very mouse-centered. It changes the behaviour of the mouse, not
|
|
of keyboard actions, and this change is visible in the cursor. Tools are of little use to the keyboard
|
|
editor.
|
|
* A *view*-based approach is not too different from using modes, with the difference that it drastically
|
|
alters the contents of a view or panel in the user interface. It's less common and can be seen in
|
|
FCP's precision editor. It doesn't change the working of keyboard shortcuts or the mouse and it
|
|
alters the timeline via animations in a very fluid way.
|
|
|
|
.Final Cut Pro's precision editor
|
|
image::{imgg}/wouter/04-fcp-precision-editor.jpg[precision editor]
|
|
|
|
Another example is the Trim View in DaVinci Resolve: whenever you perform a trimming
|
|
operation, the program monitor displays a trim view (showing the frames left and right of the cut
|
|
next to each other). As soon as you start doing something else, it exits this trim view. It needs no
|
|
dedicated user action.
|
|
|
|
This might seem like a great approach (and can be combined with tools and/or modes), but it does
|
|
mean a user needs to reorient a bit when they exit the altered view and return to its default state.
|
|
Perhaps that's a small price to pay, when not overdone.
|
|
|
|
When we more closely examine the behaviour of NLE's, we see that things are not as black and
|
|
white as they seem. No NLE exclusively uses one method over others. Resolve's modes do in fact
|
|
also change the mouse cursor's look and behaviour and can therefore be considered a hybrid
|
|
mode/tool system. FCP's Select and Position tools also change the behaviour of trimming keys and
|
|
can therefore indeed also be considered modes, which gives us a hybrid design as well. Specialised
|
|
views can be combined with tools or modes.
|
|
|
|
To conclude: all methods have pros and cons. Tools, modes and views aren't mutually exclusive, so
|
|
I think we should use whichever method or combination of methods is appropriate for different
|
|
actions in Lumiera. Whenever we can, we should try to avoid all three and design the app to be as
|
|
consistent as possible. Whenever we use a mode, we should see if we can design it in a way in
|
|
which a user fluidly enters and exits this mode, without requiring extra actions: _contextual modes._
|
|
Most mode-based NLE's already implement this for their trim mode in a way where selecting a trim
|
|
side automatically enters trim mode. However, a user does still need to explicitly exit trim mode.
|
|
|
|
Regardless of the method, immediate visual differentiation of tools/modes/views is important and
|
|
I'd like this to extend to any timeline option that can be toggled on/off. Therefore I'd like to propose
|
|
the use of a _contextual bar_ that appears over the bottom part of the timeline whenever a contextual
|
|
mode is active.
|
|
|
|
.Contextual bar with options for the mode/tool
|
|
image::{imgg}/wouter/05-contextual-bar.png[width="100%", alt="contextual bar"]
|
|
|
|
Currently I'm thinking of using this bar on two or three occasions:
|
|
|
|
1. When selecting clips. It can feature:
|
|
|
|
* a Group Clips button
|
|
* a Cut button
|
|
* a Duplicate button
|
|
* a Nudge Left '<' button
|
|
* a Nudge Right '>' button
|
|
* a Ripple toggle
|
|
* a Snap toggle
|
|
|
|
2. When trimming. It can feature:
|
|
|
|
* a Trim radio button
|
|
* a Slip radio button
|
|
* a Slide radio button
|
|
* a Trim Left '<' button
|
|
* a Trim Right '>' button
|
|
* a Ripple Trim toggle
|
|
|
|
3. When adding clips to the timeline.
|
|
+
|
|
It can feature options like Insert, Overwrite, Replace, etc.
|
|
+
|
|
-> See the next subchapter: »Adding clips to the timeline«.
|
|
|
|
A limitation of such a bar is that it might overlap with content that a user wishes to interact with. If
|
|
this is the case, then clicking on the grid with dots will let a user drag this bar out of the way. As an
|
|
extra option I would like to suggest to use a modifier key (Ctrl?) which temporarily hides the
|
|
contextual bar. Another consideration could be to attach this bar to the bottom of the timeline and
|
|
combine it with the zoom and navigation sliders, although I feel a more central default position will
|
|
get things done quicker.
|
|
|
|
|
|
Adding clips to the timeline
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
All NLE's offer multiple ways to get your material in the timeline, and those methods fall into the
|
|
following categories:
|
|
|
|
* Drag and drop from either the project contents panel or directly from a file browser
|
|
* By creating a timeline out of selected clips in a bin
|
|
* N point editing, of which the most commonly used is three point editing: you load a source
|
|
clip (or timeline) into a (source) viewer/monitor, mark an in point, out point and use one of
|
|
multiple options (by clicking their buttons, by pressing the corresponding keyboard shortcut,
|
|
or by dragging your clip from the source viewer into the program monitor onto a list of
|
|
zones), of which the most common ones are:
|
|
+
|
|
** Insert (based on playhead position)
|
|
** Overwrite (based on playhead position)
|
|
** Place on top (based on playhead position)
|
|
** Append (added to the end of the timeline)
|
|
+
|
|
Three point editing also works by only providing an in-point on the source clip, and marking
|
|
in and out points on the timeline. In order to choose on which tracks your clips end up,
|
|
track-based NLE's usually provide a way to route source tracks to timeline tracks via the
|
|
track header.
|
|
+
|
|
Some NLE's support four point editing, where speed adjustments are applied to make the
|
|
selected duration in the source clip match the selected duration in the timeline.
|
|
|
|
* Avid features a Replace Edit option: a selected clip on the timeline can be replaced by the
|
|
contents in the source browser with a single click or keystroke.
|
|
|
|
All of these options make sense, but in general I find it easier to remember two options (insert and
|
|
overwrite) and easily forget any surplus options that NLE's offer. We should also try to limit the
|
|
amount of keyboard shortcuts that a user needs to memorize, so two options seems like a proper
|
|
number. In that case, I would suggest one key/function for an Insert operation.
|
|
|
|
The second key/function will be a more generic ``Add Clip'' action, which might display a pop-up in
|
|
which we can select which method to use. TAB will cycle between Overwrite, Place on Top,
|
|
Append and Replace, followed by Enter to confirm. It will remember the last used option. Double
|
|
tapping the keyboard shortcut for this action will skip the pop-up.
|
|
|
|
Having to repeatedly view a pop-up menu (or double tapping a key) might feel cumbersome, so an
|
|
alternative could be to let the ``Add Clip'' action insert a clip by default and show all different
|
|
options via the contextual bar. You can then change the behaviour after the fact, until you commit
|
|
by doing something else. In this case, adding a clip will enter and exit another contextual mode.
|
|
|
|
One last thing I would like to address is the destruction that an insert operation can cause. Usually
|
|
this can be prevented by proper track management, but you can wonder why you would ever want
|
|
an insert action to cause the following:
|
|
|
|
image::{imgg}/wouter/06-sync-insert-1.png[height=110, alt="sync insert"]
|
|
|
|
.Inserting a clip with sync locks enabled for V2 might split a clip in Avid Media Composer.
|
|
image::{imgg}/wouter/06-sync-insert-2.png[height=110, alt="sync insert"]
|
|
|
|
In this case, if you'd like the clips on V2 to stay in sync, the overlapping clip will be split in two.
|
|
If you don't want this to happen you would have to move the overlapping clip to another track
|
|
temporarily, or move everything on V2 by hand with the same amount of frames as the duration of
|
|
the clips that's inserted. My point is, however, that while the behaviour above makes sense when
|
|
you strictly follow the logic of how such a timeline works, in real-life you would rarely want a clip
|
|
to be split only to keep sync. Therefore, I would like to propose insert operations to be nondestructive
|
|
by nature. Overlapping clips on other tracks or layers will simply move in its entirety.
|
|
|
|
Another thing to consider, as I put much emphasis on grouping (or linking) clips, is that we might
|
|
want to differentiate between inserting a clip into the currently active group, or inserting it in a
|
|
newly created group. This way a clip will always end up in a group without much manual work.
|
|
|
|
|
|
Navigating the timeline
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
Quick timeline navigation is key in editing. Let's start by examining how other NLE's deal with
|
|
this. We need to make a distinction between:
|
|
|
|
* Moving the viewport: the visible section of the timeline.
|
|
|
|
* Moving the playhead (which will ultimately also move the viewport, once the playhead goes
|
|
offscreen).
|
|
|
|
Moving the viewport, by mouse:
|
|
|
|
* This usually happens by dragging scrollbars.
|
|
|
|
* In pretty much every application the scrollwheel can be used to scroll either horizontally or
|
|
vertically (usually a setting defines the default direction, and the other direction can be
|
|
toggled with a modifier key).
|
|
|
|
* DaVinci Resolve allows moving the viewport by middle mouse dragging. Quite useful,
|
|
actually.
|
|
|
|
Moving the viewport, by keyboard:
|
|
|
|
* Some apps use Page Up/Down for this (i.e. Premiere).
|
|
|
|
* Resolve scrolls the timeline vertically with Page Up and Down and supports shortcuts for
|
|
Previous/Next Timeline Page.
|
|
|
|
Moving the viewport, by other device:
|
|
|
|
* I don't recall having seen this option anywhere.
|
|
|
|
Moving the playhead, by mouse:
|
|
|
|
* Avid allows doing this by clicking anywhere in the timeline (as long as the smart tools are
|
|
disabled, else you need to click in empty areas).
|
|
|
|
* FCP skims the timeline by default when moving the mouse. Clicking parks the playhead in a
|
|
new location.
|
|
|
|
* Others require clicking in the ruler above the timeline or dragging the actual playhead.
|
|
|
|
* The playhead will obviously also move during playback, which can be started and stopped
|
|
by clicking buttons underneath viewers or above the timeline.
|
|
|
|
Moving the playhead, by keyboard:
|
|
|
|
* Through playback, using j/k/l as a shuttle (repeated taps increase playback speed).
|
|
|
|
* Most apps provide keyboard shortcuts for moving single frames left and right.
|
|
|
|
* Most apps provide keyboard shortcuts for moving steps of multiple frames left and right (in
|
|
Premiere you can choose how large the steps are, Resolve only supports single seconds).
|
|
|
|
* Most apps provide keyboard shortcuts for going to the previous or next cut.
|
|
|
|
* Most apps provide keyboard shortcuts for going to the previous or next marker.
|
|
|
|
* Most apps will use the Home and End keys to move to the start and end of the timeline.
|
|
|
|
* Most apps provide keyboard shortcuts for going to the previous or next keyframe.
|
|
|
|
* Most apps provide ways for typing timecodes.
|
|
|
|
Combining mouse and keyboard:
|
|
|
|
* Adobe Premiere has a "move playhead to cursor" feature that can be bound to a key.
|
|
Very useful!
|
|
|
|
Using other devices:
|
|
|
|
* Shuttle: allows controlling playback speeds and direction depending on how far you turn the
|
|
dial left or right.
|
|
|
|
* Jog wheel: allows stepping left or right, frame by frame.
|
|
|
|
* Blackmagic's Speed Editor has the option to change the function of its wheel between
|
|
shuttle, jog and scroll. The shuttle mode is practically unusable, but jog and scroll provide
|
|
amazingly fluid ways to navigate the timeline. Especially in combination with markers and
|
|
jumping between these by keyboard shortcuts, this is a wonderful way to work.
|
|
|
|
Zooming also needs to be mentioned here, because often we might be zoomed in, do some work,
|
|
zoom out to get an overview of the timeline, and zoom in to another part of the timeline.
|
|
Zooming in and out, by mouse:
|
|
|
|
* Usually done either by using a zoom tool,
|
|
|
|
* Or by using zoom sliders.
|
|
|
|
Zooming in and out, by keyboard:
|
|
|
|
* Every NLE has keys to zoom in and out horizontally. Some (Premiere, Resolve, Avid)
|
|
support keys to expand and shrink all track heights at once (vertical zooming).
|
|
|
|
|
|
Navigating with keyboard shortcuts
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
I can imagine that all of the keyboard shortcuts for navigation were invented simply to provide
|
|
many options for each editor to choose what they need. This way, every editor can pick the
|
|
shortcuts that best fit their workflow.
|
|
|
|
Navigation by means of keyboard has very good support in most apps and it's a matter of providing
|
|
similar shortcuts in Lumiera. It could be expanded by allowing the creation of *navigation markers*
|
|
(a special category of markers) that are bound to keys or numbers. A user can jump to specific
|
|
markers by pressing a ``go to navigation marker'' key, followed by the key they bound. This is
|
|
basically Vim's way of doing it (m+0-9a-zA-Z to bind, backtick+0-9a-zA-Z to jump). Or we might
|
|
want to keep it as simple as having the regular ``add marker'', ``add and edit marker'' and ``go to
|
|
next/previous marker'' keyboard shortcuts.
|
|
|
|
Sections (explained xref:_organising_the_timeline_sections[later in this chapter])
|
|
will get navigation markers automatically, so a user doesn't have to create each marker manually.
|
|
Or we might want to include keyboard shortcuts for ``go to previous/next section''.
|
|
|
|
*Fast forward and fast rewind keys* as found in Reaper might be a helpful addition to the
|
|
aforementioned keys. This would give as a quick way to skim a timeline by keyboard. While fast
|
|
forward and rewind can be achieved by the regular j/k/l shuttle controls, this requires a lot of
|
|
tapping to get to the desired speed, over and over again.
|
|
|
|
|
|
About mouse navigation
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
Scrollbars and zoom sliders have a different set of reasons for being chosen as the de facto standard
|
|
widgets for navigation. Familiarity on the one hand, and visibility on the other. By having these
|
|
controls visible at all times, yet outside of the working area itself, each user will be able to locate
|
|
them while they remain out of the way. These are very good reasons for their existence and
|
|
positioning, but they come at the cost of speed: moving your mouse cursor out of your main
|
|
working area towards the edges and back takes time and interrupts the creative flow. It works, but
|
|
it's not ideal. That's why I would like to propose an additional way to navigate by mouse, which is
|
|
by *popup widgets*. These will pop up around the cursor, triggered by a keyboard press (similar to
|
|
how Blender uses pie menus):
|
|
|
|
Skim widget:: by moving the mouse in a small bar we can quickly skim the entire timeline. This
|
|
will move both the viewport and playhead. Clicking the left mouse button will accept the new
|
|
position and close the widget.
|
|
+
|
|
.Skim widget
|
|
image::{imgg}/wouter/07-1-skim.png[width="100%", alt="A skim widget rendered as overlay"]
|
|
|
|
|
|
Autoscroll widget:: when the user moves the mouse cursor slightly left or right, it will enter zones
|
|
in which the timeline view will scroll left or right (much like the autoscroll feature in Firefox).
|
|
When the user moves the mouse farther away from the initial starting point, the scrollspeed will
|
|
increase. This will also work vertically. The playhead will move along as well.
|
|
+
|
|
.Autoscroll widget
|
|
image::{imgg}/wouter/07-2-autoscroll.png[width="100%", alt="A widget for auto-scrolling"]
|
|
|
|
Zoom widget:: moving the mouse left or right from the center will zoom horizontally, up and
|
|
down will zoom vertically.
|
|
+
|
|
.Zoom widget
|
|
image::{imgg}/wouter/07-3-zoom.png[width="100%", alt="An overlay widget to control zooming"]
|
|
|
|
Mouse-only navigation:
|
|
|
|
Combined widget:: we could make a widget that combines skimming, autoscroll (only
|
|
horizontally) and zooming (horizontally). This widget is triggered by clicking and pressing the right
|
|
mouse button. When released, it will commit to the new location/view. If a user right clicks and
|
|
immediately releases the button, a regular context menu will appear.
|
|
+
|
|
.Combined skim, zoom and scroll widget
|
|
image::{imgg}/wouter/07-4-combined.png[width="100%", alt="Overlay widget to combin skim, zoom and autoscrol function"]
|
|
|
|
|
|
Why popup widgets?
|
|
^^^^^^^^^^^^^^^^^^
|
|
I can't speak for others, but personally I dislike moving the mouse downwards towards the edge of
|
|
the screen to access scrollbars or zoom sliders. We'd like the mouse to stay in the center of where
|
|
we're working.
|
|
|
|
With popup widgets, we might be able to improve navigation speed, but at the cost of familiarity
|
|
and visibility. That's why I propose to include all aforementioned widgets. We keep the traditional
|
|
sliders and scrollbars, but also add the popup widgets as an extra method for navigation for whoever
|
|
is willing to learn this.
|
|
|
|
Potential downsides
|
|
^^^^^^^^^^^^^^^^^^^
|
|
|
|
* Widgets might be partially displayed offscreen when the mouse is near the edge of the
|
|
screen.
|
|
|
|
* Very long timelines might make the skimming widget oversensitive. Possible solution:
|
|
either enlarge the bar, or create zones near the edges of the bar where the behaviour changes
|
|
to be similar to the autoscroll widget.
|
|
|
|
* When using the keyboard shortcut versions: a downside is having even more keyboard
|
|
shortcuts that need quick access from the one hand that stays on the keyboard.
|
|
|
|
|
|
Selecting clips
|
|
~~~~~~~~~~~~~~~
|
|
Selecting a single clip happens in all NLE's by left mouse clicking. Selecting multiple clips happens
|
|
through box-select, by using left mouse and drag. Premiere and Resolve both offer ``Selection
|
|
follows playhead'', where the position of the playhead determines which clip gets selected. Then
|
|
there are keyboard shortcuts, to select the next or previous clip on a track. Final Cut Pro lets you
|
|
move the clip selection up and down by Cmd+up/down.
|
|
|
|
Selecting multiple clips by keyboard has no support that I know of in any big NLE. I would suggest
|
|
to add this though, because the alternative for keyboard selection is the famous mark in/out range.
|
|
That's a pretty arbitrary way to indicate what you'd like to extract, lift or remove, and, in all
|
|
fairness, this works great as long as your timeline has few tracks. However, once you have multiple
|
|
overlapping clips on different tracks, combinations of mark/lift/extract/insert/overwrite require
|
|
careful track selection and there are serious risks of throwing tracks out of sync. It's not very
|
|
convenient either, the moment you start creating J- or L-cuts. It's a butcher's knife that pays no
|
|
respect to any kind of clip connections.
|
|
|
|
While we should support marking in and out points (and I'd advice to copy Lightworks' _mark and
|
|
park,_ where you only need to set a single mark and the playhead becomes the second mark) simply
|
|
because most professional editors are so used to them, we should aim to include less destructive
|
|
ways of arranging clips on the timeline. The natural element in the timeline is the clip, so I would
|
|
suggest to focus on providing proper ways to select clips and edit the positions and durations of
|
|
these clips, instead of relying on in and out marks to do the job.
|
|
|
|
I would propose to use the arrow keys for navigating clips and groups. There can be a cursor (for
|
|
example, a white dot) which we can move left, right, up, and down by using the arrow keys.
|
|
Changing the cursor from clip to clip will also move the playhead to the start of the highlighted clip
|
|
- but this is secondary. A clip-based focus instead of playhead/cut-based focus will be different from
|
|
what any other NLE does at the moment, but enabling multi-clip selection by keyboard will be a
|
|
good reason to go in this direction.
|
|
|
|
.Selection mockup: selected clips are highlighted in yellow, the cursor is a white dot.
|
|
image::{imgg}/wouter/08-selection.png[width="100%", alt="selecting clips"]
|
|
|
|
For selecting, we can introduce an ``add to selection'' key which adds the highlighted clip to the
|
|
current selection (apart from the convention of using Ctrl+mouse click). Selected clips can have a
|
|
differently colored box, yellow, for example.
|
|
|
|
One thing to note is that we do still need extra keyboard shortcuts to move the playhead frame by
|
|
frame, indepently from the clip selection. See the navigation subchapter for more details.
|
|
Selection will be one of the previously mentioned _contextual modes._ The user can always return to
|
|
their previous selection until they make a new one, by pressing the corresponding keyboard shortcut
|
|
(S).
|
|
|
|
|
|
Arranging clips
|
|
~~~~~~~~~~~~~~~
|
|
Most NLE's handle the arranging of clips in a destructive way. Drop one clip over another, and the
|
|
clips underneath disappear. Move one of two clips that are connected by a transition, and the
|
|
transition disappears. While it's certainly true that experienced editors will understand the risks
|
|
involved in moving clips and will therefore avoid such destructive behaviour unless they intend for
|
|
something to be destroyed, accidents still occur and most probably someone won't notice until much
|
|
later, when undo cannot help to recover the lost work anymore.
|
|
|
|
At the same time, something as fundamental as swapping the position of two neighbouring clips is
|
|
harder than it should. Premiere has Ctrl+Alt+drag, but the results can be destructive. Resolve has a
|
|
similar modifier combination, and keyboard shortcuts for swapping left and right, but these also
|
|
easily mess up parts of your edit if you're not careful with your track selection. Avid's smart tool
|
|
has a Segment Mode that can be set to extract/splice-in, which will do a similar thing. It only has an
|
|
effect on the tracks that hold the clip selection and results can get messy when there are J- or L-cuts.
|
|
An alternative is to select a clip by mouse, use ``ripple cut'', move the playhead to the next cut, and
|
|
use ``paste insert'', but this can also be destructive when not being careful with track management.
|
|
|
|
We've talked about using in and out marks already in the previous subchapter, so I will skip that for
|
|
now.
|
|
|
|
FCP is the only widely used NLE as of now that allows non-destructively changing the order of
|
|
clips, by having other clips move out of the way: the so-called _magnetic timeline_
|
|
(see xref:_tracks_vs_trackless[above]). How come the
|
|
other professional NLE's make it so difficult to simply change the order of clips? The reason for
|
|
that, I can only assume, is that the software doesn't know how clips on different tracks relate to
|
|
each other. And as a result, it will be very hard to guess how to exactly change the order. FCP solves
|
|
this problem by having clips always connect to a primary storyline. Lumiera could do a similar
|
|
thing by utilising its grouping features, in combination with a Ripple-toggle in the contextual bar of
|
|
the selection mode. As long as clip relations are clear, changing the order of clips should be simple
|
|
to achieve.
|
|
|
|
|
|
Trimming clips
|
|
~~~~~~~~~~~~~~
|
|
Trimming means extending or shortening the duration of one or more clips (simultaneously), either
|
|
from its start or end. In most applications, there are two distinct ways to trim: ripple trimming and
|
|
non-ripple trimming. Ripple trimming means that when you extend or shorten a clip, all other clips
|
|
on the same track and possibly on other tracks move along. When non-ripple trimming, all clips
|
|
stay in place, and when a clip is shortened, a gap appears. To choose a trim type, NLE's use either
|
|
tools or modes.
|
|
|
|
* FCP's Select tool defaults to ripple trimming, and it's Position tool does non-ripple
|
|
trimming.
|
|
|
|
* In Premiere it's the other way around: the default selection tool does non-ripple trims, and
|
|
the ripple edit tool... well, it's in the name. A user doesn't have to switch tools per se:
|
|
pressing the Ctrl modifier will inverse a tool's mode of operation.
|
|
|
|
* Resolve talks in terms of modes, not tools, and it has two modes related to trimming: the
|
|
default Selection Mode and Trim Edit Mode. The latter lets you ripple trim (by dragging the
|
|
edges of clips), slip (dragging inside a clip, upper half) and slide (dragging inside a clip,
|
|
lower half) - more on slip and slide edits later.
|
|
|
|
* Avid has a trim mode that can be in overwrite trim or ripple trim mode, indicated by the
|
|
color of the trim sides (red or yellow). The timeline will be in either of these modes when
|
|
entering trim mode.
|
|
|
|
* Lightworks has a trim mode that defaults to ripple trimming, unless you specifically use the
|
|
“drag to black” feature by Control-clicking trim edges when entering trim mode. When
|
|
using the keyboard, one needs to mark a section and use the Remove command (similar to
|
|
Avid''s ``lift'') to create a gap.
|
|
|
|
Next to ripple/non-ripple trimming there are three other edit operations closely related to trimming
|
|
that need to be mentioned:
|
|
|
|
* Roll edits. This is where you move a cut left or right, so that as a result, one clips gets
|
|
extended, while the other gets shortened.
|
|
|
|
* Slip edits. Nothing gets extended or shortened. Instead, you shift the contents of one or more
|
|
clips on the timeline.
|
|
|
|
* Slide edits. This moves a selected clip (or clip selection) left or right, thereby keeping its
|
|
own duration, while the duration of its surrounding clips gets altered.
|
|
|
|
Some apps use their trimming system for slip and slide edits (Avid, Lightworks). Others use a
|
|
special tool or mode and/or separate keyboard shortcuts for this (FCP, Premiere, Resolve).
|
|
|
|
|
|
Selecting trim sides
|
|
^^^^^^^^^^^^^^^^^^^^
|
|
Every trim starts by selecting which sides of which clips need to be included in the trimming. How
|
|
many sides to select greatly depends on how many tracks are involved and if the NLE has a sync
|
|
lock system or not. Sync locks makes sure that when you ripple trim selected clips, clips on other
|
|
tracks automatically stay in sync. This means (manually) enabling or disabling the sync lock per
|
|
track. Once set, trimming a single clip can be enough to have all tracks move along, although you
|
|
might still need to manually select trim sides for overlapping clips to get the desired result.
|
|
|
|
image::{imgg}/wouter/09-sync-trim-1.png[height=140, alt="trimming with sync-lock(before)"]
|
|
|
|
.Avid's sync locks will split longer clips by default, in order to keep sync. Such destructive behaviour should be avoided in Lumiera.
|
|
image::{imgg}/wouter/09-sync-trim-2.png[height=140, alt="trimming with sync-lock(after)"]
|
|
|
|
Without sync locks you will have to select trim sides on every track that needs to stay in sync,
|
|
although, as we'll see, even that can be accomplished by a single keystroke. FCP is the exception
|
|
here: it does not use sync locks (as it has a trackless design), but keeps sync not based on tracks, but
|
|
on clip connections (this is discussed in the subchapter ``Tracks vs Trackless'').
|
|
|
|
Let's first examine trim side selection by mouse. This is generally as simple as clicking near the
|
|
edge of a clip, or on the edge between two clips to select both sides for a roll edit.
|
|
|
|
Adding additional trim sides often works by using modifier like Ctrl + left click (Premiere, Resolve,
|
|
Lightworks, Avid). FCP does not allow the selection of multiple trim sides and therefore does not
|
|
support _asymmetric trimming._ Such trims are still possible, but need to be performed in two steps
|
|
rather than one.
|
|
|
|
Keyboard selection of trim sides happens in general by providing shortcuts for selecting the left (A)
|
|
side, the right (B) side, or both, of a cut (Avid, Premiere, Resolve and FCP, although the latter does
|
|
not have a shortcut for selecting both sides as it uses a dedicated Trim tool for roll edits). This
|
|
applies to the cut nearest to the playhead. Lightworks is the only NLE with a slightly different, but
|
|
very powerful method: instead of A/B/both, it has four shortcuts:
|
|
|
|
* Trim last out
|
|
* Trim in
|
|
|
|
These two apply to all cuts on enabled tracks to the left of the playhead.
|
|
|
|
* Trim out
|
|
* Trim next in
|
|
|
|
These two apply to all cuts on enabled tracks to the right of the playhead.
|
|
These commands can be combined: when pressing multiple keys, new trim sides are added to the
|
|
selection. This allows for quickly selecting many trim sides on many tracks.
|
|
|
|
.One keystroke led to the selection of these four trim sides in Lightworks
|
|
image::{imgg}/wouter/10-trim-side.png["select trim side"]
|
|
|
|
Another feature that was already mentioned in a previous chapter, is FCP's precision editor, which
|
|
can be triggered by double clicking a cut or by keyboard shortcut. This shows how much footage
|
|
from each clip is available for trimming and allows ripple trimming as well as roll edits to be
|
|
performed by mouse or keyboard.
|
|
|
|
|
|
Performing the trim
|
|
^^^^^^^^^^^^^^^^^^^
|
|
Usually we see three ways to perform a trim:
|
|
|
|
1. Frame by frame. This can be done by mouse by clicking and dragging the edges of a clip, or
|
|
by keyboard by using shortcuts for ``left one frame'', ``right one frame'', ``left 10/many frames'',
|
|
``right 10/many frames''. Instead of using keyboard shortcuts, dedicated hardware can be used
|
|
to joggle left or right to perform trimming.
|
|
2. By specifying an exact amount of frames. Pretty much every NLE supports using the plus
|
|
and minus keys on the keypad to enter exact frame numbers. Lightworks does an excellent
|
|
job at this: when not entering any amount (so just plus/minus + enter) it will repeat the last
|
|
entered amount of frames.
|
|
3. Dynamic trimming. This means starting playback of the timeline around the position of the
|
|
cut, and pressing a key to mark a point in realtime where the cut should be placed. Avid and
|
|
Lightworks have dynamic trimming support within their trim modes. Resolve has a separate
|
|
switch for this that needs to be toggled, and Premiere has a separate mode for dynamic
|
|
trimming, simply called ``Trim Mode''. FCP does not seem to support dynamic trimming at
|
|
the time of writing.
|
|
|
|
|
|
Previewing the cut
|
|
^^^^^^^^^^^^^^^^^^
|
|
Most NLE's feature a Preview keyboard shortcut with user-adjustable pre-roll and post-roll
|
|
duration. Avid always does a looped preview around the cut in trim mode when triggering playback.
|
|
|
|
Entering and exiting trim mode
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
Avid and Lightworks have keyboard commands to both enter and exit their trim modes. When used
|
|
for entering, Lightworks will re-enable the previous trim side selection. FCP's precision editor can
|
|
be closed with the Escape key, as can Avid's trim mode.
|
|
|
|
|
|
Analysis and proposal
|
|
^^^^^^^^^^^^^^^^^^^^^
|
|
My proposal is to leverage the same system as the clip selection system to highlight a clip, and then
|
|
have three commands:
|
|
|
|
* Select the clip's in point as trim side
|
|
* Select the clip's out point as trim side
|
|
* Select the clip's in point for a roll edit
|
|
|
|
If the latter is pressed a second time, it will take the clip's out point for a roll edit. When the first
|
|
two shortcuts are pressed once, they select the trim side for ripple trims. When pressed again, they
|
|
will switch to non-ripple trims (and back again with another press). There should be a clear visual
|
|
difference between these two (perhaps through the color of the brackets, as in Avid).
|
|
|
|
Note that this approach closely resembles Lightworks, and is different from Avid, FCP, Premiere
|
|
and Resolve. Those apps take the cut closest to the playhead as the basis for choosing a trim side.
|
|
Lightworks takes the underlying clip as its basis. Since we already have a mechanism for navigating
|
|
clips, we should probably not add another mechanism just for navigating cuts.
|
|
|
|
I propose to not make use of sync locks. They apply to entire tracks and we previously established
|
|
that clips that have no relation to each other might share a track, so it makes little sense to provide
|
|
track based operations. We should instead take the actual clip connections that the user establishes
|
|
into account. This way we also don't need to be able to select multiple trim sides at once (for
|
|
complex asymmetric trimming operations), as this can create sync problems elsewhere on a track.
|
|
|
|
Trimming itself doesn't need to be reinvented. Trimming frame by frame, by a specific amount of
|
|
frames or dynamically through playback make perfect sense and offer a full range of options, from
|
|
extremely precise to trimming on gut feeling.
|
|
Ideally trimming sides should stay active and we won't need to enter or exit a trim mode. However,
|
|
we should consider that we need the following keyboard shortcuts:
|
|
|
|
* Trim left many frames
|
|
* Trim left 1 frame
|
|
* Trim right 1 frame
|
|
* Trim right many frames
|
|
|
|
These same keys can't double for nudging clips, the way it does in many apps, without using modes.
|
|
Therefore my proposal is indeed to introduce a Trim mode. As said, it should be designed as a
|
|
contextual mode that we fluidly enter and exit and that is visually easy to distinguish from the
|
|
regular mode, which we can call the Position mode. Trim mode can be accentuated by marking the
|
|
part of the timeline we'll be previewing. As in Avid, in trim mode playback could always preview
|
|
the selected cut, so we won't need a special Preview (sometimes called ``Play around'') shortcut. Trim
|
|
mode will be exited automatically whenever the user clicks in an empty spot of the timeline or
|
|
presses the trim mode key (T). This key can also be used to return to the last-used trim
|
|
configuration.
|
|
|
|
.Mockup of the trim mode. The striped area marks the pre- and post-roll that will be previewed.
|
|
image::{imgg}/wouter/11-trim-mode.png[width="100%", alt="using trim mode"]
|
|
|
|
|
|
Splitting and merging clips
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Tool-based NLE's offer a Blade or Cut tool that will cut clips wherever a user clicks. All NLE's
|
|
offer a dedicated keyboard shortcut for creating a cut at the playhead as well.
|
|
|
|
Merging two timeline clips with so-called ``through edits'' is often possible by selecting the cut for a
|
|
roll edit and pressing the delete key. A through edit is a cut made within a clip, where the start of the
|
|
second clip in the timeline matches the next frame from the source clip that corresponds to the first
|
|
timeline clip.
|
|
|
|
A Blade tool, a shortcut for Add Cut and the ability to remove through edits with backspace seem
|
|
all worth implementing.
|
|
|
|
|
|
Removing clips
|
|
~~~~~~~~~~~~~~
|
|
In general, we find the following options:
|
|
|
|
* Select a clip, then: backspace or delete key, or (ripple) cut command.
|
|
* In and out points, then lift or extract.
|
|
* Lightworks lets you remove a clip by dragging it outside of the timeline window.
|
|
|
|
These operations are so common that I would not change them.
|
|
|
|
|
|
Organising the timeline: sections
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
I would like to propose the ability to divide a timeline into multiple sections. Each of these sections
|
|
will have a header in the ruler that can be edited, to give each section a name (similar to how
|
|
duration markers in Premiere are displayed).
|
|
|
|
image::{imgg}/wouter/12-sections.png[width="100%", alt="Timeline with sections"]
|
|
|
|
The benefits of sections:
|
|
|
|
* Creating a broad sense and clear overview of how a timeline is constructed. Background
|
|
colors in the timeline will make it easy to differentiate between different sections.
|
|
|
|
* Easy navigation between sections by keyboard shortcuts.
|
|
|
|
* Keeping sync. All clips in a section are encapsulated. If you work in one section, you will
|
|
not be able to throw clips in other sections out of sync. Users could also time-lock a section,
|
|
so it will stay in place regardless of other edit operations. This is especially useful when
|
|
editing on music, but will also prevent losing sync between other elements that have been
|
|
carefully lined up. Sections will not prevent anyone throwing anything out of sync within a
|
|
section, but at least not the entire timeline will be affected.
|
|
|
|
* The order of sections can easily be changed by clicking and dragging. This way sections can
|
|
be used to, for example, easily change the order of scenes. The free-flowing editor for
|
|
example, can construct different parts of their edit on different parts of the timeline in
|
|
different sections, and then arrange them later.
|
|
|
|
* Sections could have a versioning system: this would allow the user to try different cuts
|
|
within a section and to quickly change between these different versions.
|
|
|
|
Several other characteristics of sections:
|
|
|
|
* Clips can be excluded from being part of a section. For example: music tracks could span
|
|
the entire length of a video by not being included in any section.
|
|
|
|
* When working within a section, its size will adapt to your edit operations (so its edges will
|
|
shrink or expand automatically while trimming or moving clips).
|
|
|
|
* A new timeline will have one large section spanning its entire length. A “split section”
|
|
button and keyboard shortcut will create new sections.
|
|
|
|
Things to consider:
|
|
|
|
* How to move clips from one section to another?
|
|
* If sections can be time-locked then they will probably need to be able to overlap.
|
|
|
|
|
|
Adding and editing transitions
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
There's usually a variety of ways to add transitions:
|
|
|
|
* Right clicking on a cut and choosing a transition from a context menu
|
|
|
|
* Double clicking or dragging a transition from an effects or transitions panel
|
|
|
|
* With keyboard shortcuts. Premiere has separate shortcuts for audio and video transitions,
|
|
others (Lightworks, Resolve) have a single transition shortcut that detects whether a video or
|
|
audio transition needs to be added. The default length can often be adjusted in the app's
|
|
settings, as well as the default transition type. Some apps have shortcuts to create a
|
|
transition from a clip's start or end to the position of the playhead.
|
|
|
|
* Avid has a configuration panel for adding transitions:
|
|
|
|
image::{imgg}/wouter/13-transition.png[align="center", alt="transition properties"]
|
|
|
|
* Some apps allow adding transitions to every cut in the in-out range (Avid, Lightworks). Avid
|
|
gives you the option to skip cuts that already have a transition. Very useful for adding short
|
|
(2-4 frame) audio transitions to each audio clip that doesn't have a specific transition applied
|
|
already.
|
|
|
|
* Most apps allow adding transitions to a selection of clips.
|
|
|
|
* Blackmagic's Speed Editor lets you select different transitions through a button press and the
|
|
big dial, and lets you adjust its length through the dial as well.
|
|
|
|
Editing transitions:
|
|
|
|
* Changing a transition's duration always works by dragging the transition handles in between
|
|
clips (in Avid you will need to have Transition Manipulation enabled for this to work).
|
|
|
|
* Changing a transition's position sometimes works by dragging it left or right (Premiere,
|
|
Avid).
|
|
|
|
* Avid lets you type in the duration underneath the viewers.
|
|
|
|
* Often you can double click a transition to enter a duration.
|
|
|
|
* Final Cut Pro has a right click context menu option called ``Change Duration'' (Ctrl+D)
|
|
which lets you enter the desired duration by keyboard and press enter, for video transitions.
|
|
Audio transitions are actually performed by creating fades and having these fades between
|
|
clips overlap. They can be adjusted with the fade handles and require the ``Show Audio
|
|
Lanes'' or ``Expand Audio'' options to be enabled.
|
|
|
|
* Lightworks lets you trim transitions via its trim mode like any other cut.
|
|
|
|
* DaVinci Resolve and Final Cut Pro have a Transition tab on their Inspector panels where
|
|
length and position of transitions can be adjusted, among other settings.
|
|
|
|
Most of these established ways of working with transitions can be applied to Lumiera. I would like
|
|
to suggest to also add Avid's option to add transitions to a large number of cuts while skipping
|
|
existing transitions (and this should even be the default).
|
|
|
|
One thing we do need to address is how transitions magically disappear in pretty much any NLE
|
|
except Avid and Final Cut Pro, the moment you move one of the two adjacent clips elsewhere, or
|
|
whenever you replace a clip by another. Transitions take time to setup in the right way, and they
|
|
shouldn't disappear by themselves. I would suggest to follow Avid and FCP's behaviour and leave
|
|
transitions in place by default.
|
|
|
|
|
|
Changing timeline clip properties
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Each NLE has an effect properties panel en most have a generic properties panel for changing all
|
|
basic properties of clips in the timeline, such as:
|
|
|
|
* X & Y position
|
|
* scaling
|
|
* orientation
|
|
* rotation
|
|
* opacity and blend mode
|
|
* stabilization
|
|
|
|
Avid is the only NLE out there that still requires adding an effect to change these basic clip
|
|
properties (``3D DVE''). Quick access to such properties saves a lot of time, so enabling this is
|
|
essential. Depending on the actual effects workflow we might want basic properties to be part of an
|
|
effect that is automatically applied to each clip when it's added to the timeline. A separate Properties
|
|
panel (as in Premiere) is less ideal: the fewer panels, the better. FCP and Resolve use a tabbed
|
|
approach for their panels (which is named ``Inspector'') to keep different categories of properties
|
|
separated.
|
|
|
|
Chapter 3: finishing
|
|
--------------------
|
|
[red]#To be written.#
|
|
|
|
Chapter 4: a broader GUI concept
|
|
--------------------------------
|
|
[red]#To be written.#
|
|
|
|
- Panels vs fixed layouts.
|
|
- Workspaces.
|