<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt">Hi,<br><br>I have a file which has APEtag as well as Id3V1 tag.<br><br>However , <span style="font-weight: bold;">MPEG::File::findAPE()</span> function is not able to detect APE footerLocation.<br><br>When I add the code something like - <br><br>    seek(d->hasID3v1 ? -160 : -32, End);<br><br>    long p = tell();<br><br>    if(readBlock(8) == APE::Tag::fileIdentifier()) {<br>      d->APEFooterLocation = p;<br>      seek(d->APEFooterLocation);<br>      APE::Footer footer(readBlock(APE::Footer::size()));<br>      d->APELocation = d->APEFooterLocation - footer.completeTagSize()<br>    + APE::Footer::size();<br>     
 return;<br>    }<span style="font-weight: bold;"><br>  ++  else<br>  ++  {<br>  ++      seek(!d->hasID3v1 ? -160 : -32, End);<br><br>++       long p = tell();<br><br>++        if(readBlock(8) == APE::Tag::fileIdentifier()) {<br>++          d->APEFooterLocation = p;<br>++          seek(d->APEFooterLocation);<br>++          APE::Footer footer(readBlock(APE::Footer::size()));<br>++          d->APELocation = d->APEFooterLocation - footer.completeTagSize()<br>++        + APE::Footer::size();<br>++          return;<br>++        }<br>++    }</span><br><br>it is
 able to parse APEtag. <br><br>Does the standard say , if ID3V1 tag is present , then check for APETAGEX in -160 location from end ?<br><br>Is it fine to parse again from -32 location since I was able to find proper metadata?<br><br><br>Thanks & Regards,<br>Harish Jenny K N <br><br><br><div><br></div></div></body></html>