The following table lists the GStreamer plug-in properties supported by the vvas_xabrscaler plug-in.
The following default value of interpolation-mode is the default for library-name, that is, libvvas_image_process_hw_lib.so. vvas_xabrscaler queries these values from VvasImageProcess.
Property Name |
Type |
Range |
Default |
Description |
|---|---|---|---|---|
avoid-output-copy |
Boolean |
true/false |
False |
Avoid output frames copy on all source pads even when the downstream does not support the GstVideoMeta metadata. |
enable-pipeline |
Boolean |
true/false |
false |
Enable buffer pipelining to improve performance in non zero-copy use cases. |
in-mem-bank |
Unsigned int |
0 - 65535 |
-1 |
VVAS input memory bank to allocate memory. If not set, it will be queried from the VVAS core module. |
out-mem-bank |
Unsigned int |
0 - 65535 |
-1 |
VVAS output memory bank to allocate memory. If not set, it will be queried from the VVAS core module. |
xclbin-location |
string |
N/A |
NULL |
The location of the xclbin. |
library-name |
string |
N/A |
libvvas_image
_process_hw_lib.so
|
Image Process library name. |
library-config |
string |
N/A |
{“kernel-name”:
“image_processing:
{image_processing_1}
“}
|
Image Process library configuration string. The default value is only valid for the libvvas_image_process_hw_lib.so library. |
interpolation-mode |
integer |
0, 1, 2 |
0 |
Interpolation Mode to use:
0: BILINEAR
1: BICUBIC
2: POLYPHASE
Default is 0 (BILINEAR) for the hardware image-process library ( |
alpha-b |
float |
0 to 128 |
0 |
Mean subtraction for the blue channel, needed for PPE. |
alpha-g |
float |
0 to 128 |
0 |
Mean subtraction for the green channel, needed for PPE. |
alpha-r |
float |
0 to 128 |
0 |
Mean subtraction for the red channel, needed for PPE. |
beta-b |
float |
0 to 1 |
1 |
Scaling for the blue channel, needed for PPE. |
beta-g |
float |
0 to 1 |
1 |
Scaling for the green channel, needed for PPE. |
beta-r |
float |
0 to 1 |
1 |
Scaling for the red channel, needed for PPE. |
crop-x |
unsigned integer |
0 to 3840 |
0 |
Crop X coordinate. |
crop-y |
unsigned integer |
0 to 2160 |
0 |
Crop Y coordinate. |
crop-width |
unsigned integer |
0 to 3840 |
0 |
Crop width. If this is 0 or not set, it will be calculated as input width - |
crop-height |
unsigned integer |
0 to 2160 |
0 |
Crop height. If this is 0 or not set, it will be calculated as input height - |
software-scaling |
Boolean |
true/false |
false |
Retained for GObject compatibility. The software image-process library is not supported in this release; keep |
maintain-aspect-ratio |
Boolean |
true/false |
false |
Maintains the aspect ratio in the output with the aspect ratio of the input video. |
quantization-factor |
float |
1.0 - 256.0 |
1.0 |
Quantization factor. |
Note
The image-processing library has some alignment requirements, so the crop parameters you provide are aligned as per the library requirement; alignment ensures that it covers the region of crop that you specify, so the final cropped image might have extra pixels cropped.
This plug-in queries the quantization-factor from the downstream vvas_xinfer plug-in (if available) and applies it if you have not set the quantization-factor. You can override the vvas_xinfer suggested values by setting the quantization-factor property. The quantization factor is multiplied to the beta values.
The maximum value of crop-x, crop-y, crop-width, and crop-height are as per the maximum resolution supported by VvasImageProcess. vvas_xabrscaler will query these values from VvasImageProcess and update them accordingly.