Regarding frame drops

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Regarding frame drops

Shilpa Chandrappa
Hi,

I am receiving an rtsp stream and saving in h264 format. I need to check if there was any frame drops in this process, So I enabled qos in filesink pipeline and enabled logs using command "gst-launch-0.10 rtspsrc location=rtsp://XYZ ! rtph264depay ! filesink location=video.264 qos=true --gst-debug=GST_QOS:5"

Below logs were generated when I run the command.

0:00:38.044612357  1965 0x2b71e8f0 DEBUG                GST_QOS /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2721:gst_base_sink_perform_qos:<filesink0> avg_duration: 0:00
:00.038556718, avg_pt: 0:00:00.029106758, avg_rate: 0.955763
0:00:38.044677584  1965 0x2b71e8f0 DEBUG                GST_QOS /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2756:gst_base_sink_perform_qos:<filesink0> updated: avg_durat
ion: 0:00:00.038178289, avg_pt: 0:00:00.029536067, avg_rate: 0.94438
0:00:38.376289675  1965 0x2b71e8f0 DEBUG                GST_QOS /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2644:gst_base_sink_send_qos:<filesink0> qos: type 0, proporti
on: 0.944380, diff 0, timestamp 0:00:07.425346814
0:00:38.376447993  1965 0x2b71e8f0 DEBUG                GST_QOS /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesrc.c:1733:gst_base_src_update_qos:<udpsrc0> qos: proportion: 0.9443
80, diff 0, timestamp 0:00:07.425346814
0:00:38.378319084  1965 0x2b71e8f0 DEBUG                GST_QOS /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2939:gst_base_sink_do_render_stats:<filesink0> avg_render: 0:
00:00.000391919
0:00:38.378393857  1965 0x2b71e8f0 DEBUG                GST_QOS /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2716:gst_base_sink_perform_qos:<filesink0> start: 0:00:07.459
030752, stop 0:00:07.459030752, entered 0:00:07.459030752, left 0:00:07.459030752, pt: 0:00:00.033683938, duration 0:00:00.035298620,jitter 0


I am observing jitter value as 0 throughout. Is Jitter value '0' means no frame drops ?  

I would like to know is this the way to check framedrops or is there any other mechanism.

Thanks,
Shilpa Chandrappa
Reply | Threaded
Open this post in threaded view
|

Re: Regarding frame drops

Tim Müller
On Mon, 2014-02-03 at 20:30 -0800, Shilpa Chandrappa wrote:

Hi,

> I am receiving an rtsp stream and saving in h264 format. I need to check if
> there was any frame drops in this process, So I enabled qos in filesink
> pipeline and enabled logs using command "gst-launch-0.10 rtspsrc
> location=rtsp://XYZ ! rtph264depay ! filesink location=video.264 qos=true
> --gst-debug=GST_QOS:5"

The QoS mechanism on the sinks is meant to tell upstream elements such
as decoders about how early or late buffers were at the sink. This is
primarily useful for a playback scenario, so that a decoder can skip
some frames and jump to the next keyframe if it's too slow to decode and
output data so that the sink (which syncs to the clock) drops frames
because they're too late.

In an rtpdepay ! filesink scenario, there should never be any data
dropped between the depayloader and filesink.

If you're interested in packet loss between sender and receiver, you
would have to look at the rtsp/jitterbuffer side. rtpjitterbuffer will
send events downstream when packet loss occurs if so enabled (do-lost
property).

Cheers
 -Tim

> Below logs were generated when I run the command.
>
> 0:00:38.044612357  1965 0x2b71e8f0 DEBUG                GST_QOS
> /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
> ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2721:gst_base_sink_perform_qos:<filesink0>
> avg_duration: 0:00
> :00.038556718, avg_pt: 0:00:00.029106758, avg_rate: 0.955763
> 0:00:38.044677584  1965 0x2b71e8f0 DEBUG                GST_QOS
> /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
> ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2756:gst_base_sink_perform_qos:<filesink0>
> updated: avg_durat
> ion: 0:00:00.038178289, avg_pt: 0:00:00.029536067, avg_rate: 0.94438
> 0:00:38.376289675  1965 0x2b71e8f0 DEBUG                GST_QOS
> /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
> ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2644:gst_base_sink_send_qos:<filesink0>
> qos: type 0, proporti
> on: 0.944380, diff 0, timestamp 0:00:07.425346814
> 0:00:38.376447993  1965 0x2b71e8f0 DEBUG                GST_QOS
> /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
> ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesrc.c:1733:gst_base_src_update_qos:<udpsrc0>
> qos: proportion: 0.9443
> 80, diff 0, timestamp 0:00:07.425346814
> 0:00:38.378319084  1965 0x2b71e8f0 DEBUG                GST_QOS
> /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
> ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2939:gst_base_sink_do_render_stats:<filesink0>
> avg_render: 0:
> 00:00.000391919
> 0:00:38.378393857  1965 0x2b71e8f0 DEBUG                GST_QOS
> /home/developer/Yocto-1.4/build/tmp/work/armv7a-vfp-neon-poky-linux-gn
> ueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c:2716:gst_base_sink_perform_qos:<filesink0>
> start: 0:00:07.459
> *030752, stop 0:00:07.459030752, entered 0:00:07.459030752, left
> 0:00:07.459030752, pt: 0:00:00.033683938, duration 0:00:00.035298620,jitter
> 0*
>
>
> I am observing jitter value as 0 throughout. Is Jitter value '0' means no
> frame drops ?  
>
> I would like to know is this the way to check framedrops or is there any
> other mechanism.
>
> Thanks,
> Shilpa Chandrappa
>
>
>
> --
> View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Regarding-frame-drops-tp4665059.html
> Sent from the GStreamer-devel mailing list archive at Nabble.com.
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

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

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel