Fixes / Updates: Update outside mutex comment, move outputSource, outputRelay assignments

This commit is contained in:
Alex P 2025-11-12 09:07:22 +02:00
parent fcf072d9db
commit 3121747712
1 changed files with 6 additions and 9 deletions

View File

@ -47,19 +47,16 @@ func startAudio() error {
return nil
}
// Start output audio if not running and enabled
if outputSource == nil && audioOutputEnabled.Load() {
// Start output audio if not running, enabled, and we have a track
if outputSource == nil && audioOutputEnabled.Load() && currentAudioTrack != nil {
alsaDevice := "hw:1,0" // USB audio
outputSource = audio.NewCgoOutputSource(alsaDevice)
if currentAudioTrack != nil {
outputRelay = audio.NewOutputRelay(outputSource, currentAudioTrack)
if err := outputRelay.Start(); err != nil {
audioLogger.Error().Err(err).Msg("Failed to start audio output relay")
}
}
}
// Start input audio if not running, USB audio enabled, and input enabled
ensureConfigLoaded()
@ -160,7 +157,7 @@ func setAudioTrack(audioTrack *webrtc.TrackLocalStaticSample) {
}
audioMutex.Unlock()
// Start new relay outside mutex
// Capture relay reference and start it outside mutex
audioMutex.Lock()
relayToStart := outputRelay
audioMutex.Unlock()