Issue with built-in subtitles

tl;dr: built-in subtitles are never in sync, separately downloaded always are. Why?

So, I’ve been trying to find a solution to this problem I have. But all I can find when searching is the opposite of what I’m experiencing.

I basically have a fully automatic “system” set up. SABnzbd, Sonarr, CouchPotato and PMS.

Regardless if it is a movie or tv-show, built-in (burned-in? included?) subtitles are never in sync, regardless of what client I’m using (ATV4, Android Tablet, iPhone, MacBook Pro etc). They’re always 1-ish second before or after. Subtitles downloaded automagically by PMS using the Sub-Zero agent (and OpenSubtitles for backup) are always in sync.

What am I doing wrong? What setting can fix this?

Bonus-question: Downloaded subtitles always show up in the client as “unknown”.

Thank you for your answers. I appreciate it. Sincerely.

@trumpy81 said:
Firstly, make sure you have setup your language settings correctly in Plex settings > server > languages and also in your library settings. Also check the agent settings for languages.

Not sure how this is relevant for two reasons. 1. The subtitles that are out of sync are included in the .mkv files, it’s not separate files that we’re bundled with the release. 2. The downloaded subtitles (by the Sub-Zero agent) work in both language and sync.

Simply beacuse a subtitle is embedded in your Movie file does not mean it is the correct subtitle for that video file. Anyone may have downloaded the subtitle and embedded it.

Correct. However, what is the probability of this being the case for every release? I follow about 10 shows and watch 1 movie a week. Like I mentioned in the OP, this is all handled by Sonarr and CouchPotato.

There are tools available that will allow you to remove the embedded subtitle and replace it with the correct subtitle for your video file.

Thanks, but I have an automagic system for a reason. And since the separately downloaded subtitle works, this seems to be extra work with zero value.

If you wish to correct the timing of your subtitle, you would need to extract the subtitle, edit the file and correct the time codes within it, and then re-embed the subtitle into your video file. This assumes that your embedded subtitles are text based and not graphics based like PGS or Vobsub. Plex does not fully support PGS or Vobsub subtitles.

See previous point.

If the subtitle is ‘burned in’ then you will have to replace the file as burned in subtitles are permanent and cannot be removed or edited. They cannot be turned off or otherwise controlled either.

What’s the more common way of doing this? Embedded or burned-in? How can I tell?

If external subtitles downloaded withi Plex are workng correctly, then stick with them.

Sounds like that is the approach I will take. For now.

If you want to manage your external subtitles, you can use WebTools. It will allow you to upload and delete any external subtitle.

Issues · ukdtom/WebTools.bundle · GitHub

Nice job on the Wiki. :wink:

Anyway, there is something else going on here. But I don’t really have time to dig deeper currently. Especially since I have a working “workaround”. I was hoping there was a clear cut answer to this that I had missed.

I’m about to upgrade the machine running PMS which will include a fresh install, maybe this will solve the subtitle issue as well.

Thanks again.

@trumpy81 said:

You stated that some subtitles display as language unknown. Having the correct languages set in all of the appropriate places may help to alleviate that problem.

Ah, I see. It was an answer to the bonus question. Sorry about that, I will definitely revisit the settings then (again, lol).

The problem here is one of "who encoded the file and how did they source the subtitle’. Unfortunately, that is out of your hands and out of the control of Plex.

I get that, but I just find it highly unlikely that it would happen on every release. They’re not always from the same “group”, especially not the movies. That’s why I suspect PMS (or the client) as that is the only common denominator for the issue, afaict.

Again, if you wish to correct the subtitles, then you only have two choices, replace the subtitle or edit it.

True, if you accept the premise that it’s not Plex that is somehow in the fault here…

The easiest way to tell is to play the file. If subtitles are displayed even when you have them disabled, chances are the subtitle is burned in, VLC is good for quickly checking that. Also, if the file has no embedded or external subtitles and still displays a subtitle, chances are it is burned in.

Thanks, silly of me to not realize that. Then for the files I have checked they are not burned-in but embedded as I can turn them off.

External are more controllable and hence more desirable, but if you like a tidy file system, then embedded would be preferred. Where your client does not support subtitles or your server is incapable of transcoding, then burned in subtitles may be the only solution.

Got it.

Yes, I tend to agree, but since I have not heard of anyone with your distinct issue, I have no concrete answer for you other than what I have already outlined. Normally, one would expect supplied subtitles to be displayed in sync, but if the supplied subtitle is out of sync, you only have those two choices to fall back on.

Yes, if it was the other way around I wouldn’t be surprised either. But it’s truly weird that the embedded ones are the ones that are out of sync.

What I’ve yet to determine is if they start out out-of-sync or if they become out-of-sync as the file progresses.

I’m about to upgrade the machine running PMS which will include a fresh install, maybe this will solve the subtitle issue as well.

