<?xml version="1.0"?>
<?xml-stylesheet
href="http://www.w3.org/2000/08/w3c-synd/style.css" type="text/css"
?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel rdf:about="http://pear.php.net/bugs/search.php">
    <title>PEAR Bug Search Results</title>
    <link>http://pear.php.net/bugs/search.php?cmd=display&amp;package_name%5B0%5D=MP3_Id</link>
    <description>Search Results</description>
    <dc:language>en-us</dc:language>
    <dc:creator>pear-webmaster@lists.php.net</dc:creator>
    <dc:publisher>pear-webmaster@lists.php.net</dc:publisher>
    <admin:generatorAgent rdf:resource="http://pear.php.net/bugs"/>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase>
    <items>
     <rdf:Seq>
      <rdf:li rdf:resource="http://pear.php.net/bug/10987" />
      <rdf:li rdf:resource="http://pear.php.net/bug/6784" />

     </rdf:Seq>
    </items>
  </channel>

  <image rdf:about="http://pear.php.net/gifs/pearsmall.gif">
    <title>PEAR Bugs</title>
    <url>http://pear.php.net/gifs/pearsmall.gif</url>
    <link>http://pear.php.net/bugs</link>
  </image>

    <item rdf:about="http://pear.php.net/bug/10987">
      <title>MP3_Id: Feature/Change Request 10987 [Assigned] ID3v2 tags are not ignored</title>
      <link>http://pear.php.net/bugs/10987</link>
      <content:encoded><![CDATA[<pre>MP3_Id Feature/Change Request
Reported by cdwj
2007-05-09T03:02:06+00:00
PHP: Irrelevant OS:  Package Version: 1.2.0

Description:
------------
The MP3 frame sync search fails if the file contains an ID3v2 tag with a UCS-2 (Unicode) little endian byte order mark.  An embedded image could also cause a false positive match, although this is content dependent and isn't guaranteed to happen.

Even if parsing ID3v2 tags falls outside the project's scope, it should be straightforward to skip over them using the tag header's length field.

Alternatively, the frame sync algorithm could be made more resilient. It could, for example, look at several following frames to reduce the chances the chosen sync offset is actually wrong.</pre>]]></content:encoded>
      <description><![CDATA[<pre>MP3_Id Feature/Change Request
Reported by cdwj
2007-05-09T03:02:06+00:00
PHP: Irrelevant OS:  Package Version: 1.2.0

Description:
------------
The MP3 frame sync search fails if the file contains an ID3v2 tag with a UCS-2 (Unicode) little endian byte order mark.  An embedded image could also cause a false positive match, although this is content dependent and isn't guaranteed to happen.

Even if parsing ID3v2 tags falls outside the project's scope, it should be straightforward to skip over them using the tag header's length field.

Alternatively, the frame sync algorithm could be made more resilient. It could, for example, look at several following frames to reduce the chances the chosen sync offset is actually wrong.</pre>]]></description>
      <dc:date>2007-05-15T02:59:53+00:00</dc:date>
      <dc:creator>cody &amp;#x64;&amp;#111;&amp;#x74; dw &amp;#x64;&amp;#111;&amp;#x74; jones &amp;#x61;&amp;#116; gmail &amp;#x64;&amp;#111;&amp;#x74; com</dc:creator>
      <dc:subject>MP3_Id Feature/Change Request</dc:subject>
    </item>
    <item rdf:about="http://pear.php.net/bug/6784">
      <title>MP3_ID: Feature/Change Request 6784 [Analyzed] Problem when calculating the duration of songs</title>
      <link>http://pear.php.net/bugs/6784</link>
      <content:encoded><![CDATA[<pre>MP3_ID Feature/Change Request
Reported by nozimica
2006-02-14T21:11:35+00:00
PHP: 4.3.10 OS: Any Package Version: 1.2.0

Description:
------------
I noticed that when calculating the duration of a song, is not considerated that some bytes (I think that about 128) are dedicated to store the info of that song.
One may think that amount of bytes are not sufficient to give trouble, but in specific cases it does. It happened to me, so I reviewed the code of the class, and found this issue.

The song I tested was 9.216.000 bytes long. Bitrate 192kbps, not variable. According to xmms, has 383 seconds, but according to MP3_ID, it should have 384...

in the line 928 of Id.php, where are the files not encoded
in VBR, and with bitrate != 0, we have:

$s = ((8*filesize($this-&gt;file))/1000) / $this-&gt;bitrate;

this, applied to the file I'm talking about, is:
$s = 384;

in the line 932 whe round the number above, but it is
already an integer:

$this-&gt;lengths = (int)$s;

in the line 940 whe have:

$this-&gt;musicsize = ceil($this-&gt;lengths * $this-&gt;bitrate * 1000 / 8);

instance variable supposed to be the the size of the file,
without tag overhead, but with this formula, gives us:

$this-&gt;musicsize = 9216000

that is to say, if the file has no info tags at all!!

This is because (according to what I suppose), when the size of the file can be divided by ($bitrate * 1000), this problem arises.

Please let me know if I am right, and if so, how I should help... :D

And my english is not as good as I should want, but I try!!</pre>]]></content:encoded>
      <description><![CDATA[<pre>MP3_ID Feature/Change Request
Reported by nozimica
2006-02-14T21:11:35+00:00
PHP: 4.3.10 OS: Any Package Version: 1.2.0

Description:
------------
I noticed that when calculating the duration of a song, is not considerated that some bytes (I think that about 128) are dedicated to store the info of that song.
One may think that amount of bytes are not sufficient to give trouble, but in specific cases it does. It happened to me, so I reviewed the code of the class, and found this issue.

The song I tested was 9.216.000 bytes long. Bitrate 192kbps, not variable. According to xmms, has 383 seconds, but according to MP3_ID, it should have 384...

in the line 928 of Id.php, where are the files not encoded
in VBR, and with bitrate != 0, we have:

$s = ((8*filesize($this-&gt;file))/1000) / $this-&gt;bitrate;

this, applied to the file I'm talking about, is:
$s = 384;

in the line 932 whe round the number above, but it is
already an integer:

$this-&gt;lengths = (int)$s;

in the line 940 whe have:

$this-&gt;musicsize = ceil($this-&gt;lengths * $this-&gt;bitrate * 1000 / 8);

instance variable supposed to be the the size of the file,
without tag overhead, but with this formula, gives us:

$this-&gt;musicsize = 9216000

that is to say, if the file has no info tags at all!!

This is because (according to what I suppose), when the size of the file can be divided by ($bitrate * 1000), this problem arises.

Please let me know if I am right, and if so, how I should help... :D

And my english is not as good as I should want, but I try!!</pre>]]></description>
      <dc:date>2006-02-17T11:18:29+00:00</dc:date>
      <dc:creator>nozimica &amp;#x61;&amp;#116; gmail &amp;#x64;&amp;#111;&amp;#x74; com</dc:creator>
      <dc:subject>MP3_ID Feature/Change Request</dc:subject>
    </item>
</rdf:RDF>
