Extreme

Actualización del proyecto Deep Space Nine: por qué los archivos derivados de MakeMKV no funcionan

(Foto: mlange_b /Flickr, CC BY-SA 2.0)
La pregunta más común que me han hecho sobre mi trabajo de mejora de DS9 es si hay alguna manera de hacerlo funcionar con archivos creados a través de MakeMKV. MakeMKV es (y ha sido) una aplicación popular para copiar DVD durante mucho tiempo. Empecé con archivos MakeMKV y persistí en intentar trabajar con ellos sin éxito durante unos seis meses. Uno de los consejos más importantes que aprendí en este proyecto provino del foro de Doom9, donde se me recomendó que abandonara este enfoque y cambiara a DVD Decrypter. Una vez que lo hice, progresé más en seis semanas que en seis meses.

Nota: Existe una diferencia entre tener un archivo MKV con contenido multimedia y específicamente usar MakeMKV para crear un archivo. Estamos discutiendo el último escenario; La salida predeterminada de DS9 Project Update está en MKV. Además, como recordatorio, el DS9 Upscale Project es un esfuerzo de los fanáticos, no oficial y no afiliado a Paramount o ViacomCBS.

Volví a la pregunta este fin de semana después de que varios lectores me la plantearon por correo electrónico. En lugar de intentar otra ronda de pases de filtro infructuosos, decidí desarmar un archivo MakeMKV y examinar los marcos subyacentes. Lo que encontré te sorprenderá explica algunas cosas sobre por qué la fuente MakeMKV se convierte en hash sin importar cómo lo trate.

Por lo general, se habla mucho del hecho de que MakeMKV crea un duplicado exacto de los fotogramas dentro de un archivo VOB de DVD. Por un lado, esto es cierto. Además de extraer todos los fotogramas de un archivo creado por MakeMKV, también extraje los fotogramas de un archivo VOB directamente. La salida cuadro por cuadro entre un archivo VOB y un archivo MakeMKV es idéntica.

En realidad, esto es parte del problema.

Para ser claros: parte de la razón por la que no puede usar un archivo MakeMKV en este proceso sin limpiar su movimiento es que MakeMKV crea archivos de velocidad de fotogramas variable y AviSynth no está diseñado para editar archivos de longitud variable. Por lo tanto, AviSynth fuerza la salida derivada de MakeMKV a una velocidad no estándar de 24,6 fps en un intento de armonizar los dos. Esto destruye cualquier posibilidad de sincronizar el audio. Pero el problema es un poco más profundo.

DVD: lo que ves no es lo que tienes

Hay aspectos de esta situación que todavía estoy reconstruyendo, así que me disculpo si soy un poco vago en algunos lugares. El primer punto que quiero señalar es que existe una diferencia entre lo que ve en una transmisión de DVD cuando reproduce el archivo, incluso si lo hace fotograma a fotograma, y ​​las secuencias de fotogramas reales almacenadas en el disco.

Todo el contenido escrito en un DVD NTSC destinado a la reproducción en un reproductor de DVD está “entrelazado conceptualmente”, para tomar prestado un término de InicioTeatroHiFi. Citar:

Es importante comprender desde el principio que los DVD están diseñados para pantallas entrelazadas. Existe un mito persistente de que los DVD son intrínsecamente progresivos, y todo lo que un reproductor de DVD necesita hacer para mostrar una señal progresiva es tomar los fotogramas progresivos del disco y mostrarlos. Esto no es exactamente cierto…

Los DVD se basan en la codificación MPEG-2, que permite secuencias progresivas o entrelazadas. Sin embargo, muy pocos discos utilizan secuencias progresivas, porque los reproductores están diseñados específicamente para salida entrelazada. Curiosamente, si bien las secuencias (es decir, las películas y los videos) rara vez se almacenan progresivamente, no hay nada de malo en usar fotogramas progresivos individuales en una secuencia entrelazada …

El codificador puede mezclar y combinar campos entrelazados y fotogramas progresivos siempre que cada segundo de datos MPEG-2 contenga 60 campos, ni más, ni menos (o 50 campos por segundo para discos PAL)… En resumen, el contenido de un DVD está entrelazado conceptualmente. (Énfasis añadido)

La visualización de un video perfecto de 23,976 fps de un video de 29,97 fps requiere un telecine inverso. Telecine es el proceso de convertir una película de 24 fps para que se muestre en un video de 29,97 fps. Un patrón típico de telecine en el universo NTSC es el pulldown 3: 2, en el que se crean cuadros entrelazados en una secuencia específica para convertir ~ 24 cuadros progresivos en 60 campos por segundo para transmitir cuadros. Es posible desenrollar este tipo de contenido de nuevo en cuadros perfectamente progresivos si el DVD se masteriza correctamente, que es de donde proviene la idea de que el metraje de DVD es progresivo. Metraje de DVD lata mostrar como completamente progresivo, pero el estándar asume 59,94 campos por segundo, que traducimos a 29,97 fotogramas, que se pueden mostrar a 23,976 fps progresivos gracias al uso de banderas que le dicen al jugador qué campos mostrar durante la reproducción.

