Recientemente, quería probar los códecs Webm VP8 y VP9, pero cuando ejecuté ffmpeg
para codificar un archivo H.264 MP4 en uno de los otros dos códecs, me di cuenta de que la codificación es (en casi un orden de magnitud) más lenta.
Un video de 1080p30 de H.264 a VP9 a 3 MBit / s se codifica a alrededor de 6-7 fps, mientras que el mismo video codifica a alrededor de 40 fps a H.264. libvpx-vp9
Usé el códec ffmpeg
para el formato VP9. También obtengo los mismos resultados para VP8 y Theora.
¿Alguien puede explicarme por qué VP9 es mucho más lento? Probé una máquina diferente que me dio resultados similares usando Handbrake.
Respuestas:
libvpx-vp9
es un codificador mucho más lento que,libx264
pero la configuración predeterminada de los hilos en ffmpeg (0 = auto) no es efectiva para libvpx. Ajustarlo manualmente da un aumento de velocidad. p.ejEn una máquina de 4 núcleos, cuando codifico un flujo H.264 1080-30p, recibo un aumento de
3.8 fps
a10 fps
.fuente
-preset
paralibx264
y-speed
paralibvpx-vp9
. Verffmpeg -h full
. Estos pueden marcar una gran diferencia, pero también afectan la calidad o la eficiencia de la compresión.-speed
opción no hizo una gran diferencia para míVP9 es un códec más complejo que proporciona una mejor compresión. La relación compresión / rendimiento de video tiende a ser exponencial. Debe esperar que el reemplazo de VP9 (AV1) sea aún más lento.
fuente