本發(fā)明涉及終端技術(shù)領(lǐng)域,特別涉及一種生成樂譜的方法和裝置。
背景技術(shù):
隨著終端技術(shù)的發(fā)展,終端所能夠支持的功能越來越強(qiáng)大,例如,終端能夠支持音樂軟件;終端不僅可以通過音樂軟件播放歌曲,還可以通過音樂軟件生成歌曲的樂譜;在播放歌曲的同時(shí),在當(dāng)前播放界面上顯示歌曲的樂譜。
目前,通常由專業(yè)人員反復(fù)收聽目標(biāo)歌曲,通過目標(biāo)歌曲的旋律,識(shí)別出目標(biāo)歌曲的每個(gè)音符,從而得到目標(biāo)歌曲的樂譜。
在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
專業(yè)人員需要反復(fù)收聽目標(biāo)歌曲,才能識(shí)別出音符,導(dǎo)致上述生成樂譜的效率低;并且,由于受專業(yè)人員識(shí)譜經(jīng)驗(yàn)和技術(shù)知識(shí)等因素的影響,上述方法生成樂譜的準(zhǔn)確性差。
技術(shù)實(shí)現(xiàn)要素:
為了解決現(xiàn)有技術(shù)的問題,本發(fā)明提供了一種生成樂譜的方法和裝置。技術(shù)方案如下:
第一方面,本發(fā)明實(shí)施例提供了一種生成樂譜的方法,所述方法包括:
獲取目標(biāo)多媒體文件的音頻信號(hào);
根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,確定所述每個(gè)音符時(shí)刻的音頻信號(hào)的音高;
將所述每個(gè)音符時(shí)刻的音頻信號(hào)的音高組成音高序列,根據(jù)所述音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定所述目標(biāo)多媒體文件的音符序列;
將所述音符序列劃分為多個(gè)音符子序列,獲取每個(gè)音符子序列的節(jié)拍;
將所述每個(gè)音符子序列和所述每個(gè)音符子序列的節(jié)拍組成所述目標(biāo)多媒體文件的樂譜。
可選的,所述根據(jù)所述音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定所述目標(biāo)多媒體文件的音符序列,包括:
將所述音高序列中連續(xù)且相同的多個(gè)音高合并為一個(gè)音高,得到所述目標(biāo)多媒體文件的音符序列包括的每個(gè)音符;
獲取所述音符序列中的每個(gè)音符在所述音高序列中連續(xù)出現(xiàn)的出現(xiàn)次數(shù);
根據(jù)所述音符序列中的每個(gè)音符的出現(xiàn)次數(shù)和所述預(yù)設(shè)間隔,確定所述音符序列中的每個(gè)音符所持續(xù)的音長(zhǎng);
將所述音符序列中的每個(gè)音符和音長(zhǎng)組成所述音符序列。
可選的,所述將所述音符序列劃分為多個(gè)音符子序列,包括:
根據(jù)所述音符序列中的每個(gè)音符的音長(zhǎng),在所述音符序列中確定劃分節(jié)拍的位置;
根據(jù)所述劃分節(jié)拍的位置,將所述音符序列劃分為多個(gè)音符子序列。
可選的,所述根據(jù)所述音符序列中的每個(gè)音符的音長(zhǎng),在所述音符序列中確定劃分節(jié)拍的位置,包括:
根據(jù)所述音符序列中的每個(gè)音符的音長(zhǎng),統(tǒng)計(jì)預(yù)設(shè)音符的每個(gè)音長(zhǎng)和每個(gè)音長(zhǎng)的出現(xiàn)次數(shù);
根據(jù)所述每個(gè)音長(zhǎng)和所述每個(gè)音長(zhǎng)的出現(xiàn)次數(shù),從所述每個(gè)音長(zhǎng)中選擇滿足預(yù)設(shè)條件的音長(zhǎng);
在所述音符序列中確定音長(zhǎng)與選擇的音長(zhǎng)之間的音長(zhǎng)差在預(yù)設(shè)范圍內(nèi)的預(yù)設(shè)音符;
將選擇的預(yù)設(shè)音符在所述音符序列中的位置確定為劃分節(jié)拍的位置。
可選的,所述獲取每個(gè)音符子序列的節(jié)拍,包括:
對(duì)于所述每個(gè)音符子序列,根據(jù)所述音符子序列中的每個(gè)音符的音長(zhǎng),從音長(zhǎng)范圍和子節(jié)拍的對(duì)應(yīng)關(guān)系中,獲取所述音符子序列中的每個(gè)音符的子節(jié)拍;
將所述音符子序列中的每個(gè)音符的子節(jié)拍的節(jié)拍和作為所述音符子序列的節(jié)拍。
可選的,所述將所述每個(gè)音符子序列和所述音符子序列的節(jié)拍組成所述目標(biāo)多媒體文件的樂譜之后,所述方法還包括:
獲取所述目標(biāo)多媒體文件對(duì)應(yīng)的字幕文件,所述字幕文件包括所述每個(gè)音符時(shí)刻和與所述每個(gè)音符時(shí)刻關(guān)聯(lián)的文字信息;
根據(jù)所述每個(gè)音符時(shí)刻,將所述文字信息插入所述樂譜中。
可選的,所述根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,確定所述每個(gè)音符時(shí)刻的音頻信號(hào)的音高,包括:
獲取所述每個(gè)音符時(shí)刻的音頻信號(hào)的頻率;
根據(jù)所述每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,從頻率范圍和音高的對(duì)應(yīng)關(guān)系中,獲取所述每個(gè)音符時(shí)刻的音頻信號(hào)的音高。
可選的,所述獲取所述每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,包括:
對(duì)所述每個(gè)音符時(shí)刻的音頻信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換,得到所述每個(gè)音符時(shí)刻的音頻數(shù)據(jù);
從所述每個(gè)音符時(shí)刻的音頻數(shù)據(jù)中獲取所述每個(gè)音符時(shí)刻的音頻信號(hào)的頻率。
第二方面,本發(fā)明實(shí)施例提供了一種生成樂譜的裝置,所述裝置包括:
第一獲取模塊,用于獲取目標(biāo)多媒體文件的音頻信號(hào);
第一確定模塊,用于根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,確定所述每個(gè)音符時(shí)刻的音頻信號(hào)的音高;
第二確定模塊,用于將所述每個(gè)音符時(shí)刻的音頻信號(hào)的音高組成音高序列,根據(jù)所述音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定所述目標(biāo)多媒體文件的音符序列;
劃分模塊,用于將所述音符序列劃分為多個(gè)音符子序列;
第二獲取模塊,用于獲取每個(gè)音符子序列的節(jié)拍;
組成模塊,用于將所述每個(gè)音符子序列和所述每個(gè)音符子序列的節(jié)拍組成所述目標(biāo)多媒體文件的樂譜。
可選的,所述第二確定模塊,包括:
合并單元,用于將所述音高序列中連續(xù)且相同的多個(gè)音高合并為一個(gè)音高,得到所述目標(biāo)多媒體文件的音符序列包括的每個(gè)音符;
第一獲取單元,用于獲取所述音符序列中的每個(gè)音符在所述音高序列中連續(xù)出現(xiàn)的出現(xiàn)次數(shù);
第一確定單元,用于根據(jù)所述音符序列中的每個(gè)音符的出現(xiàn)次數(shù)和所述預(yù)設(shè)間隔,確定所述音符序列中的每個(gè)音符所持續(xù)的音長(zhǎng);
組成單元,用于將所述音符序列中的每個(gè)音符和音長(zhǎng)組成所述音符序列。
可選的,所述劃分模塊,包括:
第二確定單元,用于根據(jù)所述音符序列中的每個(gè)音符的音長(zhǎng),在所述音符序列中確定劃分節(jié)拍的位置;
劃分單元,用于根據(jù)所述劃分節(jié)拍的位置,將所述音符序列劃分為多個(gè)音符子序列。
可選的,所述劃分單元,還用于根據(jù)所述音符序列中的每個(gè)音符的音長(zhǎng),統(tǒng)計(jì)預(yù)設(shè)音符的每個(gè)音長(zhǎng)和每個(gè)音長(zhǎng)的出現(xiàn)次數(shù);根據(jù)所述每個(gè)音長(zhǎng)和所述每個(gè)音長(zhǎng)的出現(xiàn)次數(shù),從所述每個(gè)音長(zhǎng)中選擇滿足預(yù)設(shè)條件的音長(zhǎng);在所述音符序列中確定音長(zhǎng)與選擇的音長(zhǎng)之間的音長(zhǎng)差在預(yù)設(shè)范圍內(nèi)的預(yù)設(shè)音符;將選擇的預(yù)設(shè)音符在所述音符序列中的位置確定為劃分節(jié)拍的位置。
可選的,所述第二獲取模塊,還用于對(duì)于所述每個(gè)音符子序列,根據(jù)所述音符子序列中的每個(gè)音符的音長(zhǎng),從音長(zhǎng)范圍和子節(jié)拍的對(duì)應(yīng)關(guān)系中,獲取所述音符子序列中的每個(gè)音符的子節(jié)拍;
所述第二獲取模塊,還用于將所述音符子序列中的每個(gè)音符的子節(jié)拍的節(jié)拍和作為所述音符子序列的節(jié)拍。
可選的,所述裝置還包括:
第三獲取模塊,用于獲取所述目標(biāo)多媒體文件對(duì)應(yīng)的字幕文件,所述字幕文件包括所述每個(gè)音符時(shí)刻和與所述每個(gè)音符時(shí)刻關(guān)聯(lián)的文字信息;
插入模塊,用于根據(jù)所述每個(gè)音符時(shí)刻,將所述文字信息插入所述樂譜中。
可選的,所述第一確定模塊,包括:
第二獲取單元,用于獲取所述每個(gè)音符時(shí)刻的音頻信號(hào)的頻率;
第三獲取單元,用于根據(jù)所述每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,從頻率范圍和音高的對(duì)應(yīng)關(guān)系中,獲取所述每個(gè)音符時(shí)刻的音頻信號(hào)的音高。
可選的,所述第二獲取單元,還用于對(duì)所述每個(gè)音符時(shí)刻的音頻信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換,得到所述每個(gè)音符時(shí)刻的音頻數(shù)據(jù);從所述每個(gè)音符時(shí)刻的音頻數(shù)據(jù)中獲取所述每個(gè)音符時(shí)刻的音頻信號(hào)的頻率。
本發(fā)明實(shí)施例中,終端可以根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào),確定每個(gè)音符時(shí)刻的音頻信號(hào)的音高,并將每個(gè)音符時(shí)刻的音頻信號(hào)的音高組成音高序列,根據(jù)該音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定該目標(biāo)多媒體文件的音符序列,提高了終端獲取音符序列的準(zhǔn)確性,同時(shí),終端將該音符序列劃分為多個(gè)音符子序列,并獲取每個(gè)音符子序列的節(jié)拍,將該每個(gè)音符子序列和該音符子序列的節(jié)拍組成目標(biāo)多媒體文件的樂譜。終端通過直接根據(jù)該音頻信號(hào)確定出每個(gè)音符子序列的節(jié)拍,并將每個(gè)音符子序列和每個(gè)音符子序列的節(jié)拍生成樂譜,提高了終端生成樂譜的效率的同時(shí),也提高了終端生成樂譜的準(zhǔn)確性。
附圖說明
圖1是本發(fā)明實(shí)施例提供的一種生成樂譜的方法流程圖;
圖2是本發(fā)明實(shí)施例提供的一種生成樂譜的方法流程圖;
圖3是本發(fā)明實(shí)施例提供的一種生成樂譜的裝置結(jié)構(gòu)示意圖;
圖4是本發(fā)明實(shí)施例提供的一種生成樂譜的裝置結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。
本發(fā)明實(shí)施例提供了一種生成樂譜的方法,該方法的執(zhí)行主體可以為終端,參見圖1,該方法包括:
步驟101:獲取目標(biāo)多媒體文件的音頻信號(hào)。
步驟102:根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,確定該每個(gè)音符時(shí)刻的音頻信號(hào)的音高。
步驟103:將該每個(gè)音符時(shí)刻的音頻信號(hào)的音高組成音高序列,根據(jù)該音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定該目標(biāo)多媒體文件的音符序列。
步驟104:將該音符序列劃分為多個(gè)音符子序列,獲取每個(gè)音符子序列的節(jié)拍。
步驟105:將該每個(gè)音符子序列和該每個(gè)音符子序列的節(jié)拍組成該目標(biāo)多媒體文件的樂譜。
可選的,根據(jù)該音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定該目標(biāo)多媒體文件的音符序列,包括:
將該音高序列中連續(xù)且相同的多個(gè)音高合并為一個(gè)音高,得到該目標(biāo)多媒體文件的音符序列包括的每個(gè)音符;
獲取該音符序列中的每個(gè)音符在該音高序列中連續(xù)出現(xiàn)的出現(xiàn)次數(shù);
根據(jù)該音符序列中的每個(gè)音符的出現(xiàn)次數(shù)和該預(yù)設(shè)間隔,確定該音符序列中的每個(gè)音符所持續(xù)的音長(zhǎng);
將該音符序列中的每個(gè)音符和音長(zhǎng)組成該音符序列。
可選的,將該音符序列劃分為多個(gè)音符子序列,包括:
根據(jù)該音符序列中的每個(gè)音符的音長(zhǎng),在該音符序列中確定劃分節(jié)拍的位置;
根據(jù)該劃分節(jié)拍的位置,將該音符序列劃分為多個(gè)音符子序列。
可選的,根據(jù)該音符序列中的每個(gè)音符的音長(zhǎng),在該音符序列中確定劃分節(jié)拍的位置,包括:
根據(jù)該音符序列中的每個(gè)音符的音長(zhǎng),統(tǒng)計(jì)預(yù)設(shè)音符的每個(gè)音長(zhǎng)和每個(gè)音長(zhǎng)的出現(xiàn)次數(shù);
根據(jù)該每個(gè)音長(zhǎng)和該每個(gè)音長(zhǎng)的出現(xiàn)次數(shù),從該每個(gè)音長(zhǎng)中選擇滿足預(yù)設(shè)條件的音長(zhǎng);
在該音符序列中確定音長(zhǎng)與選擇的音長(zhǎng)之間的音長(zhǎng)差在預(yù)設(shè)范圍內(nèi)的預(yù)設(shè)音符;
將選擇的預(yù)設(shè)音符在該音符序列中的位置確定為劃分節(jié)拍的位置。
可選的,獲取每個(gè)音符子序列的節(jié)拍,包括:
對(duì)于該每個(gè)音符子序列,根據(jù)該音符子序列中的每個(gè)音符的音長(zhǎng),從音長(zhǎng)范圍和子節(jié)拍的對(duì)應(yīng)關(guān)系中,獲取該音符子序列中的每個(gè)音符的子節(jié)拍;
將該音符子序列中的每個(gè)音符的子節(jié)拍的節(jié)拍和作為該音符子序列的節(jié)拍。
可選的,將該每個(gè)音符子序列和該音符子序列的節(jié)拍組成該目標(biāo)多媒體文件的樂譜之后,該方法還包括:
獲取該目標(biāo)多媒體文件對(duì)應(yīng)的字幕文件,該字幕文件包括該每個(gè)音符時(shí)刻和與該每個(gè)音符時(shí)刻關(guān)聯(lián)的文字信息;
根據(jù)該每個(gè)音符時(shí)刻,將該文字信息插入該樂譜中。
可選的,根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,確定該每個(gè)音符時(shí)刻的音頻信號(hào)的音高,包括:
獲取該每個(gè)音符時(shí)刻的音頻信號(hào)的頻率;
根據(jù)該每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,從頻率范圍和音高的對(duì)應(yīng)關(guān)系中,獲取該每個(gè)音符時(shí)刻的音頻信號(hào)的音高。
可選的,獲取該每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,包括:
對(duì)該每個(gè)音符時(shí)刻的音頻信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換,得到該每個(gè)音符時(shí)刻的音頻數(shù)據(jù);
從該每個(gè)音符時(shí)刻的音頻數(shù)據(jù)中獲取該每個(gè)音符時(shí)刻的音頻信號(hào)的頻率。
本發(fā)明實(shí)施例中,終端可以根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào),確定每個(gè)音符時(shí)刻的音頻信號(hào)的音高,并將每個(gè)音符時(shí)刻的音頻信號(hào)的音高組成音高序列,根據(jù)該音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定該目標(biāo)多媒體文件的音符序列,提高了終端獲取音符序列的準(zhǔn)確性,同時(shí),終端將該音符序列劃分為多個(gè)音符子序列,并獲取每個(gè)音符子序列的節(jié)拍,將該每個(gè)音符子序列和該音符子序列的節(jié)拍組成目標(biāo)多媒體文件的樂譜。終端通過直接根據(jù)該音頻信號(hào)確定出每個(gè)音符子序列的節(jié)拍,并將每個(gè)音符子序列和每個(gè)音符子序列的節(jié)拍生成樂譜,提高了終端生成樂譜的效率的同時(shí),也提高了終端生成樂譜的準(zhǔn)確性。
本發(fā)明實(shí)施例提供了一種生成樂譜的方法,該方法的執(zhí)行主體可以為終端,參見圖2,該方法包括:
步驟201:終端獲取目標(biāo)多媒體文件的音頻信號(hào)。
當(dāng)終端生成樂譜時(shí),用戶選擇一個(gè)待生成樂譜的多媒體文件,終端將用戶選擇的多媒體文件確定為目標(biāo)多媒體文件,該目標(biāo)多媒體文件可以為終端中存儲(chǔ)的多媒體文件,也可以為服務(wù)器中存儲(chǔ)的多媒體文件。
如果該目標(biāo)多媒體文件為終端中存儲(chǔ)的多媒體文件,則本步驟可以為:終端從該目標(biāo)媒體文件中獲取該目標(biāo)多媒體文件的音頻信號(hào)。
如果該目標(biāo)多媒體文件為服務(wù)器中存儲(chǔ)的多媒體文件,則本步驟可以為:
終端向服務(wù)器發(fā)送獲取請(qǐng)求,該獲取請(qǐng)求攜帶該目標(biāo)多媒體文件的文件標(biāo)識(shí);服務(wù)器接收終端發(fā)送的獲取請(qǐng)求,根據(jù)該目標(biāo)媒體文件的文件標(biāo)識(shí),從文件標(biāo)識(shí)和音頻信號(hào)的對(duì)應(yīng)關(guān)系中,獲取該目標(biāo)媒體文件的文件標(biāo)識(shí)對(duì)應(yīng)的音頻信號(hào),即該目標(biāo)多媒體文件的音頻信號(hào),向終端發(fā)送該目標(biāo)多媒體文件的音頻信號(hào);終端接收服務(wù)器發(fā)送的該目標(biāo)多媒體文件的音頻信號(hào)。
目標(biāo)多媒體文件可以為音頻文件或者視頻文件。目標(biāo)多媒體文件的文件標(biāo)識(shí)可以為目標(biāo)多媒體文件的名稱或者編號(hào)等。
步驟202:終端根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,確定每個(gè)音符時(shí)刻的音頻信號(hào)的音高。
本步驟中,終端存儲(chǔ)了頻率范圍和音高的對(duì)應(yīng)關(guān)系,終端獲取每個(gè)音符時(shí)刻對(duì)應(yīng)的音頻信號(hào)的頻率后,可以從頻率范圍和音高的對(duì)應(yīng)關(guān)系中,獲取該頻率對(duì)應(yīng)的音高,因此,本步驟可以通過以下步驟2021-2022實(shí)現(xiàn)。
步驟2021:終端獲取每個(gè)音符時(shí)刻的音頻信號(hào)的頻率。
本發(fā)明實(shí)施例中,終端每隔預(yù)設(shè)間隔從該目標(biāo)多媒體文件的音頻信號(hào)中獲取一個(gè)音符時(shí)刻對(duì)應(yīng)的音頻信號(hào),該音頻信號(hào)為該音符時(shí)刻對(duì)應(yīng)的模擬信號(hào),終端需要先將該音頻信號(hào)轉(zhuǎn)換為音頻數(shù)據(jù),根據(jù)該音頻數(shù)據(jù),計(jì)算出每個(gè)音符時(shí)刻的音頻信號(hào)的頻率。因此,本步驟為:終端對(duì)每個(gè)音符時(shí)刻的音頻信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換,得到每個(gè)音符時(shí)刻的音頻數(shù)據(jù);終端從每個(gè)音符時(shí)刻的音頻數(shù)據(jù)中獲取該每個(gè)音符時(shí)刻的音頻信號(hào)的頻率。
本步驟中,終端對(duì)每個(gè)音符時(shí)刻的音頻信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換,將該音符時(shí)刻的音頻信號(hào)轉(zhuǎn)換為音頻數(shù)據(jù),該音頻數(shù)據(jù)為該音符時(shí)刻的對(duì)應(yīng)的一段數(shù)字信號(hào),該數(shù)字信號(hào)中存儲(chǔ)了該音符時(shí)刻對(duì)應(yīng)的音頻信號(hào)的頻率,終端通過對(duì)該音符時(shí)刻對(duì)應(yīng)的一段數(shù)字信號(hào)進(jìn)行計(jì)算,從而確定出該音符時(shí)刻對(duì)應(yīng)的音頻信號(hào)的頻率。
其中,終端可以將每個(gè)音符時(shí)刻對(duì)應(yīng)的音頻信號(hào)的頻率存儲(chǔ)在該音符時(shí)刻對(duì)應(yīng)的音頻數(shù)據(jù)的預(yù)設(shè)字段中,因此,終端從每個(gè)音符時(shí)刻的音頻數(shù)據(jù)中獲取該每個(gè)音符時(shí)刻的音頻信號(hào)的頻率的步驟可以為:終端獲取每個(gè)音符時(shí)刻對(duì)應(yīng)的音頻數(shù)據(jù)的預(yù)設(shè)字段,根據(jù)該預(yù)設(shè)字段中存儲(chǔ)的音頻數(shù)據(jù),計(jì)算得到該音符時(shí)刻的音頻信號(hào)的頻率。
其中,該預(yù)設(shè)字段可以根據(jù)用戶需要設(shè)置并更改,本發(fā)明實(shí)施例對(duì)此不作具體限定,例如,如果該音符時(shí)刻對(duì)應(yīng)的一段數(shù)字信號(hào)為“01111000101001011000-00111000011100110010”,該預(yù)設(shè)字段可以為該音頻數(shù)據(jù)的第21至第40字段,因此,該預(yù)設(shè)字段中存儲(chǔ)的音頻數(shù)據(jù)的可以為“00111000011100110010”。
其中,預(yù)設(shè)間隔可以根據(jù)用戶需要設(shè)置并更改,本發(fā)明實(shí)施例對(duì)此不作具體限定。例如,該預(yù)設(shè)間隔可以為1秒、10毫秒等。
步驟2022:終端根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,從頻率范圍和音高的對(duì)應(yīng)關(guān)系中,獲取每個(gè)音符時(shí)刻的音頻信號(hào)的音高。
本步驟中,終端根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,確定該頻率所在的頻率范圍,由于終端存儲(chǔ)了標(biāo)準(zhǔn)樂譜中頻率范圍和音高的對(duì)應(yīng)關(guān)系,因此,終端可以根據(jù)該頻率所在的頻率范圍,從頻率范圍和音高的對(duì)應(yīng)關(guān)系中,獲取該頻率對(duì)應(yīng)的音高,即該頻率對(duì)應(yīng)的音符時(shí)刻的音頻信號(hào)的音高。
其中,標(biāo)準(zhǔn)樂譜的音高可以為由不同音階的七個(gè)基本音符表示的,每個(gè)音高對(duì)應(yīng)不同的頻率范圍,該頻率范圍可以根據(jù)用戶需要設(shè)置并更改,本發(fā)明實(shí)施例對(duì)此不作具體限定。例如,該頻率范圍435赫茲至445赫茲的頻率范圍對(duì)應(yīng)的音高為1。
需要說明的是,為了更精確的獲取該目標(biāo)多媒體文件在每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,終端可以重復(fù)執(zhí)行步驟202,并且每次執(zhí)行202時(shí),對(duì)應(yīng)的預(yù)設(shè)間隔不同。例如,終端第一次執(zhí)行步驟202時(shí),以每隔1秒的預(yù)設(shè)間隔從該目標(biāo)多媒體文件的音頻信號(hào)中獲取一個(gè)音符時(shí)刻對(duì)應(yīng)的音頻信號(hào),終端下次可以每隔0.1秒的預(yù)設(shè)間隔從該目標(biāo)多媒體文件的音頻信號(hào)中獲取一個(gè)音符時(shí)刻對(duì)應(yīng)的音頻信號(hào)。這樣,終端可以通過減小預(yù)設(shè)間隔,進(jìn)而提高了獲取該多媒體音頻文件中音頻信號(hào)對(duì)應(yīng)的音高的精確性。
步驟203:終端將該每個(gè)音符時(shí)刻的音頻信號(hào)的音高組成音高序列,根據(jù)該音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定該目標(biāo)多媒體文件的音符序列。
本步驟中,終端可以將該目標(biāo)多媒體文件的多個(gè)音符時(shí)刻的音頻信號(hào)的音高組成一個(gè)音高序列,然后,終端根據(jù)該目標(biāo)多媒體文件中相鄰音符時(shí)刻之間的預(yù)設(shè)間隔,確定音高序列中每個(gè)音高對(duì)應(yīng)的音符持續(xù)的時(shí)間,進(jìn)而確定出該目標(biāo)多媒體文件對(duì)應(yīng)的音符序列,因此,本步驟可以通過以下步驟2031-2032實(shí)現(xiàn)。
步驟2031:終端將該音高序列中連續(xù)且相同的多個(gè)音高合并為一個(gè)音高,得到該目標(biāo)多媒體文件的音符序列包括的每個(gè)音符。
本步驟中,終端檢測(cè)在該音高序列中連續(xù)出現(xiàn)且相同的多個(gè)音高,當(dāng)終端檢測(cè)到該音高序列中連續(xù)出現(xiàn)且相同的多個(gè)音高時(shí),將該多個(gè)音高合并為一個(gè)音高,由于音高可以為由不同音階的七個(gè)基本音符表示,因此,終端根據(jù)該合并后的音高序列,得到該目標(biāo)多媒體文件的音符序列,該音符序列包括多個(gè)音符。
例如,該音高序列中包括的其中一段音高序列可以為“111022200666”,將該音高序列中連續(xù)出現(xiàn)的1、2、6合并之后,該音高序列對(duì)應(yīng)的音符序列可以為“10206”。
步驟2032:終端獲取該音符序列中的每個(gè)音符在該音高序列中連續(xù)出現(xiàn)的出現(xiàn)次數(shù),終端根據(jù)該音符序列中的每個(gè)音符的出現(xiàn)次數(shù)和該預(yù)設(shè)間隔,確定該音符序列中的每個(gè)音符所持續(xù)的音長(zhǎng)。
本步驟中,該每個(gè)音符在該音高序列中連續(xù)出現(xiàn)的出現(xiàn)次數(shù),即該音高序列中該音符對(duì)應(yīng)的音高連續(xù)出現(xiàn)的出現(xiàn)次數(shù),該預(yù)設(shè)間隔為該目標(biāo)多媒體文件中相鄰兩個(gè)音符時(shí)刻之間的時(shí)間間隔。對(duì)于每個(gè)音符,終端根據(jù)該音符的出現(xiàn)次數(shù)以及預(yù)設(shè)間隔,將該音符的出現(xiàn)次數(shù)與該預(yù)設(shè)間隔的乘積,作為該音符所持續(xù)的時(shí)長(zhǎng),即該音符所持續(xù)的音長(zhǎng)。
例如,該音高序列中包括的其中一段音高序列可以為“1110222006666”,該音高序列對(duì)應(yīng)的音符序列可以為“10206”,如果預(yù)設(shè)間隔為0.3秒,則“10206”中,音符1、2持續(xù)的音長(zhǎng)為0.9秒,音符6持續(xù)的音長(zhǎng)為1.2秒。
步驟2033:終端將該音符序列中的每個(gè)音符和音長(zhǎng)組成該音符序列。
本步驟中,音長(zhǎng)即為該音符序列中每個(gè)音符持續(xù)的時(shí)長(zhǎng),終端根據(jù)該音符序列中的每個(gè)音符的位置,將每個(gè)音符和該音符對(duì)應(yīng)的音長(zhǎng)組成該目標(biāo)多媒體文件對(duì)應(yīng)的音符序列。
其中,該音符序列中每個(gè)音符所持續(xù)的時(shí)長(zhǎng)可以用音符的類型表示。例如,如果預(yù)設(shè)四分音符的音長(zhǎng)為2秒,而音符序列中“2”的音長(zhǎng)為2秒,則可以將“2”表示為一個(gè)音長(zhǎng)為2秒的四分音符:2;如果預(yù)設(shè)八分音符的音長(zhǎng)為1秒,而音符序列中“3”的音長(zhǎng)為1秒,則可以將“3”表示為一個(gè)音長(zhǎng)為1秒的八分音符:3。
同理,為了更精確的獲取該目標(biāo)多媒體文件音符序列,終端可以重復(fù)執(zhí)行步驟202與203,并且每次執(zhí)行202時(shí),對(duì)應(yīng)的預(yù)設(shè)間隔不同。
步驟204:終端將該音符序列劃分為多個(gè)音符子序列,獲取每個(gè)音符子序列的節(jié)拍。
本步驟中,終端先將音符序列劃分為多個(gè)音符子序列,根據(jù)每個(gè)音符子序列中每個(gè)音符的音長(zhǎng)以及相鄰兩個(gè)音符的停頓時(shí)長(zhǎng),確定每個(gè)音符子序列的節(jié)拍。因此,本步驟可以通過以下步驟2041-2043實(shí)現(xiàn)。
步驟2041:終端根據(jù)該音符序列中的每個(gè)音符的音長(zhǎng),在該音符序列中確定劃分節(jié)拍的位置,終端根據(jù)該劃分節(jié)拍的位置,將該音符序列劃分為多個(gè)音符子序列。
本發(fā)明實(shí)施例中,終端將音符序列中預(yù)設(shè)音符的音長(zhǎng)確定為相鄰兩個(gè)音符之間停頓的時(shí)長(zhǎng),根據(jù)該停頓在該音符序列中的位置,確定劃分節(jié)拍的位置,因此,本步驟可以通過以下步驟2041a-2041c實(shí)現(xiàn)。
步驟2041a終端根據(jù)該音符序列中的每個(gè)音符的音長(zhǎng),統(tǒng)計(jì)預(yù)設(shè)音符的每個(gè)音長(zhǎng)和每個(gè)音長(zhǎng)的出現(xiàn)次數(shù)。
本步驟中,該預(yù)設(shè)音符可以為音高為預(yù)設(shè)閾值的音符,該預(yù)設(shè)閾值可以根據(jù)用戶需要設(shè)置并更改,本發(fā)明實(shí)施例對(duì)此不做具體限定。例如,該預(yù)設(shè)閾值可以為音高為0赫茲、0.1赫茲的音高。
步驟2041b:終端根據(jù)該每個(gè)音長(zhǎng)和該每個(gè)音長(zhǎng)的出現(xiàn)次數(shù),從該每個(gè)音長(zhǎng)中選擇滿足預(yù)設(shè)條件的音長(zhǎng)。
本步驟中,終端將每個(gè)預(yù)設(shè)音符作為該音符序列在該預(yù)設(shè)音符處的一次停頓,則該預(yù)設(shè)音符在該音符序列中的位置即為停頓的位置,預(yù)設(shè)音符在該音符序列中的音長(zhǎng)即為停頓的音長(zhǎng),終端確定出該音符序列中每個(gè)停頓的時(shí)長(zhǎng)以及位置,根據(jù)該每個(gè)音長(zhǎng)和該每個(gè)音長(zhǎng)的出現(xiàn)次數(shù),從多個(gè)音長(zhǎng)中選擇滿足預(yù)設(shè)條件的音長(zhǎng)。
其中,該預(yù)設(shè)條件可以根據(jù)用戶需要設(shè)置并更改,本發(fā)明實(shí)施例對(duì)此不作具體限定,例如,該預(yù)設(shè)條件可以為出現(xiàn)次數(shù)最多;或者,出現(xiàn)次數(shù)超過第一預(yù)設(shè)次數(shù),或者出現(xiàn)次數(shù)超過第二預(yù)設(shè)次數(shù)且音長(zhǎng)大于預(yù)設(shè)音長(zhǎng)。例如,預(yù)設(shè)條件可以為出現(xiàn)次數(shù)大于30次且音長(zhǎng)大于1秒。
該預(yù)設(shè)音長(zhǎng)、第一預(yù)設(shè)次數(shù)和第二預(yù)設(shè)次數(shù)可以根據(jù)用戶需要設(shè)置并更改,本發(fā)明實(shí)施例對(duì)此不作具體限定。例如,該預(yù)設(shè)音長(zhǎng)可以為1秒、0.5秒等,該第一預(yù)設(shè)次數(shù)可以為30次或者該音符序列中所有預(yù)設(shè)音符的總出現(xiàn)次數(shù)的80%等,該第二預(yù)設(shè)次數(shù)可以為50次或者該音符序列中所有預(yù)設(shè)音符的總出現(xiàn)次數(shù)的一半等。
步驟2041c:終端在該音符序列中確定音長(zhǎng)與選擇的音長(zhǎng)之間的音長(zhǎng)差在預(yù)設(shè)范圍內(nèi)的預(yù)設(shè)音符,終端將選擇的預(yù)設(shè)音符在該音符序列中的位置確定為劃分節(jié)拍的位置。
本發(fā)明實(shí)施例中,由于該目標(biāo)多媒體文件的音頻信號(hào)經(jīng)過一系列的壓縮轉(zhuǎn)換等過程,經(jīng)壓縮后的音頻信號(hào)不能準(zhǔn)確的反應(yīng)該目標(biāo)多媒體文件的音符序列中每個(gè)音符的音長(zhǎng),因此,本步驟中,終端還需對(duì)預(yù)設(shè)音符的音長(zhǎng)進(jìn)行進(jìn)一步的篩選,從而準(zhǔn)確的確定出劃分節(jié)拍的位置。
本步驟中,終端先對(duì)步驟2041b中終端選擇的滿足預(yù)設(shè)條件的多個(gè)音長(zhǎng)取平均值,得到該多個(gè)選擇的音長(zhǎng)的平均音長(zhǎng),終端在該音符序列中確定音長(zhǎng)與該平均音長(zhǎng)之間的音長(zhǎng)差在預(yù)設(shè)范圍內(nèi)的預(yù)設(shè)音符。
其中,該預(yù)設(shè)范圍可以根據(jù)用戶需要設(shè)置并更改,本發(fā)明實(shí)施例對(duì)此不做具體限定。例如,該預(yù)設(shè)范圍可以為0.01秒、0.03秒等。
然后,終端獲取該預(yù)設(shè)音符在該音符序列中的位置,將該位置確定為劃分節(jié)拍的位置。
需要說明的是,劃分節(jié)拍的位置即樂譜中節(jié)拍線的位置,對(duì)于一段音符序列,終端可以將選擇的音高為零的預(yù)設(shè)音符作為節(jié)拍線的位置。這樣,終端就把該音符序列劃分為多個(gè)音符子序列。
本發(fā)明實(shí)施例中,如果該音符序列中有預(yù)設(shè)音符的音高并非劃分節(jié)拍的位置,終端還需根據(jù)該預(yù)設(shè)音符的音長(zhǎng),確定該預(yù)設(shè)音符的類型,例如,如果該預(yù)設(shè)音符的音長(zhǎng)為2秒,終端可以將該預(yù)設(shè)音符確定為一個(gè)四份休止符:0。
步驟2042:對(duì)于該每個(gè)音符子序列,終端根據(jù)該音符子序列中的每個(gè)音符的音長(zhǎng),從音長(zhǎng)范圍和子節(jié)拍的對(duì)應(yīng)關(guān)系中,獲取該音符子序列中的每個(gè)音符的子節(jié)拍,終端將該音符子序列中的每個(gè)音符的子節(jié)拍的節(jié)拍和作為該音符子序列的節(jié)拍。
本步驟中,對(duì)于每個(gè)音符子序列,終端獲取每個(gè)音符子序列中每個(gè)音符的音長(zhǎng),從音長(zhǎng)范圍和子節(jié)拍的對(duì)應(yīng)關(guān)系中,獲取該音符子序列中的每個(gè)音符的子節(jié)拍,即該音符的類型,確定該音符子序列中每個(gè)音符的子節(jié)拍,然后,終端將每個(gè)音符子序列中每個(gè)音符的子節(jié)拍的和,作為該音符子序列的節(jié)拍。目標(biāo)多媒體文件中,音符序列包括的多個(gè)音符子序列的節(jié)拍通常是相同的。
其中,該音符子序列的節(jié)拍可以用拍號(hào)分?jǐn)?shù)表示,例如,可以用“3/4”表示該音符子序列的節(jié)拍。
例如,相鄰的兩個(gè)音符子序列“|2 3|5 6|”中,|2 3|為一個(gè)音符子序列,該小節(jié)有兩拍,|5 6|為一個(gè)音符子序列,該小節(jié)有兩拍,2、3、5、6的音符類型均為四分音符,|2 3|音符子序列中,音符2和音符3對(duì)應(yīng)的子節(jié)拍均為1/4拍,因此,|2 3|音符子序列的節(jié)拍為2/4,即以四分音符為一拍,每小節(jié)有兩拍。同理,|5 6|音符子序列的節(jié)拍也為2/4拍。
需要說明的是,本步驟中,由于終端還需獲取每個(gè)預(yù)設(shè)音符的音長(zhǎng),即相鄰兩個(gè)預(yù)設(shè)音符以外的其他音符之間的停頓時(shí)長(zhǎng),同理,為了更精確的劃分目標(biāo)多媒體文件音符子序列,并獲取每個(gè)音符子序列的節(jié)拍,終端可以重復(fù)執(zhí)行步驟202-204,并且每次執(zhí)行202時(shí),對(duì)應(yīng)的預(yù)設(shè)間隔不同。
步驟205:終端將該每個(gè)音符子序列和該每個(gè)音符子序列的節(jié)拍組成該目標(biāo)多媒體文件的樂譜。
本步驟中,終端獲取每個(gè)音符子序列和該每個(gè)音符子序列的節(jié)拍,將該音符子序列組成該目標(biāo)多媒體文件的樂譜,并將該用于表示該音符序列包括的多個(gè)音符子序列均一致的節(jié)拍添加在該樂譜中。
終端生成目標(biāo)多媒體文件的樂譜之后,終端還可以通過以下步驟206,為該樂譜添加字幕信息。
步驟206:終端獲取該目標(biāo)多媒體文件對(duì)應(yīng)的字幕文件,該字幕文件包括該每個(gè)音符時(shí)刻和與該每個(gè)音符時(shí)刻關(guān)聯(lián)的文字信息,根據(jù)該每個(gè)音符時(shí)刻,將該文字信息插入該樂譜中。
本發(fā)明實(shí)施例中,如果該目標(biāo)多媒體文件中包括字幕文件,終端還可以將目標(biāo)多媒體文件對(duì)應(yīng)的字幕文件插入該樂譜中,由于該字幕文件包括該每個(gè)音符時(shí)刻和與該每個(gè)音符時(shí)刻關(guān)聯(lián)的文字信息,因此,終端可以根據(jù)音符序列中每個(gè)音符對(duì)應(yīng)的音符時(shí)刻,從字幕文件中獲取該音符時(shí)刻對(duì)應(yīng)的文字信息,進(jìn)而將該文字信息插入該樂譜中該音符時(shí)刻對(duì)應(yīng)的音符的位置。
本發(fā)明實(shí)施例中,終端可以根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào),確定每個(gè)音符時(shí)刻的音頻信號(hào)的音高,并將每個(gè)音符時(shí)刻的音頻信號(hào)的音高組成音高序列,根據(jù)該音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定該目標(biāo)多媒體文件的音符序列,提高了終端獲取音符序列的準(zhǔn)確性,同時(shí),終端將該音符序列劃分為多個(gè)音符子序列,并獲取每個(gè)音符子序列的節(jié)拍,將該每個(gè)音符子序列和該音符子序列的節(jié)拍組成目標(biāo)多媒體文件的樂譜。終端通過直接根據(jù)該音頻信號(hào)確定出每個(gè)音符子序列的節(jié)拍,并將每個(gè)音符子序列和每個(gè)該音符子序列的節(jié)拍生成樂譜,提高了終端生成樂譜的效率的同時(shí),也提高了終端生成樂譜的準(zhǔn)確性。
本發(fā)明實(shí)施例提供了一種生成樂譜的裝置,該裝置可以應(yīng)用在終端上,參見圖3,該裝置包括:
第一獲取模塊301,用于獲取目標(biāo)多媒體文件的音頻信號(hào);
第一確定模塊302,用于根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,確定該每個(gè)音符時(shí)刻的音頻信號(hào)的音高;
第二確定模塊303,用于將該每個(gè)音符時(shí)刻的音頻信號(hào)的音高組成音高序列,根據(jù)該音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定該目標(biāo)多媒體文件的音符序列;
劃分模塊304,用于將該音符序列劃分為多個(gè)音符子序列;
第二獲取模塊305,用于獲取每個(gè)音符子序列的節(jié)拍;
組成模塊306,用于將該每個(gè)音符子序列和該每個(gè)音符子序列的節(jié)拍組成目標(biāo)多媒體文件的樂譜。
可選的,該第二確定模塊303,包括:
合并單元,用于將該音高序列中連續(xù)且相同的多個(gè)音高合并為一個(gè)音高,得到該目標(biāo)多媒體文件的音符序列包括的每個(gè)音符;
第一獲取單元,用于獲取該音符序列中的每個(gè)音符在該音高序列中連續(xù)出現(xiàn)的出現(xiàn)次數(shù);
第一確定單元,用于根據(jù)該音符序列中的每個(gè)音符的出現(xiàn)次數(shù)和該預(yù)設(shè)間隔,確定該音符序列中的每個(gè)音符所持續(xù)的音長(zhǎng);
組成單元,用于將該音符序列中的每個(gè)音符和音長(zhǎng)組成該音符序列。
可選的,該劃分模塊304,包括:
第二確定單元,用于根據(jù)該音符序列中的每個(gè)音符的音長(zhǎng),在該音符序列中確定劃分節(jié)拍的位置;
劃分單元,用于根據(jù)該劃分節(jié)拍的位置,將該音符序列劃分為多個(gè)音符子序列。
可選的,該劃分單元,用于根據(jù)該音符序列中的每個(gè)音符的音長(zhǎng),統(tǒng)計(jì)預(yù)設(shè)音符的每個(gè)音長(zhǎng)和每個(gè)音長(zhǎng)的出現(xiàn)次數(shù);根據(jù)該每個(gè)音長(zhǎng)和該每個(gè)音長(zhǎng)的出現(xiàn)次數(shù),從該每個(gè)音長(zhǎng)中選擇滿足預(yù)設(shè)條件的音長(zhǎng);在該音符序列中確定音長(zhǎng)與選擇的音長(zhǎng)之間的音長(zhǎng)差在預(yù)設(shè)范圍內(nèi)的預(yù)設(shè)音符;將選擇的預(yù)設(shè)音符在該音符序列中的位置確定為劃分節(jié)拍的位置。
可選的,該第二獲取模塊305,還用于對(duì)于該每個(gè)音符子序列,根據(jù)該音符子序列中的每個(gè)音符的音長(zhǎng),從音長(zhǎng)范圍和子節(jié)拍的對(duì)應(yīng)關(guān)系中,獲取該音符子序列中的每個(gè)音符的子節(jié)拍;
該第二獲取模塊305,還用于將該音符子序列中的每個(gè)音符的子節(jié)拍的節(jié)拍和作為該音符子序列的節(jié)拍。
可選的,該裝置還包括:
第三獲取模塊,用于獲取該目標(biāo)多媒體文件對(duì)應(yīng)的字幕文件,該字幕文件包括該每個(gè)音符時(shí)刻和與該每個(gè)音符時(shí)刻關(guān)聯(lián)的文字信息;
插入模塊,用于根據(jù)該每個(gè)音符時(shí)刻,將該文字信息插入該樂譜中。
可選的,該第一確定模塊302,包括:
第二獲取單元,用于獲取該每個(gè)音符時(shí)刻的音頻信號(hào)的頻率;
第三獲取單元,用于根據(jù)該每個(gè)音符時(shí)刻的音頻信號(hào)的頻率,從頻率范圍和音高的對(duì)應(yīng)關(guān)系中,獲取該每個(gè)音符時(shí)刻的音頻信號(hào)的音高。
可選的,該第二獲取單還用于對(duì)該每個(gè)音符時(shí)刻的音頻信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換,得到該每個(gè)音符時(shí)刻的音頻數(shù)據(jù);從該每個(gè)音符時(shí)刻的音頻數(shù)據(jù)中獲取該每個(gè)音符時(shí)刻的音頻信號(hào)的頻率。
本發(fā)明實(shí)施例中,終端可以根據(jù)每個(gè)音符時(shí)刻的音頻信號(hào),確定每個(gè)音符時(shí)刻的音頻信號(hào)的音高,并將每個(gè)音符時(shí)刻的音頻信號(hào)的音高組成音高序列,根據(jù)該音高序列和音符時(shí)刻之間的預(yù)設(shè)間隔,確定該目標(biāo)多媒體文件的音符序列,提高了終端獲取音符序列的準(zhǔn)確性,同時(shí),終端將該音符序列劃分為多個(gè)音符子序列,并獲取每個(gè)音符子序列的節(jié)拍,將該每個(gè)音符子序列和該音符子序列的節(jié)拍組成目標(biāo)多媒體文件的樂譜。終端通過直接根據(jù)該音頻信號(hào)確定出每個(gè)音符子序列的節(jié)拍,并將每個(gè)音符子序列和每個(gè)音符子序列的節(jié)拍生成樂譜,提高了終端生成樂譜的效率的同時(shí),也提高了終端生成樂譜的準(zhǔn)確性。
需要說明的是:上述實(shí)施例提供的生成樂譜的裝置在生成樂譜時(shí),僅以上述各功能模塊的劃分進(jìn)行舉例說明,實(shí)際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實(shí)施例提供的生成樂譜的裝置與生成樂譜的方法實(shí)施例屬于同一構(gòu)思,其具體實(shí)現(xiàn)過程詳見方法實(shí)施例,這里不再贅述。
圖4是本發(fā)明實(shí)施例提供的一種終端的結(jié)構(gòu)示意圖。該終端可以用于實(shí)施上述實(shí)施例所示出的生成樂譜的方法中的終端所執(zhí)行的功能。具體來講:
終端400可以包括RF(Radio Frequency,射頻)電路110、包括有一個(gè)或一個(gè)以上計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的存儲(chǔ)器120、輸入單元130、顯示單元140、傳感器150、音頻電路160、傳輸模塊170、包括有一個(gè)或者一個(gè)以上處理核心的處理器180、以及電源190等部件。本領(lǐng)域技術(shù)人員可以理解,圖4中示出的終端結(jié)構(gòu)并不構(gòu)成對(duì)終端的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。其中:
RF電路110可用于收發(fā)信息或通話過程中,信號(hào)的接收和發(fā)送,特別地,將基站的下行信息接收后,交由一個(gè)或者一個(gè)以上處理器180處理;另外,將涉及上行的數(shù)據(jù)發(fā)送給基站。通常,RF電路110包括但不限于天線、至少一個(gè)放大器、調(diào)諧器、一個(gè)或多個(gè)振蕩器、用戶身份模塊(SIM)卡、收發(fā)信機(jī)、耦合器、LNA(Low Noise Amplifier,低噪聲放大器)、雙工器等。此外,RF電路110還可以通過無線通信與網(wǎng)絡(luò)和其他終端通信。所述無線通信可以使用任一通信標(biāo)準(zhǔn)或協(xié)議,包括但不限于GSM(Global System of Mobile communication,全球移動(dòng)通訊系統(tǒng))、GPRS(General Packet Radio Service,通用分組無線服務(wù))、CDMA(Code Division Multiple Access,碼分多址)、WCDMA(Wideband Code Division Multiple Access,寬帶碼分多址)、LTE(Long Term Evolution,長(zhǎng)期演進(jìn))、電子郵件、SMS(Short Messaging Service,短消息服務(wù))等。
存儲(chǔ)器120可用于存儲(chǔ)軟件程序以及模塊,如上述示例性實(shí)施例所示出的終端所對(duì)應(yīng)的軟件程序以及模塊,處理器180通過運(yùn)行存儲(chǔ)在存儲(chǔ)器120的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,如實(shí)現(xiàn)基于視頻的交互等。存儲(chǔ)器120可主要包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū),其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)根據(jù)終端400的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲(chǔ)器120可以包括高速隨機(jī)存取存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,例如至少一個(gè)磁盤存儲(chǔ)器件、閃存器件、或其他易失性固態(tài)存儲(chǔ)器件。相應(yīng)地,存儲(chǔ)器120還可以包括存儲(chǔ)器控制器,以提供處理器180和輸入單元130對(duì)存儲(chǔ)器120的訪問。
輸入單元130可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與用戶設(shè)置以及功能控制有關(guān)的鍵盤、鼠標(biāo)、操作桿、光學(xué)或者軌跡球信號(hào)輸入。具體地,輸入單元130可包括觸敏表面131以及其他輸入終端132。觸敏表面131,也稱為觸摸顯示屏或者觸控板,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸敏表面131上或在觸敏表面131附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動(dòng)相應(yīng)的鏈接裝置。可選的,觸敏表面131可包括觸摸檢測(cè)裝置和觸摸控制器兩個(gè)部分。其中,觸摸檢測(cè)裝置檢測(cè)用戶的觸摸方位,并檢測(cè)觸摸操作帶來的信號(hào),將信號(hào)傳送給觸摸控制器;觸摸控制器從觸摸檢測(cè)裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點(diǎn)坐標(biāo),再送給處理器180,并能接收處理器180發(fā)來的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實(shí)現(xiàn)觸敏表面131。除了觸敏表面131,輸入單元130還可以包括其他輸入終端132。具體地,其他輸入終端132可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。
顯示單元140可用于顯示由用戶輸入的信息或提供給用戶的信息以及終端400的各種圖形用戶接口,這些圖形用戶接口可以由圖形、文本、圖標(biāo)、視頻和其任意組合來構(gòu)成。顯示單元140可包括顯示面板141,可選的,可以采用LCD(Liquid Crystal Display,液晶顯示器)、OLED(Organic Light-Emitting Diode,有機(jī)發(fā)光二極管)等形式來配置顯示面板141。進(jìn)一步的,觸敏表面131可覆蓋顯示面板141,當(dāng)觸敏表面131檢測(cè)到在其上或附近的觸摸操作后,傳送給處理器180以確定觸摸事件的類型,隨后處理器180根據(jù)觸摸事件的類型在顯示面板141上提供相應(yīng)的視覺輸出。雖然在圖4中,觸敏表面131與顯示面板141是作為兩個(gè)獨(dú)立的部件來實(shí)現(xiàn)輸入和輸入功能,但是在某些實(shí)施例中,可以將觸敏表面131與顯示面板141集成而實(shí)現(xiàn)輸入和輸出功能。
終端400還可包括至少一種傳感器150,比如光傳感器、運(yùn)動(dòng)傳感器以及其他傳感器。具體地,光傳感器可包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據(jù)環(huán)境光線的明暗來調(diào)節(jié)顯示面板141的亮度,接近傳感器可在終端400移動(dòng)到耳邊時(shí),關(guān)閉顯示面板141和/或背光。作為運(yùn)動(dòng)傳感器的一種,重力加速度傳感器可檢測(cè)各個(gè)方向上(一般為三軸)加速度的大小,靜止時(shí)可檢測(cè)出重力的大小及方向,可用于識(shí)別手機(jī)姿態(tài)的應(yīng)用(比如橫豎屏切換、相關(guān)游戲、磁力計(jì)姿態(tài)校準(zhǔn))、振動(dòng)識(shí)別相關(guān)功能(比如計(jì)步器、敲擊)等;至于終端400還可配置的陀螺儀、氣壓計(jì)、濕度計(jì)、溫度計(jì)、紅外線傳感器等其他傳感器,在此不再贅述。
音頻電路160、揚(yáng)聲器161,傳聲器162可提供用戶與終端400之間的音頻接口。音頻電路160可將接收到的音頻數(shù)據(jù)轉(zhuǎn)換后的電信號(hào),傳輸?shù)綋P(yáng)聲器161,由揚(yáng)聲器161轉(zhuǎn)換為聲音信號(hào)輸出;另一方面,傳聲器162將收集的聲音信號(hào)轉(zhuǎn)換為電信號(hào),由音頻電路160接收后轉(zhuǎn)換為音頻數(shù)據(jù),再將音頻數(shù)據(jù)輸出處理器180處理后,經(jīng)RF電路110以發(fā)送給比如另一終端,或者將音頻數(shù)據(jù)輸出至存儲(chǔ)器120以便進(jìn)一步處理。音頻電路160還可能包括耳塞插孔,以提供外設(shè)耳機(jī)與終端400的通信。
終端400通過傳輸模塊170可以幫助用戶收發(fā)電子郵件、瀏覽網(wǎng)頁(yè)和訪問流式媒體等,它為用戶提供了無線或有線的寬帶互聯(lián)網(wǎng)訪問。雖然圖4示出了傳輸模塊170,但是可以理解的是,其并不屬于終端400的必須構(gòu)成,完全可以根據(jù)需要在不改變發(fā)明的本質(zhì)的范圍內(nèi)而省略。
處理器180是終端400的控制中心,利用各種接口和線路鏈接整個(gè)手機(jī)的各個(gè)部分,通過運(yùn)行或執(zhí)行存儲(chǔ)在存儲(chǔ)器120內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲(chǔ)在存儲(chǔ)器120內(nèi)的數(shù)據(jù),執(zhí)行終端400的各種功能和處理數(shù)據(jù),從而對(duì)手機(jī)進(jìn)行整體監(jiān)控。可選的,處理器180可包括一個(gè)或多個(gè)處理核心;優(yōu)選的,處理器180可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無線通信??梢岳斫獾氖?,上述調(diào)制解調(diào)處理器也可以不集成到處理器180中。
終端400還包括給各個(gè)部件供電的電源190(比如電池),優(yōu)選的,電源可以通過電源管理系統(tǒng)與處理器180邏輯相連,從而通過電源管理系統(tǒng)實(shí)現(xiàn)管理充電、放電、以及功耗管理等功能。電源190還可以包括一個(gè)或一個(gè)以上的直流或交流電源、再充電系統(tǒng)、電源故障檢測(cè)電路、電源轉(zhuǎn)換器或者逆變器、電源狀態(tài)指示器等任意組件。
盡管未示出,終端400還可以包括攝像頭、藍(lán)牙模塊等,在此不再贅述。具體在本實(shí)施例中,終端的顯示單元是觸摸屏顯示器,終端還包括有存儲(chǔ)器,以及一個(gè)或者一個(gè)以上的程序,其中一個(gè)或者一個(gè)以上程序存儲(chǔ)于存儲(chǔ)器中,且經(jīng)配置以由一個(gè)或者一個(gè)以上處理器執(zhí)行上述一個(gè)或者一個(gè)以上程序包含用于執(zhí)行上述生成樂譜的方法。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。