<div dir="ltr"><div>OK, I am beginning to understand. Here is a part of the log.<br><br>Apr  4 16:08:05 rtspdaemon[731]: 0:00:00.015266513   753  0x808d008 DEBUG             RTSPSocket RTSPSocket.cpp:380:StartPipeline: RTSP Pipeline: ( udpsrc port=6215 name=UDPSrc ! application/x-rtp,media=video,payload=96,clock-rate=90000,encoding-name=H264,sprop-parameter-sets=Njc0ZDAwMTZkYTAyODBmNmMwNTUyMDAwMDAwMzAwNDAwMDAwMDc4YzA4MDAzZTgwMDAwYThjMzdiZGYwYmMyMjExYTg=,NjhlZTNjODA= ! valve name=pay0 drop=false )<br>
Apr  4 16:08:06 rtspdaemon[731]: 0:00:00.423412736   753  0x808d008 WARN                 default gststructure.c:2112:gst_structure_from_string: Failed to find delimiter, r==,NjhlZTNjODA=<br>Apr  4 16:08:06 rtspdaemon[731]: 0:00:00.423444876   753  0x808d008 ERROR           GST_PIPELINE ./grammar.y:713:_gst_parse_yyparse: could not parse caps "application/x-rtp,media=video,payload=96,clock-rate=90000,encoding-name=H264,sprop-parameter-sets=Njc0ZDAwMTZkYTAyODBmNmMwNTUyMDAwMDAwMzAwNDAwMDAwMDc4YzA4MDAzZTgwMDAwYThjMzdiZGYwYmMyMjExYTg=,NjhlZTNjODA="<br>
<br></div>gststructure works with ASCII but the sprops-parameter-set is BASE64 encoded. So first, it can't handle the PPS added after the ',' (which is legal). Second, it can't handle '=' in the field (which is legal). Third, for some reason gststructure.c fails when I add the NAL type at the beginning. The problem is that the Android app parses the SPS and will fail if it isn't valid, even though the SPS and PPS are signaled inband.<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Apr 4, 2014 at 3:39 PM, Chuck Crisler <span dir="ltr"><<a href="mailto:ccrisler@mutualink.net" target="_blank">ccrisler@mutualink.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Here is the pipeline.<br><br>    char cPipelineSrc[] = "( udpsrc port=%d name=UDPSrc ! application/x-rtp,media=video,payload=96,clock-rate=90000,encoding-name=H264,"<br>
         "sprop-parameter-sets=Njc0ZDAwMTZkYTAyODBmNmMwNTUyMDAwMDAwMzAwNDAwMDAwMDc4YzA4MDAzZTgwMDAwYThjMzdiZGYwYmMyMjExYTg= ! valve name=pay0 drop=false )";<br>
<br></div>Here is the raw SPS:<br><br>674d0016da0280f6c0552000000300400000078c08003e80000a8c37bdf0bc2211a8<br></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Apr 4, 2014 at 2:21 PM, Chuck Crisler <span dir="ltr"><<a href="mailto:ccrisler@mutualink.net" target="_blank">ccrisler@mutualink.net</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>I am using GStreamer 0.10.30 and the RTSP code 0.10.7. Yes, I realize that I really should upgrade, but that isn't an option at this time. It is possible/likely that the issue I have has been fixed in the 1.x code. (sigh).<br>


<br></div>In my RTSP server I include the sprop-parameter-set parameter. I am testing with an Android accessing the server. The Android requires that the sprop parameter include the NAL type. However, if I put that in, the GStreamer pipeline code (grammar.y, line 713, gst_parse_yyparse) throws an error. If I use the same SPS but remove the 67 nal type (before base64 encoding), GStreamer works but the Android fails.<br>


<br></div>Is this a bug in this version of GStreamer? Should this field include the NAL type? Reading on the net suggests so.<br><br></div>Thank you,<br>Chuck Crisler<br></div>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>