一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

將酷狗krc歌詞解析并轉(zhuǎn)換為lrc歌詞php源碼

最近在進(jìn)行一次對酷狗音樂歌詞采集時發(fā)現(xiàn)酷狗音樂的歌詞直接瀏覽都是“亂碼”,自己平時所見的歌詞都是lrc格式的文本,這種酷狗專用的krc格式的顯然是經(jīng)過特別處理過的,平時用酷狗聽音樂也沒仔細(xì)看他的歌詞有什么不同,只是與天天靜聽等不同的是可以逐字高亮顯示歌詞。

對酷狗的flash播放器進(jìn)行反編譯,發(fā)現(xiàn)這段krc解密的ActionScript代碼:

public function loaderCompleteHandler(param1:ByteArray) : void{  this.newkeyBytes = [64, 71, 97, 119, 94, 50, 116, 71, 81, 54, 49, 45, 206, 210, 110, 105];  var result:* = param1;  var krcBytes:* = new ByteArray();  result.position = 4;  result.readBytes(krcBytes);  var l:* = krcBytes.length;  var i:int;  while (i < l) { krcBytes[i] = krcBytes[i] ^ this.newkeyBytes[i % this.newkeyBytes.length];  i = (i + 1);  } try {  krcBytes.uncompress();  } catch (error:SecurityError) {  errorfun("uncompressError"); return;  }  krcBytes.position = 0;  this.myLyric.dataStr = krcBytes.readUTFBytes(krcBytes.length);  this.successfun();  return; }

根據(jù)這段代碼可以很快轉(zhuǎn)換成php解析代碼:

$enKey = array(64, 71, 97, 119, 94, 50, 116, 71, 81, 54, 49, 45, 206, 210, 110, 105);$krc_content = substr($krc_content,4);$len = strlen($krc_content);$krc_compress = '';for ($k = 0; $k < $len; $k++){ $krc_compress .= chr(ord($krc_content[$k]) ^ $enKey[$k % 16]);}$krc_text = gzuncompress($krc_compress);

上面的$krc_content為krc歌詞壓縮加密的文本內(nèi)容,得到了解析后的krc明文文本歌詞$krc_text,然后就可以很容易的轉(zhuǎn)換成lrc歌詞了,如下:

function krc2lrc($krc_content,$glue = "n"){ $enKey = array(64, 71, 97, 119, 94, 50, 116, 71, 81, 54, 49, 45, 206, 210, 110, 105); $krc_content = substr($krc_content,4); $len = strlen($krc_content); $krc_compress = ''; for ($k = 0; $k < $len; $k++){ $krc_compress .= chr(ord($krc_content[$k]) ^ $enKey[$k % 16]); } $krc_text = gzuncompress($krc_compress); preg_match_all("/[(ar|ti|offset):(.+)]/",$krc_text,$matches); $lrc_text = implode($glue,$matches[0]).$glue; preg_match_all("/[(d{0,8}),(d{0,8})](.+)/",$krc_text,$matches); unset($krc_text,$krc_compress,$krc_content,$enKey); if(!empty($matches[1])){ foreach($matches[1] as $k=>$v){ list($seconds, $millis) = explode('.', $v / 1000);  $lrc_time = date('i:s',1388534400 + $seconds).'.'.substr($millis,0,2); $lrc_cont = preg_replace("/<d{1,8},d{1,8},d{1,8}>/",'',$matches[3][$k]); $lrc_text .= "[{$lrc_time}]{$lrc_cont}{$glue}"; } } return $lrc_text;}

簡單示例如下:

$content = file_get_contents('1.krc');echo krc2lrc($content,'<br/>');

php技術(shù)將酷狗krc歌詞解析并轉(zhuǎn)換為lrc歌詞php源碼,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 午夜视频网站在线观看 | 四虎新地址4hu 你懂的 | 亚洲综合偷自成人网第页色 | 亚洲欧美久久婷婷爱综合一区天堂 | 国产成人悠悠影院 | 国产成人精品亚洲日本在线 | 免费国产网站 | 国产视频在 | 婷婷在线免费视频 | 黄色美女免费网站 | 色老板最新网站视频地址 | 精品麻豆 | 亚洲欧美激情视频 | xxxx日日摸夜夜添夜夜添视频 | 91情侣高清精品国产 | 欧美yw精品日本国产精品 | 美女一级ba大片免色野外 | 色五婷婷 | 国产精品久久久久久一区二区三区 | 婷婷亚洲久悠悠色在线播放 | 欧美wwwxxxx| 国产成人综合视频 | 天天久久狠狠伊人第一麻豆 | 91精品国| 日本一区二区三区精品国产 | 成人综合在线视频免费观看 | 91麻豆精品国产91久久久久久 | 国产乱码精品一区二区三区中 | 天天综合干 | 久久精品伊人网 | 伊人俺去久久涩五月综合 | 日本高清一区二区三区水蜜桃 | 黑人一级毛片 | 思思久久99热免费精品6 | 一本伊人 | 色琪影院| 国产一二区视频 | 日韩在线一区二区三区免费视频 | 中国美女牲交一级毛片 | 天天拍夜夜拍高清视频 | 高清一区高清二区视频 |