video-localization

📁 eachlabs/skills 📅 9 days ago
10
总安装量
10
周安装量
#30717
全站排名
安装命令
npx skills add https://github.com/eachlabs/skills --skill video-localization

Agent 安装分布

gemini-cli 10
opencode 9
github-copilot 9
codex 9
kimi-cli 9
cursor 9

Skill 文档

Video Localization

Localize and dub videos into multiple languages using each::sense. This skill handles audio translation, voice cloning, lip synchronization, and subtitle generation for global content distribution.

Features

  • AI Dubbing: Translate and dub video audio into any language
  • Voice Cloning: Preserve speaker identity across languages
  • Lip Sync: Synchronize lip movements with translated audio
  • Subtitle Generation: Auto-generate subtitles in source or target languages
  • Multi-Language Versions: Create localized versions for multiple markets
  • Marketing Localization: Adapt ad content for regional audiences
  • E-Learning Translation: Translate training and educational content
  • YouTube Localization: Prepare videos for international audiences

Quick Start

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Dub this English video into Spanish with lip sync",
    "mode": "max",
    "video_urls": ["https://example.com/my-video.mp4"]
  }'

Supported Languages

Language Code Dubbing Subtitles Voice Cloning
English en Yes Yes Yes
Spanish es Yes Yes Yes
French fr Yes Yes Yes
German de Yes Yes Yes
Italian it Yes Yes Yes
Portuguese pt Yes Yes Yes
Chinese zh Yes Yes Yes
Japanese ja Yes Yes Yes
Korean ko Yes Yes Yes
Hindi hi Yes Yes Yes
Arabic ar Yes Yes Yes

Use Case Examples

1. English to Spanish Dubbing

Basic dubbing with natural voice synthesis.

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Translate and dub this English video into Spanish. Use a natural-sounding voice that matches the original speaker tone and energy.",
    "mode": "max",
    "video_urls": ["https://example.com/english-video.mp4"]
  }'

2. Video Translation with Lip Sync

Full localization with lip movement synchronization for professional results.

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Translate this video from English to French with full lip sync. The lip movements should match the French audio perfectly. Maintain the original background music and sound effects.",
    "mode": "max",
    "video_urls": ["https://example.com/presentation-video.mp4"]
  }'

3. Subtitle Generation

Generate accurate subtitles in source or translated languages.

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Generate subtitles for this video. First transcribe the English audio, then create Spanish subtitles. Output both SRT files and a video with burned-in Spanish subtitles.",
    "mode": "max",
    "video_urls": ["https://example.com/interview.mp4"]
  }'

4. Multi-Language Video Versions

Create localized versions for multiple markets in a single workflow.

# Start multi-language localization session
curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "I need to localize this product video into Spanish, French, and German. Start with Spanish dubbing with lip sync.",
    "mode": "max",
    "session_id": "localization-project-001",
    "video_urls": ["https://example.com/product-demo.mp4"]
  }'

# Continue with French version
curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Now create the French version with the same quality settings.",
    "mode": "max",
    "session_id": "localization-project-001"
  }'

# Continue with German version
curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Finally, create the German version.",
    "mode": "max",
    "session_id": "localization-project-001"
  }'

5. Voice Cloning for Dubbing

Preserve the original speaker’s voice characteristics in the dubbed version.

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Dub this video from English to Japanese using voice cloning. Clone the original speaker voice so they sound like themselves speaking Japanese. Maintain their unique voice characteristics, tone, and speaking style.",
    "mode": "max",
    "video_urls": ["https://example.com/ceo-message.mp4"]
  }'

6. Marketing Video Localization

Adapt marketing content for regional audiences with cultural considerations.

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Localize this marketing video for the Latin American market. Translate to Spanish with a neutral Latin American accent, not Spain Spanish. Apply lip sync and ensure the messaging resonates with the target audience. Keep the energy and excitement of the original.",
    "mode": "max",
    "video_urls": ["https://example.com/brand-ad.mp4"]
  }'

7. Training Video Translation

Translate corporate training and educational content.

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Translate this employee training video from English to Mandarin Chinese. Use clear, professional narration suitable for corporate training. Include both dubbed audio and Chinese subtitles for accessibility. Technical terms should be accurately translated.",
    "mode": "max",
    "video_urls": ["https://example.com/onboarding-training.mp4"]
  }'

