// docs / primeros-pasos
Primeros pasos
Dos maneras de ejecutar LiveAudio: el instalador prearmado (recomendado) o desde el código con uv. No necesitas Python instalado — el instalador aprovisiona su propio Python 3.11.
Opción A — Instalador (recomendado)
Descarga la última versión desde GitHub Releases:
- Windows:
LiveAudio-Setup-1.2.0.exe(instalador gráfico). - Linux:
LiveAudio-1.2.0-linux-x64.tar.gz— extrae y ejecuta./liveaudio-launcher.
La primera ejecución descarga Python y todas las dependencias (~400 MB en CPU, ~2.5 GB con CUDA) y detecta tu GPU automáticamente. Las ejecuciones siguientes arrancan al instante.
Opción B — Desde el código (desarrolladores)
Requiere uv. Elige exactamente un extra de torch — cpu o cu121.
git clone https://github.com/plynte-labs/LiveAudio.git
cd LiveAudio
# Solo CPU
uv sync --extra cpu
# O con NVIDIA CUDA (exactamente un extra de torch)
uv sync --extra cu121
# Ejecutar la app
uv run liveaudio
# Ejecutar los tests
uv run pytest Verificar la instalación
Usuarios del instalador: ejecuta el launcher con --self-test — imprime el dispositivo detectado, las rutas resueltas y el estado de uv, y luego sale sin abrir la GUI. Desarrolladores: confirma que las librerías principales importan:
uv run python -c "import torch; print('PyTorch:', torch.__version__)"
uv run python -c "import faster_whisper; print('Faster Whisper OK')" CLI del launcher
El launcher es la vía principal para forzar un backend, actualizar, autodiagnosticar o recuperar una instalación. Pasa estos flags al ejecutable del launcher (o, en desarrollo, a uv run liveaudio donde aplique):
| Flag | Qué hace |
|---|---|
--device cpu|cuda | Anula la autodetección de GPU; la elección se persiste en installed.json y re-sincroniza el extra de torch correspondiente. |
--update [vX.Y.Z] | Actualiza a un tag, o a la última versión si no se da tag. Informa “already up to date” si ya está al día. |
--self-test | Imprime el dispositivo detectado, las rutas resueltas y el estado de uv, y sale. |
--reinstall | Borra app/ y .venv, mantiene la preferencia de dispositivo y reinstala desde cero. |
--headless | Progreso por stdout sin GUI; se usa automáticamente cuando tkinter no está disponible (servidores, CI). |
--src-dir PATH | Modo desarrollo: instala desde un checkout local en vez de un zip de release. |
--install-desktop-entry | Solo Linux — agrega una entrada al menú de aplicaciones. |
Detección automática de GPU
Al iniciar, LiveAudio busca una GPU NVIDIA. Si hay una disponible usa cuda por defecto; si no, cambia a cpu automáticamente. CUDA necesita driver ≥ 525 y VRAM ≥ 4 GiB — no hace falta configurar nada a mano.
Perfiles
Los perfiles son presets sensibles a los FPS. Editar un perfil integrado lo convierte en Personalizado; los cambios solo se activan al pulsar Aplicar cambios.
| Perfil | Recomendado para |
|---|---|
Fast | Menor latencia y frases cortas. |
Balanced | Recomendado para la mayoría de las sesiones. |
Quality | Más precisión, más VRAM y latencia. |
Stable Streaming | Reduce la carga de GPU al jugar o transmitir con la PC ocupada. |
Blacklist de alucinaciones
Whisper puede inventar frases durante el silencio. LiveAudio las filtra con una blacklist editable. La lista por defecto (de config.json.example) es:
amara.org, subtítulos por, suscríbete, dale like, gracias por ver,
memos, gracias, activar la campanita, ¡Hasta la próxima!, por favor Las palabras y frases se separan por comas y son totalmente editables desde la pestaña Subtítulos — agrega el relleno que tu stream tiende a alucinar, o borra entradas que quieras conservar.
Modelos
Elige un modelo en la pestaña Modelo y Hardware. Los modelos más grandes son más precisos pero más lentos y usan más VRAM; cada uno se descarga una vez en el primer uso y después funciona sin conexión.
| Modelo | Descarga inicial | Notas |
|---|---|---|
tiny | ~150 MB | El más rápido; bien en CPUs modestas. |
base | ~300 MB | Un escalón más de precisión, todavía liviano. |
small | ~480 MB | Default equilibrado para CPU. |
turbo | ~1.5 GB | La mayor precisión aquí; mejor con GPU. |
Archivos de sesión
Cada sesión se guarda en disco como un transcript (transcript.jsonl) y subtítulos WebVTT (subtitles.vtt), más un manifiesto session.json:
sessions/
└── session_2026-05-04_143022/
├── subtitles.vtt
├── transcript.jsonl
└── session.json