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

307 lines
9.2 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 📺 Guía Visual del Panel TubeScript
## Interfaz Principal
El panel de TubeScript está dividido en 3 pestañas principales:
### 🔍 Pestaña de Búsqueda
Esta pestaña permite buscar y seleccionar videos en vivo de YouTube.
**Funcionalidades:**
1. **Campo de búsqueda**: Ingresa términos como "noticias", "deportes", "gaming live"
2. **Botón Buscar**: Ejecuta la búsqueda en YouTube
3. **URL Directa**: Pega directamente la URL de un video de YouTube en vivo
4. **Resultados**: Lista de videos en vivo encontrados
5. **Vista previa**: Miniatura, título, canal del video seleccionado
6. **Indicador EN VIVO**: 🔴 Confirma que el video está transmitiendo
**Flujo de trabajo:**
```
Búsqueda → Resultados → Seleccionar → Vista Previa → Listo para transmitir
```
---
### 🎛️ Pestaña de Control
Centro de comando para gestionar tus transmisiones a múltiples plataformas.
**Tarjetas de Plataforma:**
Cada plataforma tiene su propia tarjeta con:
```
┌─────────────────────────────────┐
│ YouTube 🟢 │
│ Transmitiendo │
│ │
│ [▶️ Iniciar] [⏹️ Detener] │
└─────────────────────────────────┘
```
**Estados visuales:**
- 🟢 **Verde**: Transmisión activa y funcionando correctamente
- 🔴 **Rojo**: Error en la transmisión (revisar configuración)
-**Gris**: Detenido (listo para iniciar)
- ⚠️ **Advertencia**: No configurado (falta RTMP URL o Stream Key)
**Botones de control:**
- **▶️ Iniciar**: Comienza la retransmisión a esa plataforma
- **⏹️ Detener**: Detiene la retransmisión de esa plataforma
**Transmisión simultánea:**
Puedes iniciar transmisiones a múltiples plataformas al mismo tiempo. Cada una se gestiona independientemente.
---
### 📊 Pestaña de Monitor
Panel de monitoreo en tiempo real de todas las transmisiones activas.
**Características:**
- **Auto-refresh**: Se actualiza automáticamente cada 5 segundos
- **Estado en tiempo real**: Muestra si cada stream está activo o tiene errores
- **Uptime**: Contador de tiempo desde que inició cada transmisión
- **Control rápido**: Botón para detener streams directamente desde el monitor
**Vista del Monitor:**
```
┌──────────────────────────────────────────────────────┐
│ Plataforma │ Estado │ Tiempo Activo │ [⏹️] │
├──────────────────────────────────────────────────────┤
│ YouTube │ 🟢 ACTIVO│ 00:15:32 │ [⏹️] │
│ Facebook │ 🟢 ACTIVO│ 00:15:28 │ [⏹️] │
│ Twitch │ 🟢 ACTIVO│ 00:14:45 │ [⏹️] │
└──────────────────────────────────────────────────────┘
```
---
## ⚙️ Configuración en Barra Lateral
La barra lateral contiene toda la configuración de plataformas.
### Configuración por Plataforma
Cada plataforma tiene un expander con:
```
🎥 YouTube
├── RTMP URL: [ ]
├── Stream Key: [••••••••••••••••••••••••••••••••]
🎥 Facebook
├── RTMP URL: [ ]
├── Stream Key: [••••••••••••••••••••••••••••••••]
... (más plataformas)
```
### Plantillas RTMP
La sección de plantillas incluye ejemplos de configuración para:
- YouTube
- Facebook
- Twitch
- X (Twitter)
**Botón Guardar:**
Al terminar de configurar, haz clic en **💾 Guardar Configuración** para almacenar los cambios.
---
## 🔄 Flujo de Trabajo Completo
### 1. Primera vez
```mermaid
graph LR
A[Instalar FFmpeg] --> B[Ejecutar setup.sh]
B --> C[streamlit run streamlit_app.py]
C --> D[Configurar plataformas]
D --> E[Listo para usar]
```
### 2. Uso normal
```mermaid
graph TD
A[Abrir Panel] --> B[Configurar RTMP]
B --> C[Buscar video en vivo]
C --> D[Seleccionar video]
D --> E[Iniciar transmisiones]
E --> F[Monitorear estado]
F --> G{¿Continuar?}
G -->|Sí| F
G -->|No| H[Detener transmisiones]
```
---
## 🎯 Casos de Uso
### Caso 1: Retransmitir un Evento Deportivo
1. En **Búsqueda**, ingresa "mundial fútbol live"
2. Selecciona el partido que quieres retransmitir
3. En **Control**, inicia YouTube y Facebook
4. En **Monitor**, verifica que ambos estén 🟢
5. Deja corriendo, el monitor se actualiza solo
### Caso 2: Retransmitir Noticias 24/7
1. Obtén la URL de un canal de noticias en vivo
2. Pégala en el campo "URL directa"
3. Configura todas las plataformas que quieras
4. Inicia todas las transmisiones
5. El sistema seguirá retransmitiendo automáticamente
### Caso 3: Streaming Multi-Plataforma de Gaming
1. Busca un streamer popular en vivo
2. Selecciona su transmisión
3. Activa YouTube, Twitch, y Facebook
4. Monitorea en tiempo real
5. Si una plataforma falla (🔴), puedes reiniciarla individualmente
---
## 🔧 Personalización
### Ajustar Calidad de Video
Edita `streamlit_app.py`, función `start_ffmpeg_stream()`:
**Alta Calidad (requiere buen internet):**
```python
"-c:v", "libx264",
"-preset", "fast",
"-b:v", "6000k", # 6 Mbps
"-c:a", "aac",
"-b:a", "192k",
```
**Calidad Media (balanceada):**
```python
"-c:v", "libx264",
"-preset", "veryfast",
"-b:v", "3500k", # 3.5 Mbps
"-c:a", "aac",
"-b:a", "128k",
```
**Calidad Baja (internet limitado):**
```python
"-c:v", "libx264",
"-preset", "ultrafast",
"-b:v", "1500k", # 1.5 Mbps
"-c:a", "aac",
"-b:a", "96k",
```
**Copia Directa (sin recodificación):**
```python
"-c:v", "copy", # Copia el video sin recodificar
"-c:a", "copy", # Copia el audio sin recodificar
```
---
## 📊 Indicadores de Estado
### Semáforo de Estado
| Color | Estado | Significado | Acción |
|-------|--------|-------------|--------|
| 🟢 Verde | Activo | Transmitiendo correctamente | Ninguna |
| 🔴 Rojo | Error | Falló la transmisión | Revisar configuración o reiniciar |
| ⚫ Gris | Detenido | No está transmitiendo | Presionar ▶️ para iniciar |
| ⚠️ Amarillo | Advertencia | Falta configuración | Configurar RTMP y Stream Key |
### Mensajes Comunes
**"✅ Stream listo para transmitir"**
- Todo está configurado correctamente
- Puedes iniciar las transmisiones
**" Selecciona un video primero"**
- Ve a la pestaña de Búsqueda
- Selecciona o ingresa URL de video
**"❌ No se pudo obtener la URL del stream"**
- El video no está en vivo, o
- YouTube bloqueó la petición (intenta con cookies)
**" Configura RTMP y Stream Key"**
- Ve a la barra lateral
- Completa la configuración de esa plataforma
---
## 🚨 Solución Visual de Problemas
### Problema: Tarjeta muestra 🔴 Rojo
**Diagnóstico:**
1. Verifica RTMP URL en barra lateral
2. Verifica Stream Key (sin espacios extra)
3. Verifica que la plataforma permita streaming externo
4. Revisa que FFmpeg esté instalado: `ffmpeg -version`
**Solución:**
1. Detén la transmisión (⏹️)
2. Corrige la configuración en la barra lateral
3. Guarda la configuración (💾)
4. Recarga la página (F5)
5. Vuelve a iniciar (▶️)
### Problema: No aparecen resultados en la búsqueda
**Solución:**
1. Usa términos más específicos: "noticiero en vivo", "partido fútbol live"
2. Verifica tu conexión a internet
3. Intenta con URL directa en lugar de búsqueda
### Problema: El video no se reproduce en las plataformas
**Solución:**
1. Verifica que el video original siga en vivo (🔴)
2. Verifica tu ancho de banda de subida (necesitas ~5 Mbps por plataforma)
3. Reduce el número de plataformas simultáneas
4. Reduce la calidad del stream (ver sección Personalización)
---
## 💡 Tips y Trucos
### Tip 1: Búsqueda Efectiva
Use términos en inglés para encontrar más resultados: "news live", "sports live", "gaming live stream"
### Tip 2: Cookies para Videos Restringidos
Algunos videos requieren inicio de sesión. Exporta cookies de YouTube y colócalas en `cookies.txt`
### Tip 3: Monitoreo Continuo
Deja la pestaña de Monitor abierta. Se actualiza automáticamente cada 5 segundos.
### Tip 4: Transmisión de Prueba
Antes de un evento importante, haz una prueba con un video cualquiera para verificar que todo funcione.
### Tip 5: Backup
Si una plataforma falla, puedes detenerla y reiniciarla sin afectar las demás.
---
## 🎓 Glosario
- **RTMP**: Real-Time Messaging Protocol - Protocolo para streaming de video
- **Stream Key**: Clave secreta que identifica tu cuenta en cada plataforma
- **FFmpeg**: Software para procesar video y audio
- **yt-dlp**: Herramienta para descargar/extraer URLs de YouTube
- **Uptime**: Tiempo que lleva activa una transmisión
- **Bitrate**: Cantidad de datos por segundo (mayor = mejor calidad pero más internet)
---
**¿Necesitas más ayuda?** Consulta `README.md` para documentación completa o `QUICKSTART.md` para inicio rápido.