El proceso 3: 2. Desenrollar esto permite que un archivo entrelazado de 29,97 fps se convierta de nuevo en contenido de 23,976 fps.

Aquí es donde llegamos a la diferencia crítica entre usar DVD Decrypter y DGIndex versus intentar editar un archivo fuente derivado de MakeMKV. Cuando volqué el contenido de ambos tipos de fuentes en el disco, descubrí una diferencia significativa entre ellos. La fuente derivada de D2V contenía el patrón familiar 3: 2 que esperaríamos del contenido progresivo que se ha pasado por telecine: tres cuadros progresivos, seguidos de dos cuadros entrelazados. Cuando crea un archivo D2V, especificará una reproducción de 29,97 fps a no ser que su contenido es 100 por ciento de película (es decir, un flujo perfectamente progresivo de datos de 23,976 fps codificados entrelazados en campos de 29,97 fps).

El archivo creado por MakeMKV contenía una secuencia de fotogramas muy diferente. En lugar de 3: 2, contenía fotogramas completamente progresivos codificados en el siguiente patrón: 1-2-3-4-4 (fotograma 4 se repite) o 1-2-3-4-5-5 (fotograma 5 se repite). Internamente, la velocidad de fotogramas del archivo codificado con MakeMKV sigue siendo de 29,97 fps. El metraje creado por MakeMKV solo vuelve al formato estándar 3: 2 durante las escenas que se esperaba que se reprodujeran a 29,97 fps. El contenido de cuadro a cuadro de las dos secuencias de vídeo es diferente en las secciones progresivas de 23,976 fps.

Así es como sé que eso es cierto: de forma predeterminada, la salida de un archivo derivado de D2V es 29,97 fps, a menos que lo cambie de alguna manera. Un archivo MakeMKV y un archivo creado con D2V a 29,97 fps se rastrean cuadro por cuadro. Sin embargo, eso no significa que la salida de fotogramas entre los dos sea siempre idéntica. Aquí está el fotograma 327 de un archivo derivado de D2V de 29,97 fps dividido en sus fotogramas constituyentes, frente a un fotograma 327 de una fuente derivada de MakeMKV.

No puedo incrustar el deslizador, por lo que también insertaré una captura de pantalla a continuación:

MakeMKV frame a la izquierda, DVD Decrypter + DGIndex frame a la derecha. Lo crea o no, el marco de la derecho es el fotograma que queremos procesar para reducir la velocidad de fotogramas correctamente. Por favor, ignore el tumor en la frente de Sisko, él es sensible al respecto.

En el archivo MakeMKV, el fotograma 327 es una toma de Sisko. En el archivo derivado de D2V, el Cuadro 327 es un cuadro entrelazado que contiene datos del cuadro anterior (los dos almirantes sentados) y el cuadro por venir (Sisko hablando). La posición de la boca de Sisko en el Cuadro 328 de la fuente MakeMKV es diferente a la posición de su boca en el Cuadro 328 de la fuente D2V. Esto continúa a través de la trama 329, pero la salida se sincroniza nuevamente en la trama 330.

TDecimate podría escanear teóricamente el flujo de video y eliminar las imágenes duplicadas, pero AviSynth no comprende cuál se supone que es la velocidad de fotogramas de la fuente derivada de MakeMKV en primer lugar. Por el contrario, el archivo D2V constante de 29,97 fps que crea DGIndex presenta AviSynth con un flujo de datos en un formato que comprende y con el que puede trabajar. Allí están formas de usar un archivo de códigos de tiempo para trabajar con VFR en AviSynth, pero el punto es discutible tan pronto como llegue a Topaz Video Enhance AI, que no admite la entrada VFR.

La razón por la que los archivos MakeMKV no funcionan en este proyecto es que los archivos MakeMKV no representan los datos de video contenidos en el VOB de una manera con la que AviSynth pueda trabajar. El patrón progresivo 1-2-3-4-4 y 1-2-3-4-5-5 codificado en archivos MakeMKV se reproduce sin problemas porque el flujo de archivos contiene una gran cantidad de sugerencias que le indican al software del reproductor cómo reproducirlo y qué Deben mostrarse campos / marcos. Sin embargo, convertir ese flujo en algo que otras aplicaciones puedan procesar no es nada fácil.

No puedo hablar de la razón exacta por la que DGIndex puede mirar un VOB y crear un archivo de proyecto D2V que genera un menú desplegable 3: 2, mientras que las fuentes creadas por VOB y MakeMKV no lo hacen. Pero es esta diferencia en la producción la que causa problemas. Y dado que Topaz no admite la ingestión de VFR, el punto es en gran parte discutible. El conjunto de DVD y el DVD Decrypter son, en el momento de escribir este artículo, ambos necesarios para este proceso.

Publicaciones relacionadas

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar
Cerrar