Aplicación TUI (Terminal User Interface) para gestionar y reproducir streams de audio y videos, construida con Textual, SQLModel, SQLite, python-vlc, yt-dlp y httpx.
## Funciones principales
- Gestión de streams y videos: agregar, editar y eliminar entradas.
- Reproducción integrada: streams de audio (URL directa) y videos (YouTube y similares vía yt-dlp).
- Controles de reproducción: anterior, siguiente, detener y volumen.
- Búsqueda y filtros: por nombre y por categoría.
- Importar / exportar JSON: backup y carga de listas, con omisión automática de duplicados por nombre o link.
- Validación de enlaces: comprueba si los streams responden; permite detener el proceso, seleccionar cuáles eliminar y confirmar.
- Temas Gruvbox Light / Dark: se alternan con Ctrl+T y la preferencia se guarda entre sesiones.
- Interfaz responsive: tablas y menú se adaptan al tamaño de la terminal.
- Persistencia local: los datos se guardan en SQLite (`streams.db`).
## Capturas de pantalla
## Requisitos
- Python 3.8+
- VLC Media Player instalado en el sistema
## Instalación
1. Clonar el repositorio:
git clone https://github.com/IsmaelHeredia/quiet-stream-python.git
cd quiet-stream-python
2. Instalar dependencias:
pip install -r requirements.txt
3. Ejecutar:
```bash
python main.py
```
## Importación y exportación (Formato JSON)
Los respaldos exportados utilizan una lista con la siguiente estructura por cada elemento, la cual también se requiere para importar datos:
[
{
"nombre": "Mi stream",
"link": "https://ejemplo.com/stream.mp3",
"categorias": "rock, radio",
"tipo": "stream"
},
{
"nombre": "Video de ejemplo",
"link": "https://www.youtube.com/watch?v=...",
"categorias": "musica",
"tipo": "video"
}
]



















































