Cómo arreglar: Plex muestra 'Desconocido' para pistas de audio y/o subtítulos

He descubierto que en muchos casos Plex muestra ‘Desconocido’ para la pista de subtítulos o de audio. Esto se debe a que el valor de la propiedad no se estableció correctamente en el archivo .MKV. Para solucionarlo, escribí un pequeño script.

Simplemente abre tu archivo profiles.conf de MCEBuddy… (En Windows se encuentra aquí: C:\\Program Files\\MCEBuddy2x\\config) y luego agrega las siguientes líneas al final del perfil que estás usando para convertir tus videos o agrégalas a varios perfiles si usas más de uno.

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

Algunas cosas a tener en cuenta… Estoy usando MCEBuddy para convertir a archivos .mkv y estoy fusionando la pista de subtítulos en el mkv para no necesitar un archivo .srt externo adicional. Así que las primeras líneas eliminan el archivo edl y los archivos srt para limpiar. Luego, la propiedad de la primera pista de subtítulos se establece a Eng (Inglés).

Primero necesitarás instalar MkvEdit para que esto funcione y si quieres establecer la propiedad de una pista de audio, simplemente agrega una línea adicional similar a: --edit track:a1 --set language=eng

Puedes leer el archivo de ayuda de mkvpropedit para el comando específico para establecer los tipos de pista de audio.

He descubierto que esto funciona perfectamente y ahora no tengo ese molesto ‘Desconocido’ para mis pistas de subtítulos - dado que siempre tenemos los subtítulos activados en nuestra casa… y tenemos Plex configurado para mostrar automáticamente subtítulos en inglés, esto fue muy útil porque Plex ahora comenzará cada programa con ellos automáticamente en lugar de tener que seleccionar la pista ‘Desconocida’.

Espero que esto ayude a alguien más que haya encontrado el mismo problema.

Saludos,

  • {c}guy

P.D. Y un enorme GRACIAS a Goose por crear un software tan increíble y útil. AMO MCEBuddy.

Gracias a @robtheone por este script para añadir un código de idioma a archivos MP4 para Plex:

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

Por tu información, esta función ha sido añadida en la versión 2.4.9

MCEBuddy incluirá automáticamente las etiquetas de idioma en los metadatos de MKV y MP4 y también incluirá las etiquetas de idioma en el archivo SRT externo.

Acabo de empezar a usar MCEBuddy y todavía me estoy familiarizando con la configuración, pero hasta ahora todos los archivos mp4 que he recortado usando el perfil “MP4 Unprocessed” tienen audio “Desconocido”. He establecido el idioma a inglés tanto en la Configuración General como en la Configuración Avanzada. ¿Hay alguna otra configuración que haya pasado por alto?

Intenté agregar el script de @robtheone al final de mis perfiles, pero no pareció suceder nada.

Veo mp4box.exe dentro de la carpeta de instalación de MCEBuddy.

A continuación el extracto del registro.

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

Esto funcionó. Gracias.