Why Resize Video?
Every platform, device, and use case has different resolution requirements. A 4K camera file is too large for email. A 16:9 YouTube video needs to become 9:16 for Instagram Reels. A 720p webcam recording should be upscaled for a 1080p timeline. A widescreen movie needs letterboxing for a 4:3 display.
Resizing video is one of the most common editing operations, yet getting it right — without introducing blur, stretching, or ugly black bars — requires understanding how resolution, aspect ratio, and scaling algorithms interact.
This guide covers every resizing scenario, from simple resolution changes to complex aspect ratio transformations, with practical commands and visual explanations.
Understanding Video Resolution
Resolution describes the number of pixels in each frame, expressed as width x height. More pixels mean more detail, but also larger file sizes and higher hardware requirements for playback.
Common Video Resolutions
| Name | Resolution (W x H) | Aspect Ratio | Pixel Count | Common Use |
|---|---|---|---|---|
| SD (480p) | 854 x 480 | 16:9 | 410K | Legacy, mobile data saver |
| HD (720p) | 1280 x 720 | 16:9 | 921K | Web video, streaming |
| Full HD (1080p) | 1920 x 1080 | 16:9 | 2.07M | Standard for most content |
| QHD (1440p) | 2560 x 1440 | 16:9 | 3.69M | Gaming, high-end streaming |
| 4K UHD | 3840 x 2160 | 16:9 | 8.29M | Premium content, cinema |
| Portrait HD | 1080 x 1920 | 9:16 | 2.07M | Instagram Reels, TikTok |
| Square | 1080 x 1080 | 1:1 | 1.17M | Instagram feed, Facebook |
| Ultrawide | 2560 x 1080 | 21:9 | 2.76M | Cinematic, ultrawide monitors |
Pro Tip: When resizing, always work from the highest resolution source available. Downsizing from 4K to 1080p produces excellent results because you are discarding detail the display cannot show. Upsizing from 720p to 4K adds nothing — you are just making the same pixels bigger.

