Actualización: Me sentí un poco como un idiota por decirle a todos «oh, sólo haz todas estas pruebas» para ver varios escenarios en acción más abajo. Así que preparé un nuevo escrito con un video e imágenes que pueden encontrar en la categoría de codificación de este sitio. Espero que lo encuentren un poco más útil.
Si alguna vez habéis intentado copiar un DVD con material de origen ruidoso en pequeños archivos (de baja tasa de bits) en Handbrake, probablemente os hayáis dado cuenta rápidamente de que acabáis de abrir un gran saco de dolor.
Si usaste una calidad constante y fuiste con valores de RF más altos, probablemente terminaste con un archivo más grande de lo esperado que se veía feo de todos modos. Si en vez de eso usaste una tasa de bits promedio, el tamaño del archivo probablemente estaba bien, pero puede que se viera tan mal que te preguntaras si tal vez olvidaste ingresar un dígito.
En cualquier caso, el ruido/grano es la pesadilla de los pequeños códigos x264. Hasta donde el codificador puede decir, es un «detalle» adicional que debe tratar de mantener, y se necesita una cantidad enfermiza de bitrate para tratar de hacerlo. No es un problema tan grande si estás bien con los ajustes de buena calidad y los enormes tamaños de archivo necesarios para almacenar el grano/ruido, pero un problema masivo el resto del tiempo – el grano se convierte en pequeños bloques feos, y el resto de la imagen sufre.
La buena noticia es que HandBrake incluye un denotador. La mala noticia es que los ajustes personalizados no están bien documentados.
Si estás listo para ahondar en los ajustes personalizados y estás aquí simplemente para averiguar cómo, aquí están los detalles de cada uno de los preajustes incorporados para que puedas empezar:
Débil – 2:1:2:3
Medio – 3:2:2:3
Fuerte – 7:7:5:5
Puedes usarlos como puntos de partida para algunos experimentos. Antes de introducir algo como 10:10:10:10 en el campo personalizado, podría ser útil saber lo que significa cada valor. Así que aquí vamos.
El formato para el denotador en HandBrake es en realidad ls : cs : lt : ct
Primero veremos los dos primeros valores (ls:cs:__:__):
Estos 2 primeros valores afectan a la supresión de ruido cuando se mira un solo cuadro («spacial»). Así que si miras un video y lo pausas, el cuadro que estás viendo es esencialmente un ejemplo de lo que mira el denotador. Prueba esto ahora. Ponga en pausa su fuente de vídeo ruidosa (presumiblemente un DVD – ábralo en el reproductor).
Con el vídeo en pausa, puede ser difícil ver el ruido/grano. Si ese es el caso (si se ve bastante bien), los valores altos de LS/CS probablemente no le servirán de mucho. El denotador va a encontrar todos los detalles sobresalientes y los desdibujará o mezclará. Seguro, probablemente obtendrá el ruido/grano, pero tomará detalles de otras áreas en el proceso.
Por otro lado, si el ruido/grano es muy evidente con el video pausado, LS/CS tiene una buena oportunidad de limpiarlo. Hay que tener en cuenta que cuanto más altos sean los valores, más detalles se perderán en la imagen. Un fino cabello, una peca, una gota de lluvia, y un pedazo de grano de película pueden parecer bastante similares al des-ruido. Va a tratar de suavizarlos.
Para darles una idea de la función de los últimos 2 valores (__:__:lt:ct)……
Esto es para la parte «temporal» del denoiser, lo que significa que funciona a través de marcos. Funciona muy bien para el ruido/grano que es muy evidente mientras se reproduce el vídeo (grano que puede no notarse cuando se hace una pausa pero que es evidente durante la reproducción).
Una forma sencilla de pensar en ello (no necesariamente exacta, claro está) es que si tienes digamos… una superficie negra durante la reproducción y un «punto» blanco aparece en 1 cuadro (y luego desaparece de nuevo), esto es algo que el denotador va a notar – cuando estás mirando varios cuadros, se destaca como algo que no debería estar ahí. Al mismo tiempo, si realmente se *supone* que hay un punto blanco en esa superficie negra, estará ahí en todos los cuadros. Por lo tanto, al mirar múltiples cuadros, el denotador debería tener una buena idea de lo que se supone que debe estar ahí, y lo que sobresale (y debería ser denotado).
Otra forma (todavía no precisa) de pensar en ello es que promedia los píxeles entre cuadros. Así que si estás mirando una cara en la que el color de la piel parece pixelado y parece que se mueve como un loco, debería igualar esto.
Temporal es particularmente bueno para los videos con lo que me gusta llamar «puntos de baile» o «píxeles de baile». Por ejemplo, cuando una superficie en el video como una pared (que debería verse bastante estática) es granulosa y ese grano se mueve/baila continuamente durante la reproducción (a pesar de que se vea bien cuando se pausa). El desdénizador temporal hace un buen trabajo al notar esto y desdénar estas áreas mientras deja las otras cosas que se ven bien solas.
Como probablemente se puede decir, el temporal tiene el potencial de ser bastante fantástico, particularmente cuando partes de la imagen se ven bien mientras que otras áreas se ven granuladas durante la reproducción. Debido a que está un poco más «enfocado» que los ajustes de un solo cuadro, normalmente se puede hacer un poco más grande sin tanta consecuencia para la escena en general. Dicho esto, si vas demasiado alto, empezarás a ver cosas malas como fantasmas.
«l» contra «c»
Aquí es donde las cosas pueden complicarse un poco más. En ls/cs/lt/ct, la L significa «luma» (brillo/oscuridad), y la C significa «chroma» (color). Esto se aplica tanto a la configuración de marco único como a la temporal.
Averiguar qué es lo que más aparece es nada menos que una pesadilla, dependerá de su fuente y del tipo de grano/ruido/etc. La única forma segura es experimentar con tu fuente (que trataré más adelante).
Vale la pena señalar que si te pasas de la raya en la luma, probablemente notarás una pérdida de detalles. Si te pasas de la raya en el croma, probablemente terminarás con las bandas de color.
Tiendo a mantener LS:CS similar, y LT:CT similar. Así que algo como 2:1:9:8 podría ser razonable si me centrara en la eliminación de ruido temporal (aplicándola a ambos, el luma y el croma, de manera algo igual).
La necesidad de probar
Lo anterior debería darte una idea aproximada de lo que hace cada escenario. Sin embargo, la mejor manera de aprender es hacer múltiples codificaciones de prueba y compararlas con la fuente para tener una idea de lo que hace todo. Ciertamente, se puede navegar por la web para encontrar ejemplos de eliminación de ruido, pero honestamente es mejor que dedique su tiempo a crear sus propios códigos de prueba para que pueda ver de primera mano todos los efectos y entender realmente los efectos (tanto buenos como malos). Así que haz pruebas!
Dado que el dispositivo de eliminación de ruido de HandBrake (hqdn3d) es difícil de encontrar en un software de reproducción de DVD independiente, la única manera de ver los efectos de cada ajuste es probablemente ejecutando múltiples códigos de prueba en HandBrake con ajustes locamente altos (de modo que x264 conserve todo el grano/ruido que deja el filtro para la comparación en lugar de ocultarlo/enmascararlo durante la compresión).
En Freno de mano, ve por una calidad constante y bombea la RF a 10-18 para un DVD. Si quieres que la calidad sea aún mayor, no dudes en bajar los valores (aunque no debería ser necesario y tu bitrate/tamaño de archivo podría ser demasiado grande para tu reproductor). No uses Trellis ni ningún otro ajuste elegante (no queremos que x264 haga nada extra que pueda afectar al ruido/grano), y utiliza la mayoría de los valores predeterminados. Recuerde – alta calidad y rapidez – no le importa el tamaño del archivo ya que son pruebas que eventualmente eliminará.
Recomendaría los siguientes ajustes de ruido para las pruebas – es mucho para hacer, pero recuerda que lo haces para tener una idea de lo que hace cada ajuste:
(nota: ponga su configuración en el nombre del archivo)
ninguno – sólo para tener algo cerca de la fuente (esperemos que indistinguible) para asegurarse de que todo está bien. Si no se ve igual que la fuente, comprueba que tienes los mínimos en la configuración avanzada, y aumenta la calidad si es necesario.
presets de freno de mano – débil, medio, fuerte – sólo para ver cómo un pequeño cambio puede hacer una gran diferencia. No te sorprendas si no notas una diferencia en «débil», pero deberías en el momento en que golpees «fuerte». Ten en cuenta que el ajuste temporal no cambia tanto (de hecho, medio/débil usan el mismo ajuste temporal). El aumento de la borrosidad que se ve es en gran parte de la configuración espacial (un solo cuadro).
2:1:10:10 / 2:1:15:15 / 2:1:25:25 – haz esto para tener una idea de los efectos de lo «temporal». Cuando llegues a 2:1:25:25, probablemente notarás un fantasma masivo en cualquier movimiento (y un fantasma persistente en cualquier movimiento se desvanece a negro). Compara esto con el «débil» freno de mano preestablecido.
15:15:2:3 – esperemos que noten dos cosas – primero, será borroso como el demonio. Segundo, las secciones que tenían «píxeles danzantes» todavía bailan. Comparen esto con el preajuste de freno de mano «débil».
Podrías probar valores de 0 en lugar de 2:1 / 2:3 (y luego compararlos con tu código «ninguno») – No estaba seguro de si 0 funcionaría cuando me probé, así que usé esos valores y los comparé con los ajustes «débiles».
Si tienes mucho tiempo, intenta aumentar la luminancia o el croma para ver el efecto de cada uno en tu fuente.
La razón de usar ajustes muy altos en algunas de las pruebas es que están bastante garantizados para tener consecuencias negativas, y ver estos efectos te ayudará a saber cuáles son las consecuencias negativas que debes tener en cuenta cuando estés ajustando. Al mismo tiempo, verás los límites del denotador.
Si tienes suerte (bueno, técnicamente mala suerte….) tu fuente tuvo algún ruido/grano que fue afectado por la eliminación de ruido temporal, y ruido que fue afectado por la eliminación de ruido de un solo cuadro. Abre 2+ copias de tu reproductor de video (o 2+ reproductores de video) para facilitar la comparación lado a lado. Las capturas de pantalla pueden ayudar si se ve el grano en un cuadro pausado. Asegúrate de mirar algunas partes del vídeo, no sólo las más granulosas. Asegúrate de que el ruido y el grano no afecten también a otras secciones del vídeo.
Examínalas con cuidado y busca las diferencias entre las codificaciones de prueba: no sólo es de esperar que entiendas bien qué tipo de ruido/granulado es bueno para cada una de ellas (y no es bueno para el resto) al ver dónde redujo el grano/ruido, sino que también podrás empezar a reducir los valores que querrás usar para tu codificación «real».
Por cierto, estos son los ajustes que probé cuando luché contra el ruido/grano en el programa de TV Alias (Temporada 3, Episodio 7). Si por casualidad tienes los DVD, echa un vistazo a ese episodio («Preludio»), prestando especial atención a las escenas con Sydney/Sloane (tanto en el establecimiento chino como en el coche más tarde), Sydney peleando con los guardias chinos, y el coche de Lauren en el aparcamiento (y una sección de pavimento cuando sale de él). Todas tienen secciones ridículamente granuladas (estoy bastante seguro de que tenían una cámara mala – lo notarás durante los cambios de cámara cuando Sydney esté luchando con los guardias). Una vez que los hayas comprobado, mira la mayoría de las otras escenas (que en general son buenas) para ver qué efecto tuvo cada ajuste.
¿Hasta dónde puedes llegar?
Según http://www.aquilinestudios.org/avsfilters/spatiotemp.html#hqdn3d , los valores espaciales (ls & cs) no deberían ir por encima de 10, y los valores temporales (lt & ct) no deberían ir por encima de 13. Los ajustes deberían técnicamente llegar a 255:255:255:255, en cuyo momento no tendrás imagen.
Yo mismo tiendo a pensar que incluso 10 en el espacio es demasiado alto para la televisión / cine – incluso el «fuerte» ajuste en HandBrake es sólo 7 y es bastante borrosa en eso. Es fácil empezar a hacer que la gente parezca que está hecha de plástico. Tal vez más alto está bien para la animación, claro está.
13 parece un máximo realista para el temporal. No me di cuenta de los fantasmas a los 15, pero algo no se «sentía» bien cuando lo veía. Puedo decirte con certeza que a los 25 tendrás un fantasma masivo que te dará ganas de vomitar.
Efectos en la compresión – mis observaciones
Espacial (ls/cs – primeros 2 valores) tiene un beneficio masivo para la compresión. Incluso si no fija el grano (como el «grano bailarín» que no fijará), difumina todos los detalles lo suficiente para obtener ganancias bastante significativas. Por otra parte, podrías ejecutar este filtro en una fuente perfecta sin ruido ni grano y verías las ganancias de compresión debido a la pérdida de detalle. Veía tamaños de archivo entre un 10 y un 30% más bajos dependiendo de la configuración que usara, pero lo que veas dependerá completamente de tu fuente, si hay mucho detalle te ahorrarás más cuando lo difumine. Si no hay mucho detalle (es decir, la animación), probablemente no verás mucho.
El temporal (lt/ct – últimos 2 valores) varía. Si no tienes mucho grano/ruido, no hace mucho, aunque puedes obtener beneficios sustanciales si *hay* mucho. Una vez que el ajuste es lo suficientemente alto como para eliminar el grueso del grano/ruido, no verás mucho beneficio en el tamaño de los archivos al ir más allá.
Combinarlos tiene el mayor beneficio potencial para la compresión (no es sorprendente).
Una conclusión no tan simple
Cuando se trata de un programa de televisión (como Alias), los ajustes de un solo cuadro (los primeros 2) realmente «desdibujan» todo, y los pequeños cambios aquí realmente tienen un gran impacto. Debería ser bueno para el ruido estático y la animación, pero no tiene ningún beneficio cuando se trata de «ruido de baile» – todavía tienes el «baile», es sólo más borroso.
Los ajustes temporales (los últimos 2) son fantásticos para el ruido que no necesariamente se vería mal en una captura de pantalla, pero que se ve cuando el video se está reproduciendo. Funciona increíblemente bien con material granulado y «ruido de baile». Puedes subir esto un poco también sin que tenga tanta consecuencia en la imagen general. Sin embargo, no funciona tan bien con el movimiento, por lo que puedo decir, el movimiento gradual como el de alguien que gira la cabeza se ve afectado (aunque no demasiado). Si la configuración se sube lo suficiente, el movimiento rápido se ve lo suficientemente afectado como para notarlo cuando se congela el cuadro (aunque durante la reproducción el movimiento rápido tiende a ser indulgente. Inevitablemente, también en este caso se llegará a un límite con el «ghosting».
He descubierto que para una serie de televisión, trabajar primero en la configuración temporal es ideal. Revisa cualquier cosa que pueda ser afectada inadvertidamente (lluvia, una nube de polvo, u otras cosas que puedan parecer artefactos para el denoiser), y asegúrate de que está teniendo un efecto positivo en el ruido/grano a medida que lo aumentas. Si llegas al punto en que ves fantasmas, retrocede un poco. Una vez que tu temporal esté en un punto en el que estés satisfecho, mira el ruido/grano restante y decide si vale la pena subir la configuración espacial (un solo cuadro).
Mis ajustes finales para Alias terminaron alrededor de la marca de 2:1:7:7, aunque estoy seguro de que veré a través de una temporada y decidiré ajustar más. Un valor temporal alto hace la mayor parte del trabajo limpiando el «baile» y el grano bastante bien, y un valor espacial bajo (equivalente a la configuración «débil» del freno de mano) redondea el resto bien sin perder suficientes detalles para que yo lo note.
Otras opciones
Finalmente, vale la pena señalar que hay mejores denotadores por ahí (¡aunque ciertamente también hay peores!). Este (hqdn3d) simplemente resulta ser el que está atado a HandBrake.
La ventaja de usar hqdn3d es que es fácil, no añade mucho al tiempo de codificación, y está incorporado directamente en HandBrake. Tan pronto como empiezas a profundizar en otros denotadores, empiezas a preocuparte por usar otro programa (a menudo un editor completo), ajustando los plugins, recodificando/transcodificando, preocupándote por los subtítulos, etc. Es mucho trabajo extra para algo como una serie de televisión.
Sin embargo, si estás trabajando en algo que es bastante importante para ti (como un vídeo casero o tu película favorita de todos los tiempos), tal vez quieras considerar mirar otros denotadores si estás dispuesto a dedicarle tiempo a un editor – algunos son muy capaces y tienen algoritmos muy complejos.
Sin embargo, para la mayoría de los vídeos típicos, basta con ajustar la configuración personalizada de la eliminación de ruido en HandBrake.
Muchas gracias por la gran explicación y consejos!
Dicho esto, la mejor manera de averiguarlo con seguridad es intentarlo. Comience con una codificación de prueba con solo luma denoising (yo mismo probablemente iría con 0:0:5:0 como punto de inicio), y otro con luma y croma denoising (0:0:5:5 como ejemplo). Ver cómo se ven, y van desde allí:)
He estado descubriendo que 1:1:3:3 parece ser una buena idea para casi todos los ts de la televisión digital. Conciertos en vivo y cosas así: todos tienen un poco de artefactos de compresión, como los carabatos que ves alrededor de los bordes de los objetos en JPG, que desaparecen con solo un toque ligero. Gracias por esta guía, fue muy útil ya que imo incluso el ajuste débil es demasiado fuerte.
He encontrado que las escenas oscuras son las más problemáticas con h.264. ¿Tienes algún consejo para esto?
-A veces los monitores y televisores simplemente no están calibrados de color muy bien, así que terminas con un enorme contraste entre «tonos de negro». La calibración puede ayudar si ese es el problema.
-Seleccionar «no dct diezmar» en las opciones a veces ayuda.
-Aumentar el valor de la Distorsión de Tasa Psicodélica también puede ayudar.
-Retener el grano a menudo lo cubrirá (aunque obviamente eso es lo opuesto a lo que normalmente quieres que suceda al denotar).
He notado que incluso con rasgaduras de alta tasa de bits, los episodios más oscuros seguirán saliendo pequeños en comparación con episodios más brillantes. Por ejemplo, he estado copiando mis DVD de archivos X y los episodios más oscuros pueden salir a 300 MB, y los normales alrededor de 800 MB. Esto es con los mismos ajustes y la calidad constante establecida en 17. El material fuente ciertamente no es genial para los episodios más oscuros, y tienes razón - el grano ayuda, pero me pregunto si es una limitación con h.264 porque me parece una gran diferencia.
Gracias de nuevo por tu ayuda. Es muy apreciado.
¿Soy la única persona que experimenta esto? ¿Hay alguna solución sugerida para esta situación específica?
estaría agradecido por cualquier sugerencia que elimine los 'píxeles aleatorios blancos' que de otra manera no suavizan o difuminan la imagen general.
estoy abierto a abandonar 'HandBrake' si hay una solución más robusta
Suena como un artefacto. Yo empezaría descartando el reproductor de video - intenta reproducir el video en VLC, luego en el reproductor estándar de tu OS (Quicktime o Windows Media Player), y en otro dispositivo (tableta/teléfono o reproductor de bluray conectado a una TV). He tenido artefactos que sólo se presentaban en ciertos reproductores, y eso puede ayudar a reducir la causa.
Si ocurre en todos los reproductores/dispositivos, intenta un par de codificaciones rápidas usando los preajustes de Handbrake incorporados (incluso si terminan escupiendo archivos más pequeños para un toque de ipod, está bien). Mira a ver si te pasa lo mismo ahí, si no, tendrás que hacer un poco de trabajo detectivesco para averiguar qué configuración lo está causando.
Si todavía tienes el problema, yo intentaría codificarlo en otro ordenador con la misma configuración que has utilizado. Si la codificación realizada en otro ordenador parece correcta, puede que tengas algún problema de hardware. Memtest86+ es probablemente lo primero que ejecutaría en ese caso, posiblemente seguido por el modo de prueba en Prime95. Un síntoma que me llevaría a probar primero un problema de hardware sería que los programas (o el ordenador) se bloqueen de forma regular.
Esperemos que al menos algo de eso ayude. Buena suerte.
Pero para volver al tema, necesitaba una mejor comprensión de los ajustes de ruido después de usar la implementación no estándar de tmpgs... este artículo era perfecto. La mayoría de mis transcodificaciones son viejas cintas VHS que con orgullo arranqué de un dvd hace años (¡era el futuro una vez!) y ahora las estoy convirtiendo en mp4s. Múltiples códigos, lo sé, lo sé, no lo hagas si puedes evitarlo. Pero el ruido lo noto más cuando ajusto los niveles (VHS a menudo sobresaturado, bajo el gamma'd) - se manifiesta como una débil nieve en el fondo - en movimiento, increíblemente difícil de notar a menos que mires cuidadosamente por ejemplo contra una pared negra o similar. Pero puede casi doblar el tamaño del archivo comparado con una rotura completamente limpia.
He encontrado que 1:1:2:2 es un buen ajuste de "poner y olvidar" para limpiar casi todos los videos sin impactar en la imagen. Nunca diría que se puede mejorar la fuente ya que siempre se está tirando la información durante estos procesos pero esto se acerca lo más posible a la imo. Si me encuentro con una cinta particularmente desordenada, entonces, obviamente, necesita más alto.
Puedo recomendar Xmedia Recode altamente - toma un poco de tiempo para trabajar en las pantallas de configuración y las pequeñas peculiaridades que tiene, pero el control y los resultados son increíbles. También puede usar los presets si no quieres afinarlo todo. Actualizado regularmente, y también gratis. Estoy encantado de poder poner en contacto a tmpgemc después de más de 10 años de usarlo :)