view icons/sv-icon-light.svg @ 1354:ae68ebb5fbe8 3.0-integration

Fixes to mp3 decode in subrepo. Filter out Xing/LAME info frames, rather than letting them go to the mp3 decoder as if they were audio frames, fixing the 1152-sample zero pad at start of some decoded mp3 files (distinct from decoder delay). Add MAD_BUFFER_GUARD padding at end of mp3 buffer, in order to ensure last frame is decoded successfully (otherwise the decoded audio is truncated). Both gleaned from madplay source code.
author Chris Cannam
date Thu, 24 Nov 2016 17:10:40 +0000
parents 2599f0ffb89b
children
line wrap: on
line source
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:cc="http://web.resource.org/cc/"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
   width="32px"
   height="32px"
   id="svg1900"
   sodipodi:version="0.32"
   inkscape:version="0.44.1"
   sodipodi:docbase="/work/sonic-visualiser/sv/icons"
   sodipodi:docname="sv-icon-light.svg"
   inkscape:export-filename="/work/sonic-visualiser/test-d1.png"
   inkscape:export-xdpi="106.65"
   inkscape:export-ydpi="106.65">
  <defs
     id="defs1902">
    <marker
       inkscape:stockid="Arrow1Lstart"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow1Lstart"
       style="overflow:visible">
      <path
         id="path3958"
         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.8) translate(12.5,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow1Lend"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow1Lend"
       style="overflow:visible;">
      <path
         id="path3955"
         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
         transform="scale(0.8) rotate(180) translate(12.5,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow1Mstart"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow1Mstart"
       style="overflow:visible">
      <path
         id="path3952"
         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.4) translate(10,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow1Mend"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow1Mend"
       style="overflow:visible;">
      <path
         id="path3949"
         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
         transform="scale(0.4) rotate(180) translate(10,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow1Sstart"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow1Sstart"
       style="overflow:visible">
      <path
         id="path3946"
         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.2) translate(6,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow1Send"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow1Send"
       style="overflow:visible;">
      <path
         id="path3943"
         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
         transform="scale(0.2) rotate(180) translate(6,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow2Lstart"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow2Lstart"
       style="overflow:visible">
      <path
         id="path3940"
         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
         transform="scale(1.1) translate(1,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow2Lend"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow2Lend"
       style="overflow:visible;">
      <path
         id="path3937"
         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
         transform="scale(1.1) rotate(180) translate(1,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow2Mstart"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow2Mstart"
       style="overflow:visible">
      <path
         id="path3934"
         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
         transform="scale(0.6) translate(0,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow2Mend"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow2Mend"
       style="overflow:visible;">
      <path
         id="path3931"
         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
         transform="scale(0.6) rotate(180) translate(0,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow2Sstart"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow2Sstart"
       style="overflow:visible">
      <path
         id="path3928"
         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
         transform="scale(0.3) translate(-2.3,0)" />
    </marker>
    <marker
       inkscape:stockid="Arrow2Send"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Arrow2Send"
       style="overflow:visible;">
      <path
         id="path3925"
         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
         transform="scale(0.3) rotate(180) translate(-2.3,0)" />
    </marker>
    <marker
       inkscape:stockid="Tail"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Tail"
       style="overflow:visible">
      <g
         id="g3910"
         transform="scale(-1.2)">
        <path
           id="path3912"
           d="M -3.8048674,-3.9585227 L 0.54352094,0"
           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
        <path
           id="path3914"
           d="M -1.2866832,-3.9585227 L 3.0617053,0"
           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
        <path
           id="path3916"
           d="M 1.3053582,-3.9585227 L 5.6537466,0"
           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
        <path
           id="path3918"
           d="M -3.8048674,4.1775838 L 0.54352094,0.21974226"
           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
        <path
           id="path3920"
           d="M -1.2866832,4.1775838 L 3.0617053,0.21974226"
           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
        <path
           id="path3922"
           d="M 1.3053582,4.1775838 L 5.6537466,0.21974226"
           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
      </g>
    </marker>
    <marker
       style="overflow:visible"
       id="DistanceIn"
       refX="0.0"
       refY="0.0"
       orient="auto"
       inkscape:stockid="DistanceIn">
      <g
         id="g3904">
        <path
           style="fill:none;stroke:#ffffff;stroke-width:1.15;stroke-linecap:square"
           d="M 0,0 L 2,0"
           id="path2306" />
        <path
           style="fill:#000000;fill-rule:evenodd;stroke:none"
           d="M 0,0 L 13,4 L 9,0 13,-4 L 0,0 z "
           id="path2302" />
        <path
           style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square"
           d="M 0,-4 L 0,40"
           id="path2304" />
      </g>
    </marker>
    <marker
       inkscape:stockid="TriangleOutS"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="TriangleOutS"
       style="overflow:visible">
      <path
         id="path3854"
         d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.2)" />
    </marker>
    <marker
       inkscape:stockid="TriangleOutM"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="TriangleOutM"
       style="overflow:visible">
      <path
         id="path3857"
         d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.4)" />
    </marker>
    <marker
       inkscape:stockid="TriangleOutL"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="TriangleOutL"
       style="overflow:visible">
      <path
         id="path3860"
         d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.8)" />
    </marker>
    <marker
       inkscape:stockid="TriangleInS"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="TriangleInS"
       style="overflow:visible">
      <path
         id="path3863"
         d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(-0.2)" />
    </marker>
    <marker
       inkscape:stockid="TriangleInM"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="TriangleInM"
       style="overflow:visible">
      <path
         id="path3866"
         d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(-0.4)" />
    </marker>
    <marker
       inkscape:stockid="TriangleInL"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="TriangleInL"
       style="overflow:visible">
      <path
         id="path3869"
         d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(-0.8)" />
    </marker>
    <marker
       inkscape:stockid="DiamondS"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="DiamondS"
       style="overflow:visible">
      <path
         id="path3872"
         d="M 0,-7.0710768 L -7.0710894,0 L 0,7.0710589 L 7.0710462,0 L 0,-7.0710768 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.2)" />
    </marker>
    <marker
       inkscape:stockid="DiamondM"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="DiamondM"
       style="overflow:visible">
      <path
         id="path3875"
         d="M 0,-7.0710768 L -7.0710894,0 L 0,7.0710589 L 7.0710462,0 L 0,-7.0710768 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.4)" />
    </marker>
    <marker
       inkscape:stockid="DiamondL"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="DiamondL"
       style="overflow:visible">
      <path
         id="path3878"
         d="M 0,-7.0710768 L -7.0710894,0 L 0,7.0710589 L 7.0710462,0 L 0,-7.0710768 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.8)" />
    </marker>
    <marker
       inkscape:stockid="SquareS"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="SquareS"
       style="overflow:visible">
      <path
         id="path3881"
         d="M -5.0,-5.0 L -5.0,5.0 L 5.0,5.0 L 5.0,-5.0 L -5.0,-5.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.2)" />
    </marker>
    <marker
       inkscape:stockid="SquareM"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="SquareM"
       style="overflow:visible">
      <path
         id="path3884"
         d="M -5.0,-5.0 L -5.0,5.0 L 5.0,5.0 L 5.0,-5.0 L -5.0,-5.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.4)" />
    </marker>
    <marker
       inkscape:stockid="SquareL"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="SquareL"
       style="overflow:visible">
      <path
         id="path3887"
         d="M -5.0,-5.0 L -5.0,5.0 L 5.0,5.0 L 5.0,-5.0 L -5.0,-5.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
         transform="scale(0.8)" />
    </marker>
    <marker
       inkscape:stockid="Dot_s"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Dot_s"
       style="overflow:visible">
      <path
         id="path3890"
         d="M -2.5,-1.0 C -2.5,1.7600000 -4.7400000,4.0 -7.5,4.0 C -10.260000,4.0 -12.5,1.7600000 -12.5,-1.0 C -12.5,-3.7600000 -10.260000,-6.0 -7.5,-6.0 C -4.7400000,-6.0 -2.5,-3.7600000 -2.5,-1.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;marker-end:none"
         transform="scale(0.2) translate(7.4, 1)" />
    </marker>
    <marker
       style="overflow:visible"
       id="DistanceOut"
       refX="0.0"
       refY="0.0"
       orient="auto"
       inkscape:stockid="DistanceOut">
      <g
         id="g2300">
        <path
           style="fill:none;stroke:#ffffff;stroke-width:1.15;stroke-linecap:square"
           d="M 0,0 L -2,0"
           id="path2316" />
        <path
           style="fill:#000000;fill-rule:evenodd;stroke:none"
           d="M 0,0 L -13,4 L -9,0 -13,-4 L 0,0 z "
           id="path2312" />
        <path
           style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square"
           d="M 0,-4 L 0,40"
           id="path2314" />
      </g>
    </marker>
    <marker
       inkscape:stockid="Dot_l"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Dot_l"
       style="overflow:visible">
      <path
         id="path3896"
         d="M -2.5,-1.0 C -2.5,1.7600000 -4.7400000,4.0 -7.5,4.0 C -10.260000,4.0 -12.5,1.7600000 -12.5,-1.0 C -12.5,-3.7600000 -10.260000,-6.0 -7.5,-6.0 C -4.7400000,-6.0 -2.5,-3.7600000 -2.5,-1.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;marker-end:none"
         transform="scale(0.8) translate(7.4, 1)" />
    </marker>
    <marker
       inkscape:stockid="Dot_m"
       orient="auto"
       refY="0.0"
       refX="0.0"
       id="Dot_m"
       style="overflow:visible">
      <path
         id="path3893"
         d="M -2.5,-1.0 C -2.5,1.7600000 -4.7400000,4.0 -7.5,4.0 C -10.260000,4.0 -12.5,1.7600000 -12.5,-1.0 C -12.5,-3.7600000 -10.260000,-6.0 -7.5,-6.0 C -4.7400000,-6.0 -2.5,-3.7600000 -2.5,-1.0 z "
         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;marker-end:none"
         transform="scale(0.4) translate(7.4, 1)" />
    </marker>
  </defs>
  <sodipodi:namedview
     id="base"
     pagecolor="#ffffff"
     bordercolor="#666666"
     borderopacity="1.0"
     inkscape:pageopacity="0.0"
     inkscape:pageshadow="2"
     inkscape:zoom="11.197802"
     inkscape:cx="16.018908"
     inkscape:cy="13.609254"
     inkscape:current-layer="layer1"
     showgrid="true"
     inkscape:grid-bbox="true"
     inkscape:document-units="px"
     inkscape:window-width="816"
     inkscape:window-height="606"
     inkscape:window-x="145"
     inkscape:window-y="134" />
  <metadata
     id="metadata1905">
    <rdf:RDF>
      <cc:Work
         rdf:about="">
        <dc:format>image/svg+xml</dc:format>
        <dc:type
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
      </cc:Work>
    </rdf:RDF>
  </metadata>
  <g
     id="layer1"
     inkscape:label="Layer 1"
     inkscape:groupmode="layer">
    <path
       style="fill:none;fill-rule:evenodd;stroke:#d45500;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
       d="M 3.905299,16.01472 C 27.5,16.01472 27.5,16.01472 27.5,16.01472"
       id="path4036" />
    <path
       style="fill:none;fill-rule:evenodd;stroke:#d8e5f2;stroke-width:1.356;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:1.39999998;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
       d="M 4.189383,16.015203 C 7.6265694,16.015203 8.0726528,16.025708 8.0726528,16.025708 C 9.66349,9.1090346 9.741433,8.3087074 10.172784,15.048932 C 10.831635,26.830929 11.416632,20.601324 12.258324,15.76545 C 13.844917,0.39957958 14.006502,6.1759314 14.342565,9.4067063 C 15.634829,25.384548 15.579075,28.965284 16.269833,23.658757 C 16.783168,19.715219 18.310939,3.0919969 18.584891,7.6743646 C 20.490285,25.887346 20.546625,24.84451 21.131971,20.132265 C 23.062537,1.6773601 22.472829,16.437356 23.676672,16.115011 C 27.08449,16.115011 27.026616,16.025708 27.026616,16.025708 L 27.47205,16.025708"
       id="path3783"
       sodipodi:nodetypes="cccccsccccc" />
    <rect
       style="fill:none;stroke:#d45500;stroke-width:2;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
       id="rect3775"
       width="25.004908"
       height="24.915606"
       x="3.4828262"
       y="3.5122664" />
  </g>
</svg>