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

使用FFmpeg生成的视频上传YouTube提示不支持宽高比,如何解决?

解决YouTube不支持FFmpeg生成视频宽高比的问题

问题描述

我使用如下FFmpeg命令生成包含封面图片与音频的视频:
ffmpeg -loop 1 -r 1 -i c:/temp/coverImage.jpeg -i C:/temp/out/input.mp3 -vf "pad=ceil(iw/2)*2:ceil(ih/2)*2" -c:a copy -shortest -c:v libx264 C:/temp/VideoOut/output.mp4
但将生成的视频上传至YouTube后,收到错误提示:"Your video has an unsupported aspect ratio"(您的视频具有不支持的宽高比),请问该如何解决此问题?

问题原因

你当前的命令仅通过pad滤镜确保视频分辨率为偶数(满足H.264编码要求),但未将图片调整为YouTube支持的标准宽高比。YouTube仅接受16:9(横屏)、9:16(竖屏)、4:3等少数标准比例,非标准比例的视频会触发报错。

解决方案

根据需求选择以下任意一种方案修改FFmpeg命令:

方案1:生成16:9标准横屏视频(最通用)

子方案1.1:保留完整图片内容,用黑边填充至16:9

适合不想裁剪图片的场景,命令如下:

ffmpeg -loop 1 -r 1 -i c:/temp/coverImage.jpeg -i C:/temp/out/input.mp3 -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2" -c:a copy -shortest -c:v libx264 C:/temp/VideoOut/output.mp4
  • scale滤镜:按原比例缩小图片,确保不超过1920x1080(16:9标准分辨率)
  • pad滤镜:用黑边将图片补满至1920x1080,保持内容居中

子方案1.2:裁剪图片适配16:9(会移除部分边缘内容)

适合图片主体居中,可接受裁剪的场景,命令如下:

ffmpeg -loop 1 -r 1 -i c:/temp/coverImage.jpeg -i C:/temp/out/input.mp3 -vf "crop=ih*16/9:ih" -c:a copy -shortest -c:v libx264 C:/temp/VideoOut/output.mp4
  • crop滤镜:按16:9比例裁剪图片左右边缘,直接得到标准比例的画面

方案2:生成9:16标准竖屏视频(适合短视频)

子方案2.1:保留完整图片内容,用黑边填充至9:16

ffmpeg -loop 1 -r 1 -i c:/temp/coverImage.jpeg -i C:/temp/out/input.mp3 -vf "scale=1080:1920:force_original_aspect_ratio=decrease,pad=1080:1920:(ow-iw)/2:(oh-ih)/2" -c:a copy -shortest -c:v libx264 C:/temp/VideoOut/output.mp4

子方案2.2:裁剪图片适配9:16

ffmpeg -loop 1 -r 1 -i c:/temp/coverImage.jpeg -i C:/temp/out/input.mp3 -vf "crop=iw:iw*9/16" -c:a copy -shortest -c:v libx264 C:/temp/VideoOut/output.mp4

额外说明

如果需要4:3比例视频,只需将命令中的分辨率替换为1280x960,逻辑和上述方案一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 07:15:25