Jellyfin Forum
Subtitle problem - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+--- Thread: Subtitle problem (/t-subtitle-problem)



Subtitle problem - Micky - 2024-12-03

Good afternoon, everyone.

I'm having trouble displaying subtitles for some movies that were previously ripped with HandBrake.

I'm not sure if this has been happening for a while, as I just noticed the issue.

What I can confirm is that the subtitles are recognized by Jellyfin (they all appear listed, and I can select them), and when opening the movies locally with VLC, all the subtitles display correctly. The same movies, when not processed through HandBrake, show subtitles properly in Jellyfin.
Does anyone know if this is a bug or have any ideas on how to fix it?

Thank you very much in advance.


RE: Subtitle problem - TheDreadPirate - 2024-12-03

What kind of subtitles are they? Can you share the media info from the file not processed by handbrake and the file that IS processed by handbrake?


RE: Subtitle problem - Micky - 2024-12-05

(2024-12-03, 07:29 PM)Micky Wrote: Good afternoon, everyone.

I'm having trouble displaying subtitles for some movies that were previously ripped with HandBrake.

I'm not sure if this has been happening for a while, as I just noticed the issue.

What I can confirm is that the subtitles are recognized by Jellyfin (they all appear listed, and I can select them), and when opening the movies locally with VLC, all the subtitles display correctly. The same movies, when not processed through HandBrake, show subtitles properly in Jellyfin.
Does anyone know if this is a bug or have any ideas on how to fix it?

Thank you very much in advance.

Thanks for the help.

Info from the original media:

Text #1
ID                          : 4
Format                      : UTF-8
Codec ID                    : S_TEXT/UTF8
Codec ID/Info              : UTF-8 Plain Text
Duration                    : 21 min 12 s
Bit rate                    : 4 b/s
Count of elements          : 27
Stream size                : 734 Bytes (0%)
Title                      : European Spanish (Forced)
Language                    : Spanish
Default                    : Yes
Forced                      : Yes

Text #2
ID                          : 5
Format                      : UTF-8
Codec ID                    : S_TEXT/UTF8
Codec ID/Info              : UTF-8 Plain Text
Duration                    : 28 min 28 s
Bit rate                    : 73 b/s
Count of elements          : 502
Stream size                : 15.3 KiB (0%)
Title                      : European Spanish
Language                    : Spanish
Default                    : No
Forced                      : No

Text #3
ID                          : 6
Format                      : UTF-8
Codec ID                    : S_TEXT/UTF8
Codec ID/Info              : UTF-8 Plain Text
Duration                    : 27 min 37 s
Bit rate                    : 87 b/s
Count of elements          : 534
Stream size                : 17.7 KiB (0%)
Title                      : European Spanish
Language                    : Spanish
Default                    : No
Forced                      : No

Text #4
ID                          : 7
Format                      : UTF-8
Codec ID                    : S_TEXT/UTF8
Codec ID/Info              : UTF-8 Plain Text
Duration                    : 27 min 44 s
Bit rate                    : 98 b/s
Count of elements          : 593
Stream size                : 20.1 KiB (0%)
Title                      : European Spanish (SDH)
Language                    : Spanish
Default                    : No
Forced                      : No

Text #5
ID                          : 8
Format                      : UTF-8
Codec ID                    : S_TEXT/UTF8
Codec ID/Info              : UTF-8 Plain Text
Duration                    : 28 min 27 s
Bit rate                    : 71 b/s
Count of elements          : 502
Stream size                : 14.9 KiB (0%)
Language                    : Catalan
Default                    : No
Forced                      : No

Text #6
ID                          : 9
Format                      : UTF-8
Codec ID                    : S_TEXT/UTF8
Codec ID/Info              : UTF-8 Plain Text
Duration                    : 28 min 32 s
Bit rate                    : 105 b/s
Count of elements          : 618
Stream size                : 22.1 KiB (0%)
Title                      : SDH
Language                    : English
Default                    : No
Forced                      : No

Text #7
ID                          : 10
Format                      : UTF-8
Codec ID                    : S_TEXT/UTF8
Codec ID/Info              : UTF-8 Plain Text
Duration                    : 28 min 28 s
Bit rate                    : 67 b/s
Count of elements          : 494
Stream size                : 14.1 KiB (0%)
Language                    : Basque
Default                    : No
Forced                      : No

Text #8
ID                          : 11
Format                      : UTF-8
Codec ID                    : S_TEXT/UTF8
Codec ID/Info              : UTF-8 Plain Text
Duration                    : 28 min 28 s
Bit rate                    : 75 b/s
Count of elements          : 479
Stream size                : 15.7 KiB (0%)
Language                    : Galician
Default                    : No
Forced                      : No





Info from the ripped media:

Text #1
ID                          : 4
Format                      : ASS
Codec ID                    : S_TEXT/ASS
Codec ID/Info              : Advanced Sub Station Alpha
Duration                    : 26 min 48 s
Compression mode            : Lossless
Title                      : European Spanish (Forced)
Language                    : Spanish
Default                    : Yes
Forced                      : Yes

