Hi All,
I thought i'd chuck this up there in case it helps anyone.
I setup and was using the whisper-asr-webservice docker on Unraid. Everything connected fine, it'd process a couple files but then inevitably it would throw a connection error in Bazarr and want to wait another 24 hours.
After scanning the log i noticed it was trying to process multiple files at a time. It would request one, start processing and then request another. I am unsure if it is capabale of doing multiple at once (I assume it is), but perhaps it was just trying too many for my system (i5 13500).
The solution that has worked thus far was changing the "connection/response timeout in seconds" under WhisperAI in providers from the default 5 seconds up to 120 seconds (2 minutes).
So far it has processed the most in a row that it has without any issues, and the logs show it (finally) starting and completing before going for another file with no timeout errors or connections aborted etc.
EDIT: Ran into an issue after a few hours and it seems to be due to a movie being transcribed which took ~10 minutes, so it tried a couple of times and failed so threw the error again and stopped. I've now upped to 12 minutes as i believe that should prevent the issue again, but it highlights so far that the frequency needs to be changed based on the largest media you have. I hope this helps someone having those connection issues.
When it finishes it seems to move straight on to the next file, so the time between connection attempts looks to be fine to be set for a long time.
Reposted from a few hours ago as i made a typo in the subject and couldn't figure out how to change it.
Hello, I’m configuring Whisperai as a provider on bazarr and I cannot get it to connect. I can type in the local ip address with port 9000 and I can see the interface. How can I fix the error “ConnectionError” on bazarr?
Is it any good?
I've got whisper working in unraid using the whisper-asr-webservice container, but I've noticed there is another whisper model 'faster-whisper', that's supposedly 4x faster than the original.. but, I can't seem to get bazarr to talk to it.
Anyone had any luck using bazarr with linuxserver/faster-whisper?
Been trying whisper a bit. Running whisper asr docker on my unraid server as well as bazarr docker. Using base model.
I just setup whisper provider and it seems to work.
I however have some questions. Are there supposed to be some way to see the progress of whisper?
Now there is a spinning download notification. Then I get some weird error message -<h1>504 Gateway Time-out</h1></center> <hr><center>openresty</center> </body> </html> <!-- a padding to disable MSIE and Chrome friendly error page -->
However it keeps on working in the background. I have 100% cpu usage for two minutes or so. When it settles I actually have a new subtitle.
My cpu is quite slow i3-8100 but it seems to work.
Are there no way to track status of the whisper process or is it something weird with my setup?
I would like to share my Bazarr Whisper AI setup on Synology. Hope it helps you.
Make sure Bazarr setup is correct
Before we begin, one of the reason you want AI subtitles is because you are not getting subtitles from your providers such as opensubtitles.com. Bazarr works in funny ways and may be buggy at times, but what we can do is make sure we are configuring correctly.
From Bazarr logs, I am only getting subtitles from opensubtitlescom and Gestdown, so I would recommend these two. I only use English ones so if you use other languages you would need to check your logs.
Opensubtitles.com
To use opensubtitles.com in Bazarr you would need VIP. It's mentioned in numerous forums. If you say it works without VIP or login, that's fine. I am not going to argue. It's $20/year I am ok to pay to support them. Just remember to check your Bazarr logs.
For opensubtitle provider configuration, make sure you use your username not email, your password not your token, do not use hash and enable ai subtitles.
For your language settings keep it simple, I only have English, you can have other languages. Deep analyze media, enable default settings for series and movies.
For Subtitle settings use Embedded subtitles, ffprobe, important: enable Upgrading subtitles and set 30 days to go back in history to upgrade and enable upgrade manually downloaded or translated subtitles. Most common mistake is setting days too low and Bazarr gives up before good subtitles are available. Do not enable Adaptive Searching.
For Sonarr and Radarr keep the minimum Score to 0. sometimes opensubtitles may return 0 even when the true score is 90+.
For Scheduler, Upgrade Previously Downloaded Subtitles to every 6 hours. Same for missing series and movies. Sometimes opensubtitles timeout. keeping it 6 hours will retry and also picking up latest subtitles faster.
Lastly, go to Wanted and search all, to download any missing subtitles from OpenSubtitles.
Now we have all the possible subtitles from opensubtitles. the rest we need Whisper AI.
subgen
subgen is Whisper AI but many generations ahead. First of all, it's using faster-whisper, not just whisper, and on top it uses stable-ts, third it support GPU acceleration, and fourth, but not least, it just works with Bazarr. So far this is the best Whisper AI I found.
I recommend to use Nvidia card on Synology to make use of Nvidia AI. with my T400 4GB I get 24-27sec/s transcribe performance. If you are interested check out my post https://www.reddit.com/r/synology/comments/16vl38e/guide_how_to_add_a_gpu_to_synology_ds1820/
If you want to use your NVidia GPU then you need to run the container from command line, here is my run.sh.
#!/bin/bash docker run --runtime=nvidia --gpus all -e NVIDIA_DRIVER_CAPABILITIES=all -e TRANSCRIBE_DEVICE=gpu -e WHISPER_MODEL="base" -e UPDATE=True -e DEBUG=False -d --name=subgen -p 9000:9000 -v /volume1/nas/Media:/media --restart unless-stopped mccloud/subgen
After running, open your plex address and port 9000 to see the GUI, don't change anything, because Bazarr will send queries to it, the settings in GUI is only for if you want to run something standalone. If you want to know all the options, check out https://github.com/McCloudS/subgen
Whisper AI can only translate to English, it has many models: tiny, base, small, medium and large. From my experience, base is good enough. Also you can choose transcribe only (base.en) or translate and transcribe (base). I choose base because I also watch Anime and Korean shows. For more information check out https://github.com/openai/whisper
To monitor subgen, run the docker logs in terminal
docker logs -f subgen
Go back to Bazarr, add the Whisper AI provider, use subgen endpoint, for me it's http://192.168.2.56:9000 connection timout 3600, transctiption timeout 3600, logging level DEBUG, click Test Connection, you should see subgen version number, click save.
Now go to Wanted and click on any, it should trigger subgen. You can check from the docker log if it's running. Once confirmed, you may just search all and go to bed, with T400 you are looking at 2-3 mins per episode. Eventually all wanted will be cleared. If good you can press ctrl-c in terminal to stop seeing the docker logs. (or you can keep staring and admiring the speed :) ).
I have a lot of files with no subs that I'm not getting via any of my configured providers. So whisper sounds like it will take care of everything until something better does show up. But the only way I can get transcribed subs from whisper is to search manually and select whisper. Is there something that I need to enable to make this work automatically?
I have been using it for a little over 48 hours and it generated 1150 subtitles in the meantime.
Having tried Spanish, English, and French shows. I can say that they are about 90-95% accurate, which beats no subs at all for me that has hearing issues.
Complete info here!
An example of the delay between generations: