---
title: Videoklippide töövoog
description: Eric Siu oskus videoklippide tootmiseks.
category: Marketing
sublabel: Strateegia
author: Eric Siu
tags: 
license: MIT
source: https://github.com/ericosiu/ai-marketing-skills
---

# Pika vormi videoklippide torujuhe

## Eessõna (käivitub oskuse alguses)

```bash
# Version check (silent if up to date)
python3 telemetry/version_check.py 2>/dev/null || true

# Telemetry opt-in (first run only, then remembers your choice)
python3 telemetry/telemetry_init.py 2>/dev/null || true
```

> **Privaatsus:** See oskus logib kasutust kohalikult kausta `~/.ai-marketing-skills/analytics/`. Kaugtelemeetria on ainult opt-in. Koodi, failiteid ega repo sisu ei koguta kunagi. Vaata `telemetry/README.md`.

---

Tehisarul põhinev torujuhe, mis teisendab pika vormi YouTube'i episoodid iseseisvateks tipphetkede klippideks. Allalaadimine → Transkribeerimine → AI segmentimine → Lõikamine → Üleslaadimine. 60-minutilisest episoodist saab 3–5 klippi ~15 minutiga.

## Millal kasutada

Kasuta seda oskust, kui:
- Teisendad pika vormi YouTube'i sisu (podcastid, intervjuud, ettekanded) tipphetkede klippideks
- Töötled YouTube'i tagakataloogi klippide kanaliks
- Otsid videotranskriptidest parimaid iseseisvaid segmente
- Lõikad videoklippe kontrollitud lausepiiridega
- Käitad suure mahuga klippide avaldamise operatsiooni (0,50–1,00 $ episoodi kohta)

## Eeltingimused

### Süsteemitööriistad

```bash
brew install yt-dlp ffmpeg        # macOS
# Or: apt install ffmpeg && pip install yt-dlp  # Linux
pip install openai-whisper
```

### Keskkonnamuutujad

- `ANTHROPIC_API_KEY` — Claude'i API võti (kohustuslik segmentimiseks)
- YouTube Data API volitused (valikuline, automatiseeritud üleslaadimiseks)

## Tööriistad

### Otsast lõpuni torujuhe

| Skript | Eesmärk | Peamine käsk |
|--------|---------|-------------|
| `longform_pipeline.py` | Täielik torujuhe: allalaadimine → transkribeerimine → segmentimine → kontroll → lõikamine | `python3 longform_pipeline.py --url URL --max-clips 3` |
| `scored_pipeline.py` | Torujuhe 10-eksperdi LLM kvaliteediskoorimisega (lõikab ainult 90+ klippe) | `python3 scored_pipeline.py --url URL --min-score 90` |

### Üksikud sammud

| Skript | Eesmärk | Peamine käsk |
|--------|---------|-------------|
| `clip_segmenter.py` | Leia klipiväärtused segmendid Whisperi transkriptidest | `python3 clip_segmenter.py --transcript file.json --output segments.json` |
| `clip_cutter.py` | Lõika klipid segmendi metaandmetest FFmpegiga | `python3 clip_cutter.py --source video.mp4 --segments segments.json --output-dir clips/` |

## Torujuhtme voog

```
YouTube URL
    │
    ▼
[yt-dlp] Download video + auto-subs (VTT)
    │
    ▼
[Whisper] Local transcription with word-level timestamps
    │
    ▼
[Claude] AI segmentation — finds 3-5 best standalone segments
    │  • Scores hook strength (1-10, minimum 6)
    │  • Ensures complete narrative arcs
    │  • Verifies clean cut boundaries
    │
    ▼
[FFmpeg] Cut clips (landscape 16:9)
    │
    ▼
[Optional] Upload to YouTube / Google Drive
```

## Kasutusnäited

### Täielik torujuhe (kõige tavalisem)

```bash
# Process a single video
python3 longform_pipeline.py --url "https://www.youtube.com/watch?v=VIDEO_ID" --max-clips 3

# Process from channel knowledge base
python3 longform_pipeline.py --channel my-podcast --max-clips 5

# Custom output directory
python3 longform_pipeline.py --url URL --output-dir ./my-clips/ --max-clips 4
```

### Samm-sammult (kui vajad kontrolli)

```bash
# 1. Download
yt-dlp -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best" -o "downloads/%(title)s.%(ext)s" "URL"

# 2. Transcribe
whisper "downloads/episode.mp4" --model medium --output_format json --output_dir transcripts/

# 3. Segment (finds best clips)
python3 clip_segmenter.py \
  --transcript transcripts/episode.json \
  --output segments/episode_segments.json \
  --episode-title "Episode Title"

# 4. Cut
python3 clip_cutter.py \
  --source downloads/episode.mp4 \
  --segments segments/episode_segments.json \
  --output-dir clips/
```

### Kvaliteediskooriga torujuhe

```bash
# Only cut clips scoring 90+ from 10-expert panel
python3 scored_pipeline.py --url URL --min-score 90

# Dry run — score candidates without cutting
python3 scored_pipeline.py --url URL --dry-run
```

### Partii töötlemine

```bash
# Transcribe in parallel (4 at a time)
ls downloads/*.mp4 | xargs -P 4 -I {} whisper {} --model medium --output_format json --output_dir transcripts/

# Process multiple URLs
for url in $(cat urls.txt); do
  python3 longform_pipeline.py --url "$url" --max-clips 3
done
```

## Seadistus

### Whisperi mudeli valik

| Mudel | Kiirus (30 min video) | Täpsus | Millal kasutada |
|-------|-------------------|----------|----------|
| `base` | ~3–4 min | ~95% | Kiire testimine |
| `medium` | ~7–10 min | ~98% | Tootmine (soovitatav) |
| `large` | ~15–20 min | ~99% | Mürarikas heli |

### Claude'i segmentimise häälestus

Segmentimise päring aktsepteerib neid kohandusi:
- **Haagi tugevuse lävi** — vaikimisi 6. Tõsta 7+-ni kõrgema kvaliteedi jaoks (vähem klippe)
- **Max segmente** — vaikimisi 5. Langeta 3-ni rangemaks valikuks
- **Segmendi pikkus** — vaikimisi 5–15 minutit. Kohanda päringus oma formaadi jaoks

### FFmpeg lõikamine

- Vaikimisi kasutab `-c copy` (voogude koopia) — kohene, null kvaliteedikadu, kuid lõikab keyframe piiridel (±1–2 sek)
- `longform_pipeline.py` kasutab uuesti kodeerimist kaadritäpseteks lõigeteks suurema CPU aja hinnaga
- Lisa `--buffer-start 2 --buffer-end 2` skriptile `clip_cutter.py` polsterdamiseks

## Andmevoog

```
YouTube URL → yt-dlp (download) → Whisper (transcribe) → Claude (segment) → FFmpeg (cut) → Clips
                                                              │
                                                              ▼
                                                    Claude (verify cut boundaries)
```

## Kulu

- **Episoodi kohta:** 0,50–1,00 $ (ainult Claude API — kõik muu on tasuta/kohalik)
- **Skaalal (10 klippi/päevas):** ~45–90 $/kuus
- **Skaalal (50 klippi/päevas):** ~225–450 $/kuus

## Sõltuvused

- Python 3.9+
- `anthropic` — Claude API klient
- `openai-whisper` — kohalik transkribeerimine
- `yt-dlp` — video allalaadimine (süsteemi binaar)
- `ffmpeg` / `ffprobe` — videotöötlus (süsteemi binaar)
- `requests` — HTTP klient (valikuliste üleslaadimisfunktsioonide jaoks)