Text #2
ID                          : 5
Format                      : ASS
Codec ID                    : S_TEXT/ASS
Codec ID/Info              : Advanced Sub Station Alpha
Duration                    : 28 min 47 s
Compression mode            : Lossless
Title                      : European Spanish
Language                    : Spanish
Default                    : No
Forced                      : No

Text #3
ID                          : 6
Format                      : ASS
Codec ID                    : S_TEXT/ASS
Codec ID/Info              : Advanced Sub Station Alpha
Duration                    : 27 min 57 s
Compression mode            : Lossless
Title                      : European Spanish
Language                    : Spanish
Default                    : No
Forced                      : No

Text #4
ID                          : 7
Format                      : ASS
Codec ID                    : S_TEXT/ASS
Codec ID/Info              : Advanced Sub Station Alpha
Duration                    : 28 min 1 s
Compression mode            : Lossless
Title                      : European Spanish (SDH)
Language                    : Spanish
Default                    : No
Forced                      : No

Text #5
ID                          : 8
Format                      : ASS
Codec ID                    : S_TEXT/ASS
Codec ID/Info              : Advanced Sub Station Alpha
Duration                    : 28 min 47 s
Compression mode            : Lossless
Language                    : Catalan
Default                    : No
Forced                      : No

Text #6
ID                          : 9
Format                      : ASS
Codec ID                    : S_TEXT/ASS
Codec ID/Info              : Advanced Sub Station Alpha
Duration                    : 28 min 38 s
Compression mode            : Lossless
Title                      : SDH
Language                    : English
Default                    : No
Forced                      : No

Text #7
ID                          : 10
Format                      : ASS
Codec ID                    : S_TEXT/ASS
Codec ID/Info              : Advanced Sub Station Alpha
Duration                    : 28 min 47 s
Compression mode            : Lossless
Language                    : Basque
Default                    : No
Forced                      : No

Text #8
ID                          : 11
Format                      : ASS
Codec ID                    : S_TEXT/ASS
Codec ID/Info              : Advanced Sub Station Alpha
Duration                    : 28 min 47 s
Compression mode            : Lossless
Language                    : Galician
Default                    : No
Forced                      : No


RE: Subtitle problem - TheDreadPirate - 2024-12-05

Handbrake is converting the SRT subs to ASS? There is a setting in Handbrake to passthrough the subtitles unmodified.

Do you have transcoding disabled? I'm wondering if your clients don't support ASS subs and are trying to burn them in.

Can you share your jellyfin log for pastebin so we can confirm what is happening server side? And what are your hardware specs for the server.


RE: Subtitle problem - Micky - 2024-12-05

(2024-12-05, 02:10 PM)TheDreadPirate Wrote: Handbrake is converting the SRT subs to ASS?  There is a setting in Handbrake to passthrough the subtitles unmodified.

Do you have transcoding disabled?  I'm wondering if your clients don't support ASS subs and are trying to burn them in.

Can you share your jellyfin log for pastebin so we can confirm what is happening server side?  And what are your hardware specs for the server.

Log: Pastebin

Indeed, I didn’t configure HandBrake to keep the subtitles in SRT format. When I tried ripping while maintaining the subtitle format, they were preserved.

Now I have the question/need to know if I can configure something on the Jellyfin side so that, even if the subtitles are in ACC format, they can still be viewed on my browser (Brave), Android TV, or Android app. I have Jellyfin running in a Docker on UNRAID, and my hardware is an i9 13900k without a dedicated graphics card. I’m also attaching screenshots of my transcoding configuration in case it’s relevant.

Another option, if possible, would be to rip all the videos while only changing the subtitle format. However, since I usually only use HandBrake, I don’t think it’s possible—I’m not sure which tool could be used for this.

Transcoding settings


RE: Subtitle problem - theguymadmax - 2024-12-05

HandBrake converts SRT files to SSA (Substation Alpha) format for MKV files and to timed text for MP4 files. The Android TV client cannot directly play SSA subtitles and will instead burn them into the video.

SRT Subtitles
  • Please note, SRT tracks are converted to SSA in the output file. This behavior is not currently configurable.



RE: Subtitle problem - TheDreadPirate - 2024-12-05

In the decode list check all the codecs except VP8.

Also check both tone mapping boxes. As long as you have the OpenCL mod installed in your container.

You SHOULD be using passthrough for the subtitles. Don't bother letting Handbrake convert them to SSA or timed text. Just keep them as SRT. You gain nothing from the conversion.

Handbrake does allow you to create custom presets and you can include in that preset that it always pass through the subtitles unmodified.


RE: Subtitle problem - theguymadmax - 2024-12-05

