fix: résolution device IDs et correction sox capture args
Corrections pour le routing audio carte son → LiveKit : **Fixes audio backend** - AudioBridgeManager : extraction des device IDs depuis config.audio.device - AudioBridge : ajout résolution device ID → device name pour CoreAudio/sox - CoreAudioBackend : correction index args sox capture (args[2] au lieu de args[1]) **Résultat** - ✅ Sox capture fonctionne : lit depuis "Microphone MacBook Pro" - ✅ Audio capturé et envoyé vers routing - ❌ Sox playback se ferme après 0.2s (problème persistant à corriger) **Autres modifications** - Logging centralisé (Logger.js) - IP corrigée : 192.168.0.146 - Suppression système channels[] legacy dans groupes 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
+23
-3
@@ -179,7 +179,7 @@ router.get('/groups', (req, res) => {
|
||||
/**
|
||||
* POST /admin/groups
|
||||
* Crée un nouveau groupe
|
||||
* Body: { name, audioBitrate?, channels }
|
||||
* Body: { name, audioBitrate? }
|
||||
* L'ID est généré automatiquement à partir du nom
|
||||
*/
|
||||
router.post('/groups', (req, res) => {
|
||||
@@ -204,7 +204,7 @@ router.post('/groups', (req, res) => {
|
||||
});
|
||||
}
|
||||
|
||||
// Créer le nouveau groupe (sans channels)
|
||||
// Créer le nouveau groupe
|
||||
const newGroup = {
|
||||
name,
|
||||
...(audioBitrate && { audioBitrate })
|
||||
@@ -482,8 +482,28 @@ router.get('/audio/device', (req, res) => {
|
||||
const config = configManager.get();
|
||||
const audioDevice = config.audio?.device || {};
|
||||
|
||||
// Enrichir avec les infos réelles de la carte si configurée
|
||||
const devices = CoreAudioBackend.getDevices();
|
||||
let deviceInfo = { ...audioDevice };
|
||||
|
||||
if (audioDevice.inputDeviceId) {
|
||||
const inputDev = devices.find(d => d.id === audioDevice.inputDeviceId);
|
||||
if (inputDev) {
|
||||
deviceInfo.inputChannels = inputDev.maxInputChannels;
|
||||
deviceInfo.inputDeviceName = inputDev.name;
|
||||
}
|
||||
}
|
||||
|
||||
if (audioDevice.outputDeviceId) {
|
||||
const outputDev = devices.find(d => d.id === audioDevice.outputDeviceId);
|
||||
if (outputDev) {
|
||||
deviceInfo.outputChannels = outputDev.maxOutputChannels;
|
||||
deviceInfo.outputDeviceName = outputDev.name;
|
||||
}
|
||||
}
|
||||
|
||||
res.json({
|
||||
device: audioDevice
|
||||
device: deviceInfo
|
||||
});
|
||||
} catch (error) {
|
||||
console.error('Erreur GET /admin/audio/device:', error);
|
||||
|
||||
Reference in New Issue
Block a user