Integrate an output comparison method for mpeg2 video decoder#256
Conversation
ec72471 to
91eeb85
Compare
mdimopoulos
left a comment
There was a problem hiding this comment.
I have a few suggestions for changes and some questions, see individual comments.
Apart from that also
- add gstreamer's standard mpeg2v decoder https://gstreamer.freedesktop.org/documentation/mpeg2dec/index.html?gi-language=c
- if you haven't done regression tests with an ffmpeg and gstreamer decoder (other than mpeg2) i suggest you do, there is risk of regressions in this PR
- at least 1 of the commits should be of type
featsince we are adding a new comparison method - at the end remember to add relevant information to the docs as well as build-related files (pyproject.toml)
2dbdf9a to
d721987
Compare
987238f to
5f7f600
Compare
ylatuya
left a comment
There was a problem hiding this comment.
Besides the comments, you should also add a new mpeg check test suite for the tests https://github.com/fluendo/fluster/tree/master/check
943c014 to
55c8788
Compare
b779962 to
8b954ad
Compare
| ctx.verbose, | ||
|
|
||
| if self.test_method == TestMethod.PIXEL: | ||
| reference_decoder = get_reference_decoder_for_codec(ctx.decoder.codec) |
There was a problem hiding this comment.
This should be checked only once for the test suite instead of doing the check for every test vector. It should also not raise an exception since this will stop running the rest of the test suites.
This must be handled in the run function where the decoder to test is also checked: https://github.com/fluendo/fluster/blob/COM-13022/fluster/test_suite.py#L515
| decoder.multiple_layers = True | ||
| if decoder.codec != test_suite.codec: | ||
| continue | ||
| if test_suite.test_method == TestMethod.PIXEL and decoder.is_reference is True: |
There was a problem hiding this comment.
| if test_suite.test_method == TestMethod.PIXEL and decoder.is_reference is True: | |
| if test_suite.test_method == TestMethod.PIXEL and decoder.is_reference: |
efe9e14 to
4b3477d
Compare
…entical outputs -Old codecs like MPEG-2 Video do not use a standarized IDCT (MPEG-C Part1) causing mismatches in the generated output. -This new method allows creating tests suites that will compare the output pixel by pixel with a tolerance range
No description provided.