-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rockchip-rk3588: edge: add rkvdec2 support #6777
Conversation
patch/kernel/archive/rockchip-rk3588-6.10/0026-RK3588-Add-VPU121-H.264-Decoder-Support.patch
Show resolved
Hide resolved
If this will do H.264 decoding, we just remove the other patch that added VDPU121. Less patches = better, VP8 decode is negligible since VP8 is pretty old now and VP8<VP9<AV1 |
@amazingfate in your testing, how do the two decoders compare? rkvdec2 vs the VPU121 one |
1836b79
to
5bf8a62
Compare
Use rk3399's compatible string for VDPU121, which will add vp8/mpeg2 decoder and a jpeg encoder.
They can both decode video well, but rkvdec2 support up to 4K resolution. And gstreamer will only use one so we have to choose rkvdec for higher resolution. And now I have disabled h264 in VDPU121 node same as rk3399.
This VPU121 patch will also get sent upstream so I think keeping it is fine. Mainline rk3399 also has VPU121 node for VP8/MPEG2 decoding and JPEG encoding. |
That's nice 👍 Did you do a quality comparison at fixed bitrate and fixed resolution?
The patch is rather small (~350 LOC), so I'm not extremely opposed to keeping it if you want to keep it :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By the way, I like that you @amazingfate did the rkvdec2 support and the Chromium decoder udev rule in two separate commits. This is great, sicne this way one could simply revert one of the commits without affecting the other.
Keep it up like this, this is awesome 👍
Decoder should ouput same NV12 data with the same H264 input. Upstream patches are already checked it with fluster test. |
Description
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Please also note any relevant details for your test configuration.
./compile.sh kernel BOARD=rock-5b BRANCH=edge DEB_COMPRESS=xz KERNEL_CONFIGURE=no KERNEL_GIT=shallow
gst-launch-1.0 --no-fault filesrc location=/home/jfliu/Big_Buck_Bunny_2160_10s_H264_1s.mp4 ! parsebin ! v4l2slh264dec ! autovideosink
Checklist:
Please delete options that are not relevant.