Antecedentes:
Estoy tratando de comprimir pistas bluray sin pérdidas a un tamaño más amigable para el almacenamiento sin una gran pérdida de calidad.
Lo que he estado haciendo hasta ahora:
Explorando las opciones de compresión con ffmpeg. Principalmente alrededor de h264 con el argumento -crf.
Restricciones
Linux y herramientas de código abierto. No sugiera nada específico de Apple / Microsoft.
Pregunta:
La mayoría de las opciones que veo alrededor de la compresión involucraban velocidades de bits o tamaños de salida fijos. Estoy buscando un códec de video que tenga más de un "umbral de calidad". No me importa si las partes más complejas de la pista requieren más bytes para ofrecer el mismo nivel de calidad visual. ¿Existe algo como esto?
Editar:
Estoy teniendo buena suerte con el argumento -qscale y libxvid. Si no recibo ninguna otra sugerencia, seguiré con eso.
fuente
Respuestas:
Está en el camino correcto con
-crf
y x264 (el mejor codificador H.264), y debería proporcionar el "umbral de calidad" que está buscando. Se recomienda CRF si desea una determinada calidad de salida y el tamaño del archivo de salida es de menor importancia. Por el contrario,-b:v
se recomienda realizar una codificación de dos pasadas si está apuntando a un tamaño de archivo de salida específico y la calidad es de menor importancia.La codificación de HEVC / H.265 con x265 debe seguir las mismas pautas básicas. En general, obtendrá una mejor compresión a cambio de un mayor tiempo de codificación.
1. Elija un preset
Un preset es una colección de opciones que proporcionarán una cierta velocidad de codificación: relación de compresión . Un valor predeterminado más lento proporcionará una mejor compresión (la compresión es calidad por tamaño de archivo). El uso general es usar el preajuste más lento para el que tienes paciencia. Preajustes actuales en orden descendente de la velocidad son los siguientes:
ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow, placebo
. Ignorarlo,placebo
ya que es una broma y una pérdida de tiempo (ayuda como máximo ~ 1%) Si está codificando muy lentamente, use un preajuste más rápido.2. Elija un valor CRF
El rango para x264 es 0-51 donde 0 es sin pérdidas, 23 es el predeterminado y 51 es el peor posible. Un valor más bajo es una calidad más alta. Un rango subjetivamente sano es 18-28. Considere que ~ 18 es visualmente sin pérdidas: debería verse igual que la entrada, pero técnicamente no es sin pérdidas. Aumentar el valor de CRF +6 es aproximadamente la mitad de la tasa de bits, mientras que -6 es aproximadamente el doble de la tasa de bits.
El uso general es elegir el
-crf
valor más alto que aún ofrezca una calidad aceptable. Es decir, si el resultado se ve bien, intente con un valor más alto y si se ve mal, elija un valor más bajo.3. Codificar
Use esta configuración para el resto de sus videos. Todos deberían terminar con la misma calidad.
Ejemplo
Ver también
fuente
-ssim 1 -psnr
en su cmfline ffmpeg medirá algunas métricas de calidad de video (que no siempre coinciden con la calidad visual percibida por el ser humano). Puede ser útil para tener una idea de cuánto se está destrozando su video.Tal vez esto sea útil. K-Lite Codec Pack Cuando instale hay un paquete de códecs para que pueda elegir el que mejor se adapte a usted. Esta es la lista de códecs: • Filtros de decodificación de video DirectShow: - ffdshow [versión 1.2.4475] - LAV Video [versión 0.51.3] (- Decodificación de: H264, VC1 (solo progresivo), MPEG2, MPEG4-ASP, MS -MPEG4, MJPEG, VP8, RV40, WMV1 / 2/3) - On2 VP7 [versión 7.0.10.0] - Decodificador DScaler5 MPEG-2 [versión 0.0.6.0 IVTC mod]
fuente