<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>