<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style id="owaParaStyle" type="text/css"></style>
</head>
<body ocsi="0" fpstyle="1" dir="auto">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 13px;">
<div style="">I had the same problem a while back. I also use live555 feeding libavcodec.<br>
While the standard only says you need to have a 7 and an 8 before the first 5 and that after that the 5 or 1 is valid, I have had decoding trouble because of it.<br>
So while all the following are technically legal<br>
7,8,5,1,1,1,1,5,1,1,1...<br>
7,8,5,1,1,1,1,1,1......<br>
7,8,5,5,5,1,1,1,5,1,1,1,5,1,1,1 (some axis cameras by default)<br>
<br>
It is the decoder not live555 that needs the 7,8,5 at the beginning of every key frame.
<br>
I have gotten arguments about this, It seems to vary by version. The 7 and 8 packets are so small compared to
<br>
the key frame slices [5] and the diff frames [1] that I just cache them and inject them if missing. Not only do I get<br>
Rock solid playback, I do not need to worry about a second user starting late on a multicast or trouble when I seek.<br>
<br>
BTW each and every frame needs the 0x00 0x00 0x00 0x01  (4 bytes, aka network byte order. not a 32 bit byte that could end up with endian issues)<br>
</div>
<div style="font-family: Times New Roman; color: #000000; font-size: 16px">
<hr tabindex="-1">
<div style="direction: ltr;" id="divRpF329528"><font color="#000000" face="Tahoma" size="2"><b> From:</b> live-devel-bounces@ns.live555.com [live-devel-bounces@ns.live555.com] on behalf of Jesse Hemingway [jhemingw@nerdery.com]<br>
<b>Sent:</b> Friday, February 08, 2013 8:36 PM<br>
<b>To:</b> LIVE555 Streaming Media - development & use<br>
<b>Cc:</b> LIVE555 Streaming Media - development & use<br>
<b>Subject:</b> Re: [Live-devel] H.264 via RTP - ugly artifacts<br>
</font><br>
</div>
<div></div>
<div>
<div>Interesting, thank you for the response.  I actually discard all but 7, 8 and 5 frames that occur before the initial 'priming' is complete, they are just logged for completeness. So my first buffer passed is of the form [7 8 5], after which I pass all
 frames willy-nilly, even the timing NAL [ 6 ]. I'm wondering if my bytestream framing is wrong?  0x000001.NAL.0x00.  I read the Appendix B bytestream syntax and also the ffmpeg NAL detection code and it seems sufficient, but I've also read posts that indicated
 this simple approach was incorrect.<br>
<snip></div>
</div>
</div>
</div>
<P>This message and any attachments contain confidential and proprietary 
information, and may contain privileged information, belonging to one or more 
affiliates of Windy City Wire Cable & Technology Products, LLC. No privilege 
is waived by this transmission. Unauthorized use, copying or disclosure of such 
information is prohibited and may be unlawful. If you receive this message in 
error, please delete it from your system, destroy any printouts or copies of it, 
and notify the sender immediately by e-mail or phone.</P><br></body>
</html>