ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

OpenMontage HeyGen 视频尺寸指南:分辨率、宽高比与平台化配置实践

OpenMontage HeyGen 视频尺寸指南:分辨率、宽高比与平台化配置实践 OpenMontage HeyGen 视频尺寸指南分辨率、宽高比与平台化配置实践【免费下载链接】OpenMontageWorlds first open-source, agentic video production system. 12 production pipelines, 100 tools, 700 agent skill and production-knowledge files. Turn your AI coding assistant into a full video production studio.项目地址: https://gitcode.com/GitHub_Trending/op/OpenMontage本文基于 OpenMontage 仓库中 HeyGen 技能包的核心参考文档 dimensions.md系统讲解 HeyGen 视频 API 中dimension字段的完整用法720p/1080p 两套分辨率下 5 种宽高比的标准像素组合、各发布平台的推荐尺寸、自定义尺寸约束128–4096px、偶数校验、Avatar IV 的 orientation 机制以及分辨率与积分成本的关系。读完本文你可以为 YouTube、TikTok、Instagram 等不同平台构建可复用的视频配置工厂并结合 video-generation.md 中的完整请求字段完成一次真正可运行的POST /v2/video/generate调用。标准分辨率三种宽高比的两档画质HeyGen 支持多种视频尺寸与宽高比以适配不同平台和使用场景。标准组合分为横屏、竖屏、方形三类每类均提供 720p 与 1080p 两档横屏16:9分辨率宽高典型用途720p1280720标准画质处理更快1080p19201080高画质最常用竖屏9:16分辨率宽高典型用途720p7201280移动端优先的内容1080p10801920高画质竖版方形1:1分辨率宽高典型用途720p720720社交媒体帖子1080p10801080高画质方形需要特别说明的是这套dimension: {width, height}对象属于标准视频生成端点POST /v2/video/generate即 avatar-video 精确控制模式而不是 Video Agent 的POST /v1/video_agent/generate——后者使用config.orientationportrait或landscape由 Agent 自行决定具体像素参见 video-agent.md。两种模式的选型对照也在 SKILL.md 的When to Use This Skill vs Avatar Video章节中有明确划分只要需要精确的分辨率/场景/背景控制就应走 v2 标准 API。在 API 请求中指定 dimensiondimension是POST /v2/video/generate的顶层可选字段取值形如{width, height}。根据 video-generation.md 的请求字段表它与video_inputs1–50 个场景对象必填、title、test测试模式带水印不耗积分、caption等并列字段类型必填说明video_inputsarray✓1–50 个视频输入对象dimensionobject视频尺寸{width, height}titlestring视频名称testboolean测试模式带水印、不耗积分captionboolean启用自动字幕callback_id/callback_urlstringWebhook 跟踪与完成通知folder_idstring存储文件夹 IDTypeScript 三种标准尺寸// Landscape 1080p const landscapeConfig { video_inputs: [...], dimension: { width: 1920, height: 1080 } }; // Portrait 1080p const portraitConfig { video_inputs: [...], dimension: { width: 1080, height: 1920 } }; // Square 1080p const squareConfig { video_inputs: [...], dimension: { width: 1080, height: 1080 } };curl 直接调用# Landscape 1080p curl -X POST https://api.heygen.com/v2/video/generate \ -H X-Api-Key: $HEYGEN_API_KEY \ -H Content-Type: application/json \ -d { video_inputs: [...], dimension: { width: 1920, height: 1080 } }认证方面所有请求都要求X-Api-Key请求头密钥来自环境变量HEYGEN_API_KEY。OpenMontage 仓库的工具层同样遵循这一约定heygen_video.py 中get_status()仅在设置了HEYGEN_API_KEY时才返回ToolStatus.AVAILABLE未配置时直接返回安装指引Set the HEYGEN_API_KEY environment variable。宽高比辅助函数五种比例 × 两档画质的完整映射原文档给出了一个比标准表格更完整的尺寸表——在 16:9、9:16、1:1 之外还覆盖了 4:3 与 4:5 两种社交媒体常见比例适合作为项目内的统一尺寸来源type AspectRatio 16:9 | 9:16 | 1:1 | 4:3 | 4:5; type Quality 720p | 1080p; interface Dimensions { width: number; height: number; } function getDimensions(aspectRatio: AspectRatio, quality: Quality): Dimensions { const configs: RecordAspectRatio, RecordQuality, Dimensions { 16:9: { 720p: { width: 1280, height: 720 }, 1080p: { width: 1920, height: 1080 }, }, 9:16: { 720p: { width: 720, height: 1280 }, 1080p: { width: 1080, height: 1920 }, }, 1:1: { 720p: { width: 720, height: 720 }, 1080p: { width: 1080, height: 1080 }, }, 4:3: { 720p: { width: 960, height: 720 }, 1080p: { width: 1440, height: 1080 }, }, 4:5: { 720p: { width: 576, height: 720 }, 1080p: { width: 864, height: 1080 }, }, }; return configs[aspectRatio][quality]; } // Usage const youTubeDimensions getDimensions(16:9, 1080p); const tikTokDimensions getDimensions(9:16, 1080p); const instagramDimensions getDimensions(1:1, 1080p);这个映射表可以直接移植到你的生成服务中作为平台 → 尺寸转换的单一数据源避免在各处硬编码像素值。平台推荐尺寸各平台的最佳尺寸推荐如下来自原文档均可直接作为dimension的取值YouTubeconst youtubeConfig { video_inputs: [...], dimension: { width: 1920, height: 1080 }, // 16:9 横屏 };TikTok / Instagram Reels / YouTube Shortsconst shortFormConfig { video_inputs: [...], dimension: { width: 1080, height: 1920 }, // 9:16 竖屏 };Instagram 信息流帖子const instagramFeedConfig { video_inputs: [...], dimension: { width: 1080, height: 1080 }, // 1:1 方形 };LinkedInconst linkedinConfig { video_inputs: [...], dimension: { width: 1920, height: 1080 }, // 16:9 横屏优先 };Twitter/Xconst twitterConfig { video_inputs: [...], dimension: { width: 1280, height: 720 }, // 16:9720p 常见 };Avatar IV用 orientation 而非像素指定尺寸对于 Avatar IV基于照片的头像尺寸不是任意像素值而是通过方向参数三选一。原文档的映射关系是type VideoOrientation portrait | landscape | square; function getAvatarIVDimensions(orientation: VideoOrientation): Dimensions { switch (orientation) { case portrait: return { width: 720, height: 1280 }; case landscape: return { width: 1280, height: 720 }; case square: return { width: 720, height: 720 }; } }注意 Avatar IV 的三档尺寸均落在 720p 档位这意味着照片数字人的成片清晰度上限由模型侧决定与常规头像的自由dimension机制不同。自定义尺寸与硬性约束除了标准组合HeyGen 允许在限制范围内使用自定义尺寸例如非标准分辨率的 16:9const customConfig { video_inputs: [...], dimension: { width: 1600, height: 900 // 自定义 16:9 的非标准分辨率 } };尺寸约束务必在客户端先校验最小值任一边 128px最大值任一边 4096px必须为偶数宽与高均需能被 2 整除原文档给出的校验函数function validateDimensions(width: number, height: number): boolean { if (width 128 || height 128) { throw new Error(Dimensions must be at least 128px); } if (width 4096 || height 4096) { throw new Error(Dimensions cannot exceed 4096px); } if (width % 2 ! 0 || height % 2 ! 0) { throw new Error(Dimensions must be even numbers); } return true; }在批量生成或模板渲染场景下建议在调用 API 前把该校验作为前置步骤避免无效请求消耗时间视频生成通常需要 5–15 分钟甚至更久见 avatar-video/SKILL.md 的最佳实践。分辨率与积分成本更高分辨率会消耗更多积分credit。原文档给出的相对成本关系为分辨率相对成本720p基础费率1080p约 1.5× 基础费率建议的工作方式是先用 720p 做草稿与迭代确认脚本、节奏、场景无误后再以 1080p 出成品。这一策略与同技能包中 quota.md 的配额管理章节互相印证其Credit Consumption表同样标注720p 为 base rate1080p 约 1.5×并给出了生成前检查剩余配额的完整模式——import requests import os response requests.get( https://api.heygen.com/v2/user/remaining_quota, headers{X-Api-Key: os.environ[HEYGEN_API_KEY]} ) data response.json()[data] print(fRemaining credits: {data[remaining_quota]})此外test: true测试模式可进一步降低试错成本测试视频带水印且不消耗积分见 video-generation.md 的Test Mode小节适合在调整尺寸配置时反复验证。背景素材尺寸要与视频尺寸匹配当场景使用图像或视频背景时video_inputs[].backgroundtype可为color/image/videofit支持cover/contain背景素材的分辨率应与最终视频尺寸一致否则会被裁切或留边影响构图质量// For 1080p landscape video const config { video_inputs: [ { character: {...}, voice: {...}, background: { type: image, url: https://example.com/1920x1080-background.jpg // 与视频尺寸匹配 } } ], dimension: { width: 1920, height: 1080 } };结合 video-generation.md 的 background 字段定义可以推断fit: cover时超出的部分会被裁掉因此若只有一张 1920×1080 的背景图却生成 1080×1920 的竖版视频横向构图将被大面积裁损。更稳妥的做法是先定平台 → 定dimension→ 再按同一比例准备背景素材。视频配置工厂平台 画质 → 完整请求体原文档的完整实战模式是平台 画质驱动的配置工厂。它内置五大平台的 1080p 基准尺寸按需线性缩放到 720p并自动组装video_inputsinterface VideoConfigOptions { script: string; avatarId: string; voiceId: string; platform: youtube | tiktok | instagram_feed | instagram_story | linkedin; quality?: 720p | 1080p; } function createVideoConfig(options: VideoConfigOptions) { const platformDimensions: Recordstring, Dimensions { youtube: { width: 1920, height: 1080 }, tiktok: { width: 1080, height: 1920 }, instagram_feed: { width: 1080, height: 1080 }, instagram_story: { width: 1080, height: 1920 }, linkedin: { width: 1920, height: 1080 }, }; const dimension platformDimensions[options.platform]; // 请求 720p 时按比例缩放 if (options.quality 720p) { dimension.width Math.round((dimension.width * 720) / 1080); dimension.height Math.round((dimension.height * 720) / 1080); } return { video_inputs: [ { character: { type: avatar, avatar_id: options.avatarId, avatar_style: normal, }, voice: { type: text, input_text: options.script, voice_id: options.voiceId, }, }, ], dimension, }; } // 使用示例 const tiktokVideo createVideoConfig({ script: Hey everyone! Check this out!, avatarId: josh_lite3_20230714, voiceId: 1bd001e7e50f421d891986aad5158bc8, platform: tiktok, quality: 1080p, });拿到配置后即可按标准流程生成并轮询POST /v2/video/generate返回video_id随后GET /v2/videos/{video_id}轮询至status completed获取下载 URL。轮询实现的完整示例含 10 秒间隔、失败与超时处理在 video-generation.md 的Complete Workflow Example中。OpenMontage 工具层的尺寸抽象aspect_ratio 参数从 OpenMontage 仓库的工具实现看dimension的自由像素模式在 Agent 工具体系中被抽象为更简单的aspect_ratio枚举这体现了文档中的完整机制 → 工具接口上的安全子集的设计思路heygen_video.py 的input_schema定义aspect_ratio: {type: string, enum: [16:9, 9:16, 1:1], default: 16:9}即工具层只暴露三档标准比例避免 Agent 传入越界像素idempotency_key_fields中也包含aspect_ratio说明它被视为影响生成结果的身份字段之一。_shared.py 中的generate_heygen_video()会把aspect_ratio连同prompt、provider组装成workflow_input通过POST /v1/workflows/executionsworkflow_type: GenerateVideoNode发起生成随后以 5 秒起步、按 1.2 倍递增至 30 秒封顶的间隔轮询GET /v1/workflows/executions/{execution_id}最长等待 600 秒完成后下载video_url到output_path。这条轮询链路与文档推荐的GET /v2/videos/{video_id}模式属于同一异步语义的不同实现路径。该工具的estimate_cost()/estimate_runtime()按 provider 的quality与speed元数据估算成本与耗时highest≈ 0.50 美元、high≈ 0.35、low≈ 0.15fastest30s →slow300s这为选 720p 还是 1080p的决策提供了工具侧的成本信号。也就是说如果你在 OpenMontage 的 Agent 工作流中调用heygen_video工具比例选择被约束为16:9/9:16/1:1若需要本文前述的 4:3、4:5 或任意偶数像素尺寸则应使用X-Api-Key直接调用 v2 标准 API 并传入完整的dimension对象——这正是 dimensions.md 所属的 create-video / avatar-video 技能文档承担的场景。实践清单先定平台再定尺寸按上文平台推荐表锁定宽高比优先 1080p 出成品、720p 做草稿。客户端先做约束校验128–4096px、偶数两条规则缺一不可。背景素材同比例准备background.url的图像/视频分辨率应与dimension一致避免cover裁切损失。Avatar IV 走 orientation照片数字人不要塞自定义像素用portrait/landscape/square三选一。生成前查配额GET /v2/user/remaining_quota1080p 按约 1.5× 基础费率估算所需积分开发期用test: true零积分验证配置。生成后留足超时轮询GET /v2/videos/{video_id}时预留 15–20 分钟量级失败分支处理status failed与failure_message。以上全部参数与约束均可在仓库内交叉验证标准表格与配置工厂出自 dimensions.md请求字段与轮询细节出自 video-generation.md配额与测试模式出自 quota.md技能定位与 MCP 工具选型出自 SKILL.mdavatar-video 技能包下还有一份同名的 dimensions.md 可作为精确控制场景的平行参考。【免费下载链接】OpenMontageWorlds first open-source, agentic video production system. 12 production pipelines, 100 tools, 700 agent skill and production-knowledge files. Turn your AI coding assistant into a full video production studio.项目地址: https://gitcode.com/GitHub_Trending/op/OpenMontage创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表