GitHub - freeman-jiang/beatsync: 🔊 High-precision web player for multi-device audio playback and spatial audio.
Extracto
🔊 High-precision web player for multi-device audio playback and spatial audio. - freeman-jiang/beatsync
Resumen
Resumen Principal
Beatsync se establece como un reproductor de audio web de alta precisión, meticulosamente diseñado para la reproducción sincronizada en múltiples dispositivos. Su propuesta de valor central radica en la capacidad de alcanzar una sincronización milimétrica, utilizando primitivas temporales inspiradas en el protocolo NTP para garantizar una coherencia auditiva excepcional. Esta plataforma no solo es versátil gracias a su compatibilidad con cualquier dispositivo que posea un navegador moderno, sino que también enriquece la experiencia del usuario con audio espacial, permitiendo el control de los volúmenes de los dispositivos a través de una fuente de escucha virtual para generar efectos sonoros complejos e interesantes. Además de una interfaz de usuario pulida que incorpora estados de carga fluidos y claros indicadores de estado, Beatsync ofrece la notable ventaja de ser auto-alojable, lo que brinda a los usuarios la autonomía de implementar y gestionar su propia instancia con sencillos comandos. Esta combinación de precisión técnica, versatilidad y control subraya el enfoque innovador de Beatsync en el panorama del audio digital.
Elementos Clave
- Sincronización Milimétrica de Audio: Beatsync se distingue por su avanzada implementación de primitivas de sincronización horaria inspiradas en NTP, lo que le permite lograr una exactitud de milisegundos en la reproducción de audio a través de diversos dispositivos. Esta característica es fundamental para asegurar que todos los puntos de reproducción emitan el sonido en perfecta armonía temporal, lo cual es crítico para experiencias auditivas complejas y colaborativas.
- Compatibilidad Multiplataforma y Funcionalidad de Audio Espacial: La plataforma está construida para operar eficazmente en cualquier dispositivo equipado con un navegador moderno, recomendándose Chrome para el
Contenido
Beatsync
Beatsync is a high-precision web audio player built for multi-device playback. The official app is beatsync.gg.
beatsync-demo.mov
Features
- Millisecond-accurate synchronization: Abstracts NTP-inspired time synchronization primitives to achieve a high degree of accuracy
- Cross-platform: Works on any device with a modern browser (Chrome recommended for best performance)
- Spatial audio: Allows controlling device volumes through a virtual listening source for interesting sonic effects
- Polished interface: Smooth loading states, status indicators, and all UI elements come built-in
- Self-hostable: Run your own instance with a few commands
Note
Beatsync is in early development. Mobile support is working, but experimental. Please consider creating an issue or contributing with a PR if you run into problems!
Quickstart
This project uses Turborepo.
Fill in the .env file in apps/client with the following:
NEXT_PUBLIC_API_URL=http://localhost:8080 NEXT_PUBLIC_WS_URL=ws://localhost:8080/ws
Run the following commands to start the server and client:
bun install # installs once for all workspaces bun dev # starts both client (:3000) and server (:8080)
| Directory | Purpose |
|---|---|
apps/server |
Bun HTTP + WebSocket server |
apps/client |
Next.js frontend with Tailwind & Shadcn/ui |
packages/shared |
Type-safe schemas and functions shared between client & server |
Fuente: GitHub