azam / jellyfin-plugin-localsubs

Subtitle provider plugin for local subtitle files on Jellyfin
GNU General Public License v3.0
9 stars 0 forks source link

Cant get it working Dut #4

Closed Kev1n121 closed 2 months ago

Kev1n121 commented 7 months ago

I have added : Subs/%fn%/%n%%l%.srt Subs/%fn%.%l%.srt Subs/%n%%l%.srt Subs/%l%.srt Subs/%fn%.srt Subs/%any%.srt

I followed the install instruction without any problem I want to use it for tv shows. I also have the srt next to the video, and I made a folder with Subs on my raspberrypi usb with the folder Subs. for my raspberrypy (Linux). but the subtitle never sync with my video, the subtitle is the good one because its ofset a little around 1/6 seconds.

Does this plugin work. because If i use subsync on windows it just works without any plugin just subsync.exe only. But I dont want to let it work without converting the video in windows,

Naamloos Subs/%any%.srt Video file and srt name are:

The.test.S01E01.epname.720p.mkv The.test.S01E01.epname.720p.dut.srt The.test.S01E01.epname.720p.srt

Using Local Subs0.1.1.0

Not working on windows or raspberrypi

azam commented 7 months ago

@Kev1n121 I tested this on Windows and Jellyfin official docker. Can you check for the following? Another point is did you check 'Dutch' on the subtitle language list on your library?

https://github.com/azam/jellyfin-plugin-localsubs/issues/2#issuecomment-1598806653

.NET uses system installed globalization data (data from ICU) for enumerating languages and this plugin uses the API on .NET standard library to get those data.

Specifically for each subtitle language set at the library, it will try to match for 2-letter code (en for English, se for Swedish), 3-letter code (eng for English, swe for Swedish) and the English name (English for English, Swedish for Swedish) on the %l% placeholder when scanning for subtitle files.

These language codes and its english names are matched against that globalization data (ICU data) and it must exist on your system, and for Linux, it is using the ICU library for that.

You can try these steps:

  • Make sure ICU library and data is installed

    • Debian derivatives: sudo apt install libicu-devel
    • Alpine: apk add icu-libs icu-data-full
  • If you are building your own Docker image, make sure ICU is installed as above, and also make sure ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true is not defined on your Dockerfile.
  • Make sure System.Globalization.Invariant is not set to true, or is not defined on jellyfin.runtimeconfig.json (default should be false when undefined on runtimeconfig). This setting disables references to globalization data if set to true.
azam commented 2 months ago

Closed as answered.