TubeScript-API/QUICKSTART.md
2026-01-29 22:49:00 -07:00

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

  1. Instalar dependencias Python:
cd /Users/cesarmendivil/Documents/Nextream/TubeScript-API
pip3 install -r requirements.txt
  1. 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:

  1. Expande cada plataforma (YouTube, Facebook, Twitch, etc.)
  2. Ingresa la RTMP URL
  3. Ingresa tu Stream Key
  4. 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:

  1. Ingresa términos como "noticias", "deportes", "gaming"
  2. Haz clic en Buscar
  3. Selecciona un video de los resultados

Opción B - URL Directa:

  1. Copia la URL de un video de YouTube en vivo
  2. Pégala en el campo "URL directa"
  3. El video se seleccionará automáticamente

Paso 3: Iniciar Transmisión

En la pestaña "🎛️ Control":

  1. Verás tarjetas para cada plataforma configurada

  2. Cada tarjeta muestra:

    • 🟢 Verde: Transmitiendo correctamente
    • 🔴 Rojo: Error en la transmisión
    • Gris: Detenido
  3. Haz clic en ▶️ Iniciar en las plataformas donde quieras transmitir

  4. 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:

  1. Instala la extensión "Get cookies.txt" en Chrome/Firefox
  2. Ve a youtube.com e inicia sesión
  3. Exporta las cookies como cookies.txt
  4. 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:

🆘 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 .gitignore por seguridad
  • NUNCA compartas tu Stream Key con nadie
  • NUNCA subas stream_config.json a repositorios públicos

📞 Soporte

Si tienes problemas:

  1. Lee la documentación completa en README.md
  2. Verifica que todos los prerequisitos estén instalados
  3. 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.