fieldanalysis
Analyse fields from video buffers to identify whether the buffers are progressive/telecined/interlaced and, if telecined, the telecine pattern used.
Example launch line
gst-launch-1.0 -v uridecodebin uri=/path/to/foo.bar ! fieldanalysis ! deinterlace ! videoconvert ! autovideosink
This pipeline will analyse a video stream with default metrics and thresholds and output progressive frames.
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──fieldanalysis
Factory details
Authors: – Robert Swain
Classification: – Filter/Analysis/Video
Rank – none
Plugin – fieldanalysis
Package – GStreamer Bad Plug-ins
Pad Templates
sink
video/x-raw:
format: { YUY2, UYVY, Y42B, I420, YV12 }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
src
video/x-raw:
format: { YUY2, UYVY, Y42B, I420, YV12 }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
Properties
block-height
“block-height” guint64
Block height for windowed comb detection
Flags : Read / Write
Default value : 16
block-threshold
“block-threshold” guint64
Block threshold for windowed comb detection
Flags : Read / Write
Default value : 80
block-width
“block-width” guint64
Block width for windowed comb detection
Flags : Read / Write
Default value : 16
comb-method
“comb-method” FieldAnalysisCombMethod *
Metric to be used for identifying comb artifacts if using windowed comb detection
Flags : Read / Write
Default value : 5-tap (2)
field-metric
“field-metric” GstFieldAnalysisFieldMetric *
Metric to be used for comparing same parity fields to decide if they are a repeated field for telecine
Flags : Read / Write
Default value : ssd (1)
field-threshold
“field-threshold” gfloat
Threshold for field metric decisions
Flags : Read / Write
Default value : 0.08
frame-metric
“frame-metric” GstFieldAnalysisFrameMetric *
Metric to be used for comparing opposite parity fields to decide if they are a progressive frame
Flags : Read / Write
Default value : 5-tap (0)
frame-threshold
“frame-threshold” gfloat
Threshold for frame metric decisions
Flags : Read / Write
Default value : 0.002
ignored-lines
“ignored-lines” guint64
Ignore this many lines from the top and bottom for windowed comb detection
Flags : Read / Write
Default value : 2
noise-floor
“noise-floor” guint
Noise floor for appropriate metrics (per-pixel metric values with a score less than this will be ignored)
Flags : Read / Write
Default value : 16
spatial-threshold
“spatial-threshold” gint64
Threshold for combing metric decisions
Flags : Read / Write
Default value : 9
Named constants
FieldAnalysisCombMethod
Members
32-detect
(0) – Difference to above sample in same field small and difference to sample in other field large
isCombed
(1) – Differences between current sample and the above/below samples in other field multiplied together, larger than squared spatial threshold (from Tritical's isCombed)
5-tap
(2) – 5-tap [1,-3,4,-3,1] vertical filter result is larger than spatial threshold*6
GstFieldAnalysisFieldMetric
Members
sad
(0) – Sum of Absolute Differences
ssd
(1) – Sum of Squared Differences
3-tap
(2) – Difference of 3-tap [1,4,1] Horizontal Filter
GstFieldAnalysisFrameMetric
Members
5-tap
(0) – 5-tap [1,-3,4,-3,1] Vertical Filter
windowed-comb
(1) – Windowed Comb Detection (not optimised)
The results of the search are