Workflow-publish: adapt additions to Asciidoc

- 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)
This commit is contained in:
Fischlurch 2025-08-23 01:55:23 +02:00
parent 68633de53b
commit 6a42606c3a
2 changed files with 245 additions and 244 deletions

View file

@ -126,7 +126,7 @@ Joel Conclusions:
Timeline like this:
image::http://www.kenstone6.net/fcp_homepage/images_fcp_5_new_martin/07_fc_studio_new_martin.jpg[]
image::{imgg}/Joel-Conclusions-UI-layout.jpg[Conclusions for the UI layout]
Tracks
''''''''''

View file

@ -175,12 +175,13 @@ which different NLE's handle this and will propose possible directions for Lumie
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
- 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
-----------------------
@ -193,17 +194,17 @@ working in the timeline which I will explore in the different subsections of thi
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.
* 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
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
@ -211,28 +212,27 @@ designed according to this principle: to make editing feel like you're operating
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
* 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
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
``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. "
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]
@ -279,7 +279,7 @@ Editors often proudly share screenshots of their timelines on social media, and
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[Screenshot of a timeline]
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
@ -288,7 +288,7 @@ more people are starting to realise that many of its ideas were way ahead of its
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'.
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
@ -296,8 +296,12 @@ primary storyline, and all connected clips automatically move with it. With a mo
ignore clip connections, so that you can also easily move a primary clip elsewhere without its
connected siblings coming along.
Extending one clip will automatically move all connected clips in order to keep sync
Sounds good. Why not just copy this? One reason is that FCP assumes that all clips that are not on
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
@ -306,11 +310,11 @@ keyboard commands to, for example, swap the position of clips (other than by cut
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:
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/02-1-grouped.png[Timeline with 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
@ -319,76 +323,94 @@ clips overlap. Last but not least: it looks rather unorganised.
Can we restructure this? Perhaps like this:
.Overlapping compound clips
image::{imgg}/wouter/02-2-grouped.png[Timeline with stacked 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
* 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
* 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
* 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
.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.
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
the use of a _contextual bar_ that appears over the bottom part of the timeline whenever a contextual
mode is active.
Currently I'm thinking of using this bar on two or three occasions:
.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
* 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 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
@ -396,70 +418,74 @@ contextual bar. Another consideration could be to attach this bar to the bottom
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
* 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)
+
** 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
* 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
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
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:
Inserting a clip with sync locks enabled for V2 might split a clip in Avid Media Composer.
image::{imgg}/wouter/06-sync-insert-1.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
.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.
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
@ -554,8 +580,9 @@ 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.
@ -568,9 +595,9 @@ basically Vim's way of doing it (m+0-9a-zA-Z to bind, backtick+0-9a-zA-Z to jump
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 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''.
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
@ -595,7 +622,7 @@ will move both the viewport and playhead. Clicking the left mouse button will ac
position and close the widget.
+
.Skim widget
image::{imgg}/wouter/04-1-skim.png[A skim widget rendered as overlay]
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
@ -604,13 +631,13 @@ When the user moves the mouse farther away from the initial starting point, the
increase. This will also work vertically. The playhead will move along as well.
+
.Autoscroll widget
image::{imgg}/wouter/04-2-autoscroll.png[A widget for auto-scrolling]
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/04-3-zoom.png[An overlay widget to control zooming]
image::{imgg}/wouter/07-3-zoom.png[width="100%", alt="An overlay widget to control zooming"]
Mouse-only navigation:
@ -620,7 +647,7 @@ mouse button. When released, it will commit to the new location/view. If a user
immediately releases the button, a regular context menu will appear.
+
.Combined skim, zoom and scroll widget
image::{imgg}/wouter/04-4-combined.png[Overlay widget to combin skim, zoom and autoscrol function]
image::{imgg}/wouter/07-4-combined.png[width="100%", alt="Overlay widget to combin skim, zoom and autoscrol function"]
Why popup widgets?
@ -647,12 +674,15 @@ 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
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
@ -661,12 +691,14 @@ overlapping clips on different tracks, combinations of mark/lift/extract/insert/
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
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
@ -674,17 +706,20 @@ Changing the cursor from clip to clip will also move the playhead to the start o
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.
.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
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
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
@ -693,18 +728,22 @@ transition disappears. While it's certainly true that experienced editors will u
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.
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. How come the
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
@ -713,67 +752,55 @@ thing by utilising its grouping features, in combination with a Ripple-toggle in
the selection mode. As long as clip relations are clear, changing the order of clips should be simple
to achieve.
Trimming clips
Trimming
~~~~~~~~
~~~~~~~~~~~~~~
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
* 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
* 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
* 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
* 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
* 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.
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
* 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
* 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
* 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
@ -781,46 +808,58 @@ tracks automatically stay in sync. This means (manually) enabling or disabling t
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.
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-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').
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
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
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
* 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
* 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
.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
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
@ -830,263 +869,224 @@ entered amount of frames.
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
trimming, simply called ``Trim Mode''. FCP does not seem to support dynamic trimming at
the time of writing.
Previewing the cut
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
* 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,
if we consider that we need the following keyboard shortcuts:
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
* 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
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.
.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
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.
* 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).
The benefits of sections:
image::{imgg}/wouter/12-sections.png[width="100%", alt="Timeline with sections"]
Creating a broad sense and clear overview of how a timeline is constructed. Background
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.
Easy navigation between sections by keyboard shortcuts.
Keeping sync. All clips in a section are encapsulated. If you work in one section, you will
* 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
* 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
* 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
* 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
* 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”
* 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?
* 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.
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
* 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
Double clicking or dragging a transition from an effects or transitions panel
With keyboard shortcuts. Premiere has separate shortcuts for audio and video transitions,
* 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:
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
* 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.
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
* 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
* 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,
* 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.
Avid lets you type in the duration underneath the viewers.
* Often you can double click a transition to enter a duration.
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)
* 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.
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.
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
* 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
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
* 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
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
approach for their panels (which is named ``Inspector'') to keep different categories of properties
separated.
Chapter 3: finishing
@ -1097,4 +1097,5 @@ Chapter 4: a broader GUI concept
--------------------------------
[red]#To be written.#
Panels vs fixed layouts. Workspaces.
- Panels vs fixed layouts.
- Workspaces.