¡Hola, Invitado! (Iniciar sesiónRegístrate)
Hora: 22 Nov 2024, 06:14

x264: Comprimir en h.264

03 Nov 2011, 17:02 (Este mensaje fue modificado por última vez en: 03 Nov 2011 17:29 por Kumicho)
Mensaje: #1

x264: Comprimir en h.264

Para comprimir un video en h.264, el mejor programa es x264. Además de ser gratuito, tiene una calidad inigualable. Como no tiene una interfaz gráfica, es preferible que estés familiarizado con la línea de comandos.

Términos:
Bitrate - Tasa de transferencia de datos. Un bitrate superior = un archivo más grande
Cuantizador - Nivel de compresión. Más alto = mayor compresión = peor calidad (si no cambias el resto de la configuración)
PSNR, SSIM - Medidas usados para calcular la similitud entre el video original y el comprimido. Una mayor similitud no implica mejor calidad, porque el ojo no es igualmente sensible a todos los tipos de desperfectos. Aunque SSIM intenta de tener esto en cuenta, no lo consigue. En resumen, deberías ignorar los valores de PSNR y SSIM que x264 muestra durante y después de la compresión.

Principio de uso:
x264 --crf {crf} --preset {preestablecido} --tune {afinación} {otros} -o "rip.mp4" "original.mp4"
x264 --crf 20 --preset placebo --tune animation --deblock -1:-1 --keyint 500 -o "rip.mp4" "original.mp4"

Como video original, puede estar en cualquier formato compatible con lavf o ffms, o ser un script de AviSynth.
La extensión del rip puede ser .264 (sin contenedor), .mp4 o .mkv. Sí tienes la intención de incluir subtítulos o capítulos, usa MKV. Sino, usa MP4.

crf: Cuantizador medio. Sí no cambias ningún otro parámetro, este valor sirve para configurar la calidad y el tamaño del video. Depende del resto de los parámetros 17-21 para SD, 18-22 para FullHD da un buen resultado. El valor no influye al tiempo necesario para la conversión.
Preestablecido: Básicamente decide el tiempo que quieres gastar para convertir el video y la calidad que quieres obtener. Un ajuste más lento crea un archivo más pequeño y de mayor calidad. Un ajuste más lento permite usar un cuantizador superior. Considera el uso de slower, veryslow y placebo. Este último, al contrario que su nombre indica, realmente mejora la calidad. Sí slower tarda demasiado, no deberías dedicarte a comprimir video.
Afinación: Adapta algunos parámetros para al tipo de video. Para comprimir anime, la opción idónea es animation.

Otros:
--deblock {valor}:{umbral} Filtro que elimina los bloques creado por la compresión. El valor ideal depende del tipo de video y del gusto de cada uno. Para un DVD 0:0 está bien. Para un blu-ray (full) -2:-1. Como es lógico, además de la notoriedad de los bloques, puede eliminar algunos detalles menores. No es una buena idea usar un valor superior a 1:1, ni inferior a -3:-2.
--keyint {valor} Valor que indica cada cuantos frames tiene que haber un fotograma clave. Incrementar este número reduce el tamaño del archivo y mejora la calidad, pero aumenta el tiempo necesario para buscar en el video.
--qcomp {valor} Controla el cuantizador relativo de las zonas en movimiento. Las zonas en movimiento, o bloques temporales, influyen poco en la calidad percibido del video, pero bastante en el bitrate del mismo.

Hay muchos más parámetros, pero para controlar el tamaño y la calidad, deberías usar los preestablecidos.

