video_VideoEncodeAccelerator.vp8.bvt failed at Kevin/Bob |
|||||||||
Issue descriptionVersion: 10569.0.0 FlushEncoderDone() checks the number of encoded frames are 1 frame more than number of the frame to encode. For example, we encode 40 frames but get 41 encoded frames. https://cros-goldeneye.corp.google.com/chromeos/healthmonitoring/testDetails?testName=video_VideoEncodeAccelerator&suite=&daysBack=7&board=&architecture=&boardFamily=gru&buildConfig=&reason=&version=&milestone=&dut=&token=AIQH9qP-4VmoOYM_fxZ3j7mQB6vf%3A1524116279282
,
Apr 19 2018
I'd say it's more likely to be a problem with the rockchip libv4l plugin. The driver operates in 1:1 mode, so it always returns as many buffers as it has queued.
,
Apr 20 2018
When flush is done, the rockchip vpu driver should return a zero-size EOS buffer. But I got a non-zero EOS buffer. So I guess the bug might be here.
,
Apr 20 2018
This CL fixed the non-zero EOS buffer issue. https://chromium-review.googlesource.com/#/c/chromiumos/third_party/kernel/+/1021004/ However, there are still some failed test cases related to change/force the bit rate. Here are the failed test cases: - ForceBitrate/VideoEncodeAcceleratorTest.TestSimpleEncode/0 - MidStreamParamSwitchBitrate/VideoEncodeAcceleratorTest.TestSimpleEncode/0 - MultipleEncoders/VideoEncodeAcceleratorTest.TestSimpleEncode/1
,
Apr 20 2018
Updated: Seems it's not related to the bit rate. When I run TestSimpleEncode test case with "--num_frames_to_encode=300", it always return 293 frames only. So this failure only appears when verifying bit rate because we force to encode more frames.
,
Apr 20 2018
https://cs.chromium.org/chromium/src/media/gpu/video_encode_accelerator_unittest.cc?l=694 The comment says one buffer might contain multiple frames. I think it's time to parse it because we would verify the frame number.
,
Apr 20 2018
I don't think it's physically possible to have multiple frames in one CAPTURE buffer in case of Rockchip encoder. The hardware always generates only the DCT part for one frame and driver injects a header, which plugin generated and passed through a control.
,
Apr 23 2018
Correct the number in #5: In ForceBitrate test case we encode 500 frames but get 493 frames. Re #7, Yeah you're right. I checked the output file it only contains 493 frames. So there are 7 frames missing. This is the command I ran: $ ./video_encode_accelerator_unittest --test_stream_data=tulip2-1280x720-1b95123232922fe0067869c74e19cd09.yuv:1280:720:11:out1.vp8:200000:30:200000:30 --gtest_filter=ForceBitrate/VideoEncodeAcceleratorTest.TestSimpleEncode/0
,
Apr 23 2018
I found why it failed, I set the wrong bit rate in #8. For 1280x720 we should set 1200000 instead of 200000.
,
Apr 23 2018
This failure is also occurs at R67, please approve to merge back.
,
Apr 23 2018
,
Apr 23 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/ff7f229879ca1a0cd90dc1d5cfad8dc3e6c1bc67 commit ff7f229879ca1a0cd90dc1d5cfad8dc3e6c1bc67 Author: Chih-Yu Huang <akahuang@google.com> Date: Mon Apr 23 08:36:51 2018 CHROMIUM: media: rockchip-vpu: Not assemble bitstream for EOS buffer. We use zero-size buffer with EOS flag to indicate flush is done. We should not assemble the bitstream for this buffer. BUG= chromium:834649 TEST=pass video_encode_accelerator_unittest SimpleEncode/VideoEncodeAcceleratorTest.TestSimpleEncode/0 Change-Id: I8cfcff6c0c41329d9b18327dba49a6c55978c8bd Signed-off-by: Chih-Yu Huang <akahuang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1021004 Reviewed-by: Tomasz Figa <tfiga@chromium.org> [modify] https://crrev.com/ff7f229879ca1a0cd90dc1d5cfad8dc3e6c1bc67/drivers/media/platform/rockchip-vpu/rockchip_vpu_enc.c
,
Apr 23 2018
#9 and #12 seem inconsistent, like #12 is addressing something else. Tested on Tot, etc.?
,
Apr 23 2018
#9 mentioned about the failure on #8. It was temporary akahuang@'s mistake. #12 is a CL to fix test failure on M67 and M68. Could you approve the CL in #12? Thanks
,
Apr 24 2018
The CL in #12 is landed at 10610.0.0, and the test went back to green. Please approve this CL, thanks.
,
Apr 24 2018
Your change meets the bar and is auto-approved for M67. Please go ahead and merge the CL to branch 3396 manually. Please contact milestone owner if you have questions. Owners: cmasso@(Android), cmasso@(iOS), kbleicher@(ChromeOS), govind@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Apr 24 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/cf48060cc8a28aaff3f7e97860e360bb06978d0c commit cf48060cc8a28aaff3f7e97860e360bb06978d0c Author: Chih-Yu Huang <akahuang@google.com> Date: Tue Apr 24 04:56:44 2018 CHROMIUM: media: rockchip-vpu: Not assemble bitstream for EOS buffer. We use zero-size buffer with EOS flag to indicate flush is done. We should not assemble the bitstream for this buffer. BUG= chromium:834649 TEST=pass video_encode_accelerator_unittest SimpleEncode/VideoEncodeAcceleratorTest.TestSimpleEncode/0 Change-Id: I8cfcff6c0c41329d9b18327dba49a6c55978c8bd Signed-off-by: Chih-Yu Huang <akahuang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1021004 Reviewed-by: Tomasz Figa <tfiga@chromium.org> (cherry picked from commit ff7f229879ca1a0cd90dc1d5cfad8dc3e6c1bc67) Reviewed-on: https://chromium-review.googlesource.com/1025152 [modify] https://crrev.com/cf48060cc8a28aaff3f7e97860e360bb06978d0c/drivers/media/platform/rockchip-vpu/rockchip_vpu_enc.c
,
Apr 27 2018
This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible! If all merges have been completed, please remove any remaining Merge-Approved labels from this issue. Thanks for your time! To disable nags, add the Disable-Nags label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Apr 30 2018
This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible! If all merges have been completed, please remove any remaining Merge-Approved labels from this issue. Thanks for your time! To disable nags, add the Disable-Nags label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 1 2018
The fix landed to 67 branch few days ago. Removing Merge-Approved-67. Also, I believe this is "Fixed", not "Verified".
,
May 25 2018
https://stainless.corp.google.com/search?view=matrix&row=model&col=build&first_date=2018-05-23&last_date=2018-05-25&test=video_VideoEncodeAccelerator.vp8&build=R68-*&board=bob%7Ckevin&exclude_cts=false&exclude_not_run=false&exclude_non_release=true&exclude_au=true&exclude_acts=true&exclude_retried=true&exclude_non_production=false https://stainless.corp.google.com/search?view=matrix&row=model&col=build&first_date=2018-05-23&last_date=2018-05-25&test=video_VideoEncodeAccelerator.vp8&build=R67-*&board=bob%7Ckevin&exclude_cts=false&exclude_not_run=false&exclude_non_release=true&exclude_au=true&exclude_acts=true&exclude_retried=true&exclude_non_production=false |
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by akahuang@chromium.org
, Apr 19 2018