Jump to content

When transcode reason is only due to incompatible subs, try converting sub track to VobSub instead of burning subs to video


hedgehog90

Recommended Posts

hedgehog90

My Samsung TV cannot directly play PGS Sub format subtitles (commonly used in blu-ray media), but it can directly play the video and audio.

In this scenario the server re-encodes the video track with hard subs... I might be watching a 4K H265 video and just because the subs aren't compatible, the entire video has to be transcoded. From my point of view, that's a load of unnecessary work that we can potentially avoid.

Wouldn't it make a lot more sense to try converting the subtitle track to VobSub format, or at least have an checkbox option in the user profile to "Convert incompatible subtitle track to VobSub" if the incompatible subtitle track is the only reason for transcoding?
VobSub has much wider support on devices, as is the case with my particular brand of TV.
Implementing this would be great for those of us using who enjoy direct streaming blu-ray content to Samsung TVs and other devices that don't support PGSSub subtitles. There might be other subtitle formats I'm not familiar with that could also be converted with this method.

It should be very easy to implement, here's a quick example of an ffmpeg command converting pgssub to vobsub:

ffmpeg -fix_sub_duration -i "input.mkv" -c copy -c:s dvd_subtitle out.mkv

The '-fix_sub_duration' argument is necessary for some reason. Without it, subtitles don't display at all or they display and never disappear.

Edited by hedgehog90
  • Like 8
Link to comment
Share on other sites

hedgehog90

I haven't looked into addon development, but would it be possible for me to implement this myself as an addon for my emby server and have it work with my Samsung TV emby client?

Also I'm curious how the client & server works when the client runs into incompatible codecs.
With my TV for instance, I assume it first tries to decode the content and then fails and reports an error, the server listens for any potential issues and serves up a compatible version based on the client's complaint.

Assuming this is correct, I would guess there's something like a chain of attempts & decisions to provide the best results, eg:

attempt 1: client tries direct play, but subs are incompatible.
attempt 2: server sees PGSSubs so converts to VobSub, however this also turns out to be incompatible.
...
attempt n: if all else fails, hardcode subs to ensure no sub incompatibility.

If so, then it might make sense to make my suggestion a default behaviour in this chain, with an option in user preferences to disable.

Link to comment
Share on other sites

No, this will require updates in the app to change what it requests from the server, as well as the server to support those kinds of conditions in the decision making.

Link to comment
Share on other sites

  • 1 month later...

I have a related question.

My DVD rips have VobSub subtitles. The Android App can't playback VobSubs and therefore every DVD with subtitles needed is transcoded.

This is a total bummer and makes the Android version on the Shield unusable for me.

 

In contrast to OP: The Android App can disppay PGS but no VobSub. So VobSub to PGS would be needed.

Edited by Simaryp
  • Like 1
Link to comment
Share on other sites

4 hours ago, Simaryp said:

Here is the Issue that lead to PGS support.

https://github.com/google/ExoPlayer/issues/3008

It's mentioned that VobSub will only be invluded by contribution. Unfortunately I have no clue about that.

For PGS it seams it was only small effort, but the repo link of contributor is not working anymore.

Hi, try installing this on your Shield:

It supports both.

Link to comment
Share on other sites

My shield is currently in rma. What was done in this build to fix the issue?

And shouldn't I use the AndroidTV Version?

What Version do I need on Server side? And is additional configuration needed?

Edited by Simaryp
Link to comment
Share on other sites

K1ng_Lear
20 hours ago, Luke said:

Hi, try installing this on your Shield:

It supports both.

A simple question: Why can't we've the capabilities of the mobile app with the better GUI of the Android TV App? Are those APPs so different?

Link to comment
Share on other sites

Espacially it would be handy, because Emby for Android is not in the Google TV Play Store. So even if the new version is in the Play Store it will not be for e.g. the Shield and one has to sideload it.

 

I did now the sideload and indeed it works. It shows on information for nerds that the playback is direct even if subtitles are enabled. In addition playbcack seems to start faster compared to Android TV version.

Edited by Simaryp
Link to comment
Share on other sites

  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...