Configuration
Services
Leave the '4K' environmental variables as is if running only one instance of either Radarr, Sonarr or Bazarr.
Overr-Syncerr supports 2 instances of each Radarr, Sonarr and Bazarr service - 4K and non-4K.
The examples below focus on the non-4K, but the process is the same in both cases.
Configuration:
Replace the placeholder text with your Radarr instance IP address and API key.
You can find your API key navigating to Settings -> General -> API Keyin you Radarr instance.
RADARR_API_KEY: "YOUR_RADARR_API_KEY"
RADARR_URL: "http://RADARR_IP:RADARR_PORT/api/v3"
Ensure that you have entered the correct information, especially the URL.
Examples:
RADARR_URL: "http://192.168.0.101:7878/api/v3"
RADARR_URL: "http://192.168.0.101:7878/"
Plex
You have to provide:
Plex server URL
Plex Authentication Token
Plex server cleint identifier (used for setting audio tracks & and fething users access tokens)
Keywords
The language map is used to associate keywords to your Subtitle Language profile in Bazarr to communicate which subtitle language needs to be synced or translated. Using the provided language map as example, add your own keywords and languages.
You can add as many keywords as needed.
LANGUAGE_MAP: "{\"da\":\"Danish\",\"en\":\"English\",\"bg\":\"Bulgarian\",\"dansk\":\"Danish\",\"english\":\"English\",\"danske\":\"Danish\",\"eng\":\"English\"}"
You can't map a language that is not already present in your language profile in Bazarr.
Labelling
Overr-Syncerr can auto-label media with the username of the requester and can also enable users to add their User-Label to media that's been requested by other users and is available in your library.
There are two types of 'auto-labelling': Media Available
and Request Monitoring
Will trigger once Overseerr/Jellyseerr has picked up the media as being available on the Plex server and apply the lable to it. This function is disabled by default and can be enabled by changing the Media Available variable to 'true'.
ENABLE_MEDIA_AVAILABLE_HANDLING: true
User Audio & Subtitle Preference
Upon initial boot, Overr-Syncerr will generate 3 JSON files:
user_token.json - list of usernames and their corresponding tokens
user_audio_pref.json - list of usernames, audio tracks in order of priority (highest to lowest)
user_subs_pref.json - list of usernames, subtitle tracks in order of priority (highest to lowest)
{
"Bob": {
"fallback": {
"matchChannels": true
},
"preferred": [
{
"codec": "AAC",
"channels": 2,
"language": "Danish"
},
{
"codec": "AAC",
"channels": 2,
"language": "English"
}
]
},
"John": {
"fallback": {
"matchChannels": true
},
"preferred": [
{
"codec": "EAC3",
"channels": 6,
"language": "English"
},
{
"codec": "AAC",
"channels": 2,
"language": "English"
}
]
}
Audio Track Matching
Subtitle Track Matching
Kometa
To trigger Kometa automatically when media becomes available, you will have to configure the following:
ENABLE_KOMETA: "true"
KOMETA_CONFIG_PATH: C:\pmm/config:/config:rw #Replace with your Kometa config path
You will also have to add this to your list of volumes in the docker-compose to interact with the Kometa docker container:
- /var/run/docker.sock:/var/run/docker.sock
GPT Translation
By default, Bazarr uses Google API to perform subtitle translation; however, if you have an OpenAI API key, you can take advantage of ChatGPTs translation capabilities.
You can use any gpt model that you would like and I've had great success with the below values. You will also have to mount and map the directories where Bazarr stores subtitles as GPT will not be abble to access the files for processing.
ENABLE_GPT: "true"
MODEL_GPT: "gpt-4o"
OPEN_AI_API_KEY: "YOUR_OPEN_AI_KEY"
MAX_REQUEST_BYTES: 2000
MAX_TOKENS: 4000
CHUNK_OVERLAP: 2
REQUEST_DELAY: 2
MOVIE_PATH_MAPPING: "M:\\Movies\\1080p" #Bazarr subtitles path for GPT translation
TV_PATH_MAPPING: "M:\\TV\\1080p" #Bazarr subtitles path for GPT translation
volumes:
- M:\Movies\1080p:/mnt/movies
- M:\TV\1080p:/mnt/tv
Webhooks
To configure Overr-Syncerr, do the following:
Settings -> Notifications -> Webhook
Enable the webhook agent and paste the webhook URL http://your-ip-address:your-port/ into the Webhook URL field
Make sure 'Issue Reported' is ticked
If you have enabled 'auto-labelling', make sure 'Request Available' is ticked as well
Test the webhook agent
If you get a 'Webhook test notification sent!' response, they everything is correctly configured
Save
Last updated