(2024-12-05, 05:33 PM)TheDreadPirate Wrote: You SHOULD be using passthrough for the subtitles.  Don't bother letting Handbrake convert them to SSA or timed text.  Just keep them as SRT.  You gain nothing from the conversion.

Handbrake does allow you to create custom presets and you can include in that preset that it always pass through the subtitles unmodified.

I've tried passing through SRT files in HandBrake, but it always converts them to SSA. Could you share the settings you use? I typically extract the SRT files beforehand and keep them as external files.


RE: Subtitle problem - TheDreadPirate - 2024-12-05

I don't use Handbrake anymore, but I still have my preset saved as a json export.

Code:
{
  "PresetList": [
    {
      "AlignAVStart": false,
      "AudioCopyMask": [
        "copy:aac",
        "copy:ac3",
        "copy:dtshd",
        "copy:dts",
        "copy:mp3",
        "copy:truehd",
        "copy:flac",
        "copy:eac3",
        "copy:mp2"
      ],
      "AudioEncoderFallback": "av_aac",
      "AudioLanguageList": [
        "any"
      ],
      "AudioList": [
        {
          "AudioBitrate": 512,
          "AudioCompressionLevel": 0,
          "AudioEncoder": "copy",
          "AudioMixdown": "7point1",
          "AudioNormalizeMixLevel": false,
          "AudioSamplerate": "auto",
          "AudioTrackQualityEnable": false,
          "AudioTrackQuality": -1,
          "AudioTrackGainSlider": 0,
          "AudioTrackDRCSlider": 0
        }
      ],
      "AudioSecondaryEncoderMode": false,
      "AudioTrackSelectionBehavior": "all",
      "ChapterMarkers": true,
      "ChildrenArray": [],
      "Default": true,
      "FileFormat": "av_mkv",
      "Folder": false,
      "FolderOpen": false,
      "Mp4HttpOptimize": false,
      "Mp4iPodCompatible": false,
      "PictureCropMode": 0,
      "PictureBottomCrop": 22,
      "PictureLeftCrop": 272,
      "PictureRightCrop": 274,
      "PictureTopCrop": 22,
      "PictureDARWidth": 0,
      "PictureDeblockPreset": "off",
      "PictureDeblockTune": "medium",
      "PictureDeblockCustom": "strength=strong:thresh=20:blocksize=8",
      "PictureDeinterlaceFilter": "off",
      "PictureCombDetectPreset": "off",
      "PictureCombDetectCustom": "",
      "PictureDenoiseCustom": "",
      "PictureDenoiseFilter": "off",
      "PictureSharpenCustom": "",
      "PictureSharpenFilter": "off",
      "PictureSharpenPreset": "medium",
      "PictureSharpenTune": "none",
      "PictureDetelecine": "off",
      "PictureDetelecineCustom": "",
      "PictureColorspacePreset": "off",
      "PictureColorspaceCustom": "",
      "PictureChromaSmoothPreset": "off",
      "PictureChromaSmoothTune": "none",
      "PictureChromaSmoothCustom": "",
      "PictureItuPAR": false,
      "PictureKeepRatio": true,
      "PicturePAR": "auto",
      "PicturePARWidth": 0,
      "PicturePARHeight": 0,
      "PictureUseMaximumSize": false,
      "PictureAllowUpscaling": false,
      "PictureForceHeight": 0,
      "PictureForceWidth": 0,
      "PicturePadMode": "none",
      "PicturePadTop": 0,
      "PicturePadBottom": 0,
      "PicturePadLeft": 0,
      "PicturePadRight": 0,
      "PresetDescription": "",
      "PresetName": "Blu-ray HEVC NVENC slow CQ26",
      "Type": 1,
      "SubtitleAddCC": false,
      "SubtitleAddForeignAudioSearch": false,
      "SubtitleAddForeignAudioSubtitle": false,
      "SubtitleBurnBehavior": "none",
      "SubtitleBurnBDSub": false,
      "SubtitleBurnDVDSub": false,
      "SubtitleLanguageList": [
        "any"
      ],
      "SubtitleTrackSelectionBehavior": "all",
      "VideoAvgBitrate": 0,
      "VideoColorMatrixCode": 0,
      "VideoEncoder": "nvenc_h265",
      "VideoFramerateMode": "cfr",
      "VideoGrayScale": false,
      "VideoScaler": "swscale",
      "VideoPreset": "slow",
      "VideoTune": "",
      "VideoProfile": "auto",
      "VideoLevel": "auto",
      "VideoOptionExtra": "",
      "VideoQualityType": 2,
      "VideoQualitySlider": 26,
      "VideoTwoPass": false,
      "VideoTurboTwoPass": false,
      "x264UseAdvancedOptions": false,
      "PresetDisabled": false,
      "MetadataPassthrough": true
    }
  ],
  "VersionMajor": 50,
  "VersionMicro": 0,
  "VersionMinor": 0
}

I'll have to double check if this preset works on SRT subs. IIRC, all my files I ran through handbrake had PGS or DVDSUB subtitles.