Age | Commit message (Collapse) | Author |
|
Pass the optional '--crop (X,Y)/WxH' parameter through reference_frame
allowing the input to be cropped for comparison
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Allow the user to specify an input crop in the form (X,Y)/WxH
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Parameters can contain characters not suited to use in filenames.
Add '=','(', and ')' to the filtering, and replace with '_'
This reduces extra escaping, and quoting when working with the output
filenames of failed tests and VSP_KEEP_FRAMES=1
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
In the event of failed frames, or VSP_KEEP_FRAMES being set, the output
file names do not sort such that the reference frame is next to the
failed frame.
This can make comparing reference frames and the relevant output frames
tedious and difficult.
Re-arrange the output filenames such that the sort order will match the
option parameters correctly, followed by either the reference frame
identifier, or the frame number at the end of the filename string
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Test conversion from RGB to HSV with output in both HSV24 and HSV32
formats as well as HSV to HSV pass-through.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
This will be used to test RGB to HSV conversion.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The Gen3 platforms don't support VYUY, skip the related tests.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Tests that can't be run due to lack of mandatory features are currently
silent, make them print a message to avoid confusing the user.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
A typo caused fuzzy comparison to be used in all tests. Fix it, and make
sure the fuzzy comparison gets properly enabled when using rotation.
Fixes: ccd867a84863 ("vsp-lib: SRU and rotation are not perfectly emulated by gen-image")
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Turn on fuzzy comparison for rotation and for the SRU regardless of the
scaling ratio.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Insert a UDS in the pipeline to force image partitioning on Gen3
hardware and test all flipping and rotation combinations.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Provide a pipeline configuration in vsp-lib, and simple tests for the
SRU processing unit
Signed-off-by: Kieran Bingham <kieran@bingham.xyz>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Avoid interfering with the vsp-lib namespace by making local variables
local.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Testing all combinations of flipping and rotation is time consuming,
speed it up by lowering the resolution to 640x480.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Use the same input and output formats to disable format conversion as
the purpose of the tests is to test flipping.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The rotation control can be set to a non-default value by a previously
run test, reset it.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
When the environment variable VSP_KEEP_FRAMES is set to 1, all frames
will be kept regardless of the test results.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
This avoids double-averaging due to chroma interpolation at the RPF.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Replace the now defunct -y argument with -i.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Take both the input and output formats into account to compute the alpha
value effectively output by the hardware.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Tests can run with a single output format and different input formats.
If multiple failures are recorded the frame files overwrite each others.
Fix this by naming them with both the input and output formats.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
When the input format is YUV, subsample the chroma during RGB to YUV
conversion based on the YUV format parameters. This matches the RGB to
YUV conversion performed to generate the test input frame fed to the
RPF.
A better fix would be to add support for unpacking all RGB and YUV
formats instead of converting the .pnm reference frames.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
gen-image averages consecutive chroma values when subsampling chroma
horizontally. This matches the hardware behaviour, but isn't desired to
produce test input frames in subsampled formats as otherwise the
hardware will average the values a second time in the RPF to interpolate
missing chroma components.
Add a -C argument to disable chroma averaging on output, to be used to
generate test input frames.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Replace the -y argument with a more flexible -i argument that allows
specifying the input format. This is useful to generate reference frames
based on an RGB pipeline input format that uses less than 8 bits per
pixel.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
This construct depends on the shell used and do not work for all shells.
Instead use make rules to find and extract all *.pnm.gz frames.
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Removing all .bin files when starting a test removes not only the result
of previous runs of the current test as desired, but also the result of
all tests run previously. Fix it by only removing binaries related to
the current test.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
This speeds up tests by avoiding the need to access flash memory or,
worse, NFS.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Test updating the vertical and horizontal flip controls during video
streaming.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Test all combinations of horizontal flip, vertical flip and rotation.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Test CLU and LUT operation in both RGB and YUV modes with different look
up tables.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
When the --pause argument to vsp_runner() is specified, the
corresponding yavta instance will pause after capturing or outputting
the given number of frames and wait for a signal before resuming. The
new vsp_runner_wait() and vsp_runner_resume() functions can be used to
respectively wait for yavta to pause and instruct it to resume.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
This allows reusing variables internal to vsp-lib and getting rid of the
mdev and format arguments to the vsp-runner invocations.
As part of the transition, handle additional options with an explicit
list of supported options instead of passing them straight to yavta.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The parameters currently supported are horizontal and vertical flipping,
rotation, LUT and CLU.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
This allows deciding whether to compare output frames using the exact or
fuzzy algorithm internally, removing the need for an explicit argument
to the compare_frames function.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The reference frame generator scaling algorithm doesn't match the VSP
scaler in a pixel-perfect fashion, use fuzzy comparision of the result.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Depending on the test this lowers the conversion errors or ensures a
pixel-perfect match between the reference frame generator and the
hardware. In the latter case we can now use the faster exact output
verification method.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The VSP instance that supports the largest number of RPF might not be
the same as the one that supports the largest number of WPF. To maximize
test coverage, split the test into RPF and WPF tests that can use
different VSP instances.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Instead of getting the number of BRU inputs from an explicit argument to
the compare_frames function, store it internally when configuring the
pipeline. This simplifies the test scripts by removing the reftype
argument to the compare_frames function.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The information is already known to the pipeline configuration
functions, store it internally and reuse it instead of having to pass it
explicitly.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Remove the need to pipe individual commands to the logger from the test
scripts by moving all logging code internally to vsp-lib and vsp-runner.
As an interesting side effect the removal of shell pipes from the test
scripts avoids running functions in subshells. This makes it possible
for the pipeline configuration functions to set variables that can be
used later.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Stop the global namespace pollution.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|