Downscaling: Reducing Resolution
Downscaling is the process of reducing a video's resolution. It is almost always beneficial: the output is smaller in file size, faster to stream, and visually sharp because the scaling algorithm averages multiple source pixels into each output pixel.
Basic Downscale with FFmpeg
# 4K to 1080p
ffmpeg -i input_4k.mp4 -vf "scale=1920:1080" \
-c:v libx264 -crf 20 -preset slow -c:a copy output_1080p.mp4
# 1080p to 720p
ffmpeg -i input_1080p.mp4 -vf "scale=1280:720" \
-c:v libx264 -crf 22 -preset slow -c:a copy output_720p.mp4
Maintaining Aspect Ratio Automatically
When you set one dimension and want the other calculated automatically:
# Set width to 1280, calculate height to maintain aspect ratio
ffmpeg -i input.mp4 -vf "scale=1280:-2" \
-c:v libx264 -crf 20 -c:a copy output.mp4
# Set height to 720, calculate width to maintain aspect ratio
ffmpeg -i input.mp4 -vf "scale=-2:720" \
-c:v libx264 -crf 20 -c:a copy output.mp4
The -2 ensures the calculated dimension is divisible by 2, which is required by most codecs.
Choosing the Right Scaling Algorithm
The scaling algorithm dramatically affects the quality of resized video:
# Lanczos (best quality for downscaling, slowest)
ffmpeg -i input.mp4 -vf "scale=1920:1080:flags=lanczos" \
-c:v libx264 -crf 20 -c:a copy output.mp4
# Bicubic (good quality, faster)
ffmpeg -i input.mp4 -vf "scale=1920:1080:flags=bicubic" \
-c:v libx264 -crf 20 -c:a copy output.mp4
# Bilinear (moderate quality, fast)
ffmpeg -i input.mp4 -vf "scale=1920:1080:flags=bilinear" \
-c:v libx264 -crf 20 -c:a copy output.mp4
| Algorithm | Quality (Downscale) | Quality (Upscale) | Speed |
|---|---|---|---|
| Lanczos | Excellent | Good | Slow |
| Spline | Excellent | Good | Slow |
| Bicubic | Very good | Moderate | Medium |
| Bilinear | Good | Poor | Fast |
| Nearest neighbor | Poor (aliasing) | Very poor | Very fast |
For most resizing tasks, Lanczos is the recommended choice. The speed difference is minimal compared to the overall encoding time.
Upscaling: Increasing Resolution
Upscaling increases a video's resolution by interpolating new pixels between existing ones. Unlike downscaling, upscaling cannot add real detail — it can only make existing detail fill more pixels.
When Upscaling Makes Sense
- Matching a timeline resolution (e.g., 720p clip in a 1080p project)
- Meeting a platform's minimum resolution requirement
- Preparing for display on a high-resolution screen where the player does not scale well
Basic Upscale
# 720p to 1080p with Lanczos scaling
ffmpeg -i input_720p.mp4 -vf "scale=1920:1080:flags=lanczos" \
-c:v libx264 -crf 18 -preset slow -c:a copy output_1080p.mp4
Upscale with Sharpening
Adding a slight sharpening filter after upscaling can improve perceived clarity:
ffmpeg -i input_720p.mp4 \
-vf "scale=1920:1080:flags=lanczos,unsharp=5:5:0.5:5:5:0" \
-c:v libx264 -crf 18 -preset slow -c:a copy output_1080p.mp4
The unsharp filter parameters are: luma_msize_x, luma_msize_y, luma_amount, chroma_msize_x, chroma_msize_y, chroma_amount. A luma_amount of 0.3-0.8 provides subtle sharpening without introducing halos.
Pro Tip: When upscaling for YouTube, going from 720p to 1080p is worthwhile because YouTube allocates a higher bitrate to 1080p streams, meaning your video may actually look better at 1080p (even though it started as 720p) due to the bitrate boost. The same logic applies to uploading 1080p content as 4K. See our best video settings for YouTube for details.
Aspect Ratio Handling
When the source and target aspect ratios differ, you have four options: letterbox (add bars), crop (remove edges), stretch (distort), or pillarbox (add side bars).
Option 1: Letterbox (Black Bars on Top/Bottom)
Adds black bars to fill the frame while preserving the entire video:
# 16:9 video to 1:1 square (letterboxed)
ffmpeg -i input_16x9.mp4 \
-vf "scale=1080:-2,pad=1080:1080:(ow-iw)/2:(oh-ih)/2:black" \
-c:v libx264 -crf 20 -c:a copy output_square.mp4
# 16:9 to 9:16 portrait (letterboxed)
ffmpeg -i input_16x9.mp4 \
-vf "scale=1080:-2,pad=1080:1920:(ow-iw)/2:(oh-ih)/2:black" \
-c:v libx264 -crf 20 -c:a copy output_portrait.mp4
Option 2: Crop (Remove Edges)
Removes parts of the frame to achieve the target aspect ratio:
# 16:9 to 1:1 square (center crop)
ffmpeg -i input_16x9.mp4 \
-vf "crop=ih:ih:(iw-ih)/2:0,scale=1080:1080" \
-c:v libx264 -crf 20 -c:a copy output_square.mp4
# 16:9 to 9:16 portrait (center crop)
ffmpeg -i input_16x9.mp4 \
-vf "crop=ih*9/16:ih:(iw-ih*9/16)/2:0,scale=1080:1920" \
-c:v libx264 -crf 20 -c:a copy output_portrait.mp4
For visual cropping with a preview, use the Crop Video tool which provides an interactive overlay with aspect ratio presets.
Option 3: Stretch (Distort)
Stretches or squeezes the video to fit the target dimensions. This changes the apparent proportions of objects and people, so it is rarely desirable:
# Force 16:9 to 1:1 (stretched — not recommended)
ffmpeg -i input_16x9.mp4 -vf "scale=1080:1080" \
-c:v libx264 -crf 20 -c:a copy output_stretched.mp4
Option 4: Blur Background (Modern Approach)
Popular on social media, this technique places the video on a blurred, zoomed version of itself:
# 16:9 to 9:16 with blurred background
ffmpeg -i input_16x9.mp4 \
-filter_complex "[0:v]scale=1080:1920,boxblur=20:20[bg]; \
[0:v]scale=1080:-2[fg]; \
[bg][fg]overlay=(W-w)/2:(H-h)/2[out]" \
-map "[out]" -map 0:a \
-c:v libx264 -crf 20 -c:a copy output_blur_bg.mp4

