5.4 KiB
🚀 Guía de Inicio Rápido - TubeScript Panel Web
📋 Prerequisitos
Antes de iniciar, asegúrate de tener instalado:
1. FFmpeg (Requerido)
macOS:
brew install ffmpeg
Linux:
sudo apt-get update
sudo apt-get install ffmpeg
Verificar instalación:
ffmpeg -version
2. Python 3.11+ (Ya instalado)
Verificar:
python3 --version
⚙️ Instalación
- Instalar dependencias Python:
cd /Users/cesarmendivil/Documents/Nextream/TubeScript-API
pip3 install -r requirements.txt
- Instalar FFmpeg si no está instalado:
brew install ffmpeg
🎮 Iniciar el Panel Web
streamlit run streamlit_app.py
El panel se abrirá automáticamente en: http://localhost:8501
📝 Configuración Inicial
Paso 1: Configurar Plataformas
En la barra lateral del panel:
- Expande cada plataforma (YouTube, Facebook, Twitch, etc.)
- Ingresa la RTMP URL
- Ingresa tu Stream Key
- Haz clic en Guardar Configuración
Ejemplos de Configuración:
YouTube Live:
- RTMP URL:
rtmp://a.rtmp.youtube.com/live2 - Stream Key: Obtén tu clave en YouTube Studio > Emisión en directo
Facebook Live:
- RTMP URL:
rtmps://live-api-s.facebook.com:443/rtmp/ - Stream Key: Obtén tu clave en Creator Studio > Video en directo
Twitch:
- RTMP URL:
rtmp://live.twitch.tv/app - Stream Key: Obtén tu clave en Dashboard > Configuración
X (Twitter):
- RTMP URL:
rtmps://fa.contribute.live-video.net/app - Stream Key: Obtén tu clave en Media Studio
Paso 2: Buscar Video en Vivo
En la pestaña "🔍 Búsqueda":
Opción A - Buscar:
- Ingresa términos como "noticias", "deportes", "gaming"
- Haz clic en Buscar
- Selecciona un video de los resultados
Opción B - URL Directa:
- Copia la URL de un video de YouTube en vivo
- Pégala en el campo "URL directa"
- El video se seleccionará automáticamente
Paso 3: Iniciar Transmisión
En la pestaña "🎛️ Control":
-
Verás tarjetas para cada plataforma configurada
-
Cada tarjeta muestra:
- 🟢 Verde: Transmitiendo correctamente
- 🔴 Rojo: Error en la transmisión
- ⚫ Gris: Detenido
-
Haz clic en ▶️ Iniciar en las plataformas donde quieras transmitir
-
Puedes transmitir simultáneamente a múltiples plataformas
Paso 4: Monitorear Transmisiones
En la pestaña "📊 Monitor":
- Visualiza todas las transmisiones activas
- Ver tiempo de actividad (uptime) de cada stream
- Estado actualizado automáticamente cada 5 segundos
- Detener streams individuales desde aquí
🔧 Cookies de YouTube (Opcional)
Para videos con restricciones geográficas o de edad:
- Instala la extensión "Get cookies.txt" en Chrome/Firefox
- Ve a youtube.com e inicia sesión
- Exporta las cookies como
cookies.txt - Guarda el archivo en:
/Users/cesarmendivil/Documents/Nextream/TubeScript-API/
🐳 Uso con Docker
Si prefieres usar Docker:
# Construir la imagen
docker build -t tubescript-api .
# Iniciar con Docker Compose
docker-compose up -d
Servicios disponibles:
- API FastAPI: http://localhost:8080
- Panel Streamlit: http://localhost:8501
🆘 Solución de Problemas
Error: "No se pudo obtener la URL del stream"
Solución:
- Verifica que el video esté realmente en vivo (🔴 EN VIVO)
- Intenta agregar cookies de YouTube
- Verifica tu conexión a internet
Error: "Transmisión con estado error"
Solución:
- Verifica que la RTMP URL sea correcta
- Verifica que el Stream Key sea correcto
- Asegúrate de que FFmpeg esté instalado:
ffmpeg -version - Revisa que la plataforma permita streaming desde apps externas
El video se congela o tiene buffering
Solución:
- Verifica tu ancho de banda de subida (necesitas al menos 5 Mbps por stream)
- Reduce el número de plataformas simultáneas
- En
streamlit_app.py, edita el comando FFmpeg para reducir el bitrate:
# Cambiar:
"-c:v", "copy",
"-c:a", "copy",
# Por:
"-c:v", "libx264",
"-preset", "veryfast",
"-b:v", "2500k", # Bitrate reducido
"-c:a", "aac",
"-b:a", "128k",
FFmpeg no está instalado
macOS:
brew install ffmpeg
Linux:
sudo apt-get install ffmpeg
Verificar:
ffmpeg -version
📊 API REST (Opcional)
Si quieres usar la API REST directamente:
Iniciar API:
python3 main.py
O con uvicorn:
uvicorn main:app --reload --host 0.0.0.0 --port 8000
Endpoints:
Obtener URL de Stream:
curl http://localhost:8000/stream/VIDEO_ID
Obtener Transcripción:
curl http://localhost:8000/transcript/VIDEO_ID?lang=es
🔐 Seguridad
⚠️ IMPORTANTE:
- Las Stream Keys se guardan en
stream_config.json - Este archivo está en
.gitignorepor seguridad - NUNCA compartas tu Stream Key con nadie
- NUNCA subas
stream_config.jsona repositorios públicos
📞 Soporte
Si tienes problemas:
- Lee la documentación completa en
README.md - Verifica que todos los prerequisitos estén instalados
- Abre un issue en el repositorio con:
- Descripción del problema
- Logs de error
- Pasos para reproducir
¡Listo! Ahora tienes un panel completo para retransmitir videos de YouTube en vivo a múltiples plataformas simultáneamente.
⚠️ Advertencia Legal: Asegúrate de tener los derechos necesarios para retransmitir el contenido.