iqa

IQA will perform full reference image quality assessment, with the first added pad being the reference.

It will perform comparisons on video streams with the same geometry.

The image output will be the heat map of differences, between the two pads with the highest measured difference.

For each reference frame, IQA will post a message containing a structure named IQA.

The only metric supported for now is "dssim", which will be available if https://github.com/pornel/dssim was installed on the system at the time that plugin was compiled.

For each metric activated, this structure will contain another structure, named after the metric.

The message will also contain a "time" field.

For example, if do-dssim is set to true, and there are two compared streams, the emitted structure will look like this:

IQA, dssim=(structure)"dssim,\ sink_1=(double)0.053621271267184856,
sink_2=(double)0.0082939683976297474;", time=(guint64)0;

Example launch line

 gst-launch-1.0 -m uridecodebin uri=file:///test/file/1 ! iqa name=iqa do-dssim=true \
 ! videoconvert ! autovideosink uridecodebin uri=file:///test/file/2 ! iqa.

This pipeline will output messages to the console for each set of compared frames.

Hierarchy

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstAggregator
                    ╰──GstVideoAggregator
                        ╰──iqa

Implemented interfaces

Factory details

Authors: – Mathieu Duponchelle

Classification:Filter/Analyzer/Video

Rank – primary

Plugin – iqa

Package – GStreamer Bad Plug-ins

Pad Templates

sink_%u

video/x-raw:
         format: { AYUV, BGRA, ARGB, RGBA, ABGR, Y444, Y42B, YUY2, UYVY, YVYU, I420, YV12, NV12, NV21, Y41B, RGB, BGR, xRGB, xBGR, RGBx, BGRx }
          width: [ 1, 2147483647 ]
         height: [ 1, 2147483647 ]
      framerate: [ 0/1, 2147483647/1 ]

Presencerequest

Directionsink

Object typeGstVideoAggregatorConvertPad


src

video/x-raw:
         format: { RGBA }
          width: [ 1, 2147483647 ]
         height: [ 1, 2147483647 ]
      framerate: [ 0/1, 2147483647/1 ]

Presencealways

Directionsrc

Object typeGstAggregatorPad


Properties

do-dssim

“do-dssim” gboolean

Run structural similarity checks

Flags : Read / Write

Default value : false


dssim-error-threshold

“dssim-error-threshold” gdouble

dssim value over which the element will post an error message on the bus. A value < 0.0 means 'disabled'.

Flags : Read / Write

Default value : 0


mode

“mode” GstIqaMode *

Controls the frame comparison mode.

Flags : Read / Write

Default value : (none)

Since : 1.18


Named constants

GstIqaMode

Members

strict (0x00000002) – Strict comparison of frames.

Since : 1.18


The results of the search are