<div dir="ltr">It has been a while since I worked with the VPU/Freescale and the memory is a bit rusty. The SPS/PPS are quite small. Yes, it is wasteful so you typically count something (seconds, IFrames, whatever) and then send them. I worked on a robotic application over WIFI, so we always had to be concerned about sending the SPS/PPS when out of range. There were also concerns about driving the robot when the driver couldn't see where it was going. :-) (running into people, driving down stairs, others) Also, dropped packets always happen, even under the best conditions, which WIFI isn't.<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Oct 2, 2013 at 11:26 AM, Carlos Rafael Giani <span dir="ltr"><<a href="mailto:dv@pseudoterminal.org" target="_blank">dv@pseudoterminal.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 2013-10-02 16:42, Chuck Crisler wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I don't think that you need to run the parser after the encoder. The encoder produces a valid H264 buffer so the parser can't do anything worthwhile. Yes, you need to store the SPS/PPS and transmit them in the bitstream with each IFrame. The only other thing to look into is whether or not the encoder inserts start codes in the H264 buffer at MB boundaries based on the MTU size and verify that the payloader is breaking the buffer at those boundaries. And make sure that you are setting the MTU properly.<br>
<br>
</blockquote>
<br>
You need the parser in case downstream expects a different format. The VPU produces h264 data in Annex.B (byte-stream) format. There are container formats which do not need Annex.B, so they do not accept it. h264parse can then be used to strip it away.<br>
<br>
An alternative would be to add code to the encoder element to handle both AnnexB and non-Annexb, and access units yes/no. But that seems like code duplication to me if h264parse can do it already.<br>
<br>
Also, isn't putting the SPS/PPS headers with each IFrame wasteful?<br>
______________________________<u></u>_________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.<u></u>freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/<u></u>mailman/listinfo/gstreamer-<u></u>devel</a><br>
</blockquote></div><br></div>