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