Good recommendation for very basic, linux-friendly video editing software? (Prefer open-source/free, but willing to pay if it's actually what I need)

@sundogplanets

OpenShot and AviDemux are reasonably basic, will let you edit, cut and paste videos.

OpenShot:
https://www.openshot.org/screenshots/

AviDemux:
https://www.howtoforge.com/tutorial/how-to-use-avidemux-for-video-editing

Otherwise, the video editing tab in Blender is rather straightforward. It's like a simple video editor embedded in an otherwise extremely powerful and complex software.

OpenShot Video Editor | View Screenshots

View screenshots of the OpenShot user interface

@albertcardona Oh thanks! I've used blender a tiny bit for ripping, didn't know it could edit too

@sundogplanets

Blender video editing interface is surprisingly simple.

Also: if all one wants is to cut video snippets, or speed them up, or concatenate them, the simplest interface I've found is plain old ffmpeg from the command line. An easy way to compose ffmpeg commands is with the help of this web: https://ffmpeg.lav.io/

FFmpeg Explorer!

@albertcardona NICE thank you. I've used ffmpeg a lot for making animations from plots, I didn't know you could also do more!! Thanks

@sundogplanets

An example of #ffmpeg usage:

To crop the area of a video, for example a rectangle of 900x900 centred on a 1800x1800 video, and also speed it up by 2x (with -filter:v "setpts=0.5*PTS"):

$ ffmpeg -i source-video.mp4 -filter:v "crop=900:900:450:450, setpts=0.5*PTS" -strict -2 -vcodec libx265 cropped-speedier-video.mp4

(PTS means presentation timestamps, a measure of framerate, which above we multiply by 2 by dropping every other frame, hence a division of the number of frames in the form of a multiplication by 0.5).

@sundogplanets

For completeness:

To find out the dimensions of a video, use #ffprobe, part of the #ffmpeg suite:

$ ffprobe -v error -show_entries stream=width,height -of default=noprint_wrappers=1 source-video.mp4

To extract images from a movie, at 10 frames per second:

$ ffmpeg -i source-video.mp4 -vf fps=10 slice-%d.png

To cut a video from time 5 seconds to time 12 minutes and 20 seconds (12*60+20=740, minus 5 gives 735; -ss is the start, and -t the duration from that point onwards):

$ ffmpeg -ss 5 -t 735 -i source-video.mp4 -vcodec libx265 -strict -2 lecture- cropped.mp4

To scale a video down to half the area (50% of width and height), add this image filter to the arguments, where "iw" is the input video width, and "ih" the input video height:

-vf "scale=iw/2:ih/2"

To concatenate videos, create a text file with the file path to each of the videos, name it "cuts.txt", and then:

$ ffmpeg -f concat -i cuts.txt -c copy video-edited.mp4