Transforming GstMeta for saturation overlays

Tim Müller tim at centricular.com
Wed Jul 13 06:33:47 UTC 2016


On Tue, 2016-07-12 at 07:36 -0400, Josh Doe wrote:

Hi Josh,

> I'd like to create a pair of video filters, the first basically
> creates a mask, indicating which pixels are saturated (or just
> over/under a threshold), which are "stuck" (haven't changed in the
> last N frames), perhaps adding other criteria in the future. A second
> element would apply some visualizations to the stream, such as zebra
> stripes or flashing colors. I'm aware of the existing zebrastripe
> element, but it doesn't quite fit my need, as I typically perform
> transformations to the video, such as contrast stretching, mapping
> 16-bit to 8-bit, or scaling, but want the criteria applied to the raw
> input video.
> 
> If I create a new GstMeta in the first element, which will contain
> the mask, the meta will be invalid if videoscale, videoflip,
> videocrop, or any number of other transformations occur.
> 
> I see there is a GstMetaTransformFunction, which gave me hope, but I
> can't find any usages. Anything I'm missing? Thanks!

Make sure to use a recent version of GStreamer, there have been some
changes/fixes to make sure metas get passed through in many places.

Make sure your metas carry the right tags and implement a transform
function to make sure they don't get dropped. As Nicolas pointed out,
check out the existing ones in the video library.

Cheers
 -Tim

-- 

Tim Müller, Centricular Ltd - http://www.centricular.com


More information about the gstreamer-devel mailing list