Social Media Size Requirements
Each social media platform has specific video dimension requirements. Uploading in the wrong dimensions results in automatic cropping or black bars.
| Platform | Format | Resolution | Aspect Ratio |
|---|---|---|---|
| YouTube | Landscape | 1920 x 1080 or 3840 x 2160 | 16:9 |
| YouTube Shorts | Portrait | 1080 x 1920 | 9:16 |
| Instagram Feed | Square or 4:5 | 1080 x 1080 or 1080 x 1350 | 1:1 or 4:5 |
| Instagram Reels | Portrait | 1080 x 1920 | 9:16 |
| Instagram Stories | Portrait | 1080 x 1920 | 9:16 |
| TikTok | Portrait | 1080 x 1920 | 9:16 |
| Facebook Feed | Landscape or square | 1280 x 720 or 1080 x 1080 | 16:9 or 1:1 |
| Facebook Reels | Portrait | 1080 x 1920 | 9:16 |
| Twitter/X | Landscape | 1920 x 1080 | 16:9 |
| Landscape | 1920 x 1080 | 16:9 |
Quick Resize Commands for Social Media
# Instagram Reels / TikTok (9:16 portrait, center crop from 16:9)
ffmpeg -i input.mp4 \
-vf "crop=ih*9/16:ih,scale=1080:1920:flags=lanczos" \
-c:v libx264 -crf 22 -preset slow -c:a aac -b:a 128k output_reel.mp4
# Instagram Feed Square (1:1, center crop)
ffmpeg -i input.mp4 \
-vf "crop=min(iw\,ih):min(iw\,ih),scale=1080:1080:flags=lanczos" \
-c:v libx264 -crf 22 -preset slow -c:a aac -b:a 128k output_square.mp4
# YouTube (16:9, scale to 1080p)
ffmpeg -i input.mp4 \
-vf "scale=1920:1080:flags=lanczos" \
-c:v libx264 -crf 18 -preset slow -c:a aac -b:a 192k output_yt.mp4
For complete platform-specific settings including bitrate and frame rate, see our social media video specs guide and our guide on converting video for Instagram Reels and TikTok.
Batch Resizing Videos
When you need to resize multiple videos to the same dimensions:
#!/bin/bash
# Batch resize all MP4 files to 1080p
mkdir -p resized
for file in *.mp4; do
[ -f "$file" ] || continue
output="resized/$file"
ffmpeg -i "$file" -vf "scale=1920:1080:flags=lanczos" \
-c:v libx264 -crf 20 -preset medium -c:a copy "$output" -y
echo "Resized: $file"
done
Multi-Resolution Output Script
Create multiple versions of a video for different platforms in one run:
#!/bin/bash
INPUT="input.mp4"
BASENAME="${INPUT%.*}"
# YouTube (1080p landscape)
ffmpeg -i "$INPUT" -vf "scale=1920:1080:flags=lanczos" \
-c:v libx264 -crf 18 -c:a aac -b:a 192k "${BASENAME}_youtube.mp4" -y
# Instagram Reels (1080x1920 portrait)
ffmpeg -i "$INPUT" \
-vf "crop=ih*9/16:ih,scale=1080:1920:flags=lanczos" \
-c:v libx264 -crf 22 -c:a aac -b:a 128k "${BASENAME}_reel.mp4" -y
# Instagram Square (1080x1080)
ffmpeg -i "$INPUT" \
-vf "crop=min(iw\,ih):min(iw\,ih),scale=1080:1080:flags=lanczos" \
-c:v libx264 -crf 22 -c:a aac -b:a 128k "${BASENAME}_square.mp4" -y
# Thumbnail (480p for preview)
ffmpeg -i "$INPUT" -vf "scale=854:480:flags=lanczos" \
-c:v libx264 -crf 24 -c:a aac -b:a 96k "${BASENAME}_preview.mp4" -y
echo "All versions created!"
For online batch processing, see our batch processing guide.
Pro Tip: When creating multiple output versions, use FFmpeg's -filter_complex to process them all in a single decode pass. This is significantly faster than running separate commands because the input file is only decoded once:
ffmpeg -i input.mp4 \
-filter_complex "[0:v]split=3[v1][v2][v3]; \
[v1]scale=1920:1080:flags=lanczos[1080]; \
[v2]scale=1280:720:flags=lanczos[720]; \
[v3]scale=854:480:flags=lanczos[480]" \
-map "[1080]" -map 0:a -c:v libx264 -crf 20 -c:a aac out_1080.mp4 \
-map "[720]" -map 0:a -c:v libx264 -crf 22 -c:a aac out_720.mp4 \
-map "[480]" -map 0:a -c:v libx264 -crf 24 -c:a aac out_480.mp4

