Kling Video Generation API
Powerful AI video generation: turn text or images into high-quality videos in one click.
Text-to-Video
Generate from textual descriptions
Image-to-Video
Animate still images
Video Enhancement
4K upscaling
Multiple Styles
6+ visual styles
1. Basic Video Generation
Getting Started
import requests
import json
# Kling AI video generation API
def generate_video(prompt: str, duration: int = 5):
"""Generate video from text"""
url = "https://api.n1n.ai/v1/video/generate"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
data = {
"model": "kling-v1.5",
"prompt": prompt,
"duration": duration, # Duration (seconds): 5, 10
"aspect_ratio": "16:9", # Aspect ratio: 16:9, 9:16, 1:1
"quality": "high", # Quality: standard, high, ultra
"fps": 30, # Frame rate
"style": "realistic" # Style: realistic, anime, cartoon
}
response = requests.post(url, headers=headers, json=data)
if response.status_code == 200:
result = response.json()
return result["video_url"], result["task_id"]
else:
raise Exception(f"Generation failed: {response.text}")
# Image to video
def image_to_video(image_url: str, motion_type: str = "auto"):
"""Animate a still image into a video"""
data = {
"model": "kling-v1.5",
"image_url": image_url,
"motion_type": motion_type, # auto, zoom_in, zoom_out, pan_left, pan_right
"motion_strength": 0.7, # Motion strength 0-1
"duration": 5
}
response = requests.post(
"https://api.n1n.ai/v1/video/animate",
headers=headers,
json=data
)
return response.json()
# Video editing and enhancement
def enhance_video(video_url: str, enhancements: dict):
"""Video post-processing"""
data = {
"source_video": video_url,
"enhancements": {
"resolution": "4K", # Resolution upscaling
"fps_interpolation": 60, # Frame interpolation
"stabilization": True, # Stabilization
"color_grading": "cinematic", # Color grading style
"noise_reduction": True # Denoising
}
}
response = requests.post(
"https://api.n1n.ai/v1/video/enhance",
headers=headers,
json=data
)
return response.json()2. Video Style Selection
Realistic
真实风格
Use cases: 产品展示, 教育内容
Anime
动漫风格
Use cases: 动画短片, 创意内容
Cartoon
卡通风格
Use cases: 儿童内容, 趣味视频
Cinematic
电影质感
Use cases: 广告片, 宣传视频
Abstract
抽象艺术
Use cases: 艺术创作, 背景视频
3D Render
3D渲染
Use cases: 产品演示, 建筑Visualization
3. Advanced Video Features
Professional creation tools
# Advanced video generation features
class VideoCreator:
def __init__(self, api_key: str):
self.api_key = api_key
self.base_url = "https://api.n1n.ai/v1/video"
def create_story_video(self, script: list):
"""Generate a story video from a script"""
scenes = []
for scene in script:
response = requests.post(
f"{self.base_url}/scene",
headers=self._get_headers(),
json={
"description": scene["description"],
"duration": scene["duration"],
"transition": scene.get("transition", "fade"),
"camera_movement": scene.get("camera", "static"),
"style_reference": scene.get("style")
}
)
scenes.append(response.json()["scene_id"])
# Merge scenes
final_video = self.merge_scenes(scenes)
return final_video
def merge_scenes(self, scene_ids: list):
"""Merge multiple scenes into a complete video"""
response = requests.post(
f"{self.base_url}/merge",
headers=self._get_headers(),
json={
"scenes": scene_ids,
"transitions": "smooth",
"add_music": True,
"export_format": "mp4"
}
)
return response.json()
def style_transfer(self, video_url: str, reference_image: str):
"""Video style transfer"""
response = requests.post(
f"{self.base_url}/style-transfer",
headers=self._get_headers(),
json={
"source_video": video_url,
"style_reference": reference_image,
"transfer_strength": 0.8,
"preserve_content": True
}
)
return response.json()
def generate_variations(self, prompt: str, count: int = 3):
"""Generate multiple video variations"""
variations = []
for i in range(count):
response = requests.post(
f"{self.base_url}/generate",
headers=self._get_headers(),
json={
"prompt": prompt,
"seed": i * 1000, # Different seed values
"variation_strength": 0.3 + (i * 0.2)
}
)
variations.append(response.json())
return variations
# Batch video processing
def batch_process_videos(video_list: list):
creator = VideoCreator(API_KEY)
results = []
for video_config in video_list:
if video_config["type"] == "text_to_video":
result = creator.generate_video(
prompt=video_config["prompt"],
duration=video_config["duration"]
)
elif video_config["type"] == "image_to_video":
result = creator.image_to_video(
image_url=video_config["image"],
motion_type=video_config["motion"]
)
results.append(result)
return results4. Use Cases
📱 Social media
- ✅ Short-form video creation
- ✅ Ad creatives
- ✅ Product showcases
- ✅ Creative content
🎬 Professional production
- ✅ Film previews
- ✅ Concept demos
- ✅ Educational videos
- ✅ Game CG