Fix Stabilize_Video test for platforms that doesn't use fast color space conversion #929
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The Stabilize_Video test fails on platforms that doesn't support accelerated colorspace conversion from yuv420p to rgba.
See the ffmpeg code for more info: https://github.com/FFmpeg/FFmpeg/blob/e8e486332571347dd55822c842ba67276ac308e2/libswscale/yuv2rgb.c#L678-L696
This PR fixes it by rounding the result that caused the test failure.
On x86_64, y = -0.001074643496478603
On riscv64, y = -0.0009904620157904118
The difference mainly comes from
sws_scale
function insrc/FFmpegReader.cpp
. (FMA instructions in OpenCV's library caused some insignificant difference that we can ignore here)The following patch can be used to save a sample of the resulting buffers:
On x86_64:
On riscv64:
Close #893