音頻數(shù)據(jù)的處理方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種音頻數(shù)據(jù)的處理方法及系統(tǒng),在上述方法中,應(yīng)用處理器在將從音頻數(shù)據(jù)存儲設(shè)備中讀取的預(yù)設(shè)時長的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,確定進(jìn)入空閑模式;應(yīng)用處理器在從空閑模式被喚醒之后,繼續(xù)從音頻數(shù)據(jù)存儲設(shè)備中讀取與前一次讀取到的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)并發(fā)送至音頻解碼器。根據(jù)本發(fā)明提供的技術(shù)方案,進(jìn)而當(dāng)移動終端運(yùn)行音頻播放任務(wù)時,通過使移動終端間歇性地進(jìn)入低功耗音樂播放狀態(tài),能夠顯著降低移動終端在播放音頻任務(wù)時的總功耗,提高移動終端的電池續(xù)航能力,提升產(chǎn)品競爭力。
【專利說明】音頻數(shù)據(jù)的處理方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種音頻數(shù)據(jù)的處理方法及系統(tǒng)。
【背景技術(shù)】
[0002]目前,便攜式移動終端,例如:手機(jī)、掌上電腦(PDA)、平板等均配備有音樂播放功能,甚至還有很多產(chǎn)品以此作為市場暢銷的亮點(diǎn)。關(guān)于音樂播放功能,絕大部分此類產(chǎn)品的硬件方案涉及應(yīng)用處理器、音頻解碼器、音頻編譯碼器(Codec),其中,應(yīng)用處理器負(fù)責(zé)讀取音樂文件并對音樂文件進(jìn)行解碼處理,音頻解碼器負(fù)責(zé)連接外設(shè)以及與外設(shè)之間的協(xié)作等,音頻Codec負(fù)責(zé)音頻數(shù)據(jù)的數(shù)字信號向模擬信號轉(zhuǎn)換以及模擬信號向數(shù)字信號轉(zhuǎn)換。當(dāng)采用上述方案的便攜式移動終端運(yùn)行音頻播放任務(wù)時,應(yīng)用處理器、音頻解碼器和音頻Codec均處于工作狀態(tài),因此會消耗較大的電池容量。而由于應(yīng)用處理器的架構(gòu)較為復(fù)雜,主頻較高,因而其能耗占據(jù)主要地位。當(dāng)用戶擁有長時間收聽音樂的需求時,容易導(dǎo)致便攜式移動終端的大部分電量被音樂播放功能所消耗,從而影響移動終端的通話、接收和/或發(fā)送短信息等基礎(chǔ)功能,進(jìn)而影響產(chǎn)品的市場競爭力。
[0003]基于上述介紹可知,相關(guān)技術(shù)中缺少一種能夠在移動終端播放音頻任務(wù)時,降低移動終端的功耗、提高電池續(xù)航能力的技術(shù)方案。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供了一種音頻數(shù)據(jù)的處理方法及系統(tǒng),以至少解決相關(guān)技術(shù)中在移動終端播放音頻任務(wù)時,無法降低移動終端的功耗的問題。
[0005]根據(jù)本發(fā)明的一個方面,提供了一種音頻數(shù)據(jù)的處理方法。
[0006]本發(fā)明的音頻數(shù)據(jù)的處理方法包括:應(yīng)用處理器在將從音頻數(shù)據(jù)存儲設(shè)備中讀取的預(yù)設(shè)時長的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,確定進(jìn)入空閑模式;應(yīng)用處理器在從空閑模式被喚醒之后,繼續(xù)從音頻數(shù)據(jù)存儲設(shè)備中讀取與前一次讀取到的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)并發(fā)送至音頻解碼器。
[0007]根據(jù)本發(fā)明的另一方面,提供了一種音頻數(shù)據(jù)的處理系統(tǒng)。
[0008]本發(fā)明的音頻數(shù)據(jù)的處理系統(tǒng)包括:應(yīng)用處理器;應(yīng)用處理器包括:第一確定模塊,用于在將從音頻數(shù)據(jù)存儲設(shè)備中讀取的預(yù)設(shè)時長的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,確定進(jìn)入空閑模式;處理模塊,用于在從空閑模式被喚醒之后,繼續(xù)從音頻數(shù)據(jù)存儲設(shè)備中讀取與前一次讀取到的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)并發(fā)送至所述音頻解碼器。
[0009]通過本發(fā)明,采用應(yīng)用處理器在將從音頻數(shù)據(jù)存儲設(shè)備中讀取的預(yù)設(shè)時長的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,確定進(jìn)入空閑模式;應(yīng)用處理器在從空閑模式被喚醒之后,繼續(xù)從音頻數(shù)據(jù)存儲設(shè)備中讀取與前一次讀取到的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)并發(fā)送至音頻解碼器,即移動終端在運(yùn)行音頻播放任務(wù)時,由于應(yīng)用處理器的功耗占據(jù)主要地位,因此通過在應(yīng)用處理器每次讀取一段音頻數(shù)據(jù)后,使得應(yīng)用處理器間歇性地進(jìn)入空閑模式,能夠有效地減少在音頻播放時應(yīng)用處理器的運(yùn)行時間,由此解決了相關(guān)技術(shù)中在移動終端播放音頻任務(wù)時,無法降低移動終端的功耗的問題,進(jìn)而當(dāng)移動終端運(yùn)行音頻播放任務(wù)時,通過使移動終端間歇性地進(jìn)入低功耗音樂播放狀態(tài),能夠顯著降低移動終端在播放音頻任務(wù)時的總功耗,提高移動終端的電池續(xù)航能力,提升產(chǎn)品競爭力。
【專利附圖】
【附圖說明】
[0010]此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0011]圖1是根據(jù)本發(fā)明實(shí)施例的音頻數(shù)據(jù)的處理方法的流程圖;
[0012]圖2是根據(jù)本發(fā)明優(yōu)選實(shí)施例的監(jiān)測應(yīng)用處理器的運(yùn)行狀態(tài)的流程圖;
[0013]圖3是根據(jù)本發(fā)明實(shí)施例的音頻數(shù)據(jù)的處理系統(tǒng)的結(jié)構(gòu)框圖;
[0014]圖4是根據(jù)本發(fā)明優(yōu)選實(shí)施例的音頻數(shù)據(jù)的處理系統(tǒng)的結(jié)構(gòu)框圖;
[0015]圖5是根據(jù)本發(fā)明優(yōu)選實(shí)施例的低功耗音頻播放系統(tǒng)的示意圖。
【具體實(shí)施方式】
[0016]下文中將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互組合。
[0017]圖1是根據(jù)本發(fā)明實(shí)施例的音頻數(shù)據(jù)的處理方法的流程圖。如圖1所示,該方法可以包括以下處理步驟:
[0018]步驟S102:應(yīng)用處理器在將從音頻數(shù)據(jù)存儲設(shè)備中讀取的預(yù)設(shè)時長的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,確定進(jìn)入空閑模式;
[0019]步驟S104:應(yīng)用處理器在從空閑模式被喚醒之后,繼續(xù)從音頻數(shù)據(jù)存儲設(shè)備中讀取與前一次讀取到的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)并發(fā)送至音頻解碼器。
[0020]相關(guān)技術(shù)中,在移動終端播放音頻任務(wù)時,無法降低移動終端的功耗。采用如圖1所示的方法,應(yīng)用處理器在將從音頻數(shù)據(jù)存儲設(shè)備中讀取的預(yù)設(shè)時長的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,確定進(jìn)入空閑模式(此時應(yīng)用處理器依舊保持上電狀態(tài),同時可以確保移動終端內(nèi)部的運(yùn)行數(shù)據(jù)不丟失,此時應(yīng)用處理器的功耗較低,需要通過中斷來重新喚醒);應(yīng)用處理器在從空閑模式被喚醒之后,繼續(xù)從音頻數(shù)據(jù)存儲設(shè)備中讀取與前一次讀取到的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)并發(fā)送至音頻解碼器,即移動終端在運(yùn)行音頻播放任務(wù)時,由于應(yīng)用處理器的功耗占據(jù)主要地位,因此通過在應(yīng)用處理器每次讀取一段音頻數(shù)據(jù)后,使得應(yīng)用處理器間歇性地進(jìn)入空閑模式,利用功耗較低的音頻解碼器代替功耗較高的應(yīng)用處理器完成某些需要芯片一直工作才能完成的任務(wù),能夠有效地減少在音頻播放時應(yīng)用處理器的運(yùn)行時間,由此解決了相關(guān)技術(shù)中在移動終端播放音頻任務(wù)時,無法降低移動終端的功耗的問題,進(jìn)而當(dāng)移動終端運(yùn)行音頻播放任務(wù)時,通過使移動終端間歇性地進(jìn)入低功耗音樂播放狀態(tài),能夠顯著降低移動終端在播放音頻任務(wù)時的總功耗,提高移動終端的電池續(xù)航能力,提升產(chǎn)品競爭力。
[0021]優(yōu)選地,在步驟S102,應(yīng)用處理器進(jìn)入空閑模式之前,還可以包括以下步驟:
[0022]步驟S1:應(yīng)用處理器確定當(dāng)前移動終端內(nèi)部僅有音頻播放任務(wù)正在運(yùn)行。
[0023]在優(yōu)選實(shí)施例中,如果除了音頻播放任務(wù)之外,還有其他任務(wù)(例如:視頻播放任務(wù)、游戲任務(wù))同樣處于運(yùn)行狀態(tài),那么此時無論音頻播放任務(wù)是否處于運(yùn)行狀態(tài),應(yīng)用處理器都無法進(jìn)入空閑模式。只有在移動終端內(nèi)部僅有音頻播放任務(wù)正在運(yùn)行的情況下,應(yīng)用處理器才能間歇性地進(jìn)入空閑模式。
[0024]優(yōu)選地,在步驟SI中,應(yīng)用處理器確定僅有音頻播放任務(wù)正在運(yùn)行可以包括以下操作:
[0025]步驟Sll:應(yīng)用處理器判斷當(dāng)前是否存儲有除音頻播放任務(wù)之外其余任務(wù)的標(biāo)識信息以及音頻播放任務(wù)當(dāng)前是否處于運(yùn)行狀態(tài),其中,存儲有標(biāo)識信息表示存在除音頻播放任務(wù)之外的其余任務(wù)正在運(yùn)行;
[0026]步驟S12:如果應(yīng)用處理器未存儲標(biāo)識信息并且音頻播放任務(wù)正處于運(yùn)行狀態(tài),則確定當(dāng)前僅有音頻播放任務(wù)正在運(yùn)行。
[0027]在優(yōu)選實(shí)施例中,圖2是根據(jù)本發(fā)明優(yōu)選實(shí)施例的監(jiān)測應(yīng)用處理器的運(yùn)行狀態(tài)的流程圖??梢栽谝苿咏K端內(nèi)部的應(yīng)用處理器中單獨(dú)設(shè)置一個功能模塊(例如:低功耗播放模式管理模塊)負(fù)責(zé)監(jiān)測應(yīng)用處理器的運(yùn)行狀態(tài),并確定進(jìn)入低功耗音頻播放狀態(tài)的時機(jī)。如圖2所示,具體的操作流程如下:
[0028]步驟S202:在移動終端的系統(tǒng)中任何希望保持運(yùn)行的任務(wù)都需要向低功耗播放模式管理模塊提出注冊申請,其申請的標(biāo)識信息為任務(wù)ID。當(dāng)此任務(wù)不再需要保持運(yùn)行狀態(tài)的情況下,需要向低功耗播放模式管理模塊提出注銷申請。低功耗播放模式管理模塊可以維護(hù)一個鏈表,鏈表中保存著已經(jīng)申請注冊的全部任務(wù)ID。判斷需要保持運(yùn)行狀態(tài)的任務(wù)鏈表是否為空;如果是,則繼續(xù)執(zhí)行步驟S204 ;如果否,則轉(zhuǎn)向步驟S208。
[0029]步驟S204:當(dāng)需要保持運(yùn)行狀態(tài)的任務(wù)鏈表為空時,即沒有其他任務(wù)希望保持運(yùn)行狀態(tài),此時還需要進(jìn)一步判斷音頻(例如:音樂)播放任務(wù)當(dāng)前是否處于運(yùn)行狀態(tài);如果是,則繼續(xù)執(zhí)行步驟S206 ;如果否,則轉(zhuǎn)向步驟S208。
[0030]步驟S206:只有音頻播放任務(wù)當(dāng)前正處于運(yùn)行狀態(tài),則低功耗播放模式管理模塊可以將當(dāng)前系統(tǒng)狀態(tài)設(shè)置為低功耗播放模式。流程結(jié)束。
[0031]步驟S208:如果系統(tǒng)當(dāng)前已經(jīng)處于低功耗播放模式,則可以結(jié)束系統(tǒng)當(dāng)前所采用的低功耗播放模式。流程結(jié)束。
[0032]優(yōu)選地,在步驟S102,應(yīng)用處理器每次將讀取到的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,還可以包括以下步驟:
[0033]步驟S2:音頻解碼器獲取存放每一段音頻數(shù)據(jù)的地址信息;
[0034]步驟S3:音頻解碼器按照獲取到的地址信息將每一段音頻數(shù)據(jù)存放在同一個存儲區(qū)域內(nèi),或者,將每一段音頻數(shù)據(jù)先后交替存放在第一存儲區(qū)域與第二存儲區(qū)域,其中,同一個存儲區(qū)域、第一存儲區(qū)域以及第二存儲區(qū)域的存儲容量均按照預(yù)設(shè)時長進(jìn)行設(shè)置。
[0035]在優(yōu)選實(shí)施例中,音頻解碼器可以接收來自于應(yīng)用處理器的音頻數(shù)據(jù)并保存至緩沖區(qū)。首先需要獲取存儲上述音頻數(shù)據(jù)的地址信息,然后按照獲取到的地址信息執(zhí)行寫入操作。在實(shí)際存儲過程中,可以采用以下兩種方案:
[0036]方案一、將應(yīng)用處理器每次從數(shù)據(jù)存儲設(shè)備讀取的一段音頻數(shù)據(jù)均存儲在同一個存儲區(qū)域,該方案優(yōu)勢在于節(jié)省存儲空間,但其對各段音頻數(shù)據(jù)之間的連續(xù)性要求較高。
[0037]方案二、將應(yīng)用處理器每次從數(shù)據(jù)存儲設(shè)備讀取的一段音頻數(shù)據(jù)交替存儲在兩個不同的存儲區(qū)域內(nèi)且兩個存儲區(qū)域的存儲容量相同,該方案雖然消耗額外的存儲空間,但是其能夠更加精確地確保各段音頻數(shù)據(jù)之間的連續(xù)性。
[0038]優(yōu)選地,在步驟S3,音頻解碼器按照獲取到的地址信息將每一段音頻數(shù)據(jù)存放在同一個存儲區(qū)域內(nèi)之后,還可以包括以下操作:
[0039]步驟S4:音頻解碼器對當(dāng)前接收到的音頻數(shù)據(jù)進(jìn)行解碼處理;
[0040]步驟S5:音頻解碼器在對當(dāng)前接收到的音頻數(shù)據(jù)進(jìn)行解碼過程中剩余的未解碼數(shù)據(jù)小于預(yù)設(shè)閾值的情況下喚醒應(yīng)用處理器;
[0041]步驟S6:音頻解碼器在對當(dāng)前接收到的音頻數(shù)據(jù)解碼完畢時,繼續(xù)對從應(yīng)用處理器接收到的下一段音頻數(shù)據(jù)進(jìn)行解碼處理,直至將全部音頻數(shù)據(jù)解碼完畢。
[0042]作為本發(fā)明的一個優(yōu)選實(shí)施例,可以按照每次從數(shù)據(jù)存儲設(shè)備中讀取音頻數(shù)據(jù)的預(yù)設(shè)時長確定存儲區(qū)域的存儲容量,應(yīng)用處理器每讀取一段音頻數(shù)據(jù)即可將讀取到的音頻數(shù)據(jù)發(fā)送至音頻解碼器,隨后即可進(jìn)入空閑模式。音頻解碼器根據(jù)獲取到地址信息對音頻數(shù)據(jù)進(jìn)行存儲,然后開始對存儲區(qū)域內(nèi)的音頻數(shù)據(jù)進(jìn)行解碼,當(dāng)未解碼的剩余音頻數(shù)據(jù)小于預(yù)設(shè)閾值(該預(yù)設(shè)閾值可以根據(jù)移動終端的型號、性能等特征信息來確定)的情況下,喚醒應(yīng)用處理器。應(yīng)用處理器可以繼續(xù)從數(shù)據(jù)存儲設(shè)備讀取下一段音頻數(shù)據(jù),并在音頻解碼器對當(dāng)前存儲區(qū)域內(nèi)的音頻數(shù)據(jù)全部解碼完畢后,從應(yīng)用處理器接收下一段音頻數(shù)據(jù)并進(jìn)行解碼處理,如此反復(fù)執(zhí)行下去,直至完成對全部音頻數(shù)據(jù)的解析操作。
[0043]優(yōu)選地,在步驟S3,音頻解碼器按照獲取到的地址信息將每一段音頻數(shù)據(jù)先后交替存放在第一存儲區(qū)域與第二存儲區(qū)域的同時,還可以包括以下步驟:
[0044]步驟S7:音頻解碼器在對存放在第一存儲區(qū)域的音頻數(shù)據(jù)進(jìn)行解碼處理的過程中喚醒應(yīng)用處理器,并在第二存儲區(qū)域接收與存放在第一存儲區(qū)域的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù);或者,
[0045]步驟S8:音頻解碼器在對存放在第二存儲區(qū)域的音頻數(shù)據(jù)進(jìn)行解碼處理的過程中喚醒應(yīng)用處理器,并在第一存儲區(qū)域接收與存放在第二存儲區(qū)域的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)。
[0046]作為本發(fā)明的另一個優(yōu)選實(shí)施例,音頻解碼器可以根據(jù)應(yīng)用處理器每次讀取音頻數(shù)據(jù)的預(yù)設(shè)時長配置兩個容量大小相同的內(nèi)存塊并同時定義兩個指針,其中一個為接收音頻數(shù)據(jù)的指針、而另一個為解碼音頻數(shù)據(jù)的指針,兩個指針分別指向一個內(nèi)存塊。在音頻解碼器對由解碼音頻數(shù)據(jù)的指針指向的內(nèi)存塊中的音頻數(shù)據(jù)進(jìn)行解碼的過程中,音頻解碼器可以喚醒應(yīng)用處理器并通知應(yīng)用處理器繼續(xù)向由接收音頻數(shù)據(jù)的指針指向的內(nèi)存塊中發(fā)送下一段音頻數(shù)據(jù)。每當(dāng)音頻解碼器對其中一個內(nèi)存塊中的音頻數(shù)據(jù)解碼完畢時,交換接收音頻數(shù)據(jù)的指針和解碼音頻數(shù)據(jù)的指針的值。如此反復(fù)執(zhí)行下去,采用上述雙緩沖數(shù)據(jù)管理方式,可以使得音頻播放連續(xù)、無斷點(diǎn)、同時還能夠有效地解決應(yīng)用處理器與音頻解碼器的同步問題。接收音頻數(shù)據(jù)的指針與解碼音頻數(shù)據(jù)的指針相互交換配合,整個系統(tǒng)有條不紊地進(jìn)行工作。應(yīng)用處理器間斷運(yùn)行絲毫不會影響整個音頻的播放過程,用戶完全感覺不到應(yīng)用處理器其實(shí)是在休眠與運(yùn)行之間進(jìn)行不斷切換。
[0047]當(dāng)然還可以在應(yīng)用處理器第一次向音頻解碼器連續(xù)發(fā)送兩段預(yù)設(shè)時長的音頻數(shù)據(jù)后,音頻解碼器將兩段音頻數(shù)據(jù)各自存儲在一個存儲區(qū)域中,按照兩段音頻數(shù)據(jù)的時序關(guān)系,將解碼音頻數(shù)據(jù)的指針指向前一段音頻數(shù)據(jù)所在的存儲區(qū)域,而將接收音頻數(shù)據(jù)的指針指向后一段音頻數(shù)據(jù)所在的存儲區(qū)域。在音頻解碼器對解碼音頻數(shù)據(jù)的指針指向的存儲區(qū)域中的音頻數(shù)據(jù)解碼完畢后,交換接收音頻數(shù)據(jù)的指針和解碼音頻數(shù)據(jù)的指針的值。然后音頻解碼器可以喚醒應(yīng)用處理器并通知應(yīng)用處理器繼續(xù)向由接收音頻數(shù)據(jù)的指針指向的存儲區(qū)域中發(fā)送下一段音頻數(shù)據(jù)。如此反復(fù)執(zhí)行下去。
[0048]圖3是根據(jù)本發(fā)明實(shí)施例的音頻數(shù)據(jù)的處理系統(tǒng)的結(jié)構(gòu)框圖。如圖3所示,該音頻數(shù)據(jù)的處理系統(tǒng)可以包括:應(yīng)用處理器10 ;應(yīng)用處理器10可以包括:第一確定模塊100,用于在將從音頻數(shù)據(jù)存儲設(shè)備中讀取的預(yù)設(shè)時長的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,確定進(jìn)入空閑模式;處理模塊102,用于在從空閑模式被喚醒之后,繼續(xù)從音頻數(shù)據(jù)存儲設(shè)備中讀取與前一次讀取到的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)并發(fā)送至所述音頻解碼器。
[0049]采用如圖3所示的系統(tǒng),解決了相關(guān)技術(shù)中在移動終端播放音頻任務(wù)時,無法降低移動終端的功耗的問題,進(jìn)而當(dāng)移動終端運(yùn)行音頻播放任務(wù)時,通過使移動終端間歇性地進(jìn)入低功耗音樂播放狀態(tài),能夠顯著降低移動終端在播放音頻任務(wù)時的總功耗,提高移動終端的電池續(xù)航能力,提升產(chǎn)品競爭力。
[0050]優(yōu)選地,如圖4所示,應(yīng)用處理器10還可以包括:第二確定模塊104,用于確定當(dāng)前移動終端內(nèi)部僅有音頻播放任務(wù)正在運(yùn)行。
[0051]優(yōu)選地,第二確定模塊104可以包括:判斷單元(圖中未示出),用于判斷當(dāng)前是否存儲有除音頻播放任務(wù)之外其余任務(wù)的標(biāo)識信息以及音頻播放任務(wù)當(dāng)前是否處于運(yùn)行狀態(tài),其中,存儲有標(biāo)識信息表示存在除音頻播放任務(wù)之外的其余任務(wù)正在運(yùn)行;確定單元(圖中未示出),用于在判斷單元輸出為是時,確定當(dāng)前僅有音頻播放任務(wù)正在運(yùn)行。
[0052]優(yōu)選地,如圖4所示,上述系統(tǒng)還可以包括:音頻解碼器20 ;音頻解碼器20可以包括:獲取模塊200,用于獲取存放每一段音頻數(shù)據(jù)的地址信息;存儲模塊202,用于按照獲取到的地址信息將每一段音頻數(shù)據(jù)存放在同一個存儲區(qū)域內(nèi),或者,將每一段音頻數(shù)據(jù)先后交替存放在第一存儲區(qū)域與第二存儲區(qū)域,其中,同一個存儲區(qū)域、第一存儲區(qū)域以及第二存儲區(qū)域的存儲容量均按照預(yù)設(shè)時長進(jìn)行設(shè)置。
[0053]優(yōu)選地,如圖4所示,音頻解碼器20還可以包括:第一解碼模塊204,用于對當(dāng)前接收到的音頻數(shù)據(jù)進(jìn)行解碼處理;喚醒模塊206,用于音頻解碼器在對當(dāng)前接收到的音頻數(shù)據(jù)進(jìn)行解碼過程中剩余的未解碼數(shù)據(jù)小于預(yù)設(shè)閾值的情況下喚醒應(yīng)用處理器;第一解碼模塊204,還用于在對當(dāng)前接收到的音頻數(shù)據(jù)解碼完畢時,繼續(xù)對從應(yīng)用處理器接收到的下一段音頻數(shù)據(jù)進(jìn)行解碼處理,直至將全部音頻數(shù)據(jù)解碼完畢。
[0054]優(yōu)選地,如圖4所示,音頻解碼器20還可以包括:第二解碼模塊208,用于在對存放在第一存儲區(qū)域的音頻數(shù)據(jù)進(jìn)行解碼處理的過程中喚醒應(yīng)用處理器,其中,在第二存儲區(qū)域從應(yīng)用處理器接收與存放在第一存儲區(qū)域的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù);或者,第二解碼模塊208,用于在對存放在第二存儲區(qū)域的音頻數(shù)據(jù)進(jìn)行解碼處理的過程中喚醒應(yīng)用處理器,其中,在第一存儲區(qū)域從應(yīng)用處理器接收與存放在第二存儲區(qū)域的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)。
[0055]下面結(jié)合圖5所示的優(yōu)選實(shí)施方式對上述優(yōu)選實(shí)施過程作進(jìn)一步的描述。
[0056]圖5是根據(jù)本發(fā)明優(yōu)選實(shí)施例的低功耗音頻播放系統(tǒng)的示意圖。如圖5所示,該系統(tǒng)位于移動終端的內(nèi)部,其主要包括兩大部分:應(yīng)用處理器和音頻解碼器。
[0057]應(yīng)用處理器可以包括但不限于以下功能模塊:低功耗播放模式管理模塊、音頻數(shù)據(jù)讀取和發(fā)送模塊以及數(shù)據(jù)同步模塊。各個功能模塊的具體作用如下:
[0058](I)低功耗播放模式管理模塊(相當(dāng)于上述第一確定模塊)負(fù)責(zé)監(jiān)測應(yīng)用處理器的運(yùn)行狀態(tài),并確定進(jìn)入低功耗音頻播放狀態(tài)的時機(jī);
[0059](2)數(shù)據(jù)同步模塊(相當(dāng)于上述處理模塊的部分功能)負(fù)責(zé)處理音頻解碼器發(fā)送的同步信號,根據(jù)該同步信號喚醒應(yīng)用處理器,并通知音頻數(shù)據(jù)讀取和發(fā)送模塊繼續(xù)發(fā)送新的音頻數(shù)據(jù);
[0060](3)音頻數(shù)據(jù)讀取和發(fā)送模塊(相當(dāng)于上述處理模塊的部分功能)負(fù)責(zé)從數(shù)據(jù)存儲設(shè)備中讀取音頻數(shù)據(jù),并通過預(yù)設(shè)接口將讀取到的音頻數(shù)據(jù)發(fā)送至音頻解碼器。在音頻數(shù)據(jù)傳遞完畢后,進(jìn)入空閑模式。
[0061]音頻解碼器可以包括但不限于以下功能模塊:音頻數(shù)據(jù)接收模塊、緩沖區(qū)管理和數(shù)據(jù)同步模塊以及音頻數(shù)據(jù)解碼和發(fā)送模塊。各個功能模塊的具體作用如下:
[0062]( I)音頻數(shù)據(jù)接收模塊(相當(dāng)于上述獲取模塊和存儲模塊)負(fù)責(zé)接收來自于應(yīng)用處理器的音頻數(shù)據(jù)并保存至緩沖區(qū);
[0063](2)緩沖區(qū)管理和數(shù)據(jù)同步模塊(相當(dāng)于上述喚醒模塊)負(fù)責(zé)管理低功耗模式下的緩沖區(qū)以及實(shí)現(xiàn)與應(yīng)用處理器之間的同步;
[0064](3)音頻數(shù)據(jù)解碼和發(fā)送模塊(相當(dāng)于上述第一解碼模塊和第二解碼模塊)負(fù)責(zé)對已經(jīng)接收到的音頻數(shù)據(jù)進(jìn)行解碼處理并將解碼后的音頻數(shù)據(jù)發(fā)送至音頻Codec。
[0065]從以上的描述中,可以看出,上述實(shí)施例實(shí)現(xiàn)了如下技術(shù)效果(需要說明的是這些效果是某些優(yōu)選實(shí)施例可以達(dá)到的效果):采用本發(fā)明實(shí)施例所提供的技術(shù)方案,將功耗較高的應(yīng)用處理器每一次讀取的音頻數(shù)據(jù)(大約2s)發(fā)送至功耗較低的音頻解碼器,然后應(yīng)用處理器進(jìn)入休眠狀態(tài)。音頻解碼器在接收到來自于應(yīng)用處理器的音頻數(shù)據(jù)后,每次對固定大小(大約20ms)的音頻數(shù)據(jù)進(jìn)行解碼處理,并將解碼后的音頻數(shù)據(jù)發(fā)送至音頻Codec,直至應(yīng)用處理器發(fā)送過來的音頻數(shù)據(jù)中大于預(yù)設(shè)閾值的部分音頻數(shù)據(jù)已經(jīng)解碼完畢,此時喚醒應(yīng)用處理器。應(yīng)用處理器再次讀取音頻數(shù)據(jù)(大約2s),并將讀取的音頻數(shù)據(jù)發(fā)送至音頻解碼器,然后應(yīng)用處理器再次進(jìn)入休眠狀態(tài),如此反復(fù)執(zhí)行下去,由此通過應(yīng)用處理器間歇性地進(jìn)入休眠狀態(tài),可以有效降低移動終端的總功耗,提高移動終端的電池續(xù)航能力。
[0066]顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實(shí)現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0067]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種音頻數(shù)據(jù)的處理方法,其特征在于,包括: 應(yīng)用處理器在將從音頻數(shù)據(jù)存儲設(shè)備中讀取的預(yù)設(shè)時長的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,確定進(jìn)入空閑模式; 所述應(yīng)用處理器在從所述空閑模式被喚醒之后,繼續(xù)從所述音頻數(shù)據(jù)存儲設(shè)備中讀取與前一次讀取到的所述音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)并發(fā)送至所述音頻解碼器。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述應(yīng)用處理器進(jìn)入所述空閑模式之前,還包括: 所述應(yīng)用處理器確定當(dāng)前移動終端內(nèi)部僅有音頻播放任務(wù)正在運(yùn)行。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述應(yīng)用處理器確定僅有所述音頻播放任務(wù)正在運(yùn)行包括: 所述應(yīng)用處理器判斷當(dāng)前是否存儲有除所述音頻播放任務(wù)之外其余任務(wù)的標(biāo)識信息以及所述音頻播放任務(wù)當(dāng)前是否處于運(yùn)行狀態(tài),其中,存儲有所述標(biāo)識信息表示存在除所述音頻播放任務(wù)之外的其余任務(wù)正在運(yùn)行; 如果所述應(yīng)用處理器未存儲所述標(biāo)識信息并且所述音頻播放任務(wù)正處于所述運(yùn)行狀態(tài),則確定當(dāng)前僅有所述音頻播放任務(wù)正在運(yùn)行。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述應(yīng)用處理器每次將讀取到的音頻數(shù)據(jù)發(fā)送至所述音頻解碼器之后,還包括: 所述音頻解碼器獲取存放每一段音頻數(shù)據(jù)的地址信息; 所述音頻解碼器按照獲取到的所述地址信息將所述每一段音頻數(shù)據(jù)存放在同一個存儲區(qū)域內(nèi),或者,將所述每一段音頻數(shù)據(jù)先后交替存放在第一存儲區(qū)域與第二存儲區(qū)域,其中,所述同一個存儲區(qū)域、所述第一存儲區(qū)域以及所述第二存儲區(qū)域的存儲容量均按照所述預(yù)設(shè)時長進(jìn)行設(shè)置。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在所述音頻解碼器按照獲取到的所述地址信息將所述每一段音頻數(shù)據(jù)存放在所述同一個存儲區(qū)域內(nèi)之后,還包括: 所述音頻解碼器對所述當(dāng)前接收到的音頻數(shù)據(jù)進(jìn)行解碼處理; 所述音頻解碼器在對所述當(dāng)前接收到的音頻數(shù)據(jù)進(jìn)行解碼過程中剩余的未解碼數(shù)據(jù)小于預(yù)設(shè)閾值的情況下喚醒所述應(yīng)用處理器; 所述音頻解碼器在對所述當(dāng)前接收到的音頻數(shù)據(jù)解碼完畢時,繼續(xù)對從所述應(yīng)用處理器接收到的所述下一段音頻數(shù)據(jù)進(jìn)行解碼處理,直至將所述全部音頻數(shù)據(jù)解碼完畢。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,在所述音頻解碼器按照獲取到的所述地址信息將所述每一段音頻數(shù)據(jù)先后交替存放在所述第一存儲區(qū)域與所述第二存儲區(qū)域的同時,還包括: 所述音頻解碼器在對存放在所述第一存儲區(qū)域的音頻數(shù)據(jù)進(jìn)行解碼處理的過程中喚醒所述應(yīng)用處理器,并在所述第二存儲區(qū)域接收與存放在所述第一存儲區(qū)域的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù);或者, 所述音頻解碼器在對存放在所述第二存儲區(qū)域的音頻數(shù)據(jù)進(jìn)行解碼處理的過程中喚醒所述應(yīng)用處理器,并在所述第一存儲區(qū)域接收與存放在所述第二存儲區(qū)域的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)。
7.一種音頻數(shù)據(jù)的處理系統(tǒng),其特征在于,包括:應(yīng)用處理器; 所述應(yīng)用處理器包括: 第一確定模塊,用于在將從音頻數(shù)據(jù)存儲設(shè)備中讀取的預(yù)設(shè)時長的音頻數(shù)據(jù)發(fā)送至音頻解碼器之后,確定進(jìn)入空閑模式; 處理模塊,用于在從所述空閑模式被喚醒之后,繼續(xù)從所述音頻數(shù)據(jù)存儲設(shè)備中讀取與前一次讀取到的所述音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)并發(fā)送至所述音頻解碼器。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述應(yīng)用處理器還包括: 第二確定模塊,用于確定當(dāng)前移動終端內(nèi)部僅有音頻播放任務(wù)正在運(yùn)行。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述第二確定模塊包括: 判斷單元,用于判斷當(dāng)前是否存儲有除所述音頻播放任務(wù)之外其余任務(wù)的標(biāo)識信息以及所述音頻播放任務(wù)當(dāng)前是否處于運(yùn)行狀態(tài),其中,存儲有所述標(biāo)識信息表示存在除所述音頻播放任務(wù)之外的其余任務(wù)正在運(yùn)行; 確定單元,用于在所述判斷單元輸出為是時,確定當(dāng)前僅有所述音頻播放任務(wù)正在運(yùn)行。
10.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括:所述音頻解碼器; 所述音頻解碼器包括: 獲取模塊,用于獲取存放每一段音頻數(shù)據(jù)的地址信息; 存儲模塊,用于按照獲取到的所述地址信息將所述每一段音頻數(shù)據(jù)存放在同一個存儲區(qū)域內(nèi),或者,將所述每一段音頻數(shù)據(jù)先后交替存放在第一存儲區(qū)域與第二存儲區(qū)域,其中,所述同一個存儲區(qū)域、所述第一存儲區(qū)域以及所述第二存儲區(qū)域的存儲容量均按照所述預(yù)設(shè)時長進(jìn)行設(shè)置。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述音頻解碼器還包括: 第一解碼模塊,用于對所述當(dāng)前接收到的音頻數(shù)據(jù)進(jìn)行解碼處理; 喚醒模塊,用于所述音頻解碼器在對所述當(dāng)前接收到的音頻數(shù)據(jù)進(jìn)行解碼過程中剩余的未解碼數(shù)據(jù)小于所述預(yù)設(shè)閾值的情況下喚醒所述應(yīng)用處理器; 所述第一解碼模塊,還用于在對所述當(dāng)前接收到的音頻數(shù)據(jù)解碼完畢時,繼續(xù)對從所述應(yīng)用處理器接收到的所述下一段音頻數(shù)據(jù)進(jìn)行解碼處理,直至將所述全部音頻數(shù)據(jù)解碼完畢。
12.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述音頻解碼器還包括: 第二解碼模塊,用于在對存放在所述第一存儲區(qū)域的音頻數(shù)據(jù)進(jìn)行解碼處理的過程中喚醒所述應(yīng)用處理器,其中,在所述第二存儲區(qū)域從所述應(yīng)用處理器接收與存放在所述第一存儲區(qū)域的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù); 或者, 所述第二解碼模塊,用于在對存放在所述第二存儲區(qū)域的音頻數(shù)據(jù)進(jìn)行解碼處理的過程中喚醒所述應(yīng)用處理器,其中,在所述第一存儲區(qū)域從所述應(yīng)用處理器接收與存放在所述第二存儲區(qū)域的音頻數(shù)據(jù)接續(xù)的下一段音頻數(shù)據(jù)。
【文檔編號】G11B27/10GK104464766SQ201310435293
【公開日】2015年3月25日 申請日期:2013年9月23日 優(yōu)先權(quán)日:2013年9月23日
【發(fā)明者】王文永, 孫奧, 金駿 申請人:中興通訊股份有限公司