[Live-devel] RTSP Server Packet Loss

Ross Finlayson finlayson at live555.com
Mon Nov 30 16:06:26 PST 2015


> I have a 40 Mb/s 1920x1080 H264 source video file running at 30 frames per second. So each frame is roughly 160 kB being bursted out every 33ms.

I doubt that *each* frame is 160 kBytes - presumably only the ‘key frames’.  But in any case, with key frames this large, I recommend that you reconfigure your encoder so that each key frame is encoded as a sequence of ’slice’ NAL units, rather than as a single NAL unit.

People often have trouble streaming H.264 video with extremely large I-frames, if each I-frame gets encoded as a single NAL-unit.  The problem with this is that these NAL units get sent as a (very long) sequence of RTP packets - and if even one of these RTP packets gets lost, then the whole NAL (I-frame in this case) will get discarded by the receiver; see
	http://lists.live555.com/pipermail/live-devel/2011-December/014190.html
	http://lists.live555.com/pipermail/live-devel/2012-August/015615.html
	http://lists.live555.com/pipermail/live-devel/2013-May/016994.html
	http://lists.live555.com/pipermail/live-devel/2014-June/018426.html
	http://lists.live555.com/pipermail/live-devel/2014-June/018432.html
	http://lists.live555.com/pipermail/live-devel/2014-June/018433.html
	http://lists.live555.com/pipermail/live-devel/2014-June/018434.html
	http://lists.live555.com/pipermail/live-devel/2015-March/019135.html
	http://lists.live555.com/pipermail/live-devel/2015-April/019228.html
For streaming, it’s better to encode large I-frames as a sequence of ‘slice’ NAL units.

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/




More information about the live-devel mailing list