| Both sides previous revision Previous revision Next revision | Previous revision |
| c3tracker:cutting [2026/04/11 14:58] – [mpv/Tips] nicoo | c3tracker:cutting [2026/07/26 22:17] (current) – external edit 127.0.0.1 |
|---|
| = Tracker Cutting Howto | # Tracker Cutting Howto |
| |
| When we talk about "cutting a video", we mean a highly automated process how the intro and outro get added to a recorded lecture using the [[c3tracker:start|]]. | When we talk about "cutting a video", we mean a highly automated process how the intro and outro get added to a recorded lecture using the [[c3tracker:start|]]. |
| |
| |
| == Cutting with FUSE | ## Cutting with FUSE |
| |
| There are two main ways of cutting a video: Using the KDEnlive or Shotcut open source video editors or by manually writing frame numbers to obtained from a video player like mpv the in- and outframe files. | There are two main ways of cutting a video: Using the KDEnlive or Shotcut open source video editors or by manually writing frame numbers to obtained from a video player like mpv the in- and outframe files. |
| * On Windows/ macOS: Install Shotcut as described at [[https://shotcut.org/download/|their website]] (Version 22.12.21 is known to work) | * On Windows/ macOS: Install Shotcut as described at [[https://shotcut.org/download/|their website]] (Version 22.12.21 is known to work) |
| |
| === General Workflow | ### General Workflow |
| |
| <bootnote>The following commands will use //storage.lan.c3voc.de// as a placeholder for the machine with the FUSE mounts. Small events may use //encoderX.lan.c3voc.de// or //minionX.lan.c3voc.de// as storage share.</bootnote> | <bootnote>The following commands will use //storage.lan.c3voc.de// as a placeholder for the machine with the FUSE mounts. Small events may use //encoderX.lan.c3voc.de// or //minionX.lan.c3voc.de// as storage share.</bootnote> |
| * click "finish" | * click "finish" |
| |
| === Notes on Using KDEnlive | ### Notes on Using KDEnlive |
| |
| Open the ''project.kdenlive'' project file to start cutting: | Open the ''project.kdenlive'' project file to start cutting: |
| If you have a poor connection to the storage, deactivate the video and audio thumbnails using the buttons on the right side of the lower window border. | If you have a poor connection to the storage, deactivate the video and audio thumbnails using the buttons on the right side of the lower window border. |
| |
| === Notes on Using Shotcut | ### Notes on Using Shotcut |
| |
| Open the ''project_shotcut.mlt'' project file to start cutting: | Open the ''project_shotcut.mlt'' project file to start cutting: |
| * <code>apt-get install libQt5Gui</code> (see http://stackoverflow.com/questions/17106315/failed-to-load-platform-plugin-xcb-while-launching-qt5-app-on-linux-without) | * <code>apt-get install libQt5Gui</code> (see http://stackoverflow.com/questions/17106315/failed-to-load-platform-plugin-xcb-while-launching-qt5-app-on-linux-without) |
| |
| === Notes on Using mpv | ### Notes on Using mpv |
| |
| ''mpv'' is a command line media player, which can also be used in our cutting workflow. [[user:nicoo]] wrote [[https://forgejo.c3voc.de/voc/mpv-scripts|an mpv script]] which automates our cutting workflow. | ''mpv'' is a command line media player, which can also be used in our cutting workflow. [[user:nicoo]] wrote [[https://forgejo.c3voc.de/voc/mpv-scripts|an mpv script]] which automates our cutting workflow. |
| See [[https://mpv.io/manual/master/#keyboard-control|the ''mpv'' manual]] for the default keybinds. | See [[https://mpv.io/manual/master/#keyboard-control|the ''mpv'' manual]] for the default keybinds. |
| |
| ==== Setup | #### Setup |
| |
| Install the script, typically by copying ''c3voc-cutter.lua'' to ''~/.config/mpv/scripts/''. If using a mountpoint other than ''/video'', it needs to be set in ''~/.config/mpv/script-opts/c3voc.conf''. | Install the script, typically by copying ''c3voc-cutter.lua'' to ''~/.config/mpv/scripts/''. If using a mountpoint other than ''/video'', it needs to be set in ''~/.config/mpv/script-opts/c3voc.conf''. |
| } | } |
| </code> | </code> |
| ==== Usage (with script) | #### Usage (with script) |
| |
| * Open ''uncut.ts'' in mpv to start cutting | * Open ''uncut.ts'' in mpv to start cutting |
| |
| |
| ==== Usage (manual) | #### Usage (manual) |
| |
| Open the ''uncut.ts'' in mpv to start cutting: | Open the ''uncut.ts'' in mpv to start cutting: |
| Using ''echo'' works best since some text editors like to create temporary lock files which isn't allowed on the FUSE file system. | Using ''echo'' works best since some text editors like to create temporary lock files which isn't allowed on the FUSE file system. |
| |
| ==== Tips | #### Tips |
| |
| * [[https://github.com/po5/thumbfast|thumbfast]] can generate thumbnails live, for instance when hovering over a seek bar, which can help find the start and end of a talk faster. (Note: it needs to be used with a UI script, and supports most MPV UIs) | * [[https://github.com/po5/thumbfast|thumbfast]] can generate thumbnails live, for instance when hovering over a seek bar, which can help find the start and end of a talk faster. (Note: it needs to be used with a UI script, and supports most MPV UIs) |
| * [[https://github.com/po5/evafast|evafast]] gives fast-forward and seeking on the same key, which is rather convenient. | * [[https://github.com/po5/evafast|evafast]] gives fast-forward and seeking on the same key, which is rather convenient. |
| * [[https://github.com/CounterPillow/mpv-quack|quack]] reduces the volume when seeking, to avoid torturing one's ears during cutting | * [[https://github.com/CounterPillow/mpv-quack|quack]] reduces the volume when seeking, to avoid torturing one's ears during cutting |
| | |
| |
| For nix users: those are all packaged, and can be added with | For nix users: those are all packaged, and can be added with |
| | |
| <code> | <code> |
| programs.mpv.scripts = with pkgs.mpvScripts; [ | programs.mpv.scripts = with pkgs.mpvScripts; [ |
| ]; | ]; |
| </code> | </code> |
| == Known Issues and Solutions | |
| | ## Known Issues and Solutions |
| |
| * Shotcut or VLC don't show a time during playback: | * Shotcut or VLC don't show a time during playback: |
| |
| |
| == Remote Cutting using a Proxy File | ## Remote Cutting using a Proxy File |
| |
| The ''uncut.ts'' can get quite large as we're still recording using the MPEG2 codec. | The ''uncut.ts'' can get quite large as we're still recording using the MPEG2 codec. |