KoljaB / RealtimeSTT

A robust, efficient, low-latency speech-to-text library with advanced voice activity detection, wake word activation and instant transcription.
MIT License
2.09k stars 190 forks source link

[MacOS Sonoma 14.5 - Intel] EOF ERROR in multiprocessing #96

Open danielquintas8 opened 3 months ago

danielquintas8 commented 3 months ago

Code:

from RealtimeSTT import AudioToTextRecorder

with AudioToTextRecorder() as recorder:
    print(recorder.text())

Current behaviour:

[2024-08-05 11:02:28.712] [ctranslate2] [thread 705146] [warning] The compute type inferred from the saved model is float16, but the target device or backend do not support efficient float16 computation. The model weights have been automatically converted to use the float32 compute type instead.
OMP: Error #15: Initializing libiomp5.dylib, but found libiomp5.dylib already initialized.
OMP: Hint This means that multiple copies of the OpenMP runtime have been linked into the program. That is dangerous, since it can degrade performance or cause incorrect results. The best thing to do is to ensure that only a single OpenMP runtime is linked into the process, e.g. by avoiding static linking of the OpenMP runtime in any library. As an unsafe, unsupported, undocumented workaround you can set the environment variable KMP_DUPLICATE_LIB_OK=TRUE to allow the program to continue to execute, but that may cause crashes or silently produce incorrect results. For more information, please see http://www.intel.com/software/products/support/.
Traceback (most recent call last):
  File "/Users/macbook/Downloads/test/venv/lib/python3.12/site-packages/RealtimeSTT/audio_recorder.py", line 558, in text
    return self.transcribe()
           ^^^^^^^^^^^^^^^^^
  File "/Users/macbook/Downloads/test/venv/lib/python3.12/site-packages/RealtimeSTT/audio_recorder.py", line 521, in transcribe
    status, result = self.parent_transcription_pipe.recv()
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/Cellar/python@3.12/3.12.2_1/Frameworks/Python.framework/Versions/3.12/lib/python3.12/multiprocessing/connection.py", line 250, in recv
    buf = self._recv_bytes()
          ^^^^^^^^^^^^^^^^^^
  File "/usr/local/Cellar/python@3.12/3.12.2_1/Frameworks/Python.framework/Versions/3.12/lib/python3.12/multiprocessing/connection.py", line 430, in _recv_bytes
    buf = self._recv(4)
          ^^^^^^^^^^^^^
  File "/usr/local/Cellar/python@3.12/3.12.2_1/Frameworks/Python.framework/Versions/3.12/lib/python3.12/multiprocessing/connection.py", line 399, in _recv
    raise EOFError
EOFError

Any idea on how this could be fixed?

KoljaB commented 3 months ago

Not sure but I think this is related to:

https://github.com/KoljaB/RealtimeSTT/issues/33#issuecomment-2029928931