analyze($fname); getid3_lib::CopyTagsToComments($tags); if (array_key_exists('comments', $tags) && array_key_exists('lyrics', $tags['comments'])) { $output = $tags['comments']['lyrics'][0]; } else if (array_key_exists('comments', $tags) && array_key_exists('unsynchronised_lyric', $tags['comments'])) { $output = $tags['comments']['unsynchronised_lyric'][0]; } else if (array_key_exists('quicktime', $tags) && array_key_exists('moov', $tags['quicktime']) && array_key_exists('subatoms', $tags['quicktime']['moov'])) { read_apple_awfulness($tags['quicktime']['moov']['subatoms']); } } if ($output == null) { $uri = "http://lyrics.wikia.com/api.php?func=getSong&artist=".urlencode($artist)."&song=".urlencode($song)."&fmt=xml"; logger::mark("LYRICS", "Trying",$uri); $d = new url_downloader(array( 'url' => $uri, 'cache' => 'lyrics', 'return_data' => true )); if ($d->get_data_to_file()) { $l = simplexml_load_string($d->get_data()); if ($l->url) { logger::log("LYRICS", " Now Getting",html_entity_decode($l->url)); $d2 = new url_downloader(array( 'url' => html_entity_decode($l->url), 'cache' => 'lyrics', 'return_data' => true )); if ($d2->get_data_to_file()) { if (preg_match('/\