跳转到主要内容

常见问题解答

分辨率和尺寸

后台和系统相关

技术规格

视频参数

参数竖屏模式横屏模式
分辨率720 × 12801280 × 720
宽高比9:1616:9
时长8 秒8 秒
音轨自带自带

帧转视频要求

使用帧转视频模式(-fl 模型)时:
  • 开始帧图片:必传,仅限一张
  • 结束帧图片:可选,如果不传则自动生成过渡效果
  • 图片格式:支持 URL 或 base64 编码
  • 图片大小:建议不超过 10MB

错误处理

常见错误

最佳实践

提示词优化

编写高质量提示词的技巧:
  • 具体描述场景、动作和细节
  • 使用清晰的动词描述运动
  • 指定时间、地点和环境
  • 避免过于复杂或矛盾的描述
示例对比:
不好的提示词好的提示词
”一只猫""一只橘色的小猫在阳光明媚的花园里慢慢走动"
"跑步""一个运动员在晨光中沿着海滨大道快速奔跑"
"飞""一只雄鹰展开双翼在雪山之巅翱翔”

异步调用最佳实践

import requests
import time

def generate_video_async(prompt, model="veo-3.1-fast"):
    """异步生成视频的完整流程"""

    # 1. 创建任务
    response = requests.post(
        "https://api.apiyi.com/v1/videos",
        headers={"Authorization": "sk-your-api-key"},
        json={"prompt": prompt, "model": model}
    )
    video_id = response.json()["id"]
    print(f"任务创建成功,ID: {video_id}")

    # 2. 轮询状态
    max_attempts = 60  # 最多轮询 60 次(5分钟)
    for attempt in range(max_attempts):
        response = requests.get(
            f"https://api.apiyi.com/v1/videos/{video_id}",
            headers={"Authorization": "sk-your-api-key"}
        )
        status = response.json()["status"]

        if status == "completed":
            print("视频生成完成!")
            break
        elif status == "failed":
            print("视频生成失败")
            return None

        print(f"生成中... ({attempt + 1}/{max_attempts})")
        time.sleep(5)

    # 3. 获取视频
    response = requests.get(
        f"https://api.apiyi.com/v1/videos/{video_id}/content",
        headers={"Authorization": "sk-your-api-key"}
    )
    video_url = response.json()["url"]
    print(f"视频 URL: {video_url}")

    return video_url

# 使用示例
video_url = generate_video_async("画只猪在天上飞")

性能优化

选择合适的模型

追求速度

使用 -fast 模型,生成时间缩短约 40%,价格更低

追求质量

使用标准模型,画质更优,细节更丰富

图片动画化

使用 -fl 模型,支持首尾帧转视频

横屏内容

使用 landscape 模型,适合桌面播放

生成速度对比

模型类型平均生成时间价格推荐场景
-fast 模型30-60 秒$0.15快速测试、批量生成
标准模型1-2 分钟$0.25高质量内容、正式发布
提示: VEO 3.1 的生成速度比 Sora 2 快 50%!

获取帮助

如果您遇到其他问题,可以通过以下方式获取帮助: