Naming conventions for multiple languages in one series

Server Version#: 1.19.4.2902 (Synology)
Player Version#: 8.1.0.17967 (Android)

Hello, I’m desperate.I Googled, read through tutorials and documentation and this forum, but I’m unable to crack this issue.

I have a precious complete Doctor Who collection. I have videos in high definition in English and HD version of Czech dubbing. There’s no option to merge these files in one mkv/mp4 with multiple audio tracks, Czech and English version will always be in sepparate files.

My present setup is this:

/series/Doctor Who 2005/Season 1/Doctor Who 2005 - S01E01 - Rose.cz.avi
/series/Doctor Who 2005/Season 1/Doctor Who 2005 - S01E01 - Rose.en.mkv

And this does not work. Plex sees these files, however has no idea about language. It shows in my Plex App as English only and I have an option to “Play version…” which is only differentiated by bitrate and resolution.

Is there any way to tell Plex, that some files are in Czech and some are in English, yet they are the same episode? I don’t want to create a sepparate folder only for Czech episodes, because not all seasons are dubbed and I would end up with complete English Doctor Who and seasons 1-7 and 9 in Czech.

That’s NOT the way you tag a language.

You tag the streams in the file - good luck with that AVI - this will work for the MKV:

MKVToolNix:
https://mkvtoolnix.download/

MediaInfo:
https://mediaarea.net/en/MediaInfo/Download

MediaInfo report for a file with everything ‘tagged and flagged’:

General
Unique ID                                : 71312608917314797832208885637911087404 (0x35A64F139642F54A5EF1B8E2257F092C)
Complete name                            : G:\TV - Sci-Fi\Star Trek Picard\Season 01\Star Trek Picard - S01E01 - Remembrance.mkv
Format                                   : Matroska
Format version                           : Version 4
File size                                : 519 MiB
Duration                                 : 44 min 18 s
Overall bit rate                         : 1 638 kb/s
Encoded date                             : UTC 2020-05-17 11:43:21
Writing application                      : Lavf58.43.100
Writing library                          : Lavf58.43.100
ErrorDetectionType                       : Per level 1

Video
ID                                       : 1
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main@L4@Main
Codec ID                                 : V_MPEGH/ISO/HEVC
Duration                                 : 44 min 18 s
Bit rate                                 : 1 221 kb/s
Width                                    : 1 920 pixels
Height                                   : 800 pixels
Display aspect ratio                     : 2.40:1
Frame rate mode                          : Variable
Original frame rate                      : 23.976 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Stream size                              : 387 MiB (75%)
Writing library                          : x265 3.2.1+1-b5c86a64bbbe:[Windows][GCC 9.2.0][64 bit] 8bit+10bit+12bit
Encoding settings                        : cpuid=1064959 / frame-threads=3 / numa-pools=8 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=2 / input-csp=1 / input-res=1920x800 / interlace=0 / total-frames=0 / level-idc=0 / high-tier=1 / uhd-bd=0 / ref=3 / no-allow-non-conformance / no-repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / open-gop / min-keyint=24 / keyint=240 / gop-lookahead=0 / bframes=4 / b-adapt=0 / b-pyramid / bframe-bias=0 / rc-lookahead=15 / lookahead-slices=5 / scenecut=40 / radl=0 / no-splice / no-intra-refresh / ctu=64 / min-cu-size=8 / no-rect / no-amp / max-tu-size=32 / tu-inter-depth=1 / tu-intra-depth=1 / limit-tu=0 / rdoq-level=0 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / strong-intra-smoothing / max-merge=2 / limit-refs=3 / no-limit-modes / me=1 / subme=2 / merange=57 / temporal-mvp / no-hme / weightp / no-weightb / no-analyze-src-pics / deblock=0:0 / sao / no-sao-non-deblock / rd=2 / selective-sao=4 / no-early-skip / rskip / fast-intra / no-tskip-fast / no-cu-lossless / no-b-intra / no-splitrd-skip / rdpenalty=0 / psy-rd=2.00 / psy-rdoq=0.00 / no-rd-refine / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=abr / bitrate=1250 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=2 / cplxblur=20.0 / qblur=0.5 / ipratio=1.40 / pbratio=1.30 / aq-mode=2 / aq-strength=1.00 / 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=1 / transfer=1 / colormatrix=1 / chromaloc=0 / display-window=0 / cll=0,0 / min-luma=0 / max-luma=255 / 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.05 / no-opt-cu-delta-qp / no-aq-motion / no-hdr / no-hdr-opt / no-dhdr10-opt / no-idr-recovery-sei / analysis-reuse-level=5 / 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
Language                                 : English
Default                                  : Yes
Forced                                   : No
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : Identity
matrix_coefficients_Original             : BT.709

Audio
ID                                       : 2
Format                                   : AC-3
Format/Info                              : Audio Coding 3
Commercial name                          : Dolby Digital
Codec ID                                 : A_AC3
Duration                                 : 44 min 18 s
Bit rate mode                            : Constant
Bit rate                                 : 384 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)
Bit depth                                : 16 bits
Compression mode                         : Lossy
Stream size                              : 122 MiB (23%)
Title                                    : Surround
Writing library                          : Lavc58.83.100 ac3_fixed
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                                 : 9 min 25 s
Language                                 : English
Default                                  : Yes
Forced                                   : Yes

Text #2
ID                                       : 4
Format                                   : UTF-8
Codec ID                                 : S_TEXT/UTF8
Codec ID/Info                            : UTF-8 Plain Text
Duration                                 : 42 min 18 s
Language                                 : English
Default                                  : No
Forced                                   : No

Menu
00:00:00.000                             : :Amazon Original
00:00:06.006                             : :Keep the game from ending
00:04:01.116                             : :Activating a new weapon
00:06:55.081                             : :Opening Credits
00:08:33.013                             : :An important interview
00:16:38.164                             : :Dahj finds Picard
00:22:06.033                             : :A clue hidden in a painting
00:26:33.092                             : :Focus and find help
00:28:08.020                             : :The truth about Dahj
00:33:49.069                             : :A visit to Okinawa Research Facility
00:40:38.061                             : :Another sad story
00:43:17.095                             : :End Credits

Once you do that there may still be issues 'cause Plex doesn’t really deal with multiple languages all that well, but at least if everything is identified - you’ll know what to switch to manually.

Note:
You ‘may’ be able to mux that worthless AVI file to an MKV.
It may even work afterwards.
If it does - you can flag the languages.

This does not please me. However thank you very much, I’ll try this.

Well… sorry.
Didn’t mean to ruin your day…lol

1 Like

Sadly, this didn’t help. Now I have Season one only in mkv. Both English and Czech videos are MKVs and both have correct meta data set. I reindexed the series and I’m right where I started.

Plex now shows the Czech version as default one (probably due to it being now first when ordering by name), however I’m unable to switch language and I’m stuck with “Play version…” option again.

@OttoKerner
Will show you how all that is supposed to work…

What do you mean by that? Do you expect Plex to do that for you?
Sorry, there is no good support for that. (You can only use ‘Play Version’)

If you want multiple languages for videos, the different audio tracks are supposed to be muxed together into the video file.
In your example that would mean a file with 1 video stream and 2 different audio streams. The audio streams are supposed to be properly tagged with their respective language.

Then Plex will show you a selector on the preplay page where you can pick your audio stream.
And if you have “automatic track selection” in your user profile activated, it will even pick the audio stream in your preferred language automatically.

This approach saves a lot of storage space, because the video stream is only stored once.
However, it is only possible if the two versions are using the same frame rate and don’t have different “cuts”, which could otherwise cause video and audio streams to drift apart.
A differing frame rate can be fixed, but fixing different cuts (e.g. due to removal of ads or because there is a “recapitulation” at the beginning of one version), is a lot of work and very often not worth the effort.

Would it be possible to physically seperate the two versions into their own folders and match them with different agents? It wouldn’t be pretty because there will be two entries, but both languages would be neatly separated.

Yes, that would be the same workaround as for having several different cuts of movies.
The two series would then be totally different things. Which means that e.g. tracking which episode was already seen is also completely separate for the two language versions.

It is a bit less likely to work for all tv shows, since the only other metadata source for series in Plex is TMDB. And they don’t have as many series listed as TheTVDB.

Yes, I understand this. I have shows that are just like this and it works fine. The problem with this show is that there just aren’t multilingual files available and English and Czech version are different cuts, so there’s no way I’ll be able to merge them into one file.

Then I’m afraid the workaround described by @Coxeroni above is your best option.

1 Like

That’s a bummer. However thank you for your help :relaxed:

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.