The friendly multilateral video toolkit built for artists by artists.
Converts the dimensions of a video to a chosen preset (e.g., 1080p, instagram_reels, tiktok_video) and applies a configurable aspect-ratio handling mode (pad, fit, fill, fill_crop, stretch).
Supports portrait overrides, crop/pad anchoring, custom pad color, and scaling kernel selection.
convert_dims provides a predictable, explicit way to resize video assets into standardized resolutions for:
It gives direct control over how the aspect ratio is treated: padded, stretched, cropped, or fit.
--preset chooses a named dimension from a predefined list (e.g., 1080p, square1080, instagram_reels, portrait4k, ultrawide1440, etc.).--portrait-full forces a 9:16 portrait output based on the preset’s larger side, using a full-frame cover + crop (fill_crop behavior).--mode controls aspect-ratio handling:
pad – keep AR, fit inside target, pad with color as needed.fit – keep AR, fit inside target, no padding (may not fill entire frame).fill / fill_crop – cover the frame and center-crop to the target size.stretch – ignore AR, stretch directly to target dimensions.If --mode is not set, --translate (deprecated) chooses between:
yes → stretchno → pad--anchor biases where crop or pad happens (center, top, bottom, left, right, top_left, etc.).--pad-color defines the color of any added borders.--scale-flags selects the FFmpeg scale kernel (lanczos, bicubic, bilinear, neighbor), affecting sharpness and performance.--output-format extension.yuv420p, ~5000k, medium preset) with AAC audio and +faststart for streaming-friendly MP4/MOV.videobeaux -P convert_dims \
-i input.mp4 \
-o output.mp4 \
--output-format VALUE \
--preset VALUE \
--mode VALUE \
--translate VALUE \
--anchor VALUE \
--pad-color VALUE \
--scale-flags VALUE \
--portrait-full
mp4, mov). If the -o path has a different suffix, it is replaced with this.1080p, square1080, instagram_reels, tiktok_video, ultrawide1440, etc.). Each maps to a specific width/height.pad – maintain AR, fit inside target, pad with color.fit – maintain AR, fit inside target, no padding.fill, fill_crop – cover target and center-crop based on anchor.stretch – ignore AR and stretch to the exact width/height.--mode is not set:
yes → behaves like stretch.no → behaves like pad.center, top, bottom, left, right,top_left, top_right, bottom_left, bottom_right.pad mode (e.g., #000000, #FFFFFF).lanczos, bicubic, bilinear, or neighbor. Controls quality vs speed.fill_crop).Each preset maps to a (width, height) pair:
sd – 320×240720hd – 640×3601080hd – 960×540widescreen – 320×180portrait1080 – 1080×1620480p – 640×480576p – 720×576720p – 1280×7201080p – 1920×10801440p – 2560×14404k – 3840×21608k – 7680×4320vga – 640×480qvga – 320×240wvga – 800×480svga – 800×600xga – 1024×768wxga – 1280×800sxga – 1280×1024uxga – 1600×1200wuxga – 1920×1200qwxga – 2048×1152qhd – 2560×1440wqxga – 2560×16005k – 5120×2880portrait720 – 720×1280portrait4k – 2160×3840square1080 – 1080×1080square720 – 720×720cinema4k – 4096×2160ultrawide1080 – 2560×1080ultrawide1440 – 3440×1440instagram_feed – 1080×1080instagram_reels – 1080×1920instagram_stories – 1080×1920tiktok_video – 1080×1920youtube_standard – 1920×1080youtube_shorts – 1080×1920facebook_feed – 1080×1080facebook_stories – 1080×1920twitter_video – 1280×720twitter_square – 1080×1080linkedin_video – 1920×1080linkedin_square – 1080×1080snapchat_video – 1080×1920pinterest_video – 1080×1920pinterest_square – 1000×1000videobeaux -P convert_dims \
-i myvideo.mp4 \
-o convert_dims_instareel.mp4 \
--output-format mp4 \
--preset instagram_reels \
--mode fill_crop \
--anchor center \
--pad-color "#000000" \
--scale-flags lanczos \
--portrait-full
portrait-full effectively overrides mode to a full-frame, cover-style portrait crop while honoring the preset’s size.scale-flags=lanczos offers high-quality resizing at the cost of some speed.-c:v libx264, -b:v 5000k, -pix_fmt yuv420p, -preset medium-c:a aac, -b:a 160k, -ar 48000, -movflags +faststart--force (global Videobeaux argument) controls overwrite; if not set, existing files cause an error.anchor.--portrait-full.mode=pad with a neutral pad-color when you want to preserve entire frames without cropping.mode=fill_crop for platform-native aspect ratios where filling the frame is more important than preserving the entire source frame.anchor=top or anchor=bottom for content where the action is biased toward one edge (e.g., heads near the top).scale-flags=lanczos for master/delivery renders; drop to bicubic or bilinear for faster, iterative tests.stretch to avoid unwanted distortion.