-
Notifications
You must be signed in to change notification settings - Fork 27
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
Add support for videoconformancesink #74
Add support for videoconformancesink #74
Conversation
d2d5ccb
to
3a6b99f
Compare
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.
Thanks a lot for the PR :)
LGTM. I added a little and fussy comment, though.
c536cc8
to
1eb97ab
Compare
Ok, I believe I fixed the first round of review. We settle to videocodectestsink upstream, so I updated the code accordingly also. |
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.
LGTM, apart of the fussy comment. Nice work 👍
The gst_element_exists
you implemented with lru_cache
is exactly what I meant
When available, use the new videocodectestsink instead of filesink. This new sink will produced the appropriate YUV data needed.
1eb97ab
to
efc3e43
Compare
@pamarcos ok, added the "safety" return, and simplified the commit message a bit with only what's relevant to know from a testing point of view. |
Perfect @ndufresne! Thanks a mill for your contribution 💪 |
My next goal is to setup upstream GStreamer CI for software VP8 decode, as this one is passing, I should be able to setup CI for VP9 as well after figuring the one remaining issue, for H.264/H.265, we'll need to think of a clean way to mark as known to fail some of the tests, as it seems we'll never fully pass these, and for HW, we have to deal with HW errors, so such system could be reuse, we basically want to catch regression (or improvement). |
What we use for our CI are the
The expected.out taken from the repo is the output of fluster for that particular decoder when generating the summary. When comparing, we only take into account changes in the result of tests in the summary. This has helped us so far to achieve stability, catching regressions earlier in the dev process. |
This is gold, thanks. |
This PR is in preparation for GStreamer 1.20 and the new videoconformancesink being accepted. This is sent early, so this can get more attention and testing. The patch will check GStreamer version and use the conformance sink if GStreamer is new enough. With the new videoconformancesink, GStreamer padding is ignored, that padding was breaking some V8 and VP9 tests.
Pending GStremaer MR: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2287