專利名稱:音樂(lè)播放器及其實(shí)施方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種音樂(lè)播放器,尤其涉及一種基于樂(lè)曲分析和實(shí)時(shí)天氣的音樂(lè)播放器及實(shí)施方法。
背景技術(shù):
隨著通 訊設(shè)備的發(fā)展,音樂(lè)播放器已經(jīng)成為手機(jī)或者M(jìn)P4等其他消費(fèi)類電子產(chǎn)品的基本功能之一。就當(dāng)前市場(chǎng)來(lái)看,大部分都具有根據(jù)播放列表播放的功能,如最近添加、經(jīng)常播放或用戶偏好風(fēng)格等播放列表。但是這些主流的音樂(lè)播放器,不能對(duì)音樂(lè)文件的內(nèi)容進(jìn)行分析,只能由用戶或算法進(jìn)行控制,其音樂(lè)播放器不具備自動(dòng)對(duì)音樂(lè)文件分類的功能,也不具備整合處理實(shí)時(shí)天氣數(shù)據(jù)的能力。I)最近添加、經(jīng)常播放及類似的播放列表,只是設(shè)置了文件修改時(shí)間、播放頻率等條件限制,并將通過(guò)篩選條件的音樂(lè)文件添加到列表中。2)用戶偏好風(fēng)格及類似的播放列表,在設(shè)置篩選條件的基礎(chǔ)上進(jìn)行了數(shù)據(jù)的預(yù)測(cè),在本質(zhì)上仍屬于傳統(tǒng)的播放列表模式,不能實(shí)現(xiàn)現(xiàn)實(shí)與虛擬的交互。
發(fā)明內(nèi)容
為解決上述問(wèn)題,本發(fā)明公開(kāi)一種基于樂(lè)曲分析和實(shí)時(shí)天氣的音樂(lè)播放器,其特征在于,包括:掃描模塊,用于掃描音樂(lè)庫(kù)的音樂(lè)文件,檢查新添加和/或未進(jìn)行分析的音樂(lè)文件;分析模塊,用于對(duì)音樂(lè)文件進(jìn)行分析,音樂(lè)播放器查找該音樂(lè)文件數(shù)據(jù)中相關(guān)的數(shù)據(jù)段,并將該相關(guān)的數(shù)據(jù)段進(jìn)行對(duì)應(yīng)的初始化;運(yùn)算模塊,用于對(duì)于初始化后的數(shù)據(jù)段進(jìn)行運(yùn)算,尋找音樂(lè)節(jié)拍相關(guān)時(shí)間,然后得到自相關(guān)序列R ;節(jié)拍感知模塊,用于運(yùn)算得到節(jié)拍時(shí)間值,然后根據(jù)節(jié)拍時(shí)間值將音樂(lè)文件進(jìn)行分類。所述的音樂(lè)播放器,其特征在于,還包括:天氣數(shù)據(jù)模塊,用于當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新網(wǎng)絡(luò)數(shù)據(jù)并搜索獲取所包含天氣狀態(tài)信息,將相應(yīng)的音樂(lè)文件添加到該音樂(lè)播放器播放列表中。所述的音樂(lè)播放器,其特征在于,所述分析模塊還包括:截取數(shù)據(jù)段模塊,用于查找音樂(lè)文件中標(biāo)簽的數(shù)據(jù)段,并將該標(biāo)簽對(duì)應(yīng)的標(biāo)簽值初始化;截取音樂(lè)文件的數(shù)據(jù)段,并將該數(shù)據(jù)段輸入到系統(tǒng)濾波器組,系統(tǒng)濾波器組的數(shù)量為η組,則將其分解成η個(gè)互不重疊的頻率子帶,其中η彡I。所述的音樂(lè)播放器,其特征在于,所述運(yùn)算模塊還包括:
信號(hào)運(yùn)算模塊,用于濾波得到的頻率子帶a,對(duì)a的信號(hào)值進(jìn)行平方運(yùn)算,計(jì)算出該信號(hào)值的平方值sqr(a);將信號(hào)平方值sqr(a)通過(guò)截止頻率為15Hz的3階巴特沃斯低通濾波器處理后,將得到的信號(hào)進(jìn)行開(kāi)平方運(yùn)算,得到對(duì)應(yīng)的信號(hào)值sqrt(a);將信號(hào)sqrt(a)與200ms的半漢寧窗卷積,再對(duì)結(jié)果進(jìn)行采樣,得到幅度信號(hào)m(a);頻率子帶a的一階差分函數(shù)D(m) = A (m+1)-A (m),根據(jù)該函數(shù)提取幅度上升最快的點(diǎn)作為音樂(lè)節(jié)拍起始時(shí)間;由于音樂(lè)的節(jié)拍由強(qiáng)拍與弱拍周期性的重復(fù)來(lái)體現(xiàn),對(duì)于頻率子帶a的起始時(shí)間序列D(m),其自相關(guān)函數(shù)根據(jù)基音檢測(cè)算 法的定義,可以得到函數(shù)R(a);得到所有頻率子帶的自相關(guān)函數(shù),并將其置加,可以得到總的自相關(guān)序列R。所述的音樂(lè)播放器,其特征在于,所述節(jié)拍感知模塊還包括:分類模塊,用于計(jì)算自相關(guān)序列R中某一段區(qū)域內(nèi)相鄰最大值出現(xiàn)的時(shí)間,如果該區(qū)域內(nèi)最大值的數(shù)量大于2且為偶數(shù),則計(jì)算相鄰最大值出現(xiàn)時(shí)間的平均值;根據(jù)節(jié)拍的時(shí)間值可以得到該音樂(lè)文件的節(jié)拍信息,根據(jù)節(jié)拍的不同將音樂(lè)文件中的“TAG”標(biāo)簽寫入不同的值。所述的音樂(lè)播放器,其特征在于,所述天氣數(shù)據(jù)加載模塊還包括:加載模塊,用于當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新URL,得到當(dāng)前時(shí)間某個(gè)地區(qū)的天氣數(shù)據(jù),并搜索獲取的XML文件中標(biāo)簽為狀態(tài)的標(biāo)簽項(xiàng)所包含天氣狀態(tài)信息;根據(jù)獲取的狀態(tài)值搜索匹配風(fēng)格的播放列表,音樂(lè)節(jié)拍類型相同的曲目將被添加到該播放列表中?!N音樂(lè)播放器的實(shí)施方法,其特征在于,包括:步驟101,掃描音樂(lè)庫(kù)的音樂(lè)文件,檢查新添加和/或未進(jìn)行分析的音樂(lè)文件;步驟102,對(duì)音樂(lè)文件需要進(jìn)行分析,音樂(lè)播放器查找該音樂(lè)文件數(shù)據(jù)中相關(guān)的數(shù)據(jù)段,并將該相關(guān)的數(shù)據(jù)段進(jìn)行對(duì)應(yīng)的初始化;步驟103,對(duì)于初始化后的數(shù)據(jù)段進(jìn)行運(yùn)算,尋找音樂(lè)節(jié)拍相關(guān)時(shí)間,然后得到自相關(guān)序列R ;步驟104,運(yùn)算得到節(jié)拍時(shí)間值,然后根據(jù)節(jié)拍時(shí)間值將音樂(lè)文件進(jìn)行分類。所述的音樂(lè)播放器的實(shí)施方法,所述方法還包括步驟105,當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新網(wǎng)絡(luò)數(shù)據(jù)并搜索獲取所包含天氣狀態(tài)信息,將相應(yīng)的音樂(lè)文件添加到該音樂(lè)播放器播放列表中。所述的音樂(lè)播放器的實(shí)施方法,其特征在于,所述步驟102還包括:步驟201,查找音樂(lè)文件中標(biāo)簽的數(shù)據(jù)段,并將該標(biāo)簽對(duì)應(yīng)的標(biāo)簽值初始化;步驟202,截取音樂(lè)文件的數(shù)據(jù)段,并將該數(shù)據(jù)段輸入到系統(tǒng)濾波器組,系統(tǒng)濾波器組的數(shù)量為η組,則將其分解成η個(gè)互不重疊的頻率子帶,其中η彡I。所述的音樂(lè)播放器的實(shí)施方法,其特征在于,所述步驟103還包括:步驟301,濾波得到的頻率子帶a,對(duì)a的信號(hào)值進(jìn)行平方運(yùn)算,計(jì)算出該信號(hào)值的平方值sqr (a);步驟302,將信號(hào)平方值sqr (a)通過(guò)截止頻率為15Hz的3階巴特沃斯低通濾波器處理后,將得到的信號(hào)進(jìn)行開(kāi)平方運(yùn)算,得到對(duì)應(yīng)的信號(hào)值sqrt(a);步驟303,將信號(hào)sqrt (a)與200ms的半漢寧窗卷積,再對(duì)結(jié)果進(jìn)行采樣,得到幅度信號(hào)m(a);
步驟304,頻率子帶a的一階差分函數(shù)D (m) = A (m+1) -A (m),根據(jù)該函數(shù)提取幅度上升最快的點(diǎn)作為音樂(lè)節(jié)拍起始時(shí)間;步驟305,由于音樂(lè)的節(jié)拍由強(qiáng)拍與弱拍周期性的重復(fù)來(lái)體現(xiàn),對(duì)于頻率子帶a的起始時(shí)間序列D(m),其自相關(guān)函數(shù)根據(jù)基音檢測(cè)算法的定義,可以得到函數(shù)R(a);步驟306,重復(fù)步驟301-305得到所有頻率子帶的自相關(guān)函數(shù),并將其疊加,可以得到總的自相關(guān)序列R。所述的音樂(lè)播放器的實(shí)施方法,其特征在于,所述步驟104還包括:步驟401,計(jì)算自相關(guān)序列R中某一段區(qū)域內(nèi)相鄰最大值出現(xiàn)的時(shí)間,如果該區(qū)域內(nèi)最大值的數(shù)量大于2且為偶數(shù),則計(jì)算相鄰最大值出現(xiàn)時(shí)間的平均值;步驟402,根據(jù)節(jié)拍的時(shí)間值可以得到該音樂(lè)文件的節(jié)拍信息,根據(jù)節(jié)拍的不同將音樂(lè)文件中的“TAG”標(biāo)簽寫入不同的值。所述的音樂(lè)播放器的實(shí)施方法,其特征在于,所述步驟105還包括:步驟501,當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新URL,得到當(dāng)前時(shí)間某個(gè)地區(qū)的天氣數(shù)據(jù),并搜索獲取的XML文件中標(biāo)簽為狀態(tài)的標(biāo)簽項(xiàng)所包含天氣狀態(tài)信息;步驟502,根據(jù)獲取的狀態(tài)值搜索匹配風(fēng)格的播放列表,音樂(lè)節(jié)拍類型相同的曲目將被添加到該播放列表中。一種電子終端,包括上述任一所述的音樂(lè)播放器。本發(fā)明實(shí)現(xiàn)了一種具有樂(lè)曲分析功能的音樂(lè)播放器,相比傳統(tǒng)的設(shè)計(jì)方案能夠自動(dòng)分析音樂(lè)文件的風(fēng)格并進(jìn)行分類,還通過(guò)實(shí)時(shí)天氣信息自動(dòng)選取適合的播放列表,能夠大幅提高音樂(lè)播放器的智能化程度和用戶友好度。
圖1為本發(fā)明的運(yùn)行工作流程圖;圖2為本發(fā)明的模塊化系統(tǒng)流程圖。
具體實(shí)施例方式以下結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)描述,但不作為對(duì)本發(fā)明的限定。本發(fā)明是在音樂(lè)播放器的運(yùn)行過(guò)程中,對(duì)添加到音樂(lè)庫(kù)的音樂(lè)文件進(jìn)行內(nèi)容分析,實(shí)現(xiàn)音樂(lè)播放器對(duì)音樂(lè)文件分類的自動(dòng)化處理;通過(guò)實(shí)時(shí)天氣數(shù)據(jù)實(shí)現(xiàn)音樂(lè)的自動(dòng)播放。I)發(fā)明所要解決問(wèn)題說(shuō)明本發(fā)明的目的是通過(guò)設(shè)計(jì)并實(shí)現(xiàn)一種具有樂(lè)曲分析功能的音樂(lè)播放器,通過(guò)對(duì)添加到音樂(lè)庫(kù)的音樂(lè)文件進(jìn)行內(nèi)容分析,并根據(jù)分析結(jié)果自動(dòng)生成播放列表,還通過(guò)實(shí)時(shí)天氣信息自動(dòng)選取適合的播放列表,實(shí)現(xiàn)音樂(lè)播放器的自動(dòng)化播放。2)發(fā)明特征本發(fā)明的特征為采用音樂(lè)文件內(nèi)容分析技術(shù),通過(guò)對(duì)添加到音樂(lè)庫(kù)的曲目進(jìn)行內(nèi)容分析,并將生成的結(jié)果作為標(biāo)簽值寫入到音樂(lè)文件中,通過(guò)該標(biāo)簽?zāi)軌驅(qū)崿F(xiàn)播放列表的自動(dòng)分類;解析并處理通過(guò)數(shù)據(jù)網(wǎng)絡(luò)獲取的實(shí)時(shí)天氣數(shù)據(jù)文件:
①本發(fā)明中的音樂(lè)文件內(nèi)容分析技術(shù),并非傳統(tǒng)的從音樂(lè)文件中提取標(biāo)簽信息的方法,而是對(duì)音樂(lè)文件的數(shù)據(jù)內(nèi)容進(jìn)行分析處理。②本發(fā)明中的音樂(lè)文件內(nèi)容分析算法,能夠?qū)σ魳?lè)的速度和節(jié)拍進(jìn)行檢測(cè),從而分析出音樂(lè)的風(fēng)格類型。③本發(fā)明中音樂(lè)播放器能夠解析處理XML格式的實(shí)時(shí)天氣數(shù)據(jù)文件。④本發(fā)明中對(duì)于具有樂(lè)曲分析功能的音樂(lè)播放器的實(shí)現(xiàn),能夠顯著提高播放器的智能化程度和用戶友好程度。在音樂(lè)播放器的運(yùn)行過(guò)程中,對(duì)添加到音樂(lè)庫(kù)的音樂(lè)文件進(jìn)行內(nèi)容分析,解析實(shí)時(shí)天氣數(shù)據(jù)并選擇播放列表,從而實(shí)現(xiàn)音樂(lè)播放器對(duì)音樂(lè)文件分類的自動(dòng)化處理。如圖1所示本發(fā)明的工作流程步驟:I)實(shí)現(xiàn)音樂(lè)文件內(nèi)容分析即音樂(lè)速度與節(jié)拍分析算法。2)實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)文件內(nèi)容的解析與處理。3)本發(fā)明的具體實(shí)施流程如下:步驟S101,音樂(lè)播放器掃描音樂(lè)庫(kù),檢查是否有新添加或未進(jìn)行分析的音樂(lè)文件。步驟S102,如有音樂(lè)文件需要進(jìn)行分析,以一個(gè)MP3音樂(lè)文件為例,該文件采用ID3V1規(guī)范,音樂(lè)播放器查找該文件數(shù)據(jù)中格式為“char Header [3] ”且標(biāo)簽頭為“TAG”的數(shù)據(jù)段,并將該標(biāo)簽對(duì)應(yīng)的標(biāo)簽值初始化。步驟S103,截取音樂(lè)文件中的數(shù)據(jù)段,并將該數(shù)據(jù)段輸入到系統(tǒng)濾波器組,系統(tǒng)濾波器組的數(shù)量為η組,則將其分解成η個(gè)互不重疊的頻率子帶。步驟S104,濾波得到的頻率子帶a,對(duì)a的信號(hào)值進(jìn)行平方運(yùn)算,計(jì)算出該信號(hào)值的平方值sqr (a)。步驟S105,將信號(hào)平方值sqr (a)通過(guò)截止頻率為15Hz的3階巴特沃斯低通濾波器處理后,將得到的信號(hào)之進(jìn)行開(kāi)平方運(yùn)算,得到對(duì)應(yīng)的信號(hào)值sqrt (a),即sqr (a)對(duì)應(yīng)的開(kāi)平方信號(hào)值。步驟S106,將信號(hào)sqrt (a)與200ms的半漢寧窗卷積,再對(duì)結(jié)果進(jìn)行采樣,得到幅度信號(hào)m(a)。不同于一般技術(shù)方案中信號(hào)內(nèi)容非常容易相互干擾的情況,經(jīng)過(guò)處理的幅度信號(hào)m(a)具有信號(hào)分離度較高的特點(diǎn)。步驟S107,頻率子帶a的一階差分函數(shù)D (m) = A (m+1) -A (m),根據(jù)該函數(shù)提取幅度上升最快的點(diǎn)作為音樂(lè)節(jié)拍起始時(shí)間。通過(guò)對(duì)提取的點(diǎn)進(jìn)行排序與標(biāo)記,相鄰點(diǎn)之間的時(shí)間可以作為音樂(lè)節(jié)拍計(jì)算的原始數(shù)據(jù)。步驟S108,由于音樂(lè)的節(jié)拍由強(qiáng)拍與弱拍周期性的重復(fù)來(lái)體現(xiàn),對(duì)于頻率子帶a的起始時(shí)間序列D (m),其自相關(guān)函數(shù)根據(jù)基音檢測(cè)算法的定義,可以得到函數(shù)R(a),即頻率子帶a對(duì)應(yīng)的自相關(guān)函數(shù)。步驟S109,根據(jù)設(shè)定的系統(tǒng)濾波器的組數(shù)n,重復(fù)η次步驟S104-108的操作,得到所有頻率子帶的自相關(guān)函數(shù),并將其疊加,可以得到總的自相關(guān)序列R。由于采用了先并行分離計(jì)算,后合并分析的計(jì)算方法,具有處理速度快與預(yù)測(cè)準(zhǔn)確率高的特點(diǎn)。步驟S110,計(jì)算自相關(guān)序列R中某一段區(qū)域內(nèi)相鄰最大值出現(xiàn)的時(shí)間,如果該區(qū)域內(nèi)最大值的數(shù)量大于2且為偶數(shù),則計(jì)算相鄰最大值出現(xiàn)時(shí)間的平均值,計(jì)算得到的時(shí)間值即為節(jié)拍的時(shí)間值。
步驟S111,根據(jù)節(jié)拍的時(shí)間值可以得到該音樂(lè)文件的節(jié)拍信息,根據(jù)節(jié)拍的不同將音樂(lè)文件中的“TAG”標(biāo)簽寫入不同的值,如音樂(lè)節(jié)拍較為舒緩則寫入“Smooth”即節(jié)拍較慢的標(biāo)簽值,音樂(lè)節(jié)拍非常激烈則寫入“Fast”即節(jié)拍較快的標(biāo)簽值。步驟S112,當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)數(shù)據(jù)網(wǎng)絡(luò),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新URL,其格式為“www.weather.com/China/BeiJing/now.xml”,代表當(dāng)前時(shí)間某個(gè)地區(qū)的天氣數(shù)據(jù),并搜索獲取的XML文件中標(biāo)簽為“status”即“狀態(tài)”標(biāo)簽項(xiàng)所包含天氣狀態(tài)信息。步驟S113,根據(jù)獲取的“status”值搜索與天氣狀態(tài)信息風(fēng)格匹配的播放列表,音樂(lè)節(jié)拍類型相同的曲目將被添加到該播放列表中,從而實(shí)現(xiàn)了音樂(lè)播放器的自動(dòng)播放。例如,2/4拍的特點(diǎn)是節(jié)奏強(qiáng)弱交 替,多用于表現(xiàn)歡快的情緒,因此天氣狀態(tài)值為晴天時(shí),匹配音樂(lè)節(jié)拍為2/4拍的播放列表;4/4拍是四二拍的重合而把第二個(gè)重拍淡化,一般用于表現(xiàn)抒情,因此天氣狀態(tài)值為多云時(shí),可以匹配音樂(lè)節(jié)拍為4/4拍的播放列表。本發(fā)明的另一具體實(shí)施方式
為,首先向音樂(lè)播放器添加新的音樂(lè)文件,音樂(lè)播放器讀取并清空音樂(lè)文件特定的標(biāo)簽。通過(guò)音樂(lè)速度與節(jié)拍算法分析后,將該音樂(lè)文件對(duì)應(yīng)的節(jié)拍信息寫入該特定標(biāo)簽中,某一類型風(fēng)格的播放列表,標(biāo)簽值符合該播放列表的音樂(lè)文件將自動(dòng)被添加。啟動(dòng)音樂(lè)播放器時(shí),獲取并解析實(shí)時(shí)天氣數(shù)據(jù),并選取適合的播放列表,從而實(shí)現(xiàn)了音樂(lè)播放器的自動(dòng)播放。如圖2所示的一種基于樂(lè)曲分析和實(shí)時(shí)天氣的音樂(lè)播放器,其特征在于,包括:掃描模塊100,用于掃描音樂(lè)庫(kù)的音樂(lè)文件,檢查新添加和/或未進(jìn)行分析的音樂(lè)文件;分析模塊200,用于對(duì)音樂(lè)文件需要進(jìn)行分析,音樂(lè)播放器查找該音樂(lè)文件數(shù)據(jù)中相關(guān)的數(shù)據(jù)段,并將該相關(guān)的數(shù)據(jù)段進(jìn)行對(duì)應(yīng)的初始化;運(yùn)算模塊300,用于對(duì)于初始化后的數(shù)據(jù)段進(jìn)行運(yùn)算,尋找音樂(lè)節(jié)拍相關(guān)時(shí)間,然后得到自相關(guān)序列R ;節(jié)拍感知模塊400,用于運(yùn)算得到節(jié)拍時(shí)間值,然后根據(jù)節(jié)拍時(shí)間值將音樂(lè)文件進(jìn)行分類;天氣數(shù)據(jù)模塊500,用于當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新的網(wǎng)絡(luò)數(shù)據(jù)并搜索獲取所包含天氣狀態(tài)信息,將相應(yīng)的音樂(lè)文件添加到該音樂(lè)播放器播放列表中。所述的音樂(lè)播放器,其特征在于,所述分析模塊還包括:截取數(shù)據(jù)段模塊,用于查找音樂(lè)文件中標(biāo)簽的數(shù)據(jù)段,并將該標(biāo)簽對(duì)應(yīng)的標(biāo)簽值初始化;截取音樂(lè)文件的數(shù)據(jù)段,并將該數(shù)據(jù)段輸入到系統(tǒng)濾波器組,系統(tǒng)濾波器組的數(shù)量為η組,則將其分解成η個(gè)互不重疊的頻率子帶,其中η彡I。所述的音樂(lè)播放器,其特征在于,所述運(yùn)算模塊還包括:信號(hào)運(yùn)算模塊,用于濾波得到的頻率子帶a,對(duì)a的信號(hào)值進(jìn)行平方運(yùn)算,計(jì)算出該信號(hào)值的平方值sqr(a);將信號(hào)平方值sqr(a)通過(guò)截止頻率為15Hz的3階巴特沃斯低通濾波器處理后,將得到的信號(hào)進(jìn)行開(kāi)平方運(yùn)算,得到對(duì)應(yīng)的信號(hào)值sqrt(a);將信號(hào)sqrt (a)與200ms的半漢寧窗卷積,再對(duì)結(jié)果進(jìn)行采樣,得到幅度信號(hào)m(a);頻率子帶a的一階差分函數(shù)D(m) = A (m+1)-A (m),根據(jù)該函數(shù)提取幅度上升最快的點(diǎn)作為音樂(lè)節(jié)拍起始時(shí)間;由于音樂(lè)的節(jié)拍由強(qiáng)拍與弱拍周期性的重復(fù)來(lái)體現(xiàn),對(duì)于頻率子帶a的起始時(shí)間序列D(m),其自相關(guān)函數(shù)根據(jù)基音檢測(cè)算法的定義,可以得到函數(shù)R(a);得到所有頻率子帶的自相關(guān)函數(shù),并將其置加,可以得到總的自相關(guān)序列R。所述的音樂(lè)播放器,其特征在于,所述節(jié)拍感知模塊還包括:分類模塊,用于計(jì)算自相關(guān)序列R中某一段區(qū)域內(nèi)相鄰最大值出現(xiàn)的時(shí)間,如果該區(qū)域內(nèi)最大值的數(shù)量大于2且為偶數(shù),則計(jì)算相鄰最大值出現(xiàn)時(shí)間的平均值;根據(jù)節(jié)拍的時(shí)間值可以得到該音樂(lè)文件的節(jié)拍信息,根據(jù)節(jié)拍的不同將音樂(lè)文件中的“TAG”標(biāo)簽寫入不同的值。所述的音樂(lè)播放器,其特征在于,所述天氣數(shù)據(jù)加載模塊還包括:加載模塊,用于當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新URL,得到當(dāng)前時(shí)間某個(gè)地區(qū)的天氣數(shù)據(jù),并搜索獲取的XML文件中標(biāo)簽為狀態(tài)的標(biāo)簽項(xiàng)所包含天氣狀態(tài)信息;根據(jù)獲取的狀態(tài)值搜索匹配風(fēng)格的播放列表,音樂(lè)節(jié)拍類型相同的曲目將被添加到該播放列表中。本發(fā)明實(shí)現(xiàn)了一種具有樂(lè)曲分析功能的音樂(lè)播放器,相比傳統(tǒng)的設(shè)計(jì)方案能夠自動(dòng)分析音樂(lè)文件的風(fēng)格并進(jìn)行分類,再通過(guò)實(shí)時(shí)天氣信息自動(dòng)選取適合的播放列表,能夠大幅提高音樂(lè)播放器的智能化程度和用戶友好度。當(dāng)然,本發(fā)明還可有其它多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的普通技術(shù)人員當(dāng)可根據(jù)本發(fā)明做出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種音樂(lè)播放器,其特征在于,包括: 掃描模塊,用于掃描音樂(lè)庫(kù)的音樂(lè)文件,檢查新添加和/或未進(jìn)行分析的音樂(lè)文件; 分析模塊,用于對(duì)音樂(lè)文件進(jìn)行分析,音樂(lè)播放器查找該音樂(lè)文件數(shù)據(jù)中相關(guān)的數(shù)據(jù)段,并將該相關(guān)的數(shù)據(jù)段進(jìn)行對(duì)應(yīng)的初始化; 運(yùn)算模塊,用于對(duì)于初始化后的數(shù)據(jù)段進(jìn)行運(yùn)算,尋找音樂(lè)節(jié)拍相關(guān)時(shí)間,然后得到自相關(guān)序列R ; 節(jié)拍感知模塊,用于運(yùn)算得到節(jié)拍時(shí)間值,然后根據(jù)節(jié)拍時(shí)間值將音樂(lè)文件進(jìn)行分類。
2.按權(quán)利要求1所述的音樂(lè)播放器,其特征在于,還包括: 天氣數(shù)據(jù)模塊,用于當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新網(wǎng)絡(luò)數(shù)據(jù)并搜索獲取所包含天氣狀態(tài)信息,將相應(yīng)的音樂(lè)文件添加到該音樂(lè)播放器播放列表中。
3.按權(quán)利要求1所述的音樂(lè)播放器,其特征在于,所述分析模塊還包括: 截取數(shù)據(jù)段模塊,用于查找音樂(lè)文件中標(biāo)簽的數(shù)據(jù)段,并將該標(biāo)簽對(duì)應(yīng)的標(biāo)簽值初始化;截取音樂(lè)文件的數(shù)據(jù)段,并將該數(shù)據(jù)段輸入到系統(tǒng)濾波器組,系統(tǒng)濾波器組的數(shù)量為η組,則將其分解成η個(gè)互不重疊的頻率子帶,其中η彡I。
4.按權(quán)利要求1所述的音樂(lè)播放器,其特征在于,所述運(yùn)算模塊還包括: 信號(hào)運(yùn)算模塊,用于濾波得 到的頻率子帶a,對(duì)a的信號(hào)值進(jìn)行平方運(yùn)算,計(jì)算出該信號(hào)值的平方值sqr(a);將信號(hào)平方值sqr(a)通過(guò)截止頻率為15Hz的3階巴特沃斯低通濾波器處理后,將得到的信號(hào)進(jìn)行開(kāi)平方運(yùn)算,得到對(duì)應(yīng)的信號(hào)值sqrt(a);將信號(hào)sqrt (a)與200ms的半漢寧窗卷積,再對(duì)結(jié)果進(jìn)行采樣,得到幅度信號(hào)m(a);頻率子帶a的一階差分函數(shù)D(m) = A(m+1)-A(m),根據(jù)該函數(shù)提取幅度上升最快的點(diǎn)作為音樂(lè)節(jié)拍起始時(shí)間;由于音樂(lè)的節(jié)拍由強(qiáng)拍與弱拍周期性的重復(fù)來(lái)體現(xiàn),對(duì)于頻率子帶a的起始時(shí)間序列D(m),其自相關(guān)函數(shù)根據(jù)基音檢測(cè)算法的定義,可以得到函數(shù)R(a);得到所有頻率子帶的自相關(guān)函數(shù),并將其疊加,可以得到總的自相關(guān)序列R。
5.按權(quán)利要求1所述的音樂(lè)播放器,其特征在于,所述節(jié)拍感知模塊還包括: 分類模塊,用于計(jì)算自相關(guān)序列R中某一段區(qū)域內(nèi)相鄰最大值出現(xiàn)的時(shí)間,如果該區(qū)域內(nèi)最大值的數(shù)量大于2且為偶數(shù),則計(jì)算相鄰最大值出現(xiàn)時(shí)間的平均值;根據(jù)節(jié)拍的時(shí)間值可以得到該音樂(lè)文件的節(jié)拍信息,根據(jù)節(jié)拍的不同將音樂(lè)文件中的“TAG”標(biāo)簽寫入不同的值。
6.按權(quán)利要求2所述的音樂(lè)播放器,其特征在于,所述天氣數(shù)據(jù)加載模塊還包括: 加載模塊,用于當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新URL,得到當(dāng)前時(shí)間某個(gè)地區(qū)的天氣數(shù)據(jù),并搜索獲取的XML文件中標(biāo)簽為狀態(tài)的標(biāo)簽項(xiàng)所包含天氣狀態(tài)信息;根據(jù)獲取的狀態(tài)值搜索匹配風(fēng)格的播放列表,音樂(lè)節(jié)拍類型相同的曲目將被添加到該播放列表中。
7.一種音樂(lè)播放器的實(shí)施方法,其特征在于,包括: 步驟101,掃描音樂(lè)庫(kù)的音樂(lè)文件,檢查新添加和/或未進(jìn)行分析的音樂(lè)文件; 步驟102,對(duì)音樂(lè)文件需要進(jìn)行分析,音樂(lè)播放器查找該音樂(lè)文件數(shù)據(jù)中相關(guān)的數(shù)據(jù)段,并將該相關(guān)的數(shù)據(jù)段進(jìn)行對(duì)應(yīng)的初始化; 步驟103,對(duì)于初始化后的數(shù)據(jù)段進(jìn)行運(yùn)算,尋找音樂(lè)節(jié)拍相關(guān)時(shí)間,然后得到自相關(guān)序列R ; 步驟104,運(yùn)算得到節(jié)拍時(shí)間值,然后根據(jù)節(jié)拍時(shí)間值將音樂(lè)文件進(jìn)行分類。
8.按權(quán)利要求7所述的音樂(lè)播放器的實(shí)施方法,所述方法還包括步驟105,當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新網(wǎng)絡(luò)數(shù)據(jù)并搜索獲取所包含天氣狀態(tài)信息,將相應(yīng)的音樂(lè)文件添加到該音樂(lè)播放器播放列表中。
9.按權(quán)利要求7所述的音樂(lè)播放器的實(shí)施方法,其特征在于,所述步驟102還包括: 步驟201,查找音樂(lè)文件中標(biāo)簽的數(shù)據(jù)段,并將該標(biāo)簽對(duì)應(yīng)的標(biāo)簽值初始化; 步驟202,截取音樂(lè)文件的數(shù)據(jù)段,并將該數(shù)據(jù)段輸入到系統(tǒng)濾波器組,系統(tǒng)濾波器組的數(shù)量為η組,則將其分解成η個(gè)互不重疊的頻率子帶,其中η彡I。
10.按權(quán)利要求7所述的音樂(lè)播放器的實(shí)施方法,其特征在于,所述步驟103還包括: 步驟301,濾波得到的頻率子帶a,對(duì)a的信號(hào)值進(jìn)行平方運(yùn)算,計(jì)算出該信號(hào)值的平方值 sqr(a); 步驟302,將信號(hào)平方值sqr (a)通過(guò)截止頻率為15Hz的3階巴特沃斯低通濾波器處理后,將得到的信號(hào)進(jìn)行開(kāi)平方運(yùn)算,得到對(duì)應(yīng)的信號(hào)值sqrt(a); 步驟303,將信號(hào)sqrt (a)與200ms的半漢寧窗卷積,再對(duì)結(jié)果進(jìn)行采樣,得到幅度信號(hào)m(a); 步驟304,頻率子帶a的一階差分函數(shù)D (m) = A (m+1) -A (m),根據(jù)該函數(shù)提取幅度上升最快的點(diǎn)作為音樂(lè)節(jié)拍起始時(shí)間; 步驟305,由于音樂(lè)的節(jié)拍由強(qiáng)拍與弱拍周期性的重復(fù)來(lái)體現(xiàn),對(duì)于頻率子帶a的起始時(shí)間序列D(m),其自相關(guān)函數(shù)根據(jù)基音檢測(cè)算法的定義,可以得到函數(shù)R(a); 步驟306,重復(fù)步驟301-305得到所有頻率子帶的自相關(guān)函數(shù),并將其疊加,可以得到總的自相關(guān)序列R。
11.按權(quán)利要求7所述的音樂(lè)播放器的實(shí)施方法,其特征在于,所述步驟104還包括: 步驟401,計(jì)算自相關(guān)序列R中某一段區(qū)域內(nèi)相鄰最大值出現(xiàn)的時(shí)間,如果該區(qū)域內(nèi)最大值的數(shù)量大于2且為偶數(shù),則計(jì)算相鄰最大值出現(xiàn)時(shí)間的平均值; 步驟402,根據(jù)節(jié)拍的時(shí)間值可以得到該音樂(lè)文件的節(jié)拍信息,根據(jù)節(jié)拍的不同將音樂(lè)文件中的“TAG”標(biāo)簽寫入不同的值。
12.按權(quán)利要求8所述的音樂(lè)播放器的實(shí)施方法,其特征在于,所述步驟105還包括: 步驟501,當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新URL,得到當(dāng)前時(shí)間某個(gè)地區(qū)的天氣數(shù)據(jù),并搜索獲取的XML文件中標(biāo)簽為狀態(tài)的標(biāo)簽項(xiàng)所包含天氣狀態(tài)信息; 步驟502,根據(jù)獲取的狀態(tài)值搜索匹配風(fēng)格的播放列表,音樂(lè)節(jié)拍類型相同的曲目將被添加到該播放列表中。
13.一種電子終端,包括權(quán)利 要求1-5任一所述的音樂(lè)播放器。
全文摘要
本發(fā)明提供了一種基于樂(lè)曲分析和實(shí)時(shí)天氣的音樂(lè)播放器及實(shí)施方法,掃描模塊,用于掃描音樂(lè)庫(kù)的音樂(lè)文件,檢查新添加和/或未進(jìn)行分析的音樂(lè)文件;分析模塊,用于對(duì)音樂(lè)文件進(jìn)行分析,音樂(lè)播放器查找該音樂(lè)文件數(shù)據(jù)中相關(guān)的數(shù)據(jù)段,并將該相關(guān)的數(shù)據(jù)段進(jìn)行對(duì)應(yīng)的初始化;運(yùn)算模塊,用于對(duì)于初始化后的數(shù)據(jù)段進(jìn)行運(yùn)算,尋找音樂(lè)節(jié)拍相關(guān)時(shí)間,然后得到自相關(guān)序列R;節(jié)拍感知模塊,用于運(yùn)算得到節(jié)拍時(shí)間值,然后根據(jù)節(jié)拍時(shí)間值將音樂(lè)文件進(jìn)行分類;天氣數(shù)據(jù)模塊,用于當(dāng)開(kāi)始播放音樂(lè)時(shí),首先啟動(dòng)網(wǎng)絡(luò)數(shù)據(jù),通過(guò)預(yù)先定義的實(shí)時(shí)天氣更新網(wǎng)絡(luò)數(shù)據(jù)并搜索獲取所包含天氣狀態(tài)信息,將相應(yīng)的音樂(lè)文件添加到該音樂(lè)播放器播放列表中。
文檔編號(hào)G11B27/10GK103093786SQ20111033213
公開(kāi)日2013年5月8日 申請(qǐng)日期2011年10月27日 優(yōu)先權(quán)日2011年10月27日
發(fā)明者王樹(shù)偉 申請(qǐng)人:浪潮樂(lè)金數(shù)字移動(dòng)通信有限公司