¿Cuál es el problema con Handbrake?
Cuando usas Handbrake para convertir de un formato contenedor a otro (por ejemplo, MKV a MP4 en tu caso), Handbrake recodificará el vídeo. Vea también la solicitud de función respectiva que habría permitido el paso de vídeo:
Lo sentimos, no está previsto añadir el paso de vídeo. HandBrake está diseñado para ser un transcodificador de vídeo. No fue diseñado para permitir el passthrough.
Por lo tanto, cada vez que cambie de contenedor con Handbrake, su video va a ser recodificado, lo que significa que a) lleva tiempo y b) puede introducir pérdida de calidad.
¿Tengo que recodificar? ¿No podría simplemente cambiar el contenedor?
Dado que el passthrough no es posible, pregúntese: Si sólo quieres cambiar el contenedor de MKV a MP4, **normalmente no necesitas codificar nada, sólo cambias la “envoltura” del vídeo. Esto no pierde calidad, y será un proceso mucho más rápido.
Puedes intercambiar contenedores fácilmente con FFmpeg - sólo tienes que decirle que copie los flujos de vídeo y audio:
ffmpeg -i input.mkv -c copy -map 0 output.mp4
También hay herramientas como MP4Box que también pueden crear contenedores MP4 - lo mismo existe para MKV con MKVtoolnix .
Sin embargo, hay una gran advertencia: esto sólo funciona si los códecs de audio y vídeo están soportados en el contenedor de destino (MP4), que es el caso de H.264/H.265 y AAC, por ejemplo, pero no de muchos otros. Además, el soporte de formatos de subtítulos para MP4 es diferente al de MKV, y de hecho bastante restringido, por lo que este comando puede fallar.
Si este comando no funciona, y si tu entrada utiliza los códecs equivocados para el contenedor de salida, probablemente tendrás que recodificar. En este caso, los códecs se adaptarán al contenedor de salida.
Para entender por qué esto es necesario, es importante aprender la diferencia entre códecs de vídeo y contenedores . Esto te ayudará a entender por qué funciona el cambio de contenedores y por qué los contenedores MP4 y MKV tienen poco que ver con los códecs de vídeo, en realidad.
¿Por qué es mala la recodificación?
Puedes (normalmente) no conservar toda la calidad cuando codificas un vídeo que ya estaba codificado. Esto se debe a que el original ya ha sido comprimido tirando información, y al hacerlo de nuevo estás introduciendo pérdida de generación .
A menudo, quieres recodificar el vídeo cuando, por ejemplo, sus dimensiones cambian, o necesitas una tasa de bits específica para exprimir tu flujo de vídeo, o tu vídeo original utiliza un códec que no puedes reproducir por cualquier razón.
Así que, si cargas tu vídeo MKV en Handbrake, y lo recodificas con x264, el codificador H.264 que utiliza Handbrake, y lo guardas en un contenedor MP4, vas a perder calidad pase lo que pase, a menos que establezcas la tasa de bits o el factor de calidad tan alto que (realmente) no veas la diferencia. Pero entonces, el tamaño del archivo también será mayor.
En el caso ideal, convertirías el vídeo a un vídeo sin comprimir, lo que no te hará perder nada de calidad, pero te dará archivos de una docena de Gigabytes de tamaño, incluso para unos pocos minutos de material de vídeo.
De acuerdo, ¡pero tengo que recodificar!
Si realmente tiene que recodificar, asegúrese de no establecer una tasa de bits media, sino de elegir un Factor de tasa constante , que es algo así como “calidad constante”. Al igual que la “tasa de bits variable” para MP3: se asegurará de gastar los bits en las partes de vídeo que los necesitan y hará que la calidad general sea mejor, con el mismo tamaño de archivo.
Los valores normales de CRF van de 19 a 24, donde más bajo significa “mejor”. Por lo tanto, podrías probar con un Rate Factor de 19. Además, asegúrate de poner el perfil “High”, que permite al codificador utilizar todas las campanas y silbatos y optimizar la calidad para una tasa de bits determinada.