8. YouTube Video Localization

Prepare content for international YouTube audiences.

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Localize this YouTube video for Portuguese-speaking audiences (Brazilian Portuguese). Dub the narration with lip sync, generate Portuguese subtitles in SRT format, and create a localized thumbnail with Portuguese text overlay.",
    "mode": "max",
    "video_urls": ["https://example.com/youtube-tutorial.mp4"]
  }'

9. Ad Creative Localization

Adapt advertising content for different regional markets.

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Localize this 30-second ad for the German market. Translate and dub to German with lip sync. Ensure the call-to-action is culturally appropriate. Keep the same pacing and emotional impact as the original English version.",
    "mode": "max",
    "video_urls": ["https://example.com/product-ad-30s.mp4"]
  }'

10. E-Learning Content Translation

Translate educational courses and learning materials.

curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Translate this e-learning module from English to Korean. The instructor should be dubbed with voice cloning to maintain authenticity. Generate Korean subtitles and ensure all on-screen text references are noted for manual localization. Educational terminology must be accurately translated.",
    "mode": "max",
    "video_urls": ["https://example.com/course-module-1.mp4"]
  }'

Best Practices

Video Quality

  • Source Quality: Use high-quality source videos (1080p or higher recommended)
  • Clear Audio: Ensure source audio is clear with minimal background noise
  • Single Speaker: Best results with single-speaker content; multi-speaker requires more processing

Dubbing Tips

  • Natural Pacing: AI adjusts speech rate to match lip movements
  • Preserve Emotion: Original emotional tone is maintained in translations
  • Background Audio: Original music and sound effects are preserved

Lip Sync Optimization

  • Face Visibility: Ensure speaker’s face is clearly visible
  • Consistent Lighting: Well-lit faces produce better lip sync results
  • Front-Facing: Best results with front-facing or slight angle shots

Subtitle Best Practices

  • Reading Speed: Subtitles are timed for comfortable reading
  • Line Breaks: Proper segmentation for readability
  • Timing Sync: Accurate sync with audio and scene changes

Mode Selection

Choose the appropriate mode based on your needs:

Mode Best For Speed Quality
max Final production, client deliverables, broadcast Slower Highest quality lip sync and voice
eco Drafts, internal review, quick previews Faster Good quality, faster turnaround

Recommendation: Use eco mode for initial reviews and max mode for final deliverables.

Multi-Turn Localization Workflow

Use session_id to iterate on localization projects:

# Initial localization request
curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Dub this video into Spanish with lip sync",
    "session_id": "dubbing-project-xyz",
    "video_urls": ["https://example.com/source-video.mp4"]
  }'

# Request adjustments based on review
curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "The voice sounds too formal. Can you make it more conversational and energetic?",
    "session_id": "dubbing-project-xyz"
  }'

# Add subtitles to the approved version
curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Add Spanish subtitles to this dubbed version",
    "session_id": "dubbing-project-xyz"
  }'

Batch Localization

Process multiple videos or languages efficiently:

# Use eco mode for batch processing drafts
curl -X POST https://sense.eachlabs.run/chat \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "message": "Create Spanish dubbed versions of these 3 marketing videos with subtitles",
    "mode": "eco",
    "video_urls": [
      "https://example.com/video1.mp4",
      "https://example.com/video2.mp4",
      "https://example.com/video3.mp4"
    ]
  }'

Error Handling

Error Cause Solution
Failed to create prediction: HTTP 422 Insufficient balance Top up at eachlabs.ai
Video too long Source video exceeds limits Split into shorter segments
Audio not detected No speech in video Ensure video contains speech audio
Face not detected No visible face for lip sync Use videos with visible speakers
Timeout Complex generation Set client timeout to minimum 10 minutes

Technical Notes

  • Client Timeout: Set HTTP client timeout to minimum 10 minutes for video processing
  • Video Length: Optimal length is under 10 minutes per segment for best results
  • Output Format: Generated videos are MP4 with H.264 encoding
  • Subtitle Format: SRT files are provided for subtitle outputs

Related Skills

  • each-sense – Core API documentation
  • video-generation – Create original video content
  • video-edit – Edit and enhance videos
  • voice-audio – Voice synthesis and audio generation