先從最基本的讀取歌詞文件開始:
class LrcHandle {
private List mWords = new ArrayList();
private List mTimeList = new ArrayList();
//處理歌詞文件
public void readLRC(String path) {
File file = new File(path);
try {
FileInputStream fileInputStream = new FileInputStream(file);
InputStreamReader inputStreamReader = new InputStreamReader(
fileInputStream, "utf-8");
BufferedReader bufferedReader = new BufferedReader(
inputStreamReader);
String s = "";
while ((s = bufferedReader.readLine()) != null) {
addTimeToList(s);
if ((s.indexOf("[ar:") != -1) || (s.indexOf("[ti:") != -1)
|| (s.indexOf("[by:") != -1)) {
s = s.substring(s.indexOf(":") + 1, s.indexOf("]"));
} else {
String ss = s.substring(s.indexOf("["), s.indexOf("]") + 1);
s = s.replace(ss, "");
}
mWords.add(s);
}
bufferedReader.close();
inputStreamReader.close();
fileInputStream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
mWords.add("沒有歌詞文件,趕緊去下載");
} catch (IOException e) {
e.printStackTrace();
mWords.add("沒有讀取到歌詞");
}
}
public List getWords() {
return mWords;
}
public List getTime() {
return mTimeList;
}
// 分離出時間
private int timeHandler(String string) {
string = string.replace(".", ":");
String timeData[] = string.split(":");
// 分離出分、秒並轉換為整型
int minute = Integer.parseInt(timeData[0]);
int second = Integer.parseInt(timeData[1]);
int millisecond = Integer.parseInt(timeData[2]);
// 計算上一行與下一行的時間轉換為毫秒數
int currentTime = (minute * 60 + second) * 1000 + millisecond * 10;
return currentTime;
}
private void addTimeToList(String string) {
Matcher matcher = Pattern.compile(
"[d{1,2}:d{1,2}([.:]d{1,2})?]").matcher(string);
if (matcher.find()) {
String str = matcher.group();
mTimeList.add(new LrcHandle().timeHandler(str.substring(1,
str.length() - 1)));
}
}
}
一般歌詞文件的格式大概如下:
[ar:藝人名]
[ti:曲名]
[al:專輯名]
[by:編者(指編輯LRC歌詞的人)]
[offset:時間補償值] 其單位是毫秒,正值表示整體提前,負值相反。這是用於總體調整顯示快慢的。
但也不一定,有時候並沒有前面那些ar:等標識符,所以我們這里也提供了另一種解析方式。
歌詞文件中的時間格式則比較統一:[00:00.50]等等,00:表示分鍾,00.表示秒數,.50表示毫秒數,當然,我們最後是要將它們轉化為毫秒數處理才比較方便。
Ⅱ 帶歌詞的安卓手機音樂播放軟體
帶歌詞的安卓手機音樂播放軟體有酷狗音樂、QQ音樂、網易雲音樂、天天動聽、酷我音樂。
1、酷狗音樂
在酷狗音樂上,聽、看、唱功能分工不同。「聽」版塊以海量曲庫為基石;「看」板塊以直播功能為主,與音樂短視頻和自製音樂節目形成影音聯動;「唱」板塊,「做評委」和「打擂台」融入在線K歌功能。此外還提供「蝰蛇音效」、「倍速播放」、「識曲」、「跑步模式」等個性化工具。
2、QQ音樂
QQ音樂隸屬於中國在線音樂服務領航者騰訊音樂娛樂集團,是國內領先的音樂流媒體平台。自2005年創立至今,QQ音樂注冊用戶總量已達8億。
以優質內容為核心,以大數據與互聯網技術為推動力,QQ音樂致力於打造「智慧聲態」的「立體」泛音樂生態圈,為用戶提供多元化的音樂生活體驗。
3、網易雲音樂
網易雲音樂由網易開發的音樂產品,是網易杭州研究院的成果,依託專業音樂人、DJ、好友推薦及社交功能,在線音樂服務主打歌單、社交、大牌推薦和音樂指紋,以歌單、DJ節目、社交、地理位置為核心要素,主打發現和分享。該產品2013年4月23日正式發布。
4、天天動聽
天天動聽(TTPOD)是由上海水渡石信息技術有限公司開發音樂播放器,是一款功能強大、完全免費的音樂播放軟體。支持歌詞和歌曲圖片下載,皮膚隨心更換。
天天動聽有炫麗震撼的可視化效果,同時預置豐富的均衡器效果,支持音效增強,簡潔人性化的操作,有Android,iOS,Windows Phone,Symbian,PC客戶端以及網頁版。
5、酷我音樂
酷我音樂擁有曲庫量近2000萬首,與100餘家唱片公司簽署獨家代理版權,還擁有中國好聲音第一季、中國好聲音第二季、蒙面歌王、燃燒吧少年、音樂大師課等綜藝節目的獨家版權。此外,太陽的後裔、青雲志、好先生、親愛的翻譯官等熱門影視劇的音樂原聲也被酷我收入庫中。
Ⅲ android開發音樂播放器怎麼顯示歌詞
自己定義VIEW來配合歌顯示吧;
網路 android開發音樂播放器顯示歌詞
有例子可以參考的
加油
Ⅳ 求:安卓手機可以在桌面顯示歌詞的音樂播放器
最新版本的天天動聽2.3可以在桌面顯示歌詞的
打開天天動聽,然後menu
——工具——系統設置——偏好設置——迷你歌詞設置——勾選迷你歌詞
就可以了!
Ⅳ 安卓手機自帶音樂播放器怎樣才能顯示歌詞
那就要看手機音樂播放器是否支持LRC歌詞顯示了!如果支持的話,到播放器設置裡面去設置,如果不支持,那隻能下載第三方軟體來實現這個功能了!
Ⅵ 安卓音樂播放器哪個可以直接顯示專輯圖和歌詞
這跟播放器沒關系 如果你下載的歌詞是帶的 顯示歌詞的播放器都會顯示 如果不自帶還要求顯示 只能播放器連網下載了
Ⅶ 求android系統支持lrc歌詞的音樂播放器
推薦天天動聽。界面華麗,音質好,支持歌詞在播放歌曲時自動在線下載,可以摔歌,顯示專輯封面,總之很好,個人認為比酷狗好多了,如果喜歡酷狗也行,功能和天天動聽差不多,而且推出安卓專用版本。界面也不錯。
Ⅷ 安卓開發,如何像android酷狗音樂播放器那樣使歌詞逐字匹配音樂
酷狗的歌詞逐字匹配 是因為酷狗歌詞的製作過程 你用酷狗製作過歌詞嗎? 如果版你想做成一樣的權 我建議你去製作一份歌詞才能明白。。。只用LRC寫 即使加點或者空格什麼的 也一定會影響美觀 如果你根據酷狗的歌詞製作步驟能寫出相關演算法 那程序里的演算法就好寫了。。。