Decidir tu configuración:
Lo primero es decidir cuánto tiempo quieres invertir en la compresión. Haz pruebas usando x264 --crf 20 --preset {preestablecido} --tune animation -o "rip.m4" "original.mp4". Cambiar preestablecido hasta que estas contento con el tiempo que tardas en hacer la compresión. Ignora la calidad.
Usando el preestablecido que has elegido, cambia crf hasta que estas contento con la calidad de las zonas estáticas (partes de la imagen donde no hay movimiento) y con el tamaño del archivo. La forma más fácil es hacer varios rips del mismo video con un crf distinto y después abrir dos reproductores para comparar los videos.
Sí no estas contento con la calidad de las zonas en movimiento, primero mira el video original. Sí no estas usando un Blu-ray full, probablemente no hay nada que puedes hacer. En el caso de un blu-ray puedes considerar de subir el valor --qcomp. Un video en movimiento no es lo mismo que uno parado. No deberías comparar dos videos pausadas en una escena donde hay mucha acción. No se nota que un objeto está un poco borroso sí se está desplazando a gran velocidad por la pantalla. Tu objetivo tiene que ser eliminar posibles artefactos (errores) graves. Las 200 marcas del pulido del casquillo de una bala no se nota cuando sale disparado y por lo tanto no tiene sentido intentar de preservar los. El valor por defecto de 0.6 está bien. En algunos casos puedes mejorar algo el video subiéndolo a 0.7. Sí el resultado de tus pruebas en un qcomp superior a 0.8, probablemente no has entendido como influye el movimiento a la calidad percibido. Un qcomp tan elevado, solo tiene sentido cuando no puedes observar ninguna diferencia en las zonas estáticas entre tu rip y el video original. En otras palabras, cuando reducir el crf 10 puntos no mejora nada.

Parámetros adicionales:
Hay ciertos parámetros que no influyen al bitrate ni a la calidad del video, pero si a la forma en que se muestra.
--sar {x:y} Sample Aspect Rate. Sí un video no tiene pixeles cuadrados (HDTV 1080i o un DVD), en vez de redimensionar el video, deberías copiar el PAR (Pixel Aspect Rate) aquí. A no redimensionar, reduces el tamaño y mejoras la calidad.
--colorprim {valor}, --transfer {valor}, --colormatrix {valor} Decide como el reproductor convierte los pixeles YUV a RGB (afecta al color). Un blu-ray esta en bt709, un DVD PAL en bt470bg y un DVD NTSC en smpte170m. Normalmente se usa el mismo valor para los tres parámetros.

Información adicional:
En algunos videos, el opening con el ending ocupa lo mismo que el resto del episodio. En otras palabras, incluir en cada episodio el opening y el ending puede duplicar el tamaño de los archivos. Sí quieres que se reproduzcan en cada episodio sin incluirlos, puedes usar un contenedor Matroska con Ordered Chapters.

La historia de que convertir un video en varias pasadas mejora la calidad proviene de cuando se usaba DivX. Con x264, la calidad empeora.

Usar --bitrate para que todos los episodios ocupen lo mismo es una estupidez. Lo único que consigues haciéndolo es que se ve bonito en el explorador, pero en cambio la calidad del video se vuelve inconsistente. Sí crees que la calidad no cambia, significa que estás haciendo los archivos más grandes de lo que es necesario.
20 Jan 2013, 02:57 (Este mensaje fue modificado por última vez en: 20 Jan 2013 02:59 por ovichan)
Mensaje: #2

RE: x264: Comprimir en h.264

--keyint 500

Eso es una locura, por qué no se que pretendes con eso?? Bajar el peso de tu archivo final en deprestacion del disminuir la disposicion seek en los reproductores??
24 May 2013, 13:41 (Este mensaje fue modificado por última vez en: 24 May 2013 13:42 por Kumicho)
Mensaje: #3

RE: x264: Comprimir en h.264

Primero que solo es un ejemplo de uso. Segundo que no tengo idea de que ordenador tienes, pero keyint 500 no me afecta al seek. Durante la reproducción, normalmente windows tiene todo el vídeo - o por lo menos la parte reproducida - en la memoria RAM.
16 May 2014, 03:54
Mensaje: #4

RE: x264: Comprimir en h.264

Debí leer esto hace no mucho...
09 Apr 2015, 00:25 (Este mensaje fue modificado por última vez en: 09 Apr 2015 00:38 por brunner77)
Mensaje: #5

RE: x264: Comprimir en h.264

¿Hay mucha diferencia entre el placebo y el veryslow?

09 Apr 2015, 16:08
Mensaje: #6

RE: x264: Comprimir en h.264

Hace tiempo que no comprimo nada, pero no lo había y no creo que eso ha cambiado.
14 Apr 2015, 13:26 (Este mensaje fue modificado por última vez en: 14 Apr 2015 17:53 por La Tori)
Mensaje: #7

RE: x264: Comprimir en h.264

Pregunta tonta, si encodeo variando los parámetros del x264 en el MeGUI... es lo mismo?? Ya me han respondido en otro tema, ignorad esa tontería XD


Usuario(s) navegando en este tema: