技能 人工智能 Kling AI 文本转视频生成

Kling AI 文本转视频生成

v20260423
klingai-text-to-video
该工具提供Kling AI API,允许用户通过文本描述生成高质量、电影级的视频内容。它支持专业模式、摄像机控制(如平移、倾斜、缩放)和音频同步,非常适合需要构建专业文本到视频生成工作流的内容创作者和开发者。
获取技能
358 次下载
概览

Kling AI Text-to-Video

Overview

Generate videos from text prompts using the /v1/videos/text2video endpoint. Supports models v1 through v2.6, standard/professional modes, camera control, negative prompts, and native audio (v2.6+).

Endpoint: POST https://api.klingai.com/v1/videos/text2video

Request Parameters

Parameter Type Required Description
model_name string Yes Model version (see model catalog)
prompt string Yes Video description, max 2500 chars
negative_prompt string No What to exclude from generation
duration string Yes "5" or "10" seconds
aspect_ratio string No "16:9" (default), "9:16", "1:1", etc.
mode string No "standard" (default) or "professional"
cfg_scale float No Prompt adherence (0.0-1.0, default 0.5)
camera_control object No Camera movement config
callback_url string No Webhook URL for completion notification

Complete Example — Python

import jwt, time, os, requests

BASE = "https://api.klingai.com/v1"

def get_headers():
    ak, sk = os.environ["KLING_ACCESS_KEY"], os.environ["KLING_SECRET_KEY"]
    token = jwt.encode(
        {"iss": ak, "exp": int(time.time()) + 1800, "nbf": int(time.time()) - 5},
        sk, algorithm="HS256", headers={"alg": "HS256", "typ": "JWT"}
    )
    return {"Authorization": f"Bearer {token}", "Content-Type": "application/json"}

# Create text-to-video task
response = requests.post(f"{BASE}/videos/text2video", headers=get_headers(), json={
    "model_name": "kling-v2-6",
    "prompt": "Aerial drone shot of a coral reef at golden hour, "
              "tropical fish swimming through crystal clear water, "
              "sun rays penetrating the surface, cinematic 4K",
    "negative_prompt": "blurry, low quality, distorted, watermark",
    "duration": "5",
    "aspect_ratio": "16:9",
    "mode": "professional",
    "cfg_scale": 0.5,
})

task = response.json()
task_id = task["data"]["task_id"]

# Poll for completion
while True:
    time.sleep(15)
    result = requests.get(
        f"{BASE}/videos/text2video/{task_id}", headers=get_headers()
    ).json()

    status = result["data"]["task_status"]
    if status == "succeed":
        video = result["data"]["task_result"]["videos"][0]
        print(f"Video URL: {video['url']}")
        print(f"Duration: {video['duration']}s")
        break
    elif status == "failed":
        raise RuntimeError(result["data"]["task_status_msg"])
    # else: submitted/processing — keep polling

With Camera Control

# Camera movement types: pan, tilt, zoom, roll
response = requests.post(f"{BASE}/videos/text2video", headers=get_headers(), json={
    "model_name": "kling-v2-6",
    "prompt": "A medieval castle on a cliff at sunrise, fog in the valley",
    "duration": "5",
    "mode": "standard",
    "camera_control": {
        "type": "simple",
        "config": {
            "horizontal": 5,    # pan right (negative = left), range -10 to 10
            "vertical": 0,      # tilt (negative = down, positive = up)
            "zoom": 3,          # zoom in (positive) or out (negative)
            "roll": 0,          # rotation
            "pan": 0,           # dolly left/right
            "tilt": -2,         # dolly up/down
        }
    },
})

Rule: Only one non-zero field in config for type: "simple".

With Native Audio (v2.6 only)

response = requests.post(f"{BASE}/videos/text2video", headers=get_headers(), json={
    "model_name": "kling-v2-6",
    "prompt": "A jazz band performing in a dimly lit club, saxophone solo, "
              "audience clapping, warm amber lighting",
    "duration": "10",
    "mode": "professional",
    "motion_has_audio": True,  # generates synchronized audio
})

Prompt Engineering Tips

Technique Example
Scene + action + style "A samurai walking through cherry blossoms, cinematic slow motion"
Lighting cues "golden hour", "neon-lit", "overcast diffused light"
Camera language "close-up", "wide establishing shot", "tracking shot"
Negative prompt "blurry, watermark, text overlay, distorted faces"
Material/texture "brushed steel", "hand-painted watercolor", "photorealistic"

Cost Reference

Duration Standard Professional
5 seconds 10 credits 35 credits
10 seconds 20 credits 70 credits

Error Handling

Error Cause Fix
400 invalid prompt Empty or >2500 chars Check prompt length
400 invalid model Unsupported model_name Use valid model ID from catalog
402 insufficient credits Not enough credits Top up account
task_status: failed Content policy violation or complexity Simplify prompt, remove restricted content

Resources

信息
Category 人工智能
Name klingai-text-to-video
版本 v20260423
大小 6.75KB
更新时间 2026-04-26
语言