ускоренная работа
This commit is contained in:
27
app/core/audio_manager.py
Normal file
27
app/core/audio_manager.py
Normal file
@@ -0,0 +1,27 @@
|
||||
import pyaudio
|
||||
import threading
|
||||
|
||||
|
||||
class AudioManager:
|
||||
_instance = None
|
||||
_lock = threading.Lock()
|
||||
|
||||
def __new__(cls):
|
||||
with cls._lock:
|
||||
if cls._instance is None:
|
||||
cls._instance = super(AudioManager, cls).__new__(cls)
|
||||
cls._instance.pa = pyaudio.PyAudio()
|
||||
print("🔊 AudioManager: PyAudio initialized (Global)")
|
||||
return cls._instance
|
||||
|
||||
def get_pyaudio(self):
|
||||
return self.pa
|
||||
|
||||
def cleanup(self):
|
||||
if self.pa:
|
||||
self.pa.terminate()
|
||||
self.pa = None
|
||||
|
||||
|
||||
def get_audio_manager():
|
||||
return AudioManager()
|
||||
Reference in New Issue
Block a user