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

Update README: Warn users about unsupported dependency versions in Linux package managers #128

Open duoduo70 opened 1 month ago

duoduo70 commented 1 month ago

This pull request updates the README to inform users about a potential issue with Linux package managers automatically installing newer versions of dependencies that are not supported by the software. By adding this information, we aim to prevent compatibility issues and improve user experience when setting up the software on Linux systems. I noticed several issues raised by users reporting similar problems (ERROR -9998), which also occurred on my machine. The error message was vague, and it took some time to identify the root cause. This issue seems more prevalent in aggressive package managers like those in ArchLinux.

homelab-00 commented 1 month ago

Correct me if I'm wrong here, but your changes are only about ffmpeg which in my experience isn't actually needed to run. I had ffmpeg 7 installed on my windows machine (which IIRC isn't supported by pytorch yet) and while I got warnings (even when I installed ffmpeg 6 or ffmpeg 5) the script still ran fine.

I do agree with your overall point though, in that some packages need to be a specific version (or range of versions) and not the latest for the script to run properly. Learned it the hard way by mindlessly doing conda update --all.

duoduo70 commented 1 month ago

even when I installed ffmpeg 6 or ffmpeg 5

Based on my testing, the script runs smoothly when both FFmpeg7 and FFmpeg6 are installed, but fails if only FFmpeg7 is present. On my Linux system, the script attempts to load libavutil.so.58 (FFmpeg6), libavutil.so.57 (FFmpeg5), and libavutil.so.56 (FFmpeg4) simultaneously, but doesn't try to load libavutil.so.59 (FFmpeg7). I can't speak to how it behaves on Windows, as I don't use that.

Also I don't know how to run the program without FFmpeg