I would like to convert a Mp4 file in HD into a Mp4 file of lower resolution. Is there any software that can be used for this?
3 Answers
Terminal commands (Which by default are not installed) are:
MENCODER
Install it by sudo apt-get install mencoder
The part about mencoder that you want is the parameter -vop scale which tells mencoder to what scale you want the video to go to. This is normal if you want to reduce bandwidth use, lower video size, etc..
mencoder input.mp4 -ovc lavc -lavcopts vcodec=mp4 -vop scale=640:480 -oac copy -o output.mp4
or
mencoder input.mp4 -ovc lavc -lavcopts vcodec=mp4 -vf scale=640:480 -oac copy -o output.mp4
or a simple
mencoder input.mp4 -vop scale=640:480 -o output.mp4
Although from my experience is better to include additional information for video and audio like the one above.
FFMPEG (Deprecated)
Install it by sudo apt-get install ffmpeg
Here is an example of ffmpeg:
ffmpeg -i input -vf scale=iw/2:-1 output
Where IW = Video Input Width.
Scale = Parameter to scale to. In this case you are dividing the original size by 2 (iw/2)
both of which can provide more information if you either execute them without parameters or variables like just mencoder
or ffmpeg
or type for example man mencoder
or man ffmpeg
which will give you a VERY extensive little manual on how to work with them.
AVCONV <-- I love this guy!
To Install - sudo apt-get install libav-tools
To Run - avconv -i input.mp4 -s 640x480 output.mp4
Where -i
is for the original input file, -s
is for the size for each frame and the name of the output final goes in the end.
GUI tools which I love are:
AVIDEMUX - It can resize and lower the size which helps in cases where the objective is to lower size. avidemux
HANDBRAKE - Excellent tool for converting videos and optimizing size. I use it a lot when going from ogg to mp4 with h.264. Lowers A LOT the size. handbrake
OPENSHOT & PITIVI - Both are good video editors tha can help lower size when rendering the video. openshot and pitivi
So in conclusion, for direct resizing/scaling you can use the terminal ones. For size you can use all.

- 211,503
Use avconv
. Type in terminal
avconv -i input.mp4 -s 320x240 output.mp4
Replace 320x240
with whatever resolution you want.
There a lot of additional options that you can play with. Do man avconv
to know more.
Instead, if you don't have avconv
, you could use ffmpeg.
Install:
sudo apt-get install ffmpeg
Convert:
ffmpeg -i input.mp4 -s 320x240 output.mp4
-
1I tried avconv. It is giving me command not found. I tried everything mentioned above. It is giving me the same answer. It would be really useful if you could suggest an alternate solution. – theja Jul 10 '12 at 12:04
-
-
3
-
1Doesn't work, Ubuntu 16.04:
The encoder 'aac' is experimental but experimental codecs are not enabled, add '-strict -2' if you want to use it.
And-strict -2
does not change the error. – Caleb Stanford Apr 01 '17 at 16:49 -
@theja You can use the
avconv
command after installing libav-toolssudo apt-get install libav-tools
– sunyata Jul 14 '17 at 09:38 -
@6005 I got the same error (also on 16.04) but it worked for me after adding
-strict -2
but this has to be placed right before the name of the output file – sunyata Jul 14 '17 at 09:41 -
@sunyata Good to know. I hope this helps future readers. Cheers, – Caleb Stanford Jul 14 '17 at 11:50
Use VLC.
From the Media menu choose "Convert/Save". Add your file(s) to the input and click Convert/Save button.
You'll then be asked to specify an output file, and you can choose a profile and tinker with it, e.g. here I scale the video by 50%:
Click Save.

- 8,543
avconv
allows for ratio based scale based on current width/height, ex 50% scale-vf scale=w=iw/2:h=ih/2
, see: https://libav.org/documentation/avconv.html#toc-scale-1 – Daniel Sokolowski Feb 02 '19 at 14:52