git / lists / casts


mpv based video editor
git clone git://git.fusch.online/vct
Log / Files / Readme / Issues


vct is an mpv based video editing setup.

It is used only by the keyboard and a command line script.


  • mpv
  • git
  • make
  • ffmpeg (for rendering the edited film)


Copy the lua files into your lua path, the conf and input files into ~/.config/vct and the shell script into your shell path.


Use at your own risk!

vct is experimental software!

While vct by itself won’t make any changes to your files, the hidden git controlled .vct directory tree within your $PWD, where vct saves the rendered scenes, might get really big!

Start editing by running

$ vct init <files>
$ vct

Two mpv instances will open. The bigger one is the “Scene” window. It shows the scene that’s currently being edited. The smaller one, or “Timeline” window, shows the whole film.

The basic idea is, that you seek in the “Timeline” and cut in the “Scene” window.

Shared Keybindings:

SPACE       pause/play
h/l         seek 5 seconds backwards/forwards
j/k         seek 30 seconds backwards/forwards
H/L         seek 1 second backwards/forwards
,/.         seek 1 frame backwards/forwards

m           toggle muting

Timeline Keybindings:

</>         go to the previos/next scene

Scene Keybindings:

s/e         set start/end of scene
S/E         go to start/end of scene
y           go to the current scene of the timeline window
c           make a cut
x           remove the scene
u           undo the last action
J/K         move the scene backwards/forwards on the timeline

When done editing,

$ vct render

will render the film to ./.vct/render/. This directory might get quite big, as it stores all the rendered scenes, to make subsequent renders faster.


vct includes the following mpv plugins: