YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
π¬ OpusClip Clone (gratis, self-hosted)
Un clon funcional de OpusClip que vive 100% online y gratis.
Pega una URL de YouTube β recibes N clips verticales (9:16) con subtΓtulos animados estilo karaoke, listos para subir a TikTok / YouTube Shorts / Instagram Reels.
β¨ QuΓ© hace
- Descarga el video de YouTube con
yt-dlp - Transcribe el audio con Whisper (corre local, en CPU)
- Detecta los momentos virales con un LLM real vΓa Hugging Face Inference API (default:
Qwen/Qwen2.5-7B-Instruct) β el LLM recibe cada candidato y devuelve un score 1-10, una razΓ³n y un tΓtulo sugerido - Detecta el hablante con MediaPipe
- Reencuadra a 9:16 siguiendo al hablante
- Quema subtΓtulos animados word-by-word (estilo karaoke)
- Te devuelve los N mejores clips como
.mp4descargables
π Stack 100% gratuito
- Hosting: Render free tier
- Whisper: local (modelo
base, ~150MB) - LLM scoring: Hugging Face Inference API (free tier, rate-limited)
- Face detection: MediaPipe (local)
- Video processing: ffmpeg (sistema)
- UI: Gradio
π Deploy en Render (3 minutos)
- Sube tu
HF_TOKEN(gratis) en https://huggingface.co/settings/tokens β crΓ©alo con permiso de "Inference API". - Crea un Web Service en Render desde este repo:
- Render Dashboard β New β Web Service β "Public Git Repository"
- URL:
https://huggingface.co/alexmisaila/opusclip-clone - Render detecta el
DockerfileautomΓ‘ticamente
- Configura las variables de entorno (en el dashboard de Render, tab Environment):
HF_TOKEN= tu token de Hugging FaceOPUSCLIP_WHISPER_MODEL=base(recomendado para 512MB RAM)
- Deploy β Render te da una URL tipo
https://opusclip-clone-XXXX.onrender.com
β οΈ Limitaciones honestas
- Free tier de Render duerme tras 15 min sin uso β primer request del dΓa tarda ~30s extra
- Whisper en CPU es lento β un video de 30 min puede tardar 10-20 min en transcribir
- HF Inference API free tier tiene rate limit (~pocas llamadas/min) β si lo usan muchos a la vez, se satura
- Sin auto-publicaciΓ³n en TikTok/Shorts β descargas los clips y los subes tΓΊ
- Sin "AI virality score" propietario como OpusClip real β usamos un LLM open-source bien prompt-engineered; la calidad es "buena" no "mΓ‘gica"
- Sin detecciΓ³n de mΓΊltiples hablantes β solo sigue al principal
π» Uso local (opcional)
git clone https://huggingface.co/alexmisaila/opusclip-clone
cd opusclip-clone
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
# ffmpeg debe estar instalado en el sistema (apt install ffmpeg / brew install ffmpeg)
export HF_TOKEN=hf_xxxx # tu token de HF
python app.py
π§ͺ Tests
pip install pytest
pytest -v
π Estructura
opusclip-clone/
βββ app.py # UI Gradio
βββ Dockerfile # Imagen Docker para Render
βββ render.yaml # ConfiguraciΓ³n del servicio en Render
βββ requirements.txt
βββ README.md
βββ opusclip/
β βββ __init__.py
β βββ config.py # Constantes y env vars
β βββ downloader.py # yt-dlp wrapper
β βββ transcriber.py # Whisper wrapper
β βββ highlighter.py # LLM scoring vΓa HF Inference API
β βββ reframe.py # MediaPipe face detection + crop 9:16
β βββ captions.py # ASS karaoke subtitles
β βββ pipeline.py # Orquestador end-to-end
β βββ utils.py # Helpers
βββ tests/
βββ test_pipeline.py
π Licencia
MIT
Inference Providers NEW
This model isn't deployed by any Inference Provider. π Ask for provider support