← Back to Skills Marketplace
whitejohnk-26

Text To Speech Video

by whitejohnk-26 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
87
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install text-to-speech-video
Description
convert written text script into voiced video clips with this skill. Works with TXT, DOCX, PDF, SRT files up to 200MB. marketers, content creators, educators...
README (SKILL.md)

Getting Started

Got written text script to work with? Send it over and tell me what you need — I'll take care of the AI voice video generation.

Try saying:

  • "convert a 200-word product description script into a 1080p MP4"
  • "convert this script into a video with AI voiceover and matching visuals"
  • "turning written scripts into narrated videos with AI voice for marketers, content creators, educators"

Quick Start Setup

This skill connects to a cloud processing backend. On first use, set up the connection automatically and let the user know ("Connecting...").

Token check: Look for NEMO_TOKEN in the environment. If found, skip to session creation. Otherwise:

  • Generate a UUID as client identifier
  • POST https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with X-Client-Id header
  • Extract data.token from the response — this is your NEMO_TOKEN (100 free credits, 7-day expiry)

Session: POST https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Bearer auth and body {"task_name":"project"}. Keep the returned session_id for all operations.

Let the user know with a brief "Ready!" when setup is complete. Don't expose tokens or raw API output.

Text to Speech Video — Convert Scripts Into Narrated Videos

This tool takes your written text script and runs AI voice video generation through a cloud rendering pipeline. You upload, describe what you want, and download the result.

Say you have a 200-word product description script and want to convert this script into a video with AI voiceover and matching visuals — the backend processes it in about 1-2 minutes and hands you a 1080p MP4.

Tip: shorter scripts under 150 words produce the most natural-sounding voiceovers.

Matching Input to Actions

User prompts referencing text to speech video, aspect ratio, text overlays, or audio tracks get routed to the corresponding action via keyword and intent classification.

User says... Action Skip SSE?
"export" / "导出" / "download" / "send me the video" → §3.5 Export
"credits" / "积分" / "balance" / "余额" → §3.3 Credits
"status" / "状态" / "show tracks" → §3.4 State
"upload" / "上传" / user sends file → §3.2 Upload
Everything else (generate, edit, add BGM…) → §3.1 SSE

Cloud Render Pipeline Details

Each export job queues on a cloud GPU node that composites video layers, applies platform-spec compression (H.264, up to 1080x1920), and returns a download URL within 30-90 seconds. The session token carries render job IDs, so closing the tab before completion orphans the job.

Base URL: https://mega-api-prod.nemovideo.ai

Endpoint Method Purpose
/api/tasks/me/with-session/nemo_agent POST Start a new editing session. Body: {"task_name":"project","language":"\x3Clang>"}. Returns session_id.
/run_sse POST Send a user message. Body includes app_name, session_id, new_message. Stream response with Accept: text/event-stream. Timeout: 15 min.
/api/upload-video/nemo_agent/me/\x3Csid> POST Upload a file (multipart) or URL.
/api/credits/balance/simple GET Check remaining credits (available, frozen, total).
/api/state/nemo_agent/me/\x3Csid>/latest GET Fetch current timeline state (draft, video_infos, generated_media).
/api/render/proxy/lambda POST Start export. Body: {"id":"render_\x3Cts>","sessionId":"\x3Csid>","draft":\x3Cjson>,"output":{"format":"mp4","quality":"high"}}. Poll status every 30s.

Accepted file types: mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac.

Three attribution headers are required on every request and must match this file's frontmatter:

Header Value
X-Skill-Source text-to-speech-video
X-Skill-Version frontmatter version
X-Skill-Platform auto-detect: clawhub / cursor / unknown from install path

Include Authorization: Bearer \x3CNEMO_TOKEN> and all attribution headers on every request — omitting them triggers a 402 on export.

Error Handling

Code Meaning Action
0 Success Continue
1001 Bad/expired token Re-auth via anonymous-token (tokens expire after 7 days)
1002 Session not found New session §3.0
2001 No credits Anonymous: show registration URL with ?bind=\x3Cid> (get \x3Cid> from create-session or state response when needed). Registered: "Top up credits in your account"
4001 Unsupported file Show supported formats
4002 File too large Suggest compress/trim
400 Missing X-Client-Id Generate Client-Id and retry (see §1)
402 Free plan export blocked Subscription tier issue, NOT credits. "Register or upgrade your plan to unlock export."
429 Rate limit (1 token/client/7 days) Retry in 30s once

SSE Event Handling

Event Action
Text response Apply GUI translation (§4), present to user
Tool call/result Process internally, don't forward
heartbeat / empty data: Keep waiting. Every 2 min: "⏳ Still working..."
Stream closes Process final response

~30% of editing operations return no text in the SSE stream. When this happens: poll session state to verify the edit was applied, then summarize changes to the user.

Backend Response Translation

The backend assumes a GUI exists. Translate these into API actions:

Backend says You do
"click [button]" / "点击" Execute via API
"open [panel]" / "打开" Query session state
"drag/drop" / "拖拽" Send edit via SSE
"preview in timeline" Show track summary
"Export button" / "导出" Execute export workflow

Draft field mapping: t=tracks, tt=track type (0=video, 1=audio, 7=text), sg=segments, d=duration(ms), m=metadata.

Timeline (3 tracks): 1. Video: city timelapse (0-10s) 2. BGM: Lo-fi (0-10s, 35%) 3. Title: "Urban Dreams" (0-3s)

Tips and Tricks

The backend processes faster when you're specific. Instead of "make it look better", try "convert this script into a video with AI voiceover and matching visuals" — concrete instructions get better results.

Max file size is 200MB. Stick to TXT, DOCX, PDF, SRT for the smoothest experience.

Export as MP4 for widest compatibility across platforms and devices.

Common Workflows

Quick edit: Upload → "convert this script into a video with AI voiceover and matching visuals" → Download MP4. Takes 1-2 minutes for a 30-second clip.

Batch style: Upload multiple files in one session. Process them one by one with different instructions. Each gets its own render.

Iterative: Start with a rough cut, preview the result, then refine. The session keeps your timeline state so you can keep tweaking.

Usage Guidance
Before installing, confirm you are comfortable using NemoVideo's cloud service, sending your selected scripts or media to that provider, and allowing the skill to use or create a NEMO_TOKEN that may consume credits. Avoid sensitive uploads unless you trust the service and have verified the supported file types.
Capability Analysis
Type: OpenClaw Skill Name: text-to-speech-video Version: 1.0.0 The skill facilitates text-to-video conversion via the nemovideo.ai API. It includes standard procedures for authentication, session management, and file uploads consistent with its stated purpose. No malicious patterns, such as unauthorized data exfiltration or hidden command execution, were identified in the SKILL.md or metadata.
Capability Assessment
Purpose & Capability
The cloud rendering and export flow matches the stated text-to-speech video purpose, though the stated document input types and later accepted upload types are inconsistent.
Instruction Scope
The instructions are scoped to NemoVideo API setup, upload, generation, status, credits, and export actions; no hidden shell execution, destructive local actions, or unrelated behavior is shown.
Install Mechanism
There is no install spec and no code to execute, which lowers install-time risk, but the source and homepage are not provided.
Credentials
Network calls, file uploads, and cloud GPU rendering are proportionate to the advertised service, but users should know their scripts or media leave the local environment.
Persistence & Privilege
The skill uses a NEMO_TOKEN and session_id for provider access; no artifact shows unbounded persistence or background activity beyond the provider session.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install text-to-speech-video
  3. After installation, invoke the skill by name or use /text-to-speech-video
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of text-to-speech-video skill. - Convert written scripts (TXT, DOCX, PDF, SRT) into narrated, AI-voiced video clips in 1080p MP4 format. - Cloud-based processing with fast turnaround (1-2 min per video); supports files up to 200MB. - Automatic setup with anonymous token generation and session management. - Intuitive commands for upload, export, status check, and balance, mapped to specific backend API actions. - Error handling guides users through re-authentication, file validation, and credit issues. - Supports iterative video edits and session-based workflows for marketers, educators, and content creators.
Metadata
Slug text-to-speech-video
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Text To Speech Video?

convert written text script into voiced video clips with this skill. Works with TXT, DOCX, PDF, SRT files up to 200MB. marketers, content creators, educators... It is an AI Agent Skill for Claude Code / OpenClaw, with 87 downloads so far.

How do I install Text To Speech Video?

Run "/install text-to-speech-video" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Text To Speech Video free?

Yes, Text To Speech Video is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Text To Speech Video support?

Text To Speech Video is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Text To Speech Video?

It is built and maintained by whitejohnk-26 (@whitejohnk-26); the current version is v1.0.0.

💬 Comments