ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

OpenMontage 的 HeyGen 数字人视频尺寸与分辨率完全指南:720p/1080p、宽高比与平台适配

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本文以 OpenMontage 仓库中的 avatar-video 技能文档.claude/skills/avatar-video/references/dimensions.md为核心骨架系统讲解在 HeyGen v2 API 视频生成流程中如何配置画幅尺寸dimension、分辨率档位720p/1080p、宽高比约束与平台化推荐值。读完本文你将掌握通过POST /v2/video/generate的dimension字段精确控制输出画幅、使用维度辅助函数做多平台分发、校验自定义尺寸合法性并理解尺寸选择与积分成本、背景资源、Remotion 合成流程之间的联动关系。为什么视频尺寸是数字人视频生产的第一决策点HeyGen 支持多种视频尺寸与宽高比以适配不同平台和使用场景而尺寸一旦在生成请求中确定将直接影响后期合成、平台分发与成本。在 OpenMontage 的 avatar-video 技能体系中尺寸配置与 视频生成、背景资源、积分配额、Remotion 合成 等参考文档协同工作——尤其是与 Remotion 集成时文档明确强调将 HeyGen 输出尺寸与 Remotion 合成尺寸严格对齐是关键要求。从仓库源码看OpenMontage 自有的 video_compose.py 工具链也围绕width/height做最终合成例如通过compose_target {width: W, height: H, fit: pad|cover}决定输出分辨率见 tools/video/video_compose.py这印证了上游生成尺寸决定下游合成分辨率的工程原则尺寸决策应该在生成阶段就完成而不是在后期补救。标准分辨率档位三种画幅 × 两个档位avatar-video 技能文档给出三类最常见画幅的标准分辨率横屏 Landscape16:9分辨率宽度高度适用场景720p1280720标准质量处理更快1080p19201080高质量最常用竖屏 Portrait9:16分辨率宽度高度适用场景720p7201280移动端优先内容1080p10801920高质量竖屏方形 Square1:1分辨率宽度高度适用场景720p720720社交媒体帖子1080p10801080高质量方形其中 1080p 横屏1920×1080是文档反复推荐的主力档位因为它同时满足 YouTube、LinkedIn、Web 演示等主流场景也是 OpenMontage 仓库内部多处示例如 .claude/skills/avatar-video/references/photo-avatars.md 中的视频配置使用的默认维度。在生成请求中设置尺寸dimension是POST /v2/video/generate请求中的顶层可选字段格式为{ width, height }。它作用于整条视频包括多场景video_inputs数组中的所有场景。TypeScript 配置// 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 } }请求需要设置HEYGEN_API_KEY环境变量并通过X-Api-Key请求头传递认证信息详见 .claude/skills/avatar-video/SKILL.md 的 Authentication 一节。dimension属于可选字段若不传服务端会使用默认画幅但在生产中明确指定是更稳妥的做法。维度辅助函数用一套配置覆盖五种宽高比文档提供了一个可直接复用的辅助函数将宽高比与质量档位映射为具体像素尺寸覆盖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);这个函数的工程价值在于把平台需求抽象成画幅 档位两个稳定维度避免在业务代码中散落魔法数字。文档特别指出 4:3 和 4:5 档位4:3 适合传统演示与部分直播场景4:5864×1080 / 576×720是 Instagram Feed 的常见替代比例比 1:1 更占屏幕。平台推荐配置速查文档为六类主流分发渠道给出了明确推荐可直接作为配置模板平台尺寸画幅备注YouTube1920×108016:9 横屏标准长视频TikTok / Instagram Reels / YouTube Shorts1080×19209:16 竖屏短视频Instagram Feed Post1080×10801:1 方形信息流帖子LinkedIn1920×108016:9 横屏偏好评测横屏Twitter/X1280×72016:9 横屏720p 常见const youtubeConfig { video_inputs: [...], dimension: { width: 1920, height: 1080 }, // 16:9 landscape }; const shortFormConfig { video_inputs: [...], dimension: { width: 1080, height: 1920 }, // 9:16 portrait }; const instagramFeedConfig { video_inputs: [...], dimension: { width: 1080, height: 1080 }, // 1:1 square }; const linkedinConfig { video_inputs: [...], dimension: { width: 1920, height: 1080 }, // 16:9 landscape preferred }; const twitterConfig { video_inputs: [...], dimension: { width: 1280, height: 720 }, // 16:9, 720p is common };值得注意 Twitter/X 的推荐值是 1280×720 而非 1080p在信息流自动播放场景中720p 在清晰度与加载速度之间取得了更好的平衡也呼应了文档drafts 用 720p、正式输出用 1080p的成本策略。Avatar IV 的尺寸设置方式按朝向而非像素Avatar IV照片级数字人走的是POST /v2/video/av4/generate端点其尺寸语义与 v2 视频生成不同——通过video_orientation字段指定朝向而不是传dimension像素值见 .claude/skills/avatar-video/references/photo-avatars.mdtype 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 对应的维度映射为portrait→ 720×1280TikTok、Storieslandscape→ 1280×720YouTube、Websquare→ 720×720Instagram Feed。从源码结构看.claude/skills/avatar-video/references/photo-avatars.md 中generateAvatarIVVideo的请求体也印证了这一点它接收video_orientation与可选的fitcover/contain字段而非dimension对象。这意味着对接 Avatar IV 时不能沿用 v2 的 dimension 心智模型而要在朝向 × 适配模式层面设计配置层。自定义尺寸约束边界与校验函数HeyGen 在标准档位之外允许自定义尺寸但存在三条硬性约束最小值任意一边不得小于 128px最大值任意一边不得超过 4096px必须为偶数宽高都必须能被 2 整除const customConfig { video_inputs: [...], dimension: { width: 1600, height: 900 // Custom 16:9 at non-standard resolution } };文档配套给出了校验函数建议在生成请求前调用把无效参数挡在 API 调用之前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; }偶数约束与 OpenMontage 内部的合成工具链设计是一致的FFmpeg 系编码器对偶数宽高尤其是 H.264 的宏块对齐更友好video_compose.py 在最终合成时同样以整数宽高构造-s WxH参数见 tools/video/video_compose.py。因此在自定义尺寸时建议统一按偶数对齐避免在后续合成阶段出现色带或裁剪问题。分辨率与积分成本用 720p 跑草稿、1080p 出成片文档给出了分辨率与积分消耗的相对关系分辨率相对成本720p基准费率1080p约 1.5 倍基准费率这一成本差异在 .claude/skills/avatar-video/references/quota.md 的积分消耗表中得到印证720p video → Base rate1080p video → ~1.5x base rate。因此文档给出的实操策略是草稿与测试阶段使用 720p 验证脚本、口型、构图正式输出再切回 1080p。配额文档还提示可在生成前调用GET /v2/user/remaining_quota预检余额并尽量在开发阶段使用test: true测试模式带水印、不消耗积分这些都可以与尺寸选择策略组合成一套低成本迭代工作流。背景资源与尺寸对齐背景图片/视频的尺寸应当与视频输出尺寸一致否则可能出现裁剪crop或拉伸stretch// For 1080p landscape video const config { video_inputs: [ { character: {...}, voice: {...}, background: { type: image, url: https://example.com/1920x1080-background.jpg // Match video dimensions } } ], dimension: { width: 1920, height: 1080 } };.claude/skills/avatar-video/references/backgrounds.md 进一步细化了背景资源要求图片背景支持 JPEG/PNG推荐尺寸与视频一致1080p 横屏对应 1920×1080、宽高比应与视频匹配、文件建议小于 10MB视频背景建议使用 MP4H.264 编码小于 100MB若短于数字人内容会自动循环。背景的fit字段cover/contain只决定资源如何填充画布并不会改变输出视频的dimension——这同样是先定尺寸、再备素材流程的原因。实战视频配置工厂实现多平台批量分发文档最后提供了一个完整可用的视频配置工厂将脚本、数字人、音色与平台绑定并支持 720p/1080p 档位切换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]; // Scale down for 720p if requested 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, }; } // Usage const tiktokVideo createVideoConfig({ script: Hey everyone! Check this out!, avatarId: josh_lite3_20230714, voiceId: 1bd001e7e50f421d891986aad5158bc8, platform: tiktok, quality: 1080p, });这个工厂模式的要点是平台即配置键platform枚举直接映射到像素尺寸业务层无需关心具体数值等比缩放算法720p 档位通过对 1080p 基准值乘以720/1080等比缩放而来保证任意画幅下缩放后仍保持正确的宽高比可直接与批次生成结合文档的Batch video generation with exact specs能力见 .claude/skills/avatar-video/SKILL.md可以在此工厂之上循环调用实现一份脚本多平台分发。与 Remotion 合成链路联动的尺寸对齐尺寸不仅影响 HeyGen 输出还决定 Remotion 合成能否无缝衔接。.claude/skills/avatar-video/references/remotion-integration.md 给出了与本文完全一致的维度预设表并要求 HeyGen 与 Remotion 使用同一份尺寸常量// Shared dimension constants for both HeyGen and Remotion const DIMENSIONS { landscape_1080p: { width: 1920, height: 1080 }, landscape_720p: { width: 1280, height: 720 }, portrait_1080p: { width: 1080, height: 1920 }, portrait_720p: { width: 720, height: 1280 }, square_1080p: { width: 1080, height: 1080 }, square_720p: { width: 720, height: 720 }, } as const; type DimensionPreset keyof typeof DIMENSIONS;// Remotion 侧remotion/src/Root.tsx Composition idAvatarVideo component{AvatarComposition} durationInFrames{300} fps{30} width{DIMENSIONS.landscape_1080p.width} height{DIMENSIONS.landscape_1080p.height} /该文档还强调两点与尺寸直接相关的实践优先使用OffthreadVideo而非Video前者通过 FFmpeg 逐帧抽取保证帧精确渲染避免浏览器解码器造成的抖动帧率对齐HeyGen 默认 25fps若 Remotion 使用 30fps 需通过playbackRate{25/30}微调避免音画漂移。另外若在 Remotion 中使用透明背景 WebM/v1/video.webm端点用于将数字人叠加在录屏等底层内容之上其请求体使用avatar_pose_idavatar_style结构dimension同样接受{width, height}默认 1280×720。可以推断透明通道合成对尺寸对齐的要求更高——像素级叠加场景下任何尺寸偏差都会直接造成边缘裁切或留白。尺寸选择的最佳实践清单综合文档与仓库证据落地尺寸决策时可遵循以下清单先定画幅再定像素根据分发平台确定画幅横屏/竖屏/方形再从标准档位表取值避免凭空拍脑袋草稿 720p、成片 1080p结合积分成本约 1.5 倍费率与测试模式把 1080p 留给最终交付自定义尺寸走校验在调用 API 前执行validateDimensions确保 128~4096px 且为偶数背景素材对齐视频尺寸图片、视频背景与dimension保持一致宽高比防止裁切拉伸Avatar IV 用朝向字段走video_orientationportrait/landscape/square不要混用 v2 的dimension与 Remotion 共用常量将维度预设抽为共享常量确保 HeyGen 输出与合成画布严格一致工厂化批量分发用createVideoConfig一类的工厂函数统一管理平台映射与档位缩放支撑多平台批量生成。延伸阅读技能总览与认证方式.claude/skills/avatar-video/SKILL.md视频生成完整请求字段与多场景配置.claude/skills/avatar-video/references/video-generation.md背景类型与素材要求.claude/skills/avatar-video/references/backgrounds.md积分系统与配额管理.claude/skills/avatar-video/references/quota.md照片数字人含 Avatar IV 的video_orientation.claude/skills/avatar-video/references/photo-avatars.mdHeyGen 输出与 Remotion 合成的尺寸对齐.claude/skills/avatar-video/references/remotion-integration.md仓库内视频合成的尺寸处理实现tools/video/video_compose.py【免费下载链接】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),仅供参考
返回列表