VideoFrame.copyTo is manipulating JS objects in a background queue
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 30/100
- Tipo di issue
- Bug
- Chiarezza
- Da chiarire
- Stato di attività
- Attiva
- Stack tecnologico
- javascript
- Ambito
- api
Direzione di ricerca
Start with the WebCodecs specification's VideoFrame.copyTo algorithm and trace where the JS-visible destination is written and where RGB conversion occurs. Compare the four proposed API or specification directions, then define a chosen approach whose completion criteria cover safe destination mutation and the desired handling of RGB conversion.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
As per https://w3c.github.io/webcodecs/#dom-videoframe-copyto, destination which is a JS visible object is written from a background queue task, which is an anti-pattern.
This creates problems (JS observability, destination mutating during the copyTo tasks).
There are various ways to fix this, for instance:
- make
copyToalgorithm synchronous - Expose a new asynchronous API that would transfer the destination buffer and provide the returned value as part of the promise value.
- Extend
copyToAPI surface to implement 2 within it. - Change the spec to write
destinationasynchronously but in an event loop task with additional checks, even if UA may do it in a smarter way.
As a side note, copyTo algorithm is also synchronously converting to RGB.
It would be convenient to do this asynchronously, which is feasible by cloning the VideoFrame synchronously and using the cloned VideoFrame in the remainder of the algorithm.
- Lingua principale
- HTML
- Stelle
- 1.3k
- Fork
- 192
- Merge medio
- 21h 7m
- PR unite (30g)
- 8
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di w3c/webcodecs
-
privacy-needs-resolution
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
editorial
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
w3c/webcodecs#972 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
w3c/webcodecs#971 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di w3c/webcodecs
Issue simili
-
effort: low prio: low ready
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
digitalfabrik/integreat-cms#4616 ·
I maintainer di solito rispondono entro 5 giorni
-
refactor topic-map
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno
-
Add an EPUB parserApertaarea: core good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
openapi/gknowledge#21 ·
-
get() for StrEnumForse già presa @FeJo5952 l’ha presa oggi. Apertagood first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
collective/icalendar#1921 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
ETQ admin, le select de condition d'une annotation répétable liste les champs publics deux foisAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
demarche-numerique/demarche.numerique.gouv.fr#14301 ·
I maintainer di solito rispondono entro 1 giorno