Un panel de control moderno para Windows 10/11 que permite asignar dispositivos de salida de audio específicos para cada aplicación (Navegador, Juegos, Spotify, etc.) de forma nativa e independiente.
- UI: React + Vite (Glassmorphism design).
- Backend: Tauri (Rust) orchestrating commands and SQLite persistence.
- Core: C++ DLL utilizing WASAPI and
IPolicyConfigfor native per-app routing.
- Windows 10 (1803+) o Windows 11.
- Visual Studio 2022 con carga de trabajo "Desarrollo para el escritorio con C++".
- Rust (instalado vía rustup).
- Node.js (v18 o superior).
- CMake (v3.10 o superior).
Primero debemos generar la DLL que maneja las interfaces de audio de Windows.
cd core
mkdir build
cd build
cmake ..
cmake --build . --config ReleaseEsto generará AudioCore.dll en core/build/bin/Release.
Para que Rust encuentre la DLL durante el desarrollo, cópiala al directorio de salida del target:
# Ejemplo para modo Debug
copy core\build\bin\Release\AudioCore.dll src-tauri\target\debug\Instala las dependencias de la UI y lanza el entorno de desarrollo de Tauri:
npm install
npm run tauri dev/core: Código fuente C++ (DeviceManager, SessionManager, RoutingManager)./src-tauri: Backend en Rust, FFI bridge y persistencia SQLite./src: Frontend en React con CSS personalizado.
- Latencia: Al usar el motor nativo de Windows (
IPolicyConfig), no se añade latencia adicional. - Limitaciones: Aplicaciones que usan ruteo exclusivo (ASIO o Exclusive Mode) no pueden ser controladas por este método al saltarse el grafo de audio de Windows.
- Persistencia: La aplicación crea una base de datos SQLite en
%APPDATA%/com.blackfound.audiopara guardar tus perfiles.
Desarrollado con ❤️ para Blackfound.