Find the best moments, trim them, reframe to 9:16, generate captions, and burn them in. Connect RipeClips to transcription and LLM services you configure.
Requirements: macOS 11+ on Apple Silicon, Docker for the bundled transcription and highlight services, and an OpenAI-compatible LLM endpoint.
- How it works
- Quick start
- LLM privacy
- Supported platforms
- Release model
- Fast and lightweight
- Kudos
- License
Open the Clip it tab and drop in an MP4.
RipeClips keeps clip selection, trimming, captioning, and export in a native desktop workflow. You choose the transcription and LLM endpoints it uses.
Steer the LLM in Identify settings:
Trim, caption & transcribe
- Trim & export in portrait 9:16 with a live preview, styled captions, and optional background music on any clip.
Full styling with a live preview: 18 bundled fonts, 12 color presets, 15 caption style variations, bold/italic toggles, custom font files, and adjustable font size, letter spacing, and vertical position.
- Generate word-timed SRTs.
Start llama-server
with the gemma4 model, then start the transcription and highlight services.
The default Docker configuration expects llama-server on the host at
http://host.docker.internal:8080/v1:
Get a compatible Gemma 4 model from the Unsloth Gemma 4 Hugging Face
collection, then point
-m at the downloaded GGUF file.
llama-server -m /path/to/gemma4.gguf --host 0.0.0.0 --port 8080
docker compose up --buildAny OpenAI-compatible
/chat/completionsendpoint works. See highlightr/README.md for configuration examples.
Verify both services are live:
curl http://localhost:5092/health # parakeet
curl http://localhost:8000/health # highlightrSee
highlightr/README.mdfor every tuning option andparakeet/README.mdfor GPU deployment and model variants.
Launch the native app:
cd app
./scripts/check-deps.sh
mise exec -- npm install
mise exec -- npm run setup:ffmpeg
mise exec -- npm run tauri:devFull prerequisite walkthrough (Rust, Xcode CLT, FFmpeg with
libass/libx264) is inapp/README.md.
Highlight identification sends transcript text, timestamps, optional speaker names, selection preferences, and candidate excerpts to the configured LLM endpoint. With the default configuration this is llama-server running on your host. If you configure a hosted provider, that provider receives this content and handles it under its own data and retention policies.
RipeClips does not send video or audio files to the LLM. Audio is sent only to the configured transcription service. See PROMPTS.md for every LLM prompt and a precise description of the data included in each request.
RipeClips is currently supported and tested on macOS 11 (Big Sur) or later running on Apple Silicon (arm64). The desktop app and bundled FFmpeg setup are not yet supported on Intel Macs, Windows, or Linux. The Docker services can run separately on other platforms, but that configuration is not currently supported as a complete RipeClips installation.
v0.1.0 is a source-only release. It does not include a prebuilt application,
DMG, or FFmpeg binary. Clone the repository and follow the build instructions
to create a local development build using an FFmpeg installation you supply.
┌──────────────────────────────┐
│ RipeClips app │
│ Tauri desktop app (app/) │
│ bundled FFmpeg sidecar │
└───────┬──────────────┬───────┘
│ │
transcribe│ │identify highlights
▼ ▼
┌────────────────┐ ┌──────────────────┐
│ parakeet-cpu │ │ highlightr-api │
│ ASR :5092 │ │ highlights :8000│──► your LLM
│ (parakeet/) │ │ (highlightr/) │ (OpenAI-compatible)
└────────────────┘ └──────────────────┘
RipeClips keeps the UI lean with Tauri: a native Rust shell without an Electron-sized runtime.
Transcription is handled by Parakeet TDT 0.6B v3 through ONNX Runtime, so local SRT generation is fast even before you reach for GPU acceleration.
Rendering stays native in the desktop app. Cuts, 9:16 reframes, caption burn-in,
and background music mixes run through the bundled FFmpeg
sidecar with libass and libx264.
- 🎙️ Podcasters & creators turning long episodes into vertical clips for TikTok, Reels, and Shorts.
- 🎚️ Podcast studios & managers producing and organizing clips across multiple shows, hosts, or clients.
- 🔬 Researchers extracting focused moments from interviews, field recordings, presentations, and qualitative research.
- 🎓 Professors & educators repackaging lectures, seminars, and course recordings into concise, shareable videos.
- 🎮 Streamers finding highlights in long broadcasts and exporting them for short-form platforms.
- 📰 Journalists & documentarians working with long interviews and footage.
Huge thanks to the projects and teams behind:
Desktop app
- Tauri, Vite — the Rust + webview framework and dev server.
- FFmpeg, libass, x264 — the media engine behind every cut, reframe, and caption burn-in.
Transcription & Highlights
- NVIDIA Parakeet TDT 0.6B v3 — the multilingual speech-to-text model.
- The
parakeet/service is a vendored fork of groxaxo/parakeet-tdt-0.6b-v3-fastapi-openai (MIT), which itself builds on Shadowfita/parakeet-tdt-0.6b-v2-fastapi. Seeparakeet/README.mdfor full attribution and the upstream license. - ONNX Runtime, onnx-asr — fast CPU/GPU inference.
- Silero VAD — voice-activity detection for auto-chunking long audio.
- FastAPI, Uvicorn, Pydantic — the API server.
- Any OpenAI-compatible LLM — self-hosted via Ollama, LM Studio, or vLLM, or hosted through providers like OpenAI and OpenRouter.
MIT. The source release does not distribute an FFmpeg binary. Locally built or
redistributed application bundles must comply with the terms of the FFmpeg
build they include; see
app/README.md for distribution notes and
THIRD_PARTY_NOTICES.md for included third-party
components and attribution.