Resolution and Bitrate Relationship
Changing resolution has a direct impact on the required bitrate. More pixels need more data to maintain quality.
Bitrate Scaling by Resolution
| Resolution | Relative Pixels | Recommended H.264 Bitrate (30fps) | Recommended H.265 Bitrate (30fps) |
|---|---|---|---|
| 480p | 1x | 1.5-2.5 Mbps | 0.8-1.5 Mbps |
| 720p | 2.25x | 3-5 Mbps | 2-3 Mbps |
| 1080p | 5x | 6-10 Mbps | 4-6 Mbps |
| 1440p | 9x | 12-18 Mbps | 8-12 Mbps |
| 4K | 20x | 25-40 Mbps | 15-25 Mbps |
When downscaling, you can use a lower bitrate while maintaining the same perceived quality. When upscaling, increasing the bitrate does not improve the actual detail — it just preserves the interpolated pixels at higher fidelity.
For a thorough explanation of bitrate, see our video bitrate explained guide. For 4K-specific guidance, check the 4K video conversion guide.
Online Resizing Tools
Not everyone wants to use the command line. Online tools provide visual interfaces for resizing video.
Using ConvertIntoMP4
- Upload your video to the Video Converter
- Select the target resolution from the output options
- Choose your aspect ratio handling (crop, letterbox, or fit)
- Click Convert and download the resized video
For cropping-specific workflows, the Crop Video tool provides an interactive visual overlay where you drag the crop area directly on a preview of your video.
The Video Compressor also provides resolution options — when you select a lower resolution, the compressor automatically adjusts the bitrate for optimal quality at that size.
Handling Pixel Aspect Ratio (PAR)
Some video formats, particularly those from DVD (720x480 NTSC, 720x576 PAL), use non-square pixels. A 720x480 DVD frame is actually displayed as either 640x480 (4:3) or 853x480 (16:9) depending on the PAR flag.
Detecting Non-Square Pixels
ffprobe -v error -select_streams v:0 \
-show_entries stream=width,height,sample_aspect_ratio,display_aspect_ratio \
-of table input.mp4
Converting Non-Square to Square Pixels
# Scale to square pixels while preserving display aspect ratio
ffmpeg -i input_dvd.mp4 -vf "scale=854:480:flags=lanczos,setsar=1:1" \
-c:v libx264 -crf 20 -c:a copy output_square_pixels.mp4
This is important when resizing DVD rips or other content with non-square pixels. Without accounting for PAR, the resized output will appear stretched or squeezed.
Troubleshooting Common Resizing Issues
Blurry Output After Resizing
Cause: Wrong scaling algorithm or upscaling with insufficient source quality.
Fix: Use Lanczos scaling (flags=lanczos) and avoid upscaling more than 2x.
Black Bars Where They Should Not Be
Cause: The padding filter was applied, or the source has embedded letterboxing.
Fix: Crop the source first to remove existing black bars: crop=iw:ih-200:0:100 (adjust values to match your bars).
Stretching or Distortion
Cause: Forcing a different aspect ratio without cropping or letterboxing.
Fix: Use the force_original_aspect_ratio option:
ffmpeg -i input.mp4 \
-vf "scale=1080:1080:force_original_aspect_ratio=decrease,pad=1080:1080:(ow-iw)/2:(oh-ih)/2" \
-c:v libx264 -crf 20 -c:a copy output.mp4
Odd Dimension Errors
Cause: Some codecs require dimensions divisible by 2 (H.264) or even 8 (some hardware encoders).
Fix: Use -2 as one dimension to auto-calculate a valid value, or add explicit rounding:
ffmpeg -i input.mp4 -vf "scale=trunc(iw/4)*2:trunc(ih/4)*2" \
-c:v libx264 -crf 20 -c:a copy output.mp4
Frequently Asked Questions
Does resizing video reduce quality?
Downscaling preserves quality excellently — the output has fewer pixels but each pixel is sharp and well-defined. Upscaling introduces softness because new pixels are interpolated from existing ones. Both operations require re-encoding, which introduces minimal quality loss with proper CRF settings.
What resolution should I use for YouTube?
1920x1080 (1080p) is the standard for most YouTube content. Upload in 4K (3840x2160) if your source is 4K, as YouTube allocates a higher bitrate to 4K streams. See best video settings for YouTube.
Can I resize a video without re-encoding?
No. Changing resolution requires decoding each frame, resizing it, and re-encoding. This is fundamentally different from operations like trimming or remuxing, which can work on compressed data directly.
What is the best aspect ratio for social media?
9:16 portrait (1080x1920) is dominant on TikTok, Instagram Reels, and YouTube Shorts. For feed posts, 1:1 square (1080x1080) or 4:5 portrait (1080x1350) gets the most screen real estate. See our social media video specs guide for platform-specific details.
How do I make a landscape video into portrait?
Either crop the center (crop=ih*9/16:ih), add letterboxing (pad=1080:1920), or use the blurred-background technique described earlier. The Crop Video tool makes this easy with visual controls.
Conclusion
Resizing video is essential for multi-platform distribution, storage optimization, and meeting specific display requirements. Downscaling with Lanczos produces sharp, smaller files. Upscaling should be used sparingly and only when necessary. Aspect ratio changes require choosing between cropping, letterboxing, and creative solutions like blurred backgrounds.
For visual resizing without the command line, the Crop Video tool provides interactive controls, and the Video Converter offers resolution selection as part of the conversion workflow. For file size reduction through resolution and bitrate optimization, the Video Compressor handles everything automatically.
Explore more video editing guides: how to trim and cut videos, how to rotate and flip videos, and video bitrate explained.



