ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

OpenMontage 中的 HeyGen 视频分辨率与宽高比完全指南:从 720p/1080p 到平台适配实战

2026/9/10 8:59:33 拓冰建站 浏览量
OpenMontage 中的 HeyGen 视频分辨率与宽高比完全指南:从 720p/1080p 到平台适配实战 OpenMontage 中的 HeyGen 视频分辨率与宽高比完全指南从 720p/1080p 到平台适配实战【免费下载链接】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本指南围绕 HeyGen AI 数字人视频生成中最容易被忽略、却直接决定成片质量和投放效果的维度配置展开覆盖标准分辨率与宽高比对照、dimension参数在 TypeScript / curl 中的设置方式、自定义尺寸约束、积分成本差异以及面向 YouTube、TikTok、Instagram 等平台的分发推荐配置。读完本文你将能够在 OpenMontage 的 heygen 技能 与 avatar-video 技能 工作流中为任意视频精确选择分辨率与画幅并写出可复用的平台配置工厂函数。标准分辨率与宽高比总览HeyGen 的/v2/video/generate接口通过请求体顶层的dimension对象{ width, height }控制输出画幅。针对不同平台和用途HeyGen 提供了三种最常用的标准画幅每种画幅又区分 720p 与 1080p 两档清晰度横屏16:9分辨率宽度高度适用场景720p1280720标准质量处理更快1080p19201080高质量最常用竖屏9:16分辨率宽度高度适用场景720p7201280移动端优先的内容1080p10801920高质量竖版视频方形1:1分辨率宽度高度适用场景720p720720社交媒体帖子1080p10801080高质量方形视频在 OpenMontage 中这一画幅维度并不仅限于 HeyGen 数字人视频。从 heygen_video.py 的input_schema可以看到仓库为 HeyGen 工作流生成的视频工具同样将aspect_ratio枚举限制为[16:9, 9:16, 1:1]默认16:9与本文档定义的标准画幅一一对应保证了技能文档—工具接口—生成结果三个层面的画幅语义一致。设置尺寸的两种姿势TypeScript 与 curldimension是/v2/video/generate请求体的顶层可选字段直接传入width与height两个整数即可。TypeScript 方式// 横屏 1080p const landscapeConfig { video_inputs: [...], dimension: { width: 1920, height: 1080 } }; // 竖屏 1080p const portraitConfig { video_inputs: [...], dimension: { width: 1080, height: 1920 } }; // 方形 1080p const squareConfig { video_inputs: [...], dimension: { width: 1080, height: 1080 } };curl 方式# 横屏 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 } }需要说明的是dimension在请求结构中是可选的当它被省略时HeyGen 会采用平台默认画幅。若你希望精确控制输出务必显式传入。OpenMontage 的工具层也有类似的行为——generate_heygen_video 在构造工作流输入时会将aspect_ratio默认16:9作为必传工作流参数提交给 HeyGenGenerateVideoNode而本地生成路径如 Wan、LTX则由各模型的default_width/default_height决定默认几何尺寸见 _shared.py。维度辅助函数按宽高比 质量查询像素尺寸为避免在代码中散落魔法数字文档给出了一个把宽高比 × 质量映射为像素尺寸的辅助函数。它额外覆盖了 4:3 与 4:5 两种画幅适合需要演讲 PPT4:3或 Instagram 竖版帖子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]; } // 使用示例 const youTubeDimensions getDimensions(16:9, 1080p); const tikTokDimensions getDimensions(9:16, 1080p); const instagramDimensions getDimensions(1:1, 1080p);该函数在 OpenMontage 中可以直接与 avatar-video 技能 的默认工作流配合列出数字人GET /v2/avatars→ 选择音色GET /v2/voices→ 编写脚本 → 调用/v2/video/generate生成视频 → 轮询状态。其中生成视频一步的dimension正是由这里的getDimensions决定的。平台分发推荐配置不同内容平台的默认播放器画幅差异巨大直接复用 1080p 横屏模板会导致短视频平台出现大面积黑边。文档针对主流平台给出了开箱即用的配置YouTube16:9 横屏const youtubeConfig { video_inputs: [...], dimension: { width: 1920, height: 1080 }, // 16:9 横屏 };TikTok / Instagram Reels / YouTube Shorts9:16 竖屏const shortFormConfig { video_inputs: [...], dimension: { width: 1080, height: 1920 }, // 9:16 竖屏 };Instagram 信息流帖子1:1 方形const instagramFeedConfig { video_inputs: [...], dimension: { width: 1080, height: 1080 }, // 1:1 方形 };LinkedIn16:9 横屏优先const linkedinConfig { video_inputs: [...], dimension: { width: 1920, height: 1080 }, // 16:9 横屏优先 };Twitter/X16:9720p 常见const twitterConfig { video_inputs: [...], dimension: { width: 1280, height: 720 }, // 16:9720p 较常见 };Avatar IV照片数字人的尺寸设置按方向参数与基于dimension像素对的标准数字人视频不同Avatar IV照片驱动的数字人通过**方向orientation**来声明画幅而不直接传宽高。文档给出了对应的映射函数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 级别且三种方向均以720为短边基准。如果你的流程中同时混用标准数字人与照片数字人务必分别处理dimension像素对与orientation方向两种参数形态。自定义尺寸与合法性约束HeyGen 允许在限定范围内使用任意自定义分辨率例如非标准的 1600×900 的 16:9 画幅const 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; }分辨率与积分成本720p 草稿、1080p 终稿分辨率不仅是画质问题也直接关系到 HeyGen 的积分credit消耗。根据文档中的成本对照分辨率相对成本720p基准费率1080p约 1.5 倍基准费率因此文档给出的最佳实践是草稿与测试阶段使用 720p 压低成本最终交付时再切换到 1080p。这一成本意识在 OpenMontage 的工具层同样有所体现——estimate_quality_cost 依据模型质量档位highest/high/medium/low估算单次生成的美元成本而 heygen_video.py 会在执行后把cost_usd写入工具结果供后续成本追踪使用。也就是说仓库在调用 HeyGen 前就已经把质量档位 → 成本的换算内置到了工具契约里。背景素材与视频尺寸的匹配背景图片或视频的分辨率应当与输出视频的dimension保持一致否则会被裁切cover或留出空白contain破坏画面构图。以 1080p 横屏视频为例// 针对 1080p 横屏视频 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或contain互为表里先按输出尺寸准备背景素材再通过fit控制缩放策略才能保证数字人、背景与最终画幅三者构图协调。打造可复用的视频配置工厂把平台 → 画幅的映射收拢到一个工厂函数中是批量生成多平台视频最省心的模式。文档提供了一个完整实现传入脚本、数字人 ID、音色 ID、目标平台与质量档位自动返回一份可直接提交给/v2/video/generate的请求体interface 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, }; } // 使用示例生成 TikTok 竖屏 1080p 视频 const tiktokVideo createVideoConfig({ script: Hey everyone! Check this out!, avatarId: josh_lite3_20230714, voiceId: 1bd001e7e50f421d891986aad5158bc8, platform: tiktok, quality: 1080p, });注意示例中的quality 720p分支采用了从 1080p 等比缩放的实现方式Math.round((w * 720) / 1080)这保证了缩放结果恰好落在偶数尺寸上天然满足上文的自定义尺寸约束。你可以将本工厂与 OpenMontage 的 avatar-video 技能 中的轮询流程GET /v2/videos/{video_id}直至completed衔接实现一个脚本、多平台成片的批量分发管线。在 OpenMontage 中的落地位置最后梳理一下本文内容在仓库中的对应资产便于你在实际项目中定位技能文档核心文档位于 heygen 技能的 dimensions 参考同时在 avatar-video 技能当前推荐的精控工作流与 create-video 技能提示词驱动工作流中维护了内容一致的副本三个技能共用同一套画幅约定。工具实现heygen_video.py 定义了aspect_ratio枚举16:9/9:16/1:1并基于HEYGEN_API_KEY提供生成能力generate_heygen_video完成工作流提交、轮询与视频下载的完整调用链。配套参考video-generation.md 详细说明了/v2/video/generate的完整请求字段与多场景视频结构其中的 WebM 透明背景生成同样支持dimension字段默认 1280×720是画幅配置在合成场景下的延伸。综合来看画幅选择本质上是平台投放规则 × 积分成本预算 × 素材构图三者之间的平衡先用 720p 快速验证脚本与构图再用 1080p 产出最终成片最后按目标平台从配置工厂中取用对应的dimension——这就是一套可直接落地到 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创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考