Playlist Changes For Timeline

Feb 10, 2014

As of version 14.02.08, we have changed some behavior of the Playlist and player that seemed necessary since the addition of the Timeline. It is still entirely possible to simply create a playlist project if you do not need multitrack. I myself often prefer to lay down my main story line using just a playlist. Then, maybe later I want to lay down a music bed. Therefore, we added “Add All to Timeline” to the playlist menu to “upgrade” a playlist project to a multitrack project. Now, the playlist also saves into the project MLT XML file along with the timeline. However, in a multitrack project, the playlist is like a media “bin” as seen in other programs - while still being optional. In addition, the player tabs now say “Source” and “Program” to reduce possible confusion having 2 Playlist tabs and 2 Timeline tabs on screen at the same time. Source shows a clip (or stream or device). In a playlist project, Program shows the playlist, and it shows the timeline in a multitrack project. Double-clicking a playlist item now always opens the shot in the Source player. This makes it more usable as a bin. In a playlist project, to seek to a playlist item, shift-double-click it or right-click it and choose Goto.

Multitrack Timeline

Dec 28, 2013

The new multitrack timeline is available as of version 13.12.28.

screenshot of Shotcut timeline v13.12.28

Please keep in mind that this is the first release of this feature. Most Shotcut development is done in the open, and this is not yet considered a ready feature. Still, it can be used to some degree of success if not expecting too much and being careful of some rough edges. Here is a quick list of what we have today:

  • works on all platforms
  • the player/viewer now is now tabbed: Clip, Playlist, or Timeline
  • multiple tracks - audio only (green) or audio/video (blue) tracks
  • adjustable track height
  • menu and toolbar at the top left
  • ruler strip at the top with timecode
  • playhead
  • track headers at the left
  • tracks are named using a standard V2, V1, A1, A2, ... convention
  • tracks can be renamed
  • track headers have toggle buttons for mute, hide, and composite
  • right-click [C] button in track header to more easily understand and access composite option
  • zoom slider at bottom, left
  • zoom using keyboard shortcuts 0 (reset), - (zoom out),. and = (zoom in)
  • notion of a current track with background tinted yellow
  • change current track by clicking header, track background, or up/down cursor keys
  • track scrolling - manually or automatically while playing
  • scrubbing
    • click on ruler or track background to seek to that point
    • drag on ruler or track background to scrub
    • hold down shift to scrub without having to drag (scim)
    • scrubbing at left & right edges automatically scrolls as-needed
  • thumbnails of in and out points of video with caching to storage between sessions
  • audio "waveforms" (technically, they are a graph of the audio level across all channels) with caching
  • notion of a selected clip, which is darkened
  • selecting a clip shows its filters in the filters panel
  • use menu at top left has to add an audio or video track
  • use menu at top left to close the timeline - both project and panel
  • all non-muted tracks mix audio
  • all non-hidden tracks can composite against a black background
  • append a clip to the current track via:
    • click + button,
    • press C key when timeline has focus
    • drag-n-drop from player or playlist (currently broken on Windows and OS X)
  • move a clip using drag-n-drop
  • trim clip in point by dragging its left edge (does not ripple)
  • trim clip out point by dragging its right edge (does not ripple)
  • snapping to edges of other clips and to the playhead
    (hold Alt key to temporarily suspend snapping while dragging)
  • lift a clip: remove it without affecting position of other clips
    • select it and click - button
    • select it and press backspace, delete, or Z key
    • right-click it and choose Lift from context menu
  • remove a clip and the space it occupies causing all following clips on timeline to "ripple" to the left
    • select it and shift+backspace or shift+delete
    • select it and press X key
    • right-click it and choose Remove from context menu
  • remove the gap between clips: right-click and choose Remove from context menu
  • undo/redo integration
  • project/document integration - current project reflected in title bar, modified indicator and prompting to save a modified project before closing
  • saves as MLT XML
  • can be encoded

Not Done

  • (done) inserting tracks between existing tracks
  • (done) removing tracks
  • (done) transitions
  • on-clip fader bars for audio and video levels
  • filter parameter key-framing
  • (done) insert and overwrite edits
  • fancy editing modes like ripple (done), slip, slide, roll
  • (done) splitting and joining clips
  • detach audio from video
  • (done) locking tracks
  • multi-select clips
  • cut/copy/paste
  • (done) saving what is in the playlist when saving a multitrack project (When done, this will make the playlist like the "bin" in other programs.)
  • undo/redo integration for filters
  • dragging to trim should interactively crop the audio waveform (It is, however, cropped and redraw when released.)

