Can't dynamically change videocrop

I have a project that I got thrown into, uses a gstreamer pipeline. I need to be able to zoom in and out of the video by changing a property with element_set. Following similar solutions I added a videocrop and videoscale. The stream launches fine at first, however, If I change the properties for videocrop the stream stops.

Here’s the part of the pipeline that I changed:
video/x-h264,stream-format=(string)byte-stream,width=(int)1280 ,height=(int)720,framerate=(fraction)15/1 ! h264parse !
omxh264dec disable-dpb=true ! videocrop name=cropper left=200 top=0 right=200 bottom=0 !
videoconvert !
videoscale !
video/x-raw,width=1280,height=720 !
queue !
omxh265enc bitrate=2000000 !

The videocrop plugin is a native gstreamer plugin and it may not support the function. Our plugin is nvvidconv plugin and it also does not support dynamic cropping by default.

The nvvidconv plugin is open source and implemented through NvBuffer APIs. If your output resolution is fixed, you can implement the function through NvBufferTransform(). The source code of nvvidconv plugin is in

Jetson Linux R32.7.4 | NVIDIA Developer
Driver Package (BSP) Sources

For demonstration of NvBuffer APIs, please refer to samples in


Thanks for the help!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.