Implement a VideoEncoder by GMP APIs
Categories
(Core :: Audio/Video: Web Codecs, task, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox128 | --- | fixed |
People
(Reporter: chunmin, Assigned: aosmond)
References
(Blocks 1 open bug)
Details
Attachments
(7 files)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
To have to SW H264 encoder outside of WebRTC usages if user has no platform-encoder-support/FFmpeg/libx264/libopenh264 installation, we should implement a MediaDataEncoder
by GMP APIs, something like WebrtcGmpVideoEncoder
for WebRTC cases (by GMPVideoEncoderProxy
).
Reporter | ||
Updated•9 months ago
|
Reporter | ||
Updated•9 months ago
|
Assignee | ||
Updated•9 months ago
|
Assignee | ||
Comment 1•9 months ago
|
||
This patch makes MediaDataEncoder declare its refcounting as virtual.
This will allow a future patch in this series to add subclasses that
have multiple superclasses using refcounting.
Assignee | ||
Comment 2•9 months ago
|
||
This patch adds a new class, MediaDataEncoderProxy, that is the
equivalent of MediaDataDecoderProxy for encoders. It allows using
encoders that must be accessed on a particular thread. It will be used
by a later patch in this series.
Assignee | ||
Comment 3•9 months ago
|
||
Assignee | ||
Comment 4•9 months ago
|
||
This patch moves a method used to determine if one is on the GMP thread
from a static method for GMPVideoDecoder into GMPUtils. This allows for
sharing it between the decoder and encoder implementations. It also
ensures we can pack/unpack the latest GMPVideoCodec structure which has
parameters relevant for encoding.
Assignee | ||
Comment 5•9 months ago
|
||
Assignee | ||
Comment 6•9 months ago
|
||
Assignee | ||
Comment 7•9 months ago
|
||
This patch carves out the code in the GMP encoder wrapper in WebRTC that
modifies encoded OpenH264 frames to be acceptable for WebRTC.
Updated•9 months ago
|
Updated•9 months ago
|
Comment 9•9 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/d35fe1a37020
https://hg.mozilla.org/mozilla-central/rev/ee8a31fcc5d7
https://hg.mozilla.org/mozilla-central/rev/a34c0bfdb429
https://hg.mozilla.org/mozilla-central/rev/0e961f2d98b3
https://hg.mozilla.org/mozilla-central/rev/c902b3cc68c7
https://hg.mozilla.org/mozilla-central/rev/60d43ceb8a2c
https://hg.mozilla.org/mozilla-central/rev/c5f3a49a9e44
Description
•