Known Problems

  • (fixed) does not work with GPU processing
  • (fixed) menus appear at wrong location in window on OS X
  • (fixed) drag-n-drop from clip viewer or playlist only works on Linux
  • (fixed) moving a clip causes some waveforms to disappear
  • (improved) sometimes undo/redo causes timeline corruption
  • sometimes thumbnails have incorrect aspect ratio
  • (fixed) You cannot dock ("put into a tab") the timeline with any other panels. In other words, do not try to stack the Filters panel along with the Timeline panel to switch between them using tabs. That does not work. If you accidentally do this, first un-tab everything so timeline is by itself. Then, using the View menu at the top, toggle the display of the timeline to hide and then show it. You can, however, place another panel at the bottom of the window around one of the edges of the timeline. For example, you can place the history view left of the timeline. We suggest docking the Filters panel in a tab at the top, left of the window along with Properties, Recent, and Playlist.

For the Technically Curious

We tried to implement this using MLT and Qt as much as possible with the least amount of new code and redundant state as possible. Meaning, it uses MLT objects for the document object model and its API to manipulate it. Then, we use the Qt model/view framework to add a non-stateful hierarchical Qt model wrapper/adapter for the MLT objects. This is then exposed in a QML-based timeline view that uses Quick Repeater elements with its support for data models and data binding. As like the QML filter UIs, the QML code for the timeline is loaded from the filesystem instead of resources embedded into the binary executable to facilitate customization, tinkering, and contribution. However, the Shotcut C++ APIs it uses are not yet documented, and Shotcut does not provide a QML/JS console or object inspector as found in some web browsers.

Video Tutorial: Normalize and Stabilize

Nov 10, 2013

This tutorial shows how to use the new audio normalize and video stabilize filters.

Video Tutorial: Using HTML5

Oct 11, 2013

Beauty Is More Than Skin Deep

Oct 1, 2013

Shotcut recently received a major technology upgrade of some of its components. For the technical folks, it has been upgraded to Qt 5! This will make it faster and easier to develop filter control panels and the forthcoming timeline. You see, the engine for Shotcut - MLT - has hundreds of audio and video filters available. After making a few in Shotcut it became obvious we did not want to keep making them using the traditional method. In addition:

  • 2 new custom UI themes/skins - light and dark - using clean, symbolic icons (in addition to the traditional "system" theme)
  • extended support for high DPI displays such as the Retina MacBook Pro - in particular, for the video viewport

Here comes the “more than skin deep part.” While everyone else has been working on getting video into HTML5, we have been working on getting HTML5 into video! The MLT plugin WebVfx uses Qt and WebKit technology - both of which have also been upgraded - to do just that. With this new version of Shotcut, WebVfx is getting more exposure, initially through 2 new filters:

  • Circular Frame: mainly a proof-of-concept, this demonstrates a filter whose processing is implemented in HTML5 canvas with a user interface implemented in QML to control its parameters.
  • Overlay HTML: just like it sounds. You can choose a HTML file on the file system and it will be rendered with a transparent background (if not set) over the video. Don't write HTML? There is a simple WYSIWYG HTML editor included. Did I mention it is simple? Feel free to try out some of the new HTML animation tools that are becoming available from Adobe, Google, Sencha, and others.

Unfortunately, we could not get all of this new stuff working correctly on Windows; so we had to disable support for GPU processing and the WebVfx integration on Windows at this time. The last Qt 4 version of Shotcut will remain available for download for a while.



Subscribe to this blog via RSS.

Recent Posts


Shotcut is a free, open source, cross-platform video editor for Windows, Mac and Linux. Major features include support for a wide range of formats; no import required meaning native timeline editing; Blackmagic Design support for input and preview monitoring; and resolution support to 4k.

Social Links

Copyright © 2011-2016 by Meltytech, LLC.
Shotcut is a trademark of Meltytech, LLC.

Site design by Magnetic Image. Magnetic Image, Inc.