Flottenfunk: warum Audio einen eigenen Prozess braucht
SC FleetradioSC-Overlay
Für unsere Org habe ich einen Sprechfunk gebaut: mehrere Kanäle über LiveKit, Push-to-Talk per globalem Hotkey oder HOTAS-Knopf, ein Mixer pro Sprecher und ein Alarm für Combat-Comms. Eine Frequenz ist ein LiveKit-Raum, wer das Kanal-Passwort kennt, bekommt ein Token.
Anfangs war der Funk ein Tab im SC-Overlay – und hat geknackst. Der OCR-Scanner-Loop und die Echtzeit-Audio-Callbacks haben sich im selben Python-Prozess um die GIL gestritten. Die Lösung war unspektakulär und wirksam: Der Funk ist jetzt eine eigene Desktop-App (PySide6), das Overlay startet sie nur noch.
Lektion gelernt: Echtzeit-Audio und rechenhungrige Schleifen gehören nicht in denselben Interpreter.