<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Axis always used Gstreamer libs since
its MPEG4 models. Later they integrated it in it's "monolith"
streaming service inside camera.<br>
Marcin<br>
<br>
W dniu 2015-04-16 o 09:59, Deanna Earley pisze:<br>
</div>
<blockquote
cite="mid:d8cee0f9ebad40ab89872c1d67bf5e9a@SRV-EXCHANGE-2.icode.co.uk"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Helvetica;
panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:'
panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:"Trebuchet MS";
panose-1:2 11 6 3 2 2 2 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
span.apple-style-span
{mso-style-name:apple-style-span;}
span.EmailStyle18
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:#1F497D;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Ahh,
thanks for that. For reference, I guess it’s MAX_PACKET_SIZE
in MultiFramedRTPSource.cpp, and all the file sinks by
default?<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">I'm
not sure why I didn’t find that beforehand.<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">The
firmware in this camera uses GStreamer which is one of the
big changes they were shouting about.<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">I
don’t know what prior versions were, but it didn’t identify
itself.<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span
style="font-size:10.5pt;font-family:"Trebuchet
MS",sans-serif;color:#5E5E5F">--
<o:p></o:p></span></p>
<p class="MsoNormal"><b><span
style="font-size:10.5pt;font-family:"Trebuchet
MS",sans-serif;color:#5E5E5F">Deanna Earley |</span></b><span
style="font-size:10.5pt;font-family:"Trebuchet
MS",sans-serif;color:#5E5E5F"> Lead d</span><span
style="font-size:10.5pt;font-family:"Trebuchet
MS",sans-serif;color:#5E5E5F">eveloper <b>| </b></span><b><span
style="font-size:10.5pt;font-family:"Trebuchet
MS",sans-serif;color:black" lang="EN-US">icatcher</span></b><b><span
style="font-size:10.5pt;font-family:"Trebuchet
MS",sans-serif;color:#FF9223" lang="EN-US">cctv</span></b><span
style="font-size:10.5pt;font-family:"Calibri",sans-serif;color:#1F497D"
lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><b><span
style="font-size:10.5pt;font-family:"Calibri",sans-serif;color:black"><o:p> </o:p></span></b></p>
<p class="MsoNormal"><span
style="font-size:9.0pt;font-family:"Trebuchet
MS",sans-serif;color:#5E5E5F" lang="EN-US">w:
</span><u><span
style="font-size:9.0pt;font-family:"Trebuchet
MS",sans-serif;color:#595959" lang="EN-US"><a
moz-do-not-send="true"
href="http://www.icode.co.uk/icatcher">www.icode.co.uk/icatcher</a></span></u><span
style="font-size:9.0pt;font-family:"Trebuchet
MS",sans-serif;color:#5E5E5F" lang="EN-US"> | t:
01329 835335 | f: 01329 835338</span><span
style="font-size:10.5pt;font-family:"Calibri",sans-serif;color:black"
lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:7.5pt;font-family:"Trebuchet
MS",sans-serif;color:#919191" lang="EN-US">Registered
Office : 71 The Hundred, Romsey, SO51 8BZ. Company Number
: 03428325</span><span
style="font-size:10.5pt;font-family:"Calibri",sans-serif;color:black"
lang="EN-US"><o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm
0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #E1E1E1
1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif"
lang="EN-US">From:</span></b><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif"
lang="EN-US"> live-devel
[<a class="moz-txt-link-freetext" href="mailto:live-devel-bounces@ns.live555.com">mailto:live-devel-bounces@ns.live555.com</a>]
<b>On Behalf Of </b>Ross Finlayson<br>
<b>Sent:</b> 15 April 2015 18:33<br>
<b>To:</b> LIVE555 Streaming Media - development &
use<br>
<b>Subject:</b> Re: [Live-devel] Maximum interleaved
RTP packet size<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">We have an open case with one of
our RTSP source vendors where RTP streams over
interleaved TCP seem to be throttled resulting in
dropped frames in situations where the camera
increases the frame size.<br>
This does not happen with UDP unicast.<br>
For reference, here's the video explaining the issue
to the vendor:<br>
<a moz-do-not-send="true"
href="https://dl.dropboxusercontent.com/u/2931731/Bugs/Axis/501898/20150325_101155.mp4">https://dl.dropboxusercontent.com/u/2931731/Bugs/Axis/501898/20150325_101155.mp4</a><br>
<br>
The vendor's response suggests it could be a TCP flow
control issue<o:p></o:p></p>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal">Another possibility is that the server
(camera) is also using the “LIVE555 Streaming Media”
software - but an old, buggy version that does not
implement RTP packet writes to TCP sockets as an atomic
action (either written entirely, or not written at all).
In this case it’s possible that - under congestion (when
the server’s OS socket buffer fills up), partially-written
(i.e., corrupted) RTP packets might get transmitted.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">You should investigate this
possibility. (Note that if the server manufacturer uses
our libraries, then they are required under the LGPL to
upgrade their product - upon request by their customers -
to use the latest version of our libraries.)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">Is there a specific upper limit to
the packet size that liveMedia's interleaved TCP
implementation can handle?<o:p></o:p></p>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal">The ‘packet size’ field in the TCP
framing header is 2-bytes long, so the theoretical maximum
is 65535 bytes. However, currently in the code there’s a
hardwired limit of 20000 bytes (the size of the buffer
used by the RTP source (i.e., reception) implementation).<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">It’s
the BlockSize header.</span><o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">I
didn’t think it was standard, but apparently:</span><span
style="font-family:"&apos",serif"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:purple"><a
moz-do-not-send="true"
href="https://tools.ietf.org/html/rfc2326#page-47">https://tools.ietf.org/html/rfc2326#page-47</a></span><span
style="font-family:"&apos",serif"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal">Interesting. I wasn’t aware of this
before.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">It’s
allowed on all requests (bar </span><span
style="font-size:11.0pt;font-family:"&apos",serif;color:#1F497D">OPTIONS</span><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> and </span><span
style="font-size:11.0pt;font-family:"&apos",serif;color:#1F497D">TEARDOWN</span><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">)</span><span
style="font-family:"&apos",serif"><o:p></o:p></span></p>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal">Although it would seem to make sense
only for “SETUP” and “PLAY”…<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Maybe
it could be pulled from </span><span
style="font-size:11.0pt;font-family:"&apos",serif;color:#1F497D">RTSPClient::responseBufferSize</span><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> automatically?</span><span
style="font-family:"&apos",serif"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal">No, that wouldn’t be right - even when
streaming over TCP - because incoming RTP/RTCP packets
aren’t delivered into the RTSPClient’s buffer. (That
buffer’s used only for incoming RTSP responses (or perhaps
requests).)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I might, however, add a mechanism that
will allow the client code to specify that it wants a
specific incoming packet size, and then (if this option is
set) include a “Blocksize:” header in its requests.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><span class="apple-style-span"><span
style="font-family:"Helvetica",sans-serif;color:black">Ross
Finlayson</span></span><span
style="font-family:"Helvetica",sans-serif;color:black"><br>
<span class="apple-style-span">Live Networks, Inc.</span><br>
<span class="apple-style-span"><a moz-do-not-send="true"
href="http://www.live555.com/">http://www.live555.com/</a></span></span>
<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
live-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:live-devel@lists.live555.com">live-devel@lists.live555.com</a>
<a class="moz-txt-link-freetext" href="http://lists.live555.com/mailman/listinfo/live-devel">http://lists.live555.com/mailman/listinfo/live-devel</a>
</pre>
</blockquote>
<br>
</body>
</html>