Novedades de Chrome 94

Tenga en cuenta lo siguiente:

  • El espacio de color predeterminado para los elementos <canvas> ahora se define formalmente en la especificación como SRGB, y puedes cambiarlo a Display P3.
  • WebCodecs es una forma nueva y de bajo nivel de acceder a códecs de audio y video integrados, importante para la transmisión de juegos, editores de video, etcétera.
  • WebGPU inicia su prueba de origen.
  • La Cumbre de AWP se realizará del 6 al 7 de octubre.
  • Además, hay mucho más.

Soy Pete LePage, trabajando y disparando desde casa. Veamos las novedades para desarrolladores en Chrome 94.

Espacio de color predeterminado para elementos canvas

La manera en que se renderiza el color en la pantalla es fundamental para algunos usuarios. Para los fotógrafos, los ilustradores impresos y muchos otros, los colores en la pantalla deben coincidir con los que se imprimen. A partir de Chrome 94, los elementos <canvas> se administran completamente por color mediante sRGB. Anteriormente, sRGB era una convención, pero no se definía explícitamente en la especificación.

opts = {colorSpace:'display-p3'};
const ctx = canvas.getContext('2d', opts);

Lo más importante es que ahora puedes especificar qué espacio de color usar cuando creas un objeto 2d de renderización de <canvas> o un objeto ImageData, incluido el espacio de color P3.

WebCodecs

Colocar un video en una página es bastante fácil. Sin embargo, si necesitas hacer algo un poco más complejo y, además, interactuar con los componentes de una transmisión de video por Internet, es un proceso difícil y, por lo general, requiere que uses Web Assembly para enviar tus propios códecs.

Sin embargo, enviar tu propio códec significa escribir código que el navegador ya tiene y no puede aprovechar la aceleración de hardware. La API de Web Codecs permite usar los códecs y componentes multimedia que ya están en el navegador.

Personalmente, siempre tuve problemas para recordar los interruptores de línea de comandos correctos para codificar un video para la Web o para convertir un GIF en un archivo de video. Con las APIs disponibles a través de WebCodecs, pude compilar rápidamente una aplicación web que lee un archivo y exporte los archivos correctos necesarios para la Web.

La ruta de acceso de un objeto Canvas o ImageBitmap a la red o al almacenamiento
La ruta de acceso de un objeto Canvas o ImageBitmap a la red o al almacenamiento

Apps web que requieren control total sobre la forma en que se procesa el contenido multimedia, como editores de video, videoconferencias, apps de transmisión, etcétera El acceso a los navegadores integrados en los controles multimedia es enorme.

Es difícil mostrar algo útil en treinta segundos, así que consulta Procesamiento de videos con WebCodecs en web.dev para obtener un análisis detallado con mucho código y algunas demostraciones interesantes.

WebGPU

WebGPU es una nueva API que expone capacidades de gráficos modernas, específicamente Direct3D 12, Metal y Vulkan. Se lo puede considerar como WebGL, pero proporciona acceso a funciones más avanzadas de la GPU y también admite la realización de computaciones generales en la GPU.

Diagrama de arquitectura que muestra la conexión de WebGPU entre las APIs del SO y Direct3D 12, Metal y Vulkan.
Diagrama de la arquitectura de WebGPU

Se iniciará una prueba de origen en Chrome 94, y Safari y Firefox están trabajando en sus implementaciones.

Una demostración de Babylon.js de un mar agitado que se simula con la capacidad de sombreador de cómputos de WebGPU.

François tiene un excelente artículo, Cómo acceder a las funciones modernas de GPU con WebGPU en web.dev con los detalles, y compara el rendimiento de la multiplicación de matrices que se ejecuta en la CPU en comparación con la GPU. Esta es una pista. La GPU gana.

Cumbre de AWP

La Cumbre de AWP se realizará del 6 al 7 de octubre. Es una conferencia en línea gratuita que se enfoca en ayudar a todos a tener éxito con las apps web progresivas. La Cumbre de AWP es una colaboración entre personas de varias empresas diferentes que participan en la creación de tecnologías de AWP: Google, Intel, Microsoft y Samsung.

Hay muchísimas charlas excelentes y contenido. Obtén más información y regístrate en PWASummit.org. ¡Espero verte allí!

Y mucho más.

Por supuesto que hay mucho más.

El método scheduler.postTask() priorizado te permite programar tareas y cambiar sus prioridades de forma dinámica o cancelarlas todas.

Si alguna vez luchaste por cambiar el diseño cuando aparecen las barras de desplazamiento, la propiedad scrollbar-gutter te pondrá contento. Proporciona control sobre la presencia de los medianiles de la barra de desplazamiento, lo que te permite evitar los cambios de diseño a medida que se expande el contenido.

El uso de WebSQL en contextos de terceros dejó de estar disponible y se espera su eliminación en Chrome 97. Web SQL Database estándar se abandonó en noviembre de 2010. Nunca se implementó en Firefox y dejó de estar disponible en Safari en 2019. Se dará de baja y se quitará de Chrome cuando el uso sea lo suficientemente bajo. Si aún usas WebSQL, este es un buen momento para comenzar a planificar tu migración.

Además, la API de teclado virtual te brinda más control sobre cómo y cuándo se muestra el teclado virtual en pantalla. Te permite controlar de forma explícita cualquier comportamiento de desplazamiento o cambios en el diseño cuando aparece o desaparece el teclado.

Lecturas adicionales

Esto abarca solo algunos de los aspectos más destacados. Consulta los vínculos a continuación para ver cambios adicionales en Chrome 94.

Suscribirse

Para mantenerte al día, suscríbete al canal de YouTube de Chrome Developers y recibirás una notificación por correo electrónico cada vez que lancemos un video nuevo.

Soy Pete LePage, y en cuanto se lance Chrome 95, estaré aquí para contarte las novedades de Chrome.