In the following exposition we would discuss the command line procedure to produce videos with HD aspect ratio from normal videos. This would allow the video to fill a HD screen .
NOTE: This procedure will not improve quality of a video. If it is grainy then it would remain grainy in the final result. Changing aspect ratio only allows the video to fit HD screens and not improve its quality. To improve quality you can try smoothing in AVIDEMUX.
There are many GUIs to convert a video file to HD 16:9 format. But I find its best to use the CLI.
STEP 1 : Get video file info
We have to get the file to the 16:9 ratio. To achieve this first obtain video info using mplayer. Just play the video and press ESC immediately upon starting. Now look at the line starting with VIDEO.It should say something like this,
VIDEO: [H264] 640x380 0bpp 29.970 fps 138.8 kbps (16.9 kbyte/s)
The 2nd column would be video codec. 3rd would be resolution. 5th is fps for video and 4th is sound encoding quality set in kbps.
In this example the file has aspect ratio of 640/380 = 1.68. We want 16:9 = 1.778 which is 640x360. So we have to crop the height so that we keep as much important stuff within frame as possible and reject the flat colors like sky or ground. This is a judgement call.
It works very well on small files. It is much harder than doing it visually in a GUI and sometimes unreasonably slow for large files because the process has to be repeated couple of time to get the right amount of cropping. So for large files use KDENLIVE.
STEP 2: CROP
mencoder inputfile -ovc x264 -vf crop=width:height:x:y -o outputfile
vf : video filter
crop=width:height:x:y
(x,y) is the start position of the crop.
(x,y) is the start position of the crop.
e.g.
mencoder input.mp4 -nosound -ovc x264 -vf crop=640:370:0:7 -o zzz.mp4
The video is cropped to 640:370. The crop began at (0,7) and ended at (640,377). Now it is time to scale it to bring it to 16:9 aspect ratio.
STEP 3: SCALE
mencoder inputfile -ovc x264 -vf scale=width:height -o outputfilewhatever the initial resolution of the video, it would be scaled to the given resolution width:height.
mencoder zzz.mp4 -nosound -ovc x264 -vf crop=640:360 -o output.mp4
And we're done.
Check by playing in mplayer.
Comments