I'm using gstreamer for an rtsp streming.
The receveiver pipeline is:
gst-launch-1.0 -v rtspsrc location=rtsp://192.168.3.183:8554/stream ! capsfilter caps="application/x-rtp,media=video" ! queue ! rtph264depay ! h264parse ! imxvpudec ! videorate ! imxg2dvideosink use-vsync=true
The stream is sent to 30fps but the receiver duplicates some frames (I don't know why).
So I would like to use the videorate element to drop the duplicated frames but if I use the pipeline
gst-launch-1.0 -v rtspsrc location=rtsp://192.168.3.183:8554/stream ! capsfilter caps="application/x-rtp,media=video" ! queue ! rtph264depay ! h264parse ! imxvpudec ! videorate ! imxg2dvideosink use-vsync=true
gstreamer crashes with the following error:
gst-launch-1.0:2145): GStreamer-CRITICAL **: gst_buffer_pool_has_option: assertion 'GST_IS_BUFFER_POOL (pool)' failed
(gst-launch-1.0:2145): GStreamer-CRITICAL **: gst_object_unref: assertion 'object != NULL' failed
gst-launch-1.0: ../imxvpuapi/imxvpuapi_vpulib.c:2349: imx_vpu_dec_mark_framebuffer_as_displayed: Assertion `framebuffer != NULL' failed.
I'm using gstreamer 1.8.1