TV model: LG OLED65B9SLA
Firmware version: 5.00.02
WebOS version: 4.9.0
Plex Preview client version: 5.4.2
Plex Standard client version: 4.29.9 (for workaround/comparison)
Plex Media Server Version: 1.20.4.3517-ab5e1197c (Windows)
I have some problems with subtitles that made me go back to the non-preview version.
These problems do not happen with all files, but always in the same way with the same files.
I have only noticed these recently (some time after the subtitle search language selection was fixed in the WebOS preview client), but that might be because of not having the affected files before.
Everything I write is only related to SRT subtitles and MKV containers, and (where there are problems) only on the Preview client version.
The problems seem unrelated to mkvmerge version/settings differences, since they persist (only in the “bad” files) when I reencode with the same (latest) mkvmerge with the same settings.
I am not sure the two problems are related. I have mostly (only?) seen these problems with TV Show files so I have done most of my troubleshooting attempts there, as you will see. I have not seen problems with standard HD material, only with UHD (maybe only with HDR?!), but I’m not playing much non-UHD or non-HDR material either.
Problem 1 is that subtitle tracks are (for some files) not even shown as selectable. The GUI of the selection dialogues behaves as if neither the internal or separate subtitles exist.
There are two ways (that I know of) to select subtitles for TV Shows manually.
- From the Season view, have the episode file highlighted, click the “… More” button and then “Select Subtitle Track” - you should see the internal and external subtitles as well as “Off” and “Search…” choices.
- Access the “in-play menu”, click the three horizontal dots icon, click “Subtitles”, go right to “Language” and click it - you should see the same choices as above.
For the problematic files, both of these only show the “Off” and “Search…” alternatives, ignoring all internal and external subtitles that are there.
If you search for subtitles using the built-in tool, and download them, they will also “disappear” from the selection dialogue.
For all these files, opting out of early access and using the non-preview client is a good workaround, it has no problems at all and works as expected. (The subtitles selection also works as expected in the latest Windows client app.)
I have also found that (in the preview app) if I move the files from a TV Shows library to an Other Videos library the subtitle selection dialogues work as expected.
Another subtitle related feature is that in the Season view, when you move the focus to an episode, Plex displays information about the language and format (and if it was supplied by OpenSubtitles) of the subtitle track that is currently selected for the episode. For the episodes that do not show the subtitles in the selection dialogue, this information still shows if there is a selected subtitle track and which it is, working as expected.
Problem 2 is that subtitles are not displayed at all. I think(!) that the files affected by this are a subset of the files with problem 1.
Problem 2 seems unrelated to the subtitle tracks, since when I mux the “bad” subtitle tracks with the “good” video/audio tracks they display fine and when I mux the “good” subtitle tracks with the “bad” video/audio tracks they don’t display.
Again, opting out of Early Access, everything works fine, as well as in the Windows client app. However, here there is no improvement when the files are moved to an Other Videos library.
I have two quite similar files I tried this with, and I include their MediaInfo data below.
Since these problems are only in the WebOS preview client, while it works fine in the non-preview WebOS client, I hope it could be easy to find and fix them. 
I have done some basic troubleshooting to find out what could be the cause, but if it could be of help to try something more to pin down the problem please tell me and I will try.
Problem file:
General
Format : Matroska
Format version : Version 4
File size : 6.60 GiB
Duration : 49 min 59 s
Overall bit rate : 18.9 Mb/s
Encoded date : UTC 2020-11-16 16:47:26
Writing application : mkvmerge v51.0.0 ('I Wish') 64-bit
Writing library : libebml v1.4.0 + libmatroska v1.6.2
Video
ID : 1
Format : HEVC
Format/Info : High Efficiency Video Coding
Format profile : Main 10@L5.1@Main
Codec ID : V_MPEGH/ISO/HEVC
Duration : 49 min 55 s
Bit rate : 18.3 Mb/s
Width : 3 840 pixels
Height : 2 160 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 25.000 FPS
Standard : Component
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 10 bits
Bits/(Pixel*Frame) : 0.088
Stream size : 6.37 GiB (97%)
Default : Yes
Forced : No
Color range : Limited
Color primaries : BT.2020
Transfer characteristics : HLG / BT.2020 (10-bit)
Matrix coefficients : BT.2020 non-constant
Audio
ID : 2
Format : E-AC-3
Format/Info : Enhanced AC-3
Commercial name : Dolby Digital Plus
Codec ID : A_EAC3
Duration : 49 min 59 s
Bit rate mode : Constant
Bit rate : 640 kb/s
Channel(s) : 6 channels
Channel layout : L R C LFE Ls Rs
Sampling rate : 48.0 kHz
Frame rate : 31.250 FPS (1536 SPF)
Compression mode : Lossy
Delay relative to video : 16 ms
Stream size : 229 MiB (3%)
Language : English
Service kind : Complete Main
Default : Yes
Forced : No
Text #1
ID : 3
Format : UTF-8
Codec ID : S_TEXT/UTF8
Codec ID/Info : UTF-8 Plain Text
Duration : 30 min 7 s
Bit rate : 43 b/s
Count of elements : 305
Stream size : 9.66 KiB (0%)
Title : English
Language : English
Default : No
Forced : No
Non-problem file:
General
Format : Matroska
Format version : Version 4
File size : 5.25 GiB
Duration : 48 min 15 s
Overall bit rate : 15.6 Mb/s
Encoded date : UTC 2020-11-16 16:42:39
Writing application : mkvmerge v51.0.0 ('I Wish') 64-bit
Writing library : libebml v1.4.0 + libmatroska v1.6.2
Video
ID : 1
Format : HEVC
Format/Info : High Efficiency Video Coding
Format profile : Main 10@L5@Main
Codec ID : V_MPEGH/ISO/HEVC
Duration : 33 min 1 s
Bit rate : 22.0 Mb/s
Width : 3 840 pixels
Height : 2 160 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 23.976 (24000/1001) FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 10 bits
Bits/(Pixel*Frame) : 0.111
Stream size : 5.07 GiB (97%)
Writing library : x265 3.4:[Linux][GCC 7.5.0][64 bit] 10bit
Encoding settings : cpuid=1111039 / frame-threads=1 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=2 / input-csp=1 / input-res=3840x2160 / interlace=0 / total-frames=0 / level-idc=50 / high-tier=0 / uhd-bd=0 / ref=3 / no-allow-non-conformance / repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / no-open-gop / min-keyint=48 / keyint=48 / gop-lookahead=0 / bframes=2 / b-adapt=0 / b-pyramid / bframe-bias=0 / rc-lookahead=48 / lookahead-slices=8 / scenecut=0 / hist-scenecut=0 / radl=0 / no-splice / no-intra-refresh / ctu=32 / min-cu-size=8 / no-rect / no-amp / max-tu-size=16 / tu-inter-depth=2 / tu-intra-depth=2 / limit-tu=0 / rdoq-level=1 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / no-strong-intra-smoothing / max-merge=3 / limit-refs=1 / no-limit-modes / me=1 / subme=2 / merange=44 / temporal-mvp / no-frame-dup / no-hme / weightp / no-weightb / no-analyze-src-pics / deblock=0:0 / no-sao / no-sao-non-deblock / rd=4 / selective-sao=0 / early-skip / rskip / no-fast-intra / no-tskip-fast / no-cu-lossless / b-intra / no-splitrd-skip / rdpenalty=1 / psy-rd=1.60 / psy-rdoq=5.00 / no-rd-refine / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=abr / bitrate=23000 / qcomp=0.75 / qpstep=4 / stats-write=0 / stats-read=0 / vbv-maxrate=25000 / vbv-bufsize=25000 / vbv-init=0.9 / ipratio=1.40 / pbratio=1.30 / aq-mode=3 / aq-strength=1.00 / no-cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=69 / qpmin=0 / no-const-vbv / sar=1 / overscan=0 / videoformat=5 / range=0 / colorprim=9 / transfer=16 / colormatrix=9 / chromaloc=0 / display-window=0 / cll=0,0 / min-luma=0 / max-luma=1023 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / no-opt-qp-pps / no-opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.00 / hist-threshold=0.01 / no-opt-cu-delta-qp / no-aq-motion / no-hdr10 / hdr10-opt / no-dhdr10-opt / no-idr-recovery-sei / analysis-reuse-level=0 / analysis-save-reuse-level=0 / analysis-load-reuse-level=0 / scale-factor=0 / refine-intra=0 / refine-inter=0 / refine-mv=1 / refine-ctu-distortion=0 / no-limit-sao / ctu-info=0 / no-lowpass-dct / refine-analysis-type=0 / copy-pic=1 / max-ausize-factor=1.0 / no-dynamic-refine / no-single-sei / no-hevc-aq / no-svt / no-field / qp-adaptation-range=1.00 / no-scenecut-aware-qpconformance-window-offsets / right=0 / bottom=0
Default : Yes
Forced : No
Color range : Limited
Color primaries : BT.2020
Transfer characteristics : PQ
Matrix coefficients : BT.2020 non-constant
Audio
ID : 2
Format : E-AC-3 JOC
Format/Info : Enhanced AC-3 with Joint Object Coding
Commercial name : Dolby Digital Plus with Dolby Atmos
Codec ID : A_EAC3
Duration : 33 min 2 s
Bit rate mode : Constant
Bit rate : 768 kb/s
Channel(s) : 6 channels
Channel layout : L R C LFE Ls Rs
Sampling rate : 48.0 kHz
Frame rate : 31.250 FPS (1536 SPF)
Compression mode : Lossy
Stream size : 182 MiB (3%)
Title : English
Language : English
Service kind : Complete Main
Default : Yes
Forced : No
Complexity index : 16
Number of dynamic objects : 15
Bed channel count : 1 channel
Bed channel configuration : LFE
Text #1
ID : 3
Format : UTF-8
Codec ID : S_TEXT/UTF8
Codec ID/Info : UTF-8 Plain Text
Duration : 48 min 9 s
Bit rate : 134 b/s
Count of elements : 669
Stream size : 47.4 KiB (0%)
Language : English
Default : No
Forced : No