Shotcut
Содержание:
- Why does Shotcut not use hardware accelerated video decoding?
- Timeline
- What is the history of Shotcut?
- New
- How do I add text? Is there a titler?
- Can I have multiple versions installed at the same time?
- How does Shotcut use multiple CPU cores and threads?
- How does Shotcut use the GPU (or not)?
- What is the history of Shotcut?
- What are the minimum system requirements?
- Настройка программы
- Can I have multiple versions installed at the same time?
- Main Menu
- Why do I not have the __ filter?
- New Bugs (in version 21.05.01)
- Version history / Release notes / Changelog
- All I see is white or green instead of video, and I know there is video in this file….
- Why does it frequently crash on Windows?
- Other Notes
- All I see is white or green instead of video, and I know there is video in this file….
Why does Shotcut not use hardware accelerated video decoding?
The video stream always originates in system (CPU) RAM, and CPU-based video
decoding is highly optimized and fast. Meanwhile, transferring full,
uncompressed video from the GPU RAM to system RAM is a relatively slow. Thus, in
the context of a video editor (not simply a player or transcoder),
hardware-accelerated decoding should only be done when all video processing can
also be done on the GPU. That alone is non-trivial. Shotcut does have an
OpenGL-based effects system that is disabled and hidden currently due to
instability. Even when enabled it is a small subset of all effects and does not
include a deinterlacer. Next, assuming you do not need to deinterlace and agree
to limit oneself to the GPU effects, there is a major technical hurdle to
transfer the decoded video in GPU RAM to OpenGL textures due to multiple
APIs for multiple operating systems.
Likewise, the complexity to convert OpenGL textures to hardware encoder frames
for the various hardware encoding APIs. Any tool that claims to do all of these
but does not ensure the video stays in GPU RAM is going to have limited
performance gain if any.
Even if made available (integrated) there are major hurdles to handle resource
limitations (number of simultaneous decodes) in a robust fashion and to handle
incompatible video streams with many permutations of encoding
profiles/parameters, APIs, and devices. That would result in a huge source of
unreliability and support issues.
If you want to help with this, please feel free to
contribute.
We have not made much progress here due to higher priorities: fixing bugs,
rework on some features, adding basic expected UI features, upgrading
dependencies, providing support, making documentation, and stabilizing GPU Effects.
Timeline
Action | Windows/Linux | macOS |
---|---|---|
Cut | Ctrl+X | command+X |
Copy | Ctrl+C or C | command+C or C |
Paste | Ctrl+V | command+V |
Add Audio Track | Ctrl+U | command+U |
Add Video Track | Ctrl+I | command+I |
Close | Ctrl+W | command+W |
Append | A | A |
Ripple Delete | X or Shift+Del or Shift+Backspace | X or shift+delete |
Lift | Z or Del or Backspace | Z or delete |
Insert | V | V |
Overwrite | B | B |
Replace | R | R |
Split | S | S |
Trim clip in | I | I |
Ripple trim clip in | Shift+I | shift+I |
Trim clip out | O | O |
Ripple trim clip out | Shift+O | shift+O |
Add/Edit Marker | M | M |
Delete Marker | Ctrl+Shift+M | shift+control+M |
Select Track Below | Down | down |
Select Track Above | Up | up |
Zoom In | = | = |
Zoom Out | — | — |
Zoom Fit | ||
Make Tracks Shorter | Ctrl+- | command+- |
Make Tracks Taller | Ctrl+= | command+= |
Reload | F5 | F5 |
Select clip | single left-click mouse | single-click mouse |
Select and seek clip | double left-click mouse | double-click mouse |
Select under playhead | Ctrl+Space | command+space |
Select All | Ctrl+A | command+A |
Select None | Ctrl+D | command+D |
Move selection left | Ctrl+Left | command+left |
Move selection right | Ctrl+Right | command+right |
Move selection up | Ctrl+Up | command+up |
Move selection down | Ctrl+Down | command+down |
Seek start of selected | double-click | double-click |
Toggle Mute track | Ctrl+M | control+M |
Toggle Hide track | Ctrl+H | control+H |
Toggle Lock track | Ctrl+L | control+L |
Toggle Snapping | Ctrl+P | command+P |
Toggle Ripple mode | Ctrl+R | command+R |
Toggle Ripple All Tracks | Ctrl+Alt+R | option+command+R |
Toggle Ripple mode and all tracks | Ctrl+Shift+R | shift+command+R |
Insert Track | Ctrl+Alt+I | option+command+I |
Remove Track | Ctrl+Alt+U | option+command+U |
Copy Timeline to Source | Ctrl+Alt+C | option+command+C |
Center the Playhead | Ctrl+Shift+P | shift+command+P |
Scroll to Playhead on Zoom | Ctrl+Alt+P | option+command+P |
What is the history of Shotcut?
Shotcut was originally
announced
in November, 2004! You can read more about it from a
backup of its original website.
The current version of Shotcut is a complete rewrite with none of the
original requirements in mind. The original Shotcut was created by
Charlie Yates, a MLT co-founder and original lead developer. Since Dan
Dennedy, another MLT co-founder and its current lead, wanted to create a
new editor based on MLT, he simply chose to reuse the
name
since he liked it so much. The current Shotcut had its origins as the
MLT BuildOnMe project.
BuildOnMe was created in January, 2011 as a minimal, example project of
how to use MLT in a cross-platform Qt 4 project. Eventually, Dan sought
to replace the aging Melted GTK+ client, Rugen, with a cross-platform
replacement and needed an app on which to easily test the cross-platform
compatibility of new MLT features such as
and
Movit.
That led him to fork BuildOnMe and start Shotcut.
New
- Added a new filter Time Remap in the new Time category that affects both audio and video.
- Added an Apple Silicon build.
- Added an option to Ignore missing files in Export > Export File (blocking dialog added in v21.01).
- Added a suggested file name to File > Export Frame… and remembers the last chosen format. These changes make this feature more convenient.
- Added a button in the Keyframes parameter track header to vertically zoom in to the minimum and maximumn values.
- Added a Use Sub-clip checkbox to the Convert to Edit-friendly dialog, under Advanced. This will convert only the trimmed portion of a clip plus up to 15 seconds before the in point and after the out point for a timeline clip. When this is on, only the selected clip is replaced and not every clip based on the same source. This option is especially convenient for use with Time Remap in which case it defaults to on if the clip has been trimmed.
- Added a Keep Advanced open checkbox to the Convert to Edit-friendly dialog that remembers your choice between sessions.
- Added a status message tip about useful keyboard modifiers to use when dragging keyframes.
- Added the display of minimum, maximum, and midpoint values to the vertical axis of curved parameters in Keyframes.
How do I add text? Is there a titler?
There are 2 text filters at this time: Text: Simple and Text: Rich. You can apply the text filters to a video
clip, an image file or a whole track. You can also apply a text filter to a transparent clip to act as its own text clip
by choosing File > Open Other > Text from the menu or Open Other > Text from the main toolbar. The default
background color in Open Other > Text is transparent which as well can be changed to a solid color by clicking on
the Background color button.
You can also create text with an external program as an image with an alpha channel and composite it. To composite, you
add a video track to the Timeline to use as a layer. Then, you open an image, set its Properties to adjust duration or
enable an image sequence, add it to the new video track, and further adjust its position and duration as-needed. You
might also want to apply the Size, Position & Rotate filter to the image clip. The image file formats that
support an alpha channel are PNG, SVG, and TGA. You can also use Quicktime Animation format. There are many tools that
can create images with alpha channels for this purpose. Some of them include GIMP, Inkscape, Krita, Paint.NET, etc. For
animation, consider Blender and Synfig. * * *
Can I have multiple versions installed at the same time?
Yes. Simply rename your existing program folder to put the version
number in it or move it out-of-the-way to another location.
On Windows, the installer is mostly just a fancy zip extractor that also
adds a start menu item. So, you can install the new version to a
different location, or rename the existing folder to prevent it from
being overwritten. Then, you can just navigate to whichever program
folder you want in Explorer and run shotcut.exe.
On macOS, you do not
need to copy Shotcut to the /Applications folder — that is merely a
suggestion. Simply drag Shotcut out of the .dmg to wherever you like and
rename the app bundle to put the version number into it. Or, rename the
existing version to move it out of the way before copying Shotcut from
the .dmg.
The same concepts apply to Linux, where Shotcut is simply
delivered as a compressed tar archive. However, on Linux, it is
important to understand that the launch icon always looks in
Shotcut.app; so, either version the folder containing the launch icon or
have multiple, versioned Shotcut.app folders and run the launch script
that is inside of it.
How does Shotcut use multiple CPU cores and threads?
Shotcut’s engine (MLT atop FFmpeg and other libraries) uses multiple CPU
cores/threads for:
- decoding video on many (most?) video codecs
- image slice-based multi-threaded processing in some processes
- frame-based multi-threaded image processing in many processes
- encoding video when not using the hardware encoder on most video codecs
When any of the above is not enabled, a bottleneck is introduced. Some of these
are minor and others major depending on the weight of the operation.
Shotcut’s interface — in addition to the main UI thread — uses multiple
background CPU cores/threads for:
- generating video thumbnails
- generating audio levels for waveform display in the timeline
- the engine itself (see above)
- sending video to OpenGL for display
- exporting
How does Shotcut use the GPU (or not)?
Shotcut uses the GPU in three ways:
- OpenGL for drawing parts of the user interface and showing video
- hardware encoding (where available and enabled)
- OpenGL for the hidden GPU Effects (filters and transitions) mode
Shotcut does NOT use the GPU or hardware acceleration for the following:
- decoding and pixel format conversion
- automatic (as-needed) filters to deinterlace, scale, and pad video and to
resample or downmix audio - filters that you add
- transitions
- compositing/blending video tracks
- mixing audio tracks
Thus, you cannot expect Shotcut to use close to 0% CPU and much % of GPU
when exporting using the hardware encoder because the reading of files and
decoding alone becomes a bottleneck to feed the hardware encoder. Also, if you
have any decent amount of image processing, you should expect a significant
amount of CPU usage especially if parallel processing is enabled (it is by
default). Software from other companies may limit itself to one GPU vendor API
such as CUDA in order to provide almost entirely GPU-based pipeline. Shotcut
has not chosen to go that route because it is a cross-platform solution.
What is the history of Shotcut?
Shotcut was originally
announced
in November, 2004! You can read more about it from a
backup of its original website.
The current version of Shotcut is a complete rewrite with none of the
original requirements in mind. The original Shotcut was created by
Charlie Yates, a MLT co-founder and original lead developer. Since Dan
Dennedy, another MLT co-founder and its current lead, wanted to create a
new editor based on MLT, he simply chose to reuse the
name
since he liked it so much. The current Shotcut had its origins as the
MLT BuildOnMe project.
BuildOnMe was created in January, 2011 as a minimal, example project of
how to use MLT in a cross-platform Qt 4 project. Eventually, Dan sought
to replace the aging Melted GTK+ client, Rugen, with a cross-platform
replacement and needed an app on which to easily test the cross-platform
compatibility of new MLT features such as
and
Movit.
That led him to fork BuildOnMe and start Shotcut.
What are the minimum system requirements?
Operating system: 64-bit Windows 7 — 10, Apple macOS 10.10 — 10.15, or
64-bit Linux with at least glibc 2.27.
CPU: x86-64 Intel or AMD; at least one 2 GHz core for SD, 4 cores for
HD, and 8 cores for 4K.
GPU: OpenGL 2.0 that works correctly and is compatible. On Windows, you
can also use a card with good, compatible DirectX 9 or 11 drivers. We do
not have a list.
RAM: At least 4 GB for SD, 8 GB for HD, and 16 GB for 4K.
NOTE: If your computer is at the lower end of CPU and RAM requirements, you should use both the
Preview Scaling and
Proxy features to help reduce preview lag.
Hard drive: yes, get one; the bigger, the better 🙂
Network: Shotcut does NOT require access to the network to activate,
check a subscription, or send usage analytics. However, some links in
the Help menu do link out to this web site. If you have files on a fast
(at least 1 Gb/s) network share you can access them from there through
your operating system.
Настройка программы
Для начала работы ПО достаточно простое и не требует больших знаний и времени, чтобы подобрать под себя функции. Самое простое, что необходимо – понимать основные термины.
Начинающему пользователю разработчики предусмотрели возможность использовать написанные в программе готовые стандартные пользовательские наборы настроек.
Окно запуска видеоредактора выводит пользователю всевозможные подсказки и стандартные сочетаний клавиш для вызова какого-либо запроса: установка границ (I и О), вперед и назад на секунду (Page Down/Up), пауза (К или пробел).
Для удобства в эксплуатации в видеоредакторе предусмотрен выбор языка интерфейса, который можно осуществить через меню в Settings и выбрать русскоязычны параметры.
По умолчанию инструменты ПО при первом использовании в основном окне интерфейса будут отключены. Чтобы запустить их, нужно открыть пункт в меню View. Панели можно сгруппировать между собой и затем во время использования редактора переключать по вкладкам. Чтобы убрать с основного окна – нажать на крестик.
Справка! Любые панели регулируются по размеру через перетаскивание выделенной точками линии.
Вся основная рабочая зона программы разделяется на функциональные зоны:
- По левую часть ряда расположены окно предпросмотра и фильтры для аудио и видео. Чтобы их загрузить, можно воспользоваться соответствующими клавишами. Правым кликом вызываются доступные параметры для корректирования фильтра.
- В правой части окна инструментов представлена область истории действий, чтобы редактировать в нужный момент процесс настройки ряда, а также задания и недавние.
- По центру основного окна ПО отображается видео с линией прокрутки и кнопками управления для воспроизведения.
В последнюю версию программы был добавлен набор фильтров для работы с пространственным форматом видео в режиме 360 градусов. История изменений имеет откат от 50 и более шагов, что очень удобно для редактирования.
Can I have multiple versions installed at the same time?
Yes. Simply rename your existing program folder to put the version
number in it or move it out-of-the-way to another location.
On Windows, the installer is mostly just a fancy zip extractor that also
adds a start menu item. So, you can install the new version to a
different location, or rename the existing folder to prevent it from
being overwritten. Then, you can just navigate to whichever program
folder you want in Explorer and run shotcut.exe.
On macOS, you do not
need to copy Shotcut to the /Applications folder — that is merely a
suggestion. Simply drag Shotcut out of the .dmg to wherever you like and
rename the app bundle to put the version number into it. Or, rename the
existing version to move it out of the way before copying Shotcut from
the .dmg.
The same concepts apply to Linux, where Shotcut is simply
delivered as a compressed tar archive. However, on Linux, it is
important to understand that the launch icon always looks in
Shotcut.app; so, either version the folder containing the launch icon or
have multiple, versioned Shotcut.app folders and run the launch script
that is inside of it.
Main Menu
Action | Windows/Linux | macOS |
---|---|---|
File > New | Ctrl+N | command+N |
File > Open | Ctrl+O | command+O |
File > Open Other | Ctrl+Shift+O | shift+command+O |
File > Save | Ctrl+S | command+S |
File > Save As | Ctrl+Shift+S | shift+command+S |
File > Export Video | Ctrl+E | command+E |
File > Export Frame | Ctrl+Shift+E | shift+command+E |
File > Close | Ctrl+W | command+W |
File > Quit | Ctrl+Q | command+Q |
Edit > Undo | Ctrl+Z | command+Z |
Edit > Redo | Ctrl+Y / Ctrl+Shift+Z | shift+command+Z |
View > Fullscreen | F11 / Ctrl+Shift+F | control+command+F / F11 |
View > Layout > Logging | Alt+1 | option+1 |
View > Layout > Editing | Alt+2 | option+2 |
View > Layout > FX | Alt+3 | option+3 |
View > Layout > Color | Alt+4 | option+4 |
View > Layout > Audio | Alt+5 | option+5 |
View > Layout > Player | Alt+6 | option+6 |
View > Audio Peak Meter | Ctrl+1 | command+1 |
View > Properties | Ctrl+2 | command+2 |
View > Recent | Ctrl+3 | command+3 |
View > Playlist | Ctrl+4 | command+4 |
View > Timeline | Ctrl+5 | command+5 |
View > Filters | Ctrl+6 | command+6 |
View > Keyframes | Ctrl+7 | command+7 |
View > History | Ctrl+8 | command+8 |
View > Export | Ctrl+9 | command+9 |
View > Jobs | Ctrl+0 | command+0 |
Help > Keyboard Shortcuts | ? | ? |
Help > Topic | F1 | F1 |
Rename clip (Properties) | F2 | F2 |
Find (Recent) | F3 | F3 |
Settings > Proxy > Use Proxy | F4 | F4 |
Reload | F5 | F5 |
Settings > Preview Scaling > None | F6 | F6 |
Settings > Preview Scaling > 360p | F7 | F7 |
Settings > Preview Scaling > 540p | F8 | F8 |
Settings > Preview Scaling > 720p | F9 | F9 |
Why do I not have the __ filter?
- Some filters are not compatible with GPU Processing.
- Some filters cannot be applied to a track or the entire timeline (i.e. Master).
Please check what is currently selected. The top of the Filters panel shows
the name of what is selected. - By design, we do not make all LADSPA and frei0r filters available
through the UI. We do not want to present a confusing generic
interface to all available plugins and overwhelm users with so many,
often redundant, options. Also, the Shotcut team wants to better
understand the filters we are providing and ensure each one is
operating as intended with MLT. If you are manually authoring XML,
then you can add any filter you want. - Sometimes a MLT plugin may fail to load due to a missing or
incompatible library. Shotcut downloads provide all dependencies for
Windows and macOS, but it may rely upon some libraries provided by
distribution packages on Linux.
New Bugs (in version 21.05.01)
- Fixed a «requires newer version» dialog appears when opening a corrupt project.
- Fixed some systems unable to load video clips by downgrading FFmpeg to version 4.2.
- Fixed crash with File > Open MLT XML as Clip.
- Fixed «INVALID» appears in export after Copy Timeline to Source or with old project that includes MLT XML as Clip.
- Fixed many extra keyframes are created as video plays for any filter with on-video controls: Text: Simple, Text: Rich,
Timer, Audio Visualization, Size Position & Rotate, Crop: Rectangle or Cirle, Spot Remover, etc. - Fixed Settings > Use JACK Audio.
- Changed export jobs to use on Linux.
- Added changing a Keyframes parameter’s vertical zoom range when its value is changed.
- Fixed Time Remap > Image mode reverts to Nearest when reloading the filter.
Version history / Release notes / Changelog
v21.10.31
Fixed export to MP4 or MOV may not give constant frame rate (broke in v21.09.20).
Fixed Properties > Speed with GoPro .LRV proxy file (broke in v21.09.20).
Fixed Export > Reset did not deselect a preset.
Changed Ctrl+Shift+V in Text: Simple to paste.
Changed the color of an alert vs. the proxy/preview-scaling status messages.
Increased the time for some messages, and added the ability to click a message to dismiss it.
Upgraded FFmpeg to version 4.4.1.
Added help message boxes to the Mask: Simple Shape, Mask: From File, and Text: Rich filters.
Added Properties > Comments for color clips.
Added a Mask: Chroma Key filter for convenience, for example secondary color correction.
Added support for multiple selected clips to the timeline Cut, Copy, Paste, Overwrite, and Append
operations.
Copy exclusively uses the system clipboard in this mode and does not show in the Source player.
Added Markers to the Timeline!
Click toolbar button or press M the first time to add a marker at the playhead (current position) with no dialog.
Markers appear in the time ruler/track/row at the top of the Timeline.
A marker shows a tool tip with its name and time when you hover the mouse over it.
Click a marker to seek to it.
Click toolbar button or press M when the playhead is on the exact start time of a marker to open the Edit dialog where you can change the name, color, start, and end times.
A color change is remembered for all new markers until changed.
Right-click a marker to open its context menu to Edit or Delete a marker.
Press Ctrl+Shift+M when the playhead is on the exact start start time of a marker to Delete it.
Drag a marker to move it.
Ctrl+drag (command on macOS) a marker to changes its duration (a marker with a duration longer than one
frame is also called a Range).
Export > From lists all Ranges.
Markers are saved to the project file and reloaded with the project XML in a <properties name=»shotcut:markers»> element.
Marker operations support Undo and Redo.
View full changelog
All I see is white or green instead of video, and I know there is video in this file….
First, use Properties to see if the Video tab is disabled. If it
is disabled, then Shotcut is not compatible with this format or codec.
If the video tab is enabled, more than likely OpenGL (or also DirectX on
Windows) is not working on your system, or it is too old. First, make
sure GPU Processing is disabled in Settings. GPU processing
requires OpenGL version 3.2. When it is disabled, you only need OpenGL
version 2.0 (or also DirectX on Windows). If you are on Windows, after
ensuring GPU processing is disabled, try forcing the usage of DirectX by
choosing Settings > Display Method > DirectX (ANGLE).
Why does it frequently crash on Windows?
While some systems have a video adapter driver with at least version 2.1
OpenGL, there may be some incompatibility between the OpenGL code in
Shotcut or Qt and the driver that causes a crash. You can try to upgrade to
the latest driver for your hardware.
Versions 15.09 and higher can also use DirectX when GPU processing is not
enabled, and that should improve compatibility. Try the different options under
Settings > Display Method: OpenGL or DirectX.
If you are using the 32-bit version of Shotcut on 64-bit Windows (it may appear
in “Program Files (x86)”), try using
the 64-bit version of Shotcut instead. You may be experiencing issues with
drivers or running into memory limitations.
Of course, there can still be other reasons we have not yet discovered.
If you believe none of the reasons above applies to you, then you can
locate your shotcut-log.txt file in AppData (see other question below
for more information) and paste it into a bug
report.
Other Notes
Player
Press and hold Shift+Alt to skim — scrub/seek using the horizontal
position of the mouse cursor without clicking and dragging.
Timeline
- While dragging shot or trimming, press and hold Alt to temporarily
suspend snapping. On Linux, pressing Alt before dragging will
usually move the app window; so, press Alt after you start dragging. - Press and hold Shift+Alt to skim — scrub/seek using the horizontal
position of the mouse cursor without clicking and dragging. - Double-click a fade in/out control (circle) to toggle it between one second and none.
- Hold Ctrl (command on macOS) while dragging one side of a marker to
change its duration.
- To select a range (multiple consecutive clips) click the first (or last) clip, press and hold
Shift and click the last (or first) clip. - To select or deselect multiple clips individually hold Ctrl (command on macOS)
while clicking the clips.
Keyframes
- Hold Ctrl (command on macOS) while dragging a keyframe to lock the time
and change only its value. - Hold Alt while dragging a keyframe to lock the value and change only its time.
- Double-click a regular keyframe curve/line to add or remove a keyframe. (Not all parameters support a curve/line
for its keyframes.) - Double-click a simple keyframe to toggle it between one second and none.
Mouse Wheel
Timeline and Keyframes
- scroll horizontally*
- use Alt to scroll vertically
- use Shift to change track height
- use Ctrl (command on macOS) to zoom in/out (change time scale)
* NOTE: On macOS, in order to scroll Timeline or Keyframes horizontally with a mouse wheel (not Magic Mouse or track pad), you must also use one of the following:
- control (not command)
- control+option
- control+command
- option+command
Timecode fields—such as the prominent one at the bottom of the
player—do not require you to enter a full timecode value. There are some
short-hand ways to enter time values. First of all, a number with no
colons (e.g., 100) is a frame number. Remember, frame numbers start
at 0; so 100 is the 101-th frame! Including a colon (:) makes it
interpret as timecode (HH:MM:SS:FF where FF = frames) or a clock
value (HH:MM:SS.MS where MS = milliseconds or any fraction of a second).
The difference between the two is that the last field is delimited by a
colon or decimal point (a comma in some locales). Next, not all of the
fields of the time value need to be included. For example, you can enter
“::1.0” for one second. However, not all of the separators need to be
included — they are evaluated from right-to-left. Thus, for our example,
“1:” is short for one second; however, “:1.0” or “:1.” is also one
second but not “1.0” because it does not contain a colon. “:1.5” is one
and a half seconds. “1::” is one minute. “1:30:” is one minute and
thirty seconds. “1:::” is one hour.
All I see is white or green instead of video, and I know there is video in this file….
First, use Properties to see if the Video tab is disabled. If it
is disabled, then Shotcut is not compatible with this format or codec.
If the video tab is enabled, more than likely OpenGL (or also DirectX on
Windows) is not working on your system, or it is too old. First, make
sure GPU Processing is disabled in Settings. GPU processing
requires OpenGL version 3.2. When it is disabled, you only need OpenGL
version 2.0 (or also DirectX on Windows). If you are on Windows, after
ensuring GPU processing is disabled, try forcing the usage of DirectX by
choosing Settings > Display Method > DirectX (ANGLE).