Bug 211945 - Feature Request: Implement HTMLVideoElement.requestVideoFrameCallback()
Summary: Feature Request: Implement HTMLVideoElement.requestVideoFrameCallback()
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Media (show other bugs)
Version: Safari Technology Preview
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2020-05-15 02:22 PDT by Thomas Steiner
Modified: 2021-03-16 14:19 PDT (History)
10 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Steiner 2020-05-15 02:22:17 PDT
HTMLVideoElement.requestVideoFrameCallback() allows web authors to register a callback which runs in the rendering steps when a new video frame is sent to the compositor. This is intended to allow web authors to do efficient per-video-frame processing of video, such as video processing and painting to a canvas, video analysis, or synchronization with external audio sources. This API has support from Mozilla (https://mozilla.github.io/standards-positions/#requestVideoFrameCallback) and is already implemented in Chromium.

Specification: https://wicg.github.io/video-rvfc/
Comment 1 Radar WebKit Bug Importer 2020-05-15 12:23:50 PDT
<rdar://problem/63284373>
Comment 2 Will Morgan 2020-12-08 06:41:42 PST
This would really help synchronise WebGL UIs dependent on a video feed showing the device camera, or a webcam. Being able to link the requested frame rate from the camera and only render when a new frame is available would be good to maximise performance and battery life.

Render accuracy for our apps on Chrome has improved since adopting the API, and it would be great to see it on Safari/Webkit, too.