{"content":"[ERROR] MENOR: Medios con diferentes juegos de caracteres en el nombre del programa (apóstrofe = â€tm (aEtm))"}

Grabo un programa que tiene un apóstrofe en el nombre tanto en mi HDHR como en mi Tivo.
Uso KMTTG para transferir los archivos en TS desde el Tivo y los transcodifico a MP4 sin compresión (solo porque no logro evitarlo y dejar que MCEBuddy procese el TS sin tocar). Uso KMTTG porque solo quiero procesar algunos programas del Tivo.

Lo que obtengo son dos carpetas con archivos del mismo programa:
Christopher Kimballâ€tms Milk Street Television
y también
Christopher Kimball’s Milk Street Television
Creo que los archivos del Tivo terminan en la carpeta con el nombre malformado.

En el sistema de archivos es aún más raro: tengo TRES carpetas:

  1. Christopher Kimball’s Milk Street Television (apóstrofe correcto; probablemente de HDHR)
  2. Christopher Kimball’s Milk Street Television (UTF-8 malinterpretado; viene del Tivo, desde los metadatos internos)
  3. Christopher Kimballs Milk Street Television (sin apóstrofe; también del Tivo, pero versión MP4 transcodificada por KMTTG, que no conserva los metadatos internos).

Incluso puede haber distintos datos de guía para el nombre del programa según el canal de grabación o si las reglas de corrección especiales que tengo configuradas obligan a usar la información de TVDB para algunas grabaciones y ahí se pierde el apóstrofe.

Encontré un artículo para PHP que podría tener una solución:

y usar «iconv(“UTF-8”, “CP1252”, $data)».
El problema parece ser que mi sistema de archivos (Windows) usa la página de códigos 1252 (suficientemente parecida a ISO-1252 como para ser equivalente).

Sospecho que el Tivo usa nombres de archivo (o nombres de programa en los metadatos) codificados en UTF-8 y eso provoca que el apóstrofe “curvo” se traduzca de forma distinta entre ambas fuentes de archivos multimedia.

Más información: el extraño ’ está apareciendo en el nombre del programa usado en el nombre del archivo, la descripción de los metadatos y los metadatos internos de “Nombre del programa”.
Buscaré el archivo de registro y el archivo multimedia para subirlo si quieres ver el flujo a través de MCEBuddy.

También lo he reducido a que estos archivos provienen del Tivo, después de la extracción por KMTTG.

He reducido el origen a los archivos extraídos por KMTTG; sin embargo, parece haber problemas adicionales cuando MCEBuddy los procesa.
KMTTG extrae el archivo .TS sin procesar y luego lo transcodifica (sin procesar) a un archivo .MP4. Así que hay dos archivos en el directorio de salida «Tivo» que MCEBuddy vigila en mi perfil de Tivo.
Aquí tiene un extracto del registro para el archivo .MP4. Fíjese en que KMTTG ha eliminado completamente el apóstrofo del nombre del programa, de modo que eso explica el procesamiento resultante de MCEBuddy en un MKV.

Sin embargo, parece haber un problema en el procesamiento de excepciones (del registro del archivo MP4):

INFORMATION> --> Task -> MKV-TV-HD
Profile -> HEVC MKV
Source File -> F:\Recorded TV\Tivo\Christopher Kimballs Milk Street Television-S03E06-Chicken Around the World-2019-10-11.mpg

Sin apóstrofo en «Kimball’s» — eliminado por KMTTG antes de que MCEBuddy lo vea.
Aquí está la sección en la que creo que el nombre del archivo/los metadatos no funcionan como deberían.

Download Series Details -> True
Download Banner -> True
Overwrite metata from Title -> False
Overwrite metata from Internet -> Default
Metadata Correction => Option 0
[...]
Original Title -> Christopher Kimball*
Corrected Title -> 
TVDB Series Id -> 334523
IMDB Series Id -> 

Fíjese en que se coloca el comodín para ignorar si el apóstrofo está o no (¿o no estoy construyendo la expresión regular correctamente?). Tengo el mismo problema con «America’s Test Kitchen» por las mismas razones.

Aquí está la sección del registro que creo que demuestra que no se usa la información de TVDB (es decir, la anulación no funcionó como se esperaba).

INFORMATION> 2019-10-19T16:33:37 MCEBuddy.Engine.ConversionJob --> Current System language is English (United States) (eng)
INFORMATION> 2019-10-19T16:33:37 MCEBuddy.Engine.ConversionJob --> Converting file -> F:\Recorded TV\Tivo\Christopher Kimballs Milk Street Television-S03E06-Chicken Around the World-2019-10-11.mpg
INFORMATION> 2019-10-19T16:33:40 MCEBuddy.Engine.ConversionJob --> Running custom commands
INFORMATION> 2019-10-19T16:33:40 MCEBuddy.Transcode.CustomCommand --> No custom commands found
INFORMATION> 2019-10-19T16:33:40 MCEBuddy.Engine.ConversionJob --> Getting show information and banner from Internet sources
INFORMATION> 2019-10-19T16:33:40 MCEBuddy.MetaData.VideoMetaData --> Extracting Generic Tags
INFORMATION> 2019-10-19T16:33:40 MCEBuddy.MetaData.VideoMetaData --> Downloading Series details
INFORMATION> 2019-10-19T16:33:40 MCEBuddy.MetaData.VideoMetaData --> Recording Type Show
INFORMATION> 2019-10-19T16:33:40 MCEBuddy.MetaData.VideoMetaData --> Checking TheTVDB
WARNING> 2019-10-19T16:33:54 MCEBuddy.MetaData.VideoMetaData --> TheTVDB failed
INFORMATION> 2019-10-19T16:33:54 MCEBuddy.Engine.ConversionJob --> Checking for destination file skip reprocessing
WARNING> --> Cannot find AirYear
WARNING> --> Cannot find AirMonth
WARNING> --> Cannot find AirDay
INFORMATION> 2019-10-19T16:33:54 MCEBuddy.Engine.ConversionJob --> Destination file F:\Video\TV Shows\Christopher Kimballs Milk Street Television\Season 03\Christopher Kimballs Milk Street Television-S03E06-Chicken Around the World 2019 10 11---.mkv does not exist, continuing with conversion
INFORMATION> 2019-10-19T16:33:54 MCEBuddy.Engine.ConversionJob --> Running custom commands
WARNING> --> Cannot find AirYear
WARNING> --> Cannot find AirMonth
WARNING> --> Cannot find AirDay
WARNING> --> Cannot find AirYear
WARNING> --> Cannot find AirMonth
WARNING> --> Cannot find AirDay
INFORMATION> 2019-10-19T16:33:54 MCEBuddy.Transcode.CustomCommand --> No custom commands found

Aún más extraño es que, por alguna razón, MCEBuddy mira el archivo .TS durante el trabajo de conversión. (Véase abajo).

INFORMATION> 2019-10-19T16:34:46 MCEBuddy.Engine.ConversionJob --> Analyzing video information
INFORMATION> 2019-10-19T16:34:46 MCEBuddy.VideoProperties.VideoInfo --> Reading MediaInfo from F:\Temp\working0\Christopher Kimballs Milk Street Television-S03E06-Chicken Around the World-2019-10-11.ts
INFORMATION> 2019-10-19T16:34:53 MCEBuddy.VideoProperties.VideoInfo --> Supplementing Media information using FFMPEG
INFORMATION> 2019-10-19T16:34:55 MCEBuddy.VideoProperties.VideoInfo --> Reading Original File Media information

¿Alguna idea? Investigaré si KMTTG puede evitar transcodificar el archivo .TS a MP4 o si puede borrarlo cuando termine.

De cualquier modo, parece que tengo un proceso roto: el archivo MP4 no tiene apóstrofo en absoluto, y el archivo .TS recibe el extraño apóstrofo UTF-8 que no se convierte a CP1252 (el ASCII habitual que usamos).

Aquí está la sección del registro de procesamiento de MCEBuddy para la versión .TS del archivo. Esta es la que parece estar siendo renombrada y utiliza incorrectamente el carácter de apóstrofe UTF8 convertido (no puedo distinguir si es un apóstrofe o una “comilla tipográfica”, es decir, una comilla simple de cierre en lugar de un apóstrofe real).

INFORMATION> 2019-10-19T15:35:40 MCEBuddy.Engine.ConversionJob --> Converting file -> F:\Recorded TV\Tivo\Christopher Kimballs Milk Street Television-S03E06-Chicken Around the World-2019-10-11.TiVo
INFORMATION> 2019-10-19T15:35:43 MCEBuddy.Engine.ConversionJob --> Running custom commands
INFORMATION> 2019-10-19T15:35:43 MCEBuddy.Transcode.CustomCommand --> No custom commands found
INFORMATION> 2019-10-19T15:35:43 MCEBuddy.Engine.ConversionJob --> Getting show information and banner from Internet sources
INFORMATION> 2019-10-19T15:35:43 MCEBuddy.MetaData.VideoMetaData --> Extracting Generic Tags
WARNING> 2019-10-19T15:35:43 MCEBuddy.MetaData.VideoMetaData --> Unable to extract meta data from file F:\Recorded TV\Tivo\Christopher Kimballs Milk Street Television-S03E06-Chicken Around the World-2019-10-11.TiVo. F:\Recorded TV\Tivo\Christopher Kimballs Milk Street Television-S03E06-Chicken Around the World-2019-10-11.TiVo (taglib/tivo)
INFORMATION> 2019-10-19T15:35:43 MCEBuddy.MetaData.FileExtractMetadata --> Extracting TiVO metadata using TDCat
INFORMATION> 2019-10-19T15:35:45 MCEBuddy.MetaData.FileExtractMetadata --> Extracting XML Tags
INFORMATION> 2019-10-19T15:35:45 MCEBuddy.MetaData.VideoMetaData --> Downloading Series details
INFORMATION> 2019-10-19T15:35:45 MCEBuddy.MetaData.VideoMetaData --> Recording Type Show
INFORMATION> 2019-10-19T15:35:45 MCEBuddy.MetaData.VideoMetaData --> Checking TheTVDB
WARNING> --> No match found on TVDB for language en
INFORMATION> 2019-10-19T15:35:46 MCEBuddy.Engine.ConversionJob --> Checking for destination file skip reprocessing
INFORMATION> 2019-10-19T15:35:46 MCEBuddy.Engine.ConversionJob --> Destination file F:\Video\TV Shows\Christopher Kimball’s Milk Street Television\Season 03\Christopher Kimball’s Milk Street Television-S03E06-Chicken Around the World-2019-10-12.mkv does not exist, continuing with conversion

Nótese que el archivo .TiVo original (.TS) no tiene el apóstrofe, pero parece que este se inserta en el nombre del programa cuando se extraen los metadatos del archivo TiVo (.TS).

De cualquier manera, también hay problemas aquí con 1) no aplicar la anulación de nomenclatura/coincidencia TVDB, ni con 2) usar la transcodificación por GPU nVidia para el códec H.265 HEVC.

Necesito el registro completo para ver qué está pasando. Lo más probable es que provenga de la extracción de metadatos de TiVO. Tener el archivo MPG original junto con la clave MAK sería aún mejor para revisarlo.