Update on what happened in WebKit in the week from February 9 to February 23.
In this week we have a nice fix for video streams timestamps, a fix for a PDF rendering regression, support for rendering video buffers provided by Qualcomm video decoders, and a fix for a font selection issue. Also notable we had a new WPE Android release, and the libsoup 3.6.6 release.
Cross-Port 🐱
Added a new webkit_feature_list_find() convenience function to the public API, which searches for a WebKitFeature given its identifier.
Multimedia 🎥
GStreamer-based multimedia support for WebKit, including (but not limited to) playback, capture, WebAudio, WebCodecs, and WebRTC.
Opportunistically fix decoding timestamps to prevent deletion of preexisting samples when PTS doesn't conflict, fixing potential glitches when inserting videos (eg: ad insertion).
Graphics 🖼️
Fixed a PDF rendering regression caused by the canvas 2D operation recording feature, where switching between the recording canvas and the GPU surface canvas failed to preserve the full save/restore nesting, clip stack, and transparency layer state. Replaced the fragile state-copying approach with a state replay mechanism in GraphicsContextSkia that tracks the full sequence of save restore, clip, and transparency layer operations, then reconstructs the exact nesting on the target canvas when flushing a recording.
Added support for rendering video buffers provided by Qualcomm hardware-accelerated decoders, with aid from the EXT_YUV_target OpenGL extension.
Fixed the font selection issue that the system fallback font cache mixed up different font styles.
Releases 📦️
WPE Android 0.3.2 has been released, and prebuilt packages are available at the Maven Central repository. This is a stable maintenance release which updates WPE WebKit to 2.50.5, which is the most recent stable release.
libsoup 3.6.6 has been released with numerous bug and security fixes.
That’s all for this week!