<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><div><div style="background-color: rgb(255, 255, 255); font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; "><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"><div id="yiv1811178887"><div style="background-color: rgb(255, 255, 255); font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; "><div id="yiv1811178887"><div style="background-color: rgb(255, 255, 255); font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; position: static; z-index: auto; ">I've been using the RTSP client of
 live555 to receive a 'full-hd' stream of H264 encoded video over RTSP, sent by VLC (2.0.5).  I have been using the NAL units sent from live555 (via H264VideoRTPSource) and passing them directly (no packetizer or grouper e.g, just prefixing the start code) to a Media Foundation H264 decoder.  This worked perfectly, so then I changed decoder to avcodec (ffmpeg libraries) and the same video
 source has corrupted decoder output (sort of grey smudges with bits of the actual frames in).<br><br>I've been reading through the live555 code and searching through posts on forums to try and see if this is
 a issue with live555 or the av decoder. </div></div></div></div></div></div></div></div></blockquote><div><br></div>Because you've demonstrated that your received H.264 NAL units render OK with one decoder, but not with the other, this suggests that the problem is with the decoder.  (Logic 101 :-)</div><div><br></div><div>One thing to keep in mind, though, is that because network packets have 'jitter' (i.e., are not received at a smooth, constant rate), received NAL units will need to be buffered before being rendered.  (The rendering time should be based upon the 'presentation time' that you get with each NAL unit.)  Some decoders might do buffering automatically; others might not (in which case you'll need to add some buffering yourself).</div><div><br></div><div><br><blockquote type="cite"><div><div style="background-color: rgb(255, 255, 255); font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; "><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"><div id="yiv1811178887"><div style="background-color: rgb(255, 255, 255); font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; "><div id="yiv1811178887"><div style="background-color: rgb(255, 255, 255); font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; position: static; z-index: auto; "> FYI, the same RTSP stream works in VLC as client, but *only* with the use of a H264 packetizer in between the RTSP and decoder modules.</div></div></div></div></div></div></div></div></blockquote><div><br></div>I don't understand what you mean by this, because VLC - when receiving RTSP streams - does so using the LIVE555 libraries, and so does so by receiving one NAL unit at a time, just as your own receiver application does.</div><div><br></div><div>You should check whether the (original, unmodified) VLC media player application plays your stream OK.  If it does, then you could use the VLC code as a model.</div><br><br><div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">Ross Finlayson<br>Live Networks, Inc.<br><a href="http://www.live555.com/">http://www.live555.com/</a></span></span>
</div>
<br></body></html>