You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MoviePy如何将1920x1080横屏视频通过中心缩放转为1080x1920竖屏

使用MoviePy实现横屏转竖屏(中心区域放大)的操作方案

实现原理

原1920x1080横屏视频的宽高比为16:9,目标1080x1920竖屏的宽高比为9:16。我们先将原视频等比例放大到高度刚好为1920,再对左右两侧多余的宽度进行中心裁剪,即可得到中心区域放大后的竖屏视频。

前置依赖

首先安装MoviePy库:
pip install moviepy

完整实现代码

from moviepy.editor import VideoFileClip

# 加载原视频,替换为你的本地视频路径
input_path = "your_input_video.mp4"
original_clip = VideoFileClip(input_path)

# 计算缩放比例,确保放大后视频高度匹配目标竖屏高度1920
scale_ratio = 1920 / original_clip.size[1]
scaled_clip = original_clip.resize(scale_ratio)

# 中心裁剪为1080x1920分辨率
target_w, target_h = 1080, 1920
crop_x_start = (scaled_clip.size[0] - target_w) / 2
final_clip = scaled_clip.crop(x1=crop_x_start, y1=0, width=target_w, height=target_h)

# 导出视频,替换为你想要的输出路径
final_clip.write_videofile(
    "output_vertical_video.mp4",
    codec="libx264",
    audio_codec="aac",
    # 可选参数:调整码率控制画质和文件大小
    # bitrate="6000k"
)

# 释放资源
original_clip.close()
final_clip.close()

注意事项

  • 代码会自动适配输入的1920x1080视频,不需要手动修改尺寸参数
  • 若导出后画质不符合预期,可调整bitrate参数,数值越高画质越好、文件体积越大
  • 若使用过程中出现编码器相关报错,可检查本地FFmpeg环境是否正常,MoviePy默认会携带适配的FFmpeg版本

内容的提问来源于stack exchange,提问作者bodyanyash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 04:06:01