Resueltos los acertijos de decodificación suave y dura de teléfonos móviles
Para ahorrar espacio de almacenamiento, los archivos de video que reproducimos en el dispositivo se comprimen durante el proceso de reproducción, se requiere un proceso de descompresión reflectante, que es la decodificación
Soft La decodificación; El proceso de decodificación lo completa completamente la CPU, por lo que los requisitos de rendimiento de la CPU son muy altos. Si el rendimiento de la CPU no es bueno y la velocidad de decodificación no puede mantener el ritmo, entonces la imagen que vemos será poco fluida y retrasada. Este fenómeno es muy obvio cuando se decodifica video 4K con los dispositivos móviles del mercado actual. Al mismo tiempo, debido a que la CPU consume mucha energía, cuanto mayor es el uso de la CPU, mayor es el consumo de energía, por lo que la decodificación suave consume mucha energía.
La decodificación dura completa el proceso de decodificación a través de GPU y otros chips similares con capacidades de procesamiento de gráficos. Las GPU están diseñadas en base a un gran rendimiento y computación concurrente y, a veces, aceleran operaciones repetidas con poca correlación de datos. de veces o incluso más, por lo que usar GPU para implementar la decodificación de video es mucho más rápido que la decodificación suave. Además, el consumo de energía de la GPU es mucho menor que el de la GPU, por lo que el consumo de energía de la decodificación física es muy pequeño.
Sin embargo, dado que la GPU en sí está limitada a la plataforma de desarrollo de la GPU, solo puede decodificar el formato de codificación admitido por la propia GPU. Por lo tanto, solo se pueden usar videos que cumplan con el formato de codificación de la decodificación física. decodificación dura, como el formato H264.
Decodificación suave
Decodificación dura
El video en el ejemplo aquí es 720P, por lo que la comparación no es muy obvia. Sin embargo, todavía se puede ver que la decodificación física utiliza mucha menos CPU que la decodificación suave:
Al mismo tiempo, la velocidad de fotogramas de la decodificación física es mucho mayor que la de la decodificación suave, lo que también significa que la la imagen decodificada de forma estricta será más fluida:
Recomendación: para formatos de codificación que cumplen con la decodificación estricta, como H264, use decodificación estricta para decodificar solo videos en formatos de codificación que no cumplan con la decodificación estricta; descodificación.
De esta forma, no sólo reduce la carga de la CPU y hace que la pantalla sea más fluida, sino que también reduce en gran medida el consumo de energía.
Los pasos de la decodificación de video se dividen en:
En primer lugar, ya sea decodificación de hardware o decodificación de software, el proceso de decodificación y los resultados de la decodificación son exactamente los mismos.
La diferencia entre ellos es si el trabajo de decodificación de vídeo lo completa la CPU o la GPU.
Por lo tanto, en teoría, los efectos de la decodificación de hardware y de la decodificación de software deberían ser exactamente los mismos.
Pero en el último paso de decodificación, PostProc (visualización de posprocesamiento, decodificación, desbloqueo, operación de filtrado, desbloqueo).
Desbloquear significa decodificar y desbloquear, lo que puede eliminar el fenómeno del mosaico que puede ser causado por la codificación de compresión H.264 y restaurar verdaderamente las imágenes de video.
El desbloqueo plantea requisitos más altos en la CPU. Cuando el rendimiento de la CPU no es suficiente, al activar la aceleración del hardware de la GPU se desactivará la operación del filtro de desbloqueo de decodificación (Desbloqueo). , verás más obvio. El fenómeno del mosaico obviamente afecta la calidad de la imagen.
En otras palabras, existe que cuando el rendimiento de la CPU no es suficiente, habilitar la decodificación completa desactivará la operación del filtro de desbloqueo de decodificación (Desbloqueo), lo que obviamente afectará la calidad de la imagen.
Sin embargo, según los equipos de telefonía móvil actuales, el rendimiento de la mayoría de las CPU es suficiente para satisfacer las necesidades de decodificación dura. Por lo tanto, el equipo de telefonía móvil en el que se produce esta situación debe ser una máquina de gama baja. muy inferior a los microteléfonos móviles actualmente en el mercado.
Además, en nuestras pruebas reales en varios modelos de iOS y Android, no hemos encontrado que la calidad de la imagen se reduzca significativamente después de activar el descifrado completo.