lossless-cut/README.md

3.1 KiB

LosslessCut 🎥 Travis

Simple, cross platform video editor for lossless trimming / cutting of videos. Great for rough processing of large video files taken from a video camera, GoPro, drone, etc. Lets you quickly extract the good parts from your videos. It doesn't do any decoding / encoding and is therefore extremely fast and has no quality loss. Also allows for taking JPEG snapshots of the video at the selected time. This app uses the awesome ffmpeg🙏 for doing the grunt work. ffmpeg is not included and must be installed separately.

Demo

Download

Installing / running

Documentation

  • Drag drop a video file into player to load or use /CTRL+O.
  • Select the start and end time
  • Press the scissors button to export a slice.
  • Press the camera button to take a snapshot.

The original video files will not be modified. Instead it creates a lossless export in the same directory as the original file with from/to timestamps. Note that the cut is currently not precise around the cutpoints, so video before/after the nearest keyframe will be lost. EXIF data is preserved.

Keyboard shortcuts

  • SPACE, k Play/pause
  • j Slow down video
  • l Speed up video
  • Seek backward 1 sec
  • Seek forward 1 sec
  • . (period) Tiny seek forward
  • , (comma) Tiny seek backward
  • i Mark in / cut start point
  • o Mark out / cut end point
  • e Export selection (in the same dir as the video)
  • c Capture snapshot (in the same dir as the video)

Development building / running

This app is made using Electron. electron-compile is used for development. Make sure you have at least node v4 with npm 3.

git clone https://github.com/mifi/lossless-cut.git
cd lossless-cut
npm install

Running

npm start

Building package

npm run build
npm run package

TODO / ideas

  • About menu
  • icon
  • Visual feedback on button presses
  • ffprobe show keyframes
  • ffprobe format
  • improve ffmpeg error handling
  • Slow scrub with modifier key
  • show frame number
  • Bundle ffmpeg
  • support for loading other formats by streaming through ffmpeg?
  • cutting out the commercials in a video file while saving the rest to a single file?