sábado, 12 de septiembre de 2026

[Python] Quiet Stream

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"
  }
]

 Link del proyecto 

No hay comentarios:

Publicar un comentario

[Python] Quiet Stream

Aplicación TUI (Terminal User Interface) para gestionar y reproducir streams de audio y videos, construida con Textual, SQLModel, SQLite, py...