Comments

You must log in or register to comment.

6

libre_dev wrote

ffmpeg, as most everyone else has said. Usually you'll want to do one of two things: remux or transcode.

To remux you use -codec copy like this:

ffmpeg -i input.mp4 -codec copy output.mkv

The target container format needs to support all codecs used in the source file. Doing this incurs no loss in quality.

To transcode you'll do something like:

ffmpeg -i input.mp4 -b:v 2M -g 1000 -s 1280x720 -b:a 192k output.webm

for 1280x720 at roughly 2.2 Mbps, keyframes at least once per 1000 frames. There's lots of tweaking you can do of course, especially 2-pass encoding. Try not to skimp on audio bandwidth, copy audio if possible.

The manpage goes into depth about all nifty things you can do.

3

moon_princess wrote

I used avidemux now (mostly for making gifs from videos and cutting the resolution and bitrate on things I want to stream). I'm pretty sure avidemux works as a frontend for ffmpeg as well as incorporating other features, but I hope if anyone is more familiar with it than I that they will correct me if I'm wrong.