1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 22:57:44 +00:00

VideoPlayer: Display frames from the VP9 decoder

For testing purposes, the output buffer is taken directly from the
decoder and displayed in an image widget.

The first keyframe can be displayed, but the second will not decode
so VideoPlayer will stop at frame 0 for now.

This implements a BT.709 YCbCr to RGB conversion in VideoPlayer, but
that should be moved to a library for handling color space conversion.
This commit is contained in:
Zaggy1024 2022-09-16 04:07:52 -05:00 committed by Andrew Kaster
parent 1514004cd5
commit 85fd56cf48
2 changed files with 75 additions and 18 deletions

View file

@ -122,7 +122,8 @@ public:
bool discardable() const { return m_discardable; }
void set_discardable(bool discardable) { m_discardable = discardable; }
u64 frame_count() const { return m_frames.size(); }
ByteBuffer const& frame(size_t index) const { return m_frames.at(index); }
Vector<ByteBuffer> const& frames() const { return m_frames; }
ByteBuffer const& frame(size_t index) const { return frames()[index]; }
void add_frame(ByteBuffer frame) { m_frames.append(move(frame)); }
private: