Ergonomics-wise, it does not seem intuitive to use a method called
allocationSize() to feature detect copyTo support, even if the semantics
are the same. Besides a very careful reading of the spec, how do we
expect developers to know about it?
On 5/14/24 4:32 PM, Eugene Zemtsov wrote:
In that discussion Marcos Cáceres asked for a synchronous way to
detect if format conversion is supported.
We have a synchronous call allocationSize()
<https://www.w3.org/TR/webcodecs/#dom-videoframe-allocationsize> that
throws an unsupported error in cases where format conversion is not
supported.
I added a WPT test around it in a recent CL
<https://chromium-review.googlesource.com/c/chromium/src/+/5530313>.
canCopyTo() might be needed if we have more settings in
VideoFrameCopyToOptions
<https://www.w3.org/TR/webcodecs/#dictdef-videoframecopytooptions> and
might want to know which part exactly is causing an error.
On Tue, May 14, 2024 at 12:25 PM Mike Taylor <miketa...@chromium.org>
wrote:
I see that WebKit raised an API concern around detectability
<https://github.com/WebKit/standards-positions/issues/341#issuecomment-2099746809>.
In your reply, you said "we should consider...". Has that
consideration happened, perhaps as follow-up work? :)
On 5/8/24 4:05 PM, Eugene Zemtsov wrote:
This feature has Privacy, Security, Enterprise, and Debuggability
approvals. Webkit gave a positive signal.
Any objections or questions from the API owners?
On Wed, May 1, 2024 at 4:26 PM Eugene Zemtsov
<ezemt...@google.com> wrote:
I've filed issues for TAG review and firefox and webkit
positions.
> Have you looked into other platform APIs that could
benefit from being able to explicitly specify intermediate
format hinting and/or transformation?
I don't think this kind of review can be done for all web
APIs by one person. It's up to spec editors in each area to
identify these small changes that improve dev experience and
performance.
For media related things:
- VideoFrame is a versatile tool that can be created from
HTMLOrSVGImageElement, HTMLVideoElement, HTMLCanvasElement,
ImageBitmap,
OffscreenCanvaswithout a copy. In a way this change
extends variety of export formatsfor all of them.
So lots of things can be exported to RGB bitmaps without
a canvas now.
- AudioData has a way to be exported into different sampling
formats.
On Wed, May 1, 2024 at 9:41 AM Mike Taylor
<miketa...@chromium.org> wrote:
+1. Would you mind also filing gecko and webkit
positions? I expect them to be positive, given the
informal signals you have in the spec PRs already - but
this also lets them know we're moving ahead with
shipping. Thanks - Mike
On 5/1/24 11:51 AM, Alex Russell wrote:
hey Eugene,
This is an exciting an useful addition! Have you looked
into other platform APIs that could benefit from being
able to explicitly specify intermediate format hinting
and/or transformation? It's a place where (had the TAG
been consulted) I would have expected to see a larger
chain of additions to make this work in other areas, or
at least a discussion of why they aren't (or are?) being
pursued. Have you looked into that?
Best,
Alex
On Tuesday, April 30, 2024 at 3:51:01 PM UTC-7 Eugene
Zemtsov wrote:
> Can you please request reviews for privacy,
security, enterprise, etc in the chromestatus entry?
Done
On Mon, Apr 29, 2024 at 7:44 AM Mike Taylor
<miketa...@chromium.org> wrote:
Can you please request reviews for privacy,
security, enterprise, etc in the chromestatus entry?
On 4/25/24 6:19 PM, 'Eugene Zemtsov' via
blink-dev wrote:
Contact emails
ezemt...@google.com
Explainer
https://gist.github.com/Djuffin/9e2f98025ead49998524510cfeed8d33
Specification
https://www.w3.org/TR/webcodecs/#dom-videoframe-copyto
Summary
VideoFrame.copyTo() can convert pixel data to
RGB pixel format Converting YUV video frames to
RGB is often required for processing them in
libraries like TensorFlow.js and OpenCV.js.
Previously the only possible way to achieve
this was rendering the frame on a canvas.
Specifying VideoFrameCopyToOptions.format and
VideoFrameCopyToOptions.colorSpace makes it
possible to convert frames to RGB pixel formats
by calling VideoFrame.copyTo() without having
to use an extra canvas.
Blink component
Blink>Media>WebCodecs
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EMedia%3EWebCodecs>
Initial public proposal
https://github.com/w3c/webcodecs/issues/92
TAG review
N/A since the change is minor
Risks
Interoperability and Compatibility
None
/Gecko/: Positive
(https://github.com/w3c/webcodecs/pull/754#pullrequestreview-2008590591)
/WebKit/: Positive TPAC 2023. Media working
group session.
/Web developers/:
https://github.com/w3c/webcodecs/issues/92#issuecomment-1594083978
/Other signals/:
WebView application risks
Does this intent deprecate or change behavior
of existing APIs, such that it has potentially
high risk for Android WebView-based applications?
None
Debuggability
None
Is this feature fully tested by
web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?
Yes
https://wpt.fyi/results/webcodecs
videoFrame-copyTo-rgb.any.js
Estimated milestones
Shipping on desktop 126
Shipping on Android 126
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/4668827056209920
--
You received this message because you are
subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop
receiving emails from it, send an email to
blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK8JDrGyVMDipu_nqd%3DKw_9eE2UMtdbiWjbqac0NquwNmm4DMg%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK8JDrGyVMDipu_nqd%3DKw_9eE2UMtdbiWjbqac0NquwNmm4DMg%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
Thanks,
Eugene Zemtsov.
--
Thanks,
Eugene Zemtsov.
--
Thanks,
Eugene Zemtsov.
--
Thanks,
Eugene Zemtsov.
--
You received this message because you are subscribed to the Google Groups
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/c678b850-d14e-43c2-aca1-e923ffadb8c5%40chromium.org.