[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