kinetic-video-creator
---
What this skill does
---
name: kinetic-video-creator
description: "Create professional kinetic typography videos from scratch. Includes speech writing, TTS with emotional dynamics, music generation, and animated text. Use for: promo videos, explainers, social content, inspirational speeches, product launches."
argument-hint: [topic] [tone: inspirational/dramatic/energetic/calm]
enhancedBy:
- speech-generator: "TTS with aviz's cloned voice - optimized for Hebrew"
- transcribe: "Word-level timing for animation sync"
- music-generator: "Background music matching emotional arc"
- youtube-uploader: "Optional publishing"
---
# Kinetic Video Creator
Create stunning kinetic typography videos with AI-generated speech, music, and dynamic animations.
## Workflow Overview
1. **Script** → Craft emotionally compelling speech text
2. **Speech** → Use `/speech-generator` skill for TTS
3. **Transcribe** → Use `/transcribe` skill for word timing
4. **Music** → Use `/music-generator` skill for background
5. **Merge** → Combine speech + music
6. **Animate** → Create kinetic typography in Remotion
7. **Render** → Produce final video
8. **Publish** → Use `/youtube-uploader` skill (optional)
---
## Step 1: Craft the Script
### Language Selection
**Hebrew (Recommended for aviz's voice):**
- Use Hebrew emotional directions in brackets
- Add natural Hebrew filler words
- See "Hebrew Script Guidelines" section below
**English:**
- Use English emotional directions
- See "English Script Guidelines" section below
---
## Hebrew Script Guidelines
aviz's cloned voice is optimized for Hebrew. Use these Hebrew directions:
### Hebrew Emotional Directions
| Direction | Effect |
|-----------|--------|
| `[נשימה עמוקה]` | Deep breath, pause |
| `[בהתלהבות]` | Enthusiastic |
| `[ברצינות]` | Serious tone |
| `[בעצב]` | Sad, emotional |
| `[בשקט]` | Quiet, intimate |
| `[מהר]` | Fast pace |
| `[לאט ובבירור]` | Slow and clear |
| `[שאלה]` | Question tone |
| `[הפתעה]` | Surprise |
| `[צחוק קל]` | Light laugh |
| `[בחום]` | Warm tone |
| `[בכוח]` | Powerful, emphatic |
### Hebrew Filler Words (for natural flow)
- `אממ...` - hesitation
- `אהה...` - thinking
- `כאילו...` - like
- `נו...` - well
- `יאללה...` - come on
- `בקיצור...` - in short
- `...` - pause
### Hebrew Script Example
```
[נשימה עמוקה] יש רגע...
[לאט ובבירור] רגע שהכל משתנה.
[ברצינות] אבא שלי חלה בפוליו כשהיה תינוק.
כל חייו הוא היה על כיסא גלגלים.
[בהתלהבות] אבל אבא שלי? הוא היה ספורטאי מצטיין!
[בחום] הוא תמיד האמין... שאפשר להגשים כל חלום.
[בעצב] כשהייתי בן חמש עשרה... אבא נפטר.
[בכוח] והכאב הזה? הפך למשימה שלי.
[בחום] לעזור לאנשים אחרים להגשים את החלומות שלהם.
```
---
## English Script Guidelines
### English Emotional Directions
| Direction | Effect |
|-----------|--------|
| `[pause]` | Brief pause |
| `[long pause]` | Extended pause |
| `[slowly]` | Slower delivery |
| `[faster]` | Quickened pace |
| `[whisper]` | Softer, intimate |
| `[emphatic]` | Strong emphasis |
| `[building]` | Increasing intensity |
| `[warm]` | Friendly tone |
| `[dramatic]` | Theatrical |
| `[matter-of-fact]` | Conversational |
### English Script Template
```
[HOOK - 5-10 seconds]
[dramatic pause] Opening line that grabs attention.
[slowly, with weight] The provocative statement.
[BUILD - 20-40 seconds]
[building intensity] Establish the context.
[pause for effect] Key insight moment.
[PEAK - 20-30 seconds]
[powerful, emphatic] The main message.
[pause] Let it land.
[RESOLVE - 15-25 seconds]
[warm, inspiring] Paint the vision.
[final beat] Memorable closing.
```
---
## Step 2: Generate Speech
**Use the speech-generator skill:**
```
/speech-generator [path/to/script.txt] -o [path/to/speech.mp3]
```
Or invoke directly:
```bash
cd ~/.claude/skills/speech-generator/scripts
npx ts-node generate_speech.ts -f script.txt -o speech.mp3
```
**Important:** The speech-generator uses aviz's cloned voice, which works best with Hebrew text and Hebrew emotional directions.
---
## Step 3: Transcribe for Timing
**Use the transcribe skill:**
```
/transcribe [path/to/speech.mp3] --json
```
Or invoke directly:
```bash
cd ~/.claude/skills/transcribe/scripts
npx ts-node transcribe.ts -i speech.mp3 -o transcript.srt --json
```
Output: `transcript_transcript.json` with word-level timing data.
---
## Step 4: Generate Background Music
**Use the music-generator skill:**
```
/music-generator [composition.json] -o background_music.mp3
```
### Music Composition Template
```json
{
"duration_ms": 75000,
"instrumental": true,
"positive_global_styles": ["cinematic", "inspirational"],
"negative_global_styles": ["aggressive", "chaotic"],
"sections": [
{
"section_name": "Hook - Mysterious",
"duration_ms": 12000,
"positive_local_styles": ["suspenseful", "soft"],
"negative_local_styles": ["loud"],
"lines": []
},
{
"section_name": "Build - Rising",
"duration_ms": 25000,
"positive_local_styles": ["hopeful", "building"],
"negative_local_styles": ["slow"],
"lines": []
},
{
"section_name": "Peak - Triumphant",
"duration_ms": 20000,
"positive_local_styles": ["triumphant", "uplifting"],
"negative_local_styles": ["quiet"],
"lines": []
}
]
}
```
---
## Step 5: Merge Audio
```bash
ffmpeg -y \
-i speech.mp3 \
-i background_music.mp3 \
-filter_complex "[0:a]volume=1.0[speech];[1:a]volume=0.15[music];[speech][music]amix=inputs=2:duration=first[out]" \
-map "[out]" -c:a libmp3lame -q:a 2 \
final_audio.mp3
```
---
## Step 6: Create Remotion Composition
### Project Location
```bash
cd /Users/aviz/remotion-assistant
```
### Default Template: SequenceComposition (One Word Per Screen)
**Recommended:** Use `SequenceComposition` for maximum impact - displays one word at a time with full-screen typography.
```tsx
import { SequenceComposition } from '../templates/SequenceComposition';
import transcriptData from '../../projects/[project]/transcript_transcript.json';
const WORD_TIMINGS = transcriptData.words
.filter((w) => w.word.trim() !== '')
.map((w) => ({
word: w.word,
start: w.start,
end: w.end,
}));
export const MyVideo: React.FC = () => {
return (
<SequenceComposition
wordTimings={WORD_TIMINGS}
audioFile="[project]/final_audio.mp3"
baseFontSize={200}
dustEnabled={true}
lightBeamsEnabled={true}
centerGlowEnabled={true}
glowIntensity={1}
anticipationFrames={5}
colorSchemeStart={0}
/>
);
};
```
### Alternative: MultiWordComposition (Word Cloud)
Use for faster-paced content with multiple words on screen:
```tsx
import { MultiWordComposition } from '../templates/MultiWordComposition';
```
### Hebrew Font Support
For Hebrew text, use Heebo font:
```tsx
import { loadFont } from '@remotion/google-fonts/Heebo';
const { fontFamily } = loadFont('normal', {
weights: ['400', '600', '700', '900'],
subsets: ['hebrew', 'latin'],
});
```
Add RTL styling:
```tsx
style={{
direction: 'rtl',
fontFamily,
}}
```
---
## Step 7: Render
```bash
cd /Users/aviz/remotion-assistant
npx remotion render CompositionName output.mp4
```
---
## Step 8: Upload (Optional)
**Use the youtube-uploader skill:**
```
/youtube-uploader [video.mp4] --title "Title" --description "Description"
```
---
## Project Structure
```
remotion-assistant/
├── public/[project]/
│ └── final_audio.mp3 # Audio for Remotion
├── projects/[project]/
│ ├── speech.txt # Script
│ ├── speech.mp3 # TTS output
│ ├── transcript_transcript.json # Word timings
│ ├── music_composition.json
│ ├── background_music.mp3
│ ├── final_audio.mp3 # Merged audio
│ └── output.mp4 # Final video
└── src/compositions/
└── [ProjectName].tsx # Composition
```
---
## Quick Reference
| Step | Skill/Command |
|------|---------------|
| Speech | `/speech-generator script.txt -o speech.mp3` |
| Transcribe | `/transcribe speech.mp3 --json` |
| MusRelated in Image & Video
watch
IncludedWatch a video (URL or local path). Downloads with yt-dlp, extracts auto-scaled frames with ffmpeg, pulls the transcript from captions (or Whisper API fallback), and hands the result to Claude so it can answer questions about what's in the video.
physical-ai-defect-image-generation
IncludedUse when the user wants to orchestrate defect image generation, run associated setup, or handle outputs on OSMO. The Day 0 path handles cold-start with USD-to-ROI, image-edit augmentation, and AnomalyGen to create initial PCBA datasets. The Day 1 path performs inference and labeling on real images. This skill helps with first-time asset setup, creation of finetuning checkpoints, and configuring deployment. Trigger keywords: defect image generation, dig workflow, dig pipeline, defect image detection workflow, aoi pipeline, aoi anomalygen, usd2roi anomalygen, day 0 pcba, day 1 pcba, day 1 real-photo alignment, day 1 manual roi, metal surface anomaly, glass defect, anomalygen finetune, setup_pcb, setup_metal, setup_glass, setup_pretrained, dig setup, dig datasets, dig pretrained checkpoint, dig image-edit endpoint.
accelint-react-best-practices
IncludedReact performance optimization and best practices. ALWAYS use this skill when working with any React code - writing components, hooks, JSX; refactoring; optimizing re-renders, memoization, state management; reviewing for performance; fixing hydration mismatches; debugging infinite re-renders, stale closures, input focus loss, animations restarting; preventing remounting; implementing transitions, lazy initialization, effect dependencies. Even simple React tasks benefit from these patterns. Covers React 19+ (useEffectEvent, Activity, ref props). Triggers - useEffect, useState, useMemo, useCallback, memo, inline components, nested components, components inside components, re-render, performance, hydration, SSR, Next.js, useDeferredValue, combined hooks.
elevenlabs-agents
IncludedBuild conversational AI voice agents with ElevenLabs Platform using React, JavaScript, React Native, or Swift SDKs. Configure agents, tools (client/server/MCP), RAG knowledge bases, multi-voice, and Scribe real-time STT. Use when: building voice chat interfaces, implementing AI phone agents with Twilio, configuring agent workflows or tools, adding RAG knowledge bases, testing with CLI "agents as code", or troubleshooting deprecated @11labs packages, Android audio cutoff, CSP violations, dynamic variables, or WebRTC config. Keywords: ElevenLabs Agents, ElevenLabs voice agents, AI voice agents, conversational AI, @elevenlabs/react, @elevenlabs/client, @elevenlabs/react-native, @elevenlabs/elevenlabs-js, @elevenlabs/agents-cli, elevenlabs SDK, voice AI, TTS, text-to-speech, ASR, speech recognition, turn-taking model, WebRTC voice, WebSocket voice, ElevenLabs conversation, agent system prompt, agent tools, agent knowledge base, RAG voice agents, multi-voice agents, pronunciation dictionary, voice speed control, elevenlabs scribe, @11labs deprecated, Android audio cutoff, CSP violation elevenlabs, dynamic variables elevenlabs, case-sensitive tool names, webhook authentication
humanizer
IncludedHumanize AI-generated text by detecting and removing patterns typical of LLM output. Rewrites text to sound natural, specific, and human. Uses 28 pattern detectors, 560+ AI vocabulary terms across 3 tiers, and statistical analysis (burstiness, type-token ratio, readability) for comprehensive detection. Use when asked to humanize text, de-AI writing, make content sound more natural/human, review writing for AI patterns, score text for AI detection, or improve AI-generated drafts. Covers content, language, style, communication, and filler categories.
generating-mermaid-diagrams
IncludedSalesforce architecture diagrams using Mermaid with ASCII fallback. Use this skill when generating text-based diagrams for Salesforce architecture, OAuth flows, ERDs, integration sequences, or Agentforce structure. TRIGGER when: user says "diagram", "visualize", "ERD", or asks for sequence diagrams, flowcharts, class diagrams, or architecture visualizations in Mermaid. DO NOT TRIGGER when: user wants PNG/SVG image output (use generating-visual-diagrams), or asks about non-Salesforce systems.