<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jul 24, 2013 at 5:36 AM, Adam Goodwin <span dir="ltr"><<a href="mailto:adam.goodwin.nz@gmail.com" target="_blank">adam.goodwin.nz@gmail.com</a>></span> wrote:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div>
<br>First of all, the sending pipeline doesn't work without the h264 parser, but I don't really understand why. If the camera is outputting H264 format, isn't that all that the payloader should need? </div></div>
</blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div>
<div>Second, I've set the config-interval of the payloader to 4. As I understand it, this should mean that if I run the receiver at any time after the sender has already started, it should take at most 4 seconds for the stream to be recognised. However, it ends up taking more like 8-10 seconds before I start to see the video at the receiver. What am I missing? In practice is there a lower limit at around 8-10 seconds?<br>
</div></div></blockquote><div><br></div><div>You need the h264parser because it will take care of properly extracting the NAL units from the h264 stream. With config-interval you set the interval of when the payloader sends SPS/PPS information about the stream. SPS/PPS are embedded in the h264stream, so the payloader is a bit more intelligent then just putting a header on some data.</div>
<div><br></div><div>I'm not actually sure what the payloader does in the case, that the SPS/PPS information in the h264 stream has a greater interval than the config-interval. My guess is that it will just re transmit the last one it got since SPS/PPS would not change unless the source/encoder changes.</div>
<div><br></div><div>However, the decoder still needs a key frame (I frame) before it can start decoding. So if the camera doesn't output key frames at at least 4 seconds interval that will cause further delay. </div></div>
</div></div>