Hoe te repareren: Plex toont 'Onbekend' voor audio- en/of ondertitelingssporen

Ik heb gemerkt dat Plex in veel gevallen ‘Onbekend’ weergeeft voor de ondertitel- of audiospoor, omdat de eigenschap niet correct is ingesteld in het .MKV-bestand. Daarvoor heb ik een klein scriptje geschreven.

Open simpelweg je MCEBuddy profiles.conf-bestand… (op Windows te vinden op: C:\\Program Files\\MCEBuddy2x\\config) en voeg de volgende regels toe aan het einde van het profiel dat je gebruikt voor het converteren van je video, of voeg het toe aan meerdere profielen als je er meer dan één gebruikt.

CustomCommandPath=C:\\Windows\\System32\\cmd.exe
CustomCommandParameters="/c del /q \"%edlfile%\" \"%srtfile%\" & \"C:\\Program Files\\MKVToolNix\\mkvpropedit.exe\" \"%convertedfile%\" --edit track:s1 --set language=eng"
CustomCommandHangPeriod=100
CustomCommandCritical=true
CustomCommandUISession=false
CustomCommandShowWindow=false

Een paar dingen om te weten… Ik gebruik MCEBuddy om te converteren naar .mkv-bestanden en ik voeg het ondertitelspoor samen met de mkv, zodat ik geen extra extern .srt-bestand nodig heb. De eerste regels verwijderen dus het edl-bestand en srt-bestanden voor opschoning. Vervolgens wordt de eigenschap van het eerste ondertitelspoor ingesteld op Eng (Engels).

Je moet eerst MkvEdit installeren voordat dit werkt en als je de eigenschap van een audiospoor wilt instellen, voeg dan simpelweg een extra regel toe zoals: --edit track:a1 --set language=eng

Je kunt het mkvpropedit-helpbestand lezen voor het specifieke commando om audiospoortypes in te stellen.

Ik heb gemerkt dat dit perfect werkt en nu heb ik niet meer die vervelende ‘Onbekend’ voor mijn ondertitelsporen - aangezien we altijd de ondertiteling aan hebben staan in ons huis… en Plex hebben ingesteld om automatisch Engelse ondertitels weer te geven, was dit erg handig omdat Plex nu elke show meteen automatisch start met ondertiteling in plaats van dat we het ‘Onbekende’ spoor moeten selecteren.

Hopelijk helpt dit iemand anders die hetzelfde probleem is tegengekomen.

Met vriendelijke groet,

  • {c}guy

P.S. En een enorm DANK JE WEL aan Goose voor het creëren van zo’n geweldig en handig stukje software. Ik HOU van MCEBuddy.

Dank aan @robtheone voor dit script om een taalcode aan MP4-bestanden toe te voegen voor Plex:

CustomCommandPath=mp4box\\mp4box.exe
CustomCommandParameters="%convertedfile%" -lang 1=eng -lang 2=eng
CustomCommandHangPeriod=100
CustomCommandCritical=true
CustomCommandUISession=false
CustomCommandShowWindow=false

FYI, this feature has been added to the Release 2.4.9

MCEBuddy will automatically include the language tags in the MKV and MP4 metadata and also include the language tags in the external SRT file.

Ik ben net begonnen met MCEBuddy en ben nog bezig me vertrouwd te maken met de instellingen, maar tot nu toe hebben alle mp4-bestanden die ik heb bijgesneden met het profiel “MP4 Unprocessed” “Onbekende” audio. Ik heb de taal in zowel de Algemene Instellingen als de Geavanceerde Instellingen op Engels gezet. Heb ik nog een andere instelling over het hoofd gezien?

Ik probeerde het @robtheone-script aan het einde van mijn profielen toe te voegen, maar er leek niets te gebeuren.

Ik zie mp4box.exe in de MCEBuddy-installatiemap.

Hieronder het logfragment.

2020-04-21T10:18:38 MCEBuddy.Transcode.CustomCommand → Custom command parameters read →
CustomCommandPath = c:\windows\system32\cmd.exe
CustomCommandParameters = “/c mp4box.exe “%convertedfile%” -lang 1=eng -lang 2=eng”
CustomCommandHangPeriod = 100
CustomCommandCritical = True
CustomCommandUISession = False
CustomCommandShowWindow = False
CustomCommandExitCodeCheck = False
2020-04-21T10:18:38 MCEBuddy.Transcode.CustomCommand → About to run custom command with parameters:
CustomCommandPath = c:\windows\system32\cmd.exe
CustomCommandParameters = “/c mp4box.exe “\HOMEMEDIA-PC\wdultra1tb\Videos-MCEBuddyTemp\working0\Last.Week.Tonight.with.John.Oliver.s07e09.WEBDL-720p_1.mp4” -lang 1=eng -lang 2=eng”
CustomCommandHangPeriod = 100
CustomCommandCritical = True
CustomCommandUISession = False
CustomCommandShowWindow = False
CustomCommandExitCodeCheck = False
2020-04-21T10:18:38 MCEBuddy.AppWrapper.Base → Launching process c:\windows\system32\cmd.exe
2020-04-21T10:18:38 MCEBuddy.AppWrapper.Base → Process arguments “/c mp4box.exe “\HOMEMEDIA-PC\wdultra1tb\Videos-MCEBuddyTemp\working0\Last.Week.Tonight.with.John.Oliver.s07e09.WEBDL-720p_1.mp4” -lang 1=eng -lang 2=eng”
2020-04-21T10:18:38 MCEBuddy.AppWrapper.Base → UI Session Admin Process : False
2020-04-21T10:18:38 MCEBuddy.AppWrapper.Base → Setting process priority to Normal
2020-04-21T10:18:38 MCEBuddy.AppWrapper.Base → ‘mp4box.exe’ is not recognized as an internal or external command,
2020-04-21T10:18:38 MCEBuddy.AppWrapper.Base → operable program or batch file.
→ Process exited with code 1

Dit werkte. Dank je.