No idea, but it certainly cannot hurt … lol

The machine hasn’t seen a fresh install of neither the OS or PMS in well over 5 years. So it’s due.

Have you tried installing the public release instead of the Plex Pass beta release? I have no idea if that would resolve your issue or not, but it may be worth investigating?

I thought I was on the public release? How can I tell?

@trumpy81 said:
When you go to https://plex.tv/downloads there is a switch above the download area that allows you turn Plex Pass downloads on/off. With it turned off, you will see the Public downloads, with it turned on you will see Plex Pass downloads.

Current Plex Pass version is 1.11.0. Current Public version is 1.10.1.

Thanks! Server says I’m on Version 1.10.1.4602 and that I’m up to date.

Isn’t that easy to test. Take the file and play it via VLC (or other local media playback software) with those embedded subtitle tracks shown. If everything runs perfectly well, then probably something is going wrong with either PMS or the client app.

I experience embedded subtitle not being displayed at all if the subtitle tracks are compressed (as is standard with ffmpeg).

@rossinior said:
Isn’t that easy to test. Take the file and play it via VLC (or other local media playback software) with those embedded subtitle tracks shown. If everything runs perfectly well, then probably something is going wrong with either PMS or the client app.

As a software engineer, specifically a SET. I shall now put on my pointy-hat of shame.

It does not sound logical to me that VLC should show embedded subtitles in-sync when they are in fact out-of-sync.

And your script can probably tell if there are any errors in or problems with time codes, but not tell any one-second delay… that is clearly visible to any human.

Please correct me if I am wrong.

But to make everyone happy… do both :smile:

@trumpy81 said:
If the video file has missing or damaged time codes, VLC can easily correct them artifically, making the subtitle appear in sync. Like I said, do not be mislead by VLC.

If the subtitle’s time codes are messed up then that should be obvious, but it doesnt hurt checking the time code within the subtitle by extracting it and editing it and then comparing what is written to what is actually displayed in order to verify the subtitle.

This thread is due for an update.

Re. the “unknown” issue. That turns out to be a bug in Sub-Zero, it’ll be fixed in the next release. So, yay.

As far as the out-of-sync issue goes…

PMS runs on a Mac mini (mid 2011). I went out and but a Samsung 850 EVO 500GB SSD and installed it. I then installed CentOS 7 on it. In dual-boot with OSX (which runs on the original 500GB SATA disk).

Moved my library from the SATA to my QNAP NAS.

Installed PMS on CentOS and only migrated my watched status. No settings.

Still the same problem. So either something is going on, on the hardware level or I’m just really unlucky. :joy:

Regardless, since PMS doesn’t seem to provide a setting that favors/prefers external subtitles and it gets tedious to change everytime. I’m going to add a post-processing script to SABnzbd that will use mkvtoolinx to strip out internal subtitles. Hopefully that will make PMS pick up the external ones.

What do you think?

@trumpy81 said:
I would say that you definitely have an issue, but I very much doubt it has anything to do with the hardware. It is more likely to be your software setup, more than anything else.

But I’m seeing the same issue from a fresh install of PMS…

As you stated, you changed hardware, but the issue did not change. So that means that the hardware had no influence one way or the other.

I didn’t change the hardware. I installed a new SSD disk.

Have you tried using Plex in a ‘clean’ environment, where Plex is the only thing running and with files that have not been automatically downloaded and processed?

Depends on what you mean. Plex is currently the only thing running on the new CentOS 7 install. Apart from OS-stuff.

If you have another machine available that you can setup PMS on, purely for testing, that may narrow down your issue.

Could set it up on my MBP and test it on there. :slight_smile: But I have to say, using VLC I see the same out-of-sync issues. So maybe it truly is the content that is that bad…

I don’t see any benefit in removing the embedded subtitles. Plex will operate just fine with both embedded and external subtitles, although you will need to choose which one to use at the time of playback.

Sub-Zero just did a major release (2.5) with a couple of new nifty features that might fix my issues. I’ll report back.

@trumpy81 said:
Do let us know how you get on with Subzero.

So this is really interesting. To recap.

PMS is running on CentOS 7 on a Mac mini (mid 2011).

I have the following clients:
Apple TV4
iPhone 7
MBP 2016 (macOS 10.12.6)
Android Galaxy Tab A 10

They’re all running the latest versions of Plex.

On the ATV4 subtitles, both embedded and external, are out-of-sync when the “Burn Subtitles” setting is set to “Automatic”.
On all the other clients they are in sync.

However, if I change the ATV4 setting to “Always” - they are in sync.

So the behavior changed when migrating PMS from macOS (sata) to CentOS (ssd), but that’s where I stand today.

With that, I guess my problem is solved. I’m going to start a new thread cause I want to understand what’s going on.

Thanks Trumpy for rubberducking, I appreciate it! :slight_smile: