本公開(kāi)涉及多媒體技術(shù)領(lǐng)域,尤其涉及一種外掛字幕的顯示控制方法及裝置。
背景技術(shù):
字幕分為內(nèi)嵌字幕和外掛字幕。對(duì)于帶有內(nèi)嵌字幕的視頻,視頻文件和字幕文件集成在一起,即視頻幀本身帶有字幕。移動(dòng)終端在播放帶有內(nèi)嵌字幕的視頻時(shí),只需通過(guò)解碼器解碼各視頻幀。外掛字幕是指視頻文件與字幕文件分離。相關(guān)技術(shù)中,移動(dòng)終端在播放帶有外掛字幕的視頻時(shí),需要添加額外的字幕解碼模塊對(duì)外掛字幕進(jìn)行解碼,并需要添加額外的字幕顯示控件用于顯示解碼得到的字幕。這種外掛字幕的顯示控制技術(shù)中容易出現(xiàn)字幕與視頻畫(huà)面不同步的問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本公開(kāi)提出了一種外掛字幕的顯示控制方法及裝置,以解決相關(guān)技術(shù)中移動(dòng)終端在播放帶有外掛字幕的視頻時(shí),需要添加額外的字幕解碼模塊對(duì)外掛字幕進(jìn)行解碼,并需要添加額外的顯示控件用于顯示解碼得到的字幕,且容易出現(xiàn)字幕與視頻畫(huà)面不同步的問(wèn)題。
根據(jù)本公開(kāi)的一方面,提供了一種外掛字幕的顯示控制方法,包括:
獲取當(dāng)前視頻幀的時(shí)間點(diǎn);
在存在與所述當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像;
生成所述當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及所述當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理;
通過(guò)圖形處理器GPU對(duì)所述視頻幀紋理以及所述字幕紋理進(jìn)行渲染。
在一種可能的實(shí)現(xiàn)方式中,所述方法還包括:
在所述當(dāng)前視頻幀的時(shí)間點(diǎn)晚于或等于第一字幕切片的開(kāi)始時(shí)間點(diǎn),且所述當(dāng)前視頻幀的時(shí)間點(diǎn)早于或等于所述第一字幕切片的結(jié)束時(shí)間點(diǎn)的情況下,判定存在與所述當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片,其中,所述第一字幕切片為任意一個(gè)字幕切片。
在一種可能的實(shí)現(xiàn)方式中,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,包括:
在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;
將所述當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像;
將所述當(dāng)前字幕圖像存入緩存中。
在一種可能的實(shí)現(xiàn)方式中,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,包括:
在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片的情況下,從緩存中獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
在一種可能的實(shí)現(xiàn)方式中,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,包括:
在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片,或者當(dāng)前字幕屬性相對(duì)于所述上一視頻幀發(fā)生變化的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;
根據(jù)所述當(dāng)前字幕屬性將所述當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像;
將所述當(dāng)前字幕圖像存入緩存中。
在一種可能的實(shí)現(xiàn)方式中,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,包括:
在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片,且當(dāng)前字幕屬性相對(duì)于所述上一視頻幀未發(fā)生變化的情況下,從緩存中獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
在一種可能的實(shí)現(xiàn)方式中,在獲取當(dāng)前視頻幀的時(shí)間點(diǎn)之前,所述方法還包括:
獲取外掛字幕文件;
根據(jù)所述外掛字幕文件中每句字幕的開(kāi)始時(shí)間點(diǎn)、結(jié)束時(shí)間點(diǎn)和字幕內(nèi)容,生成每句字幕對(duì)應(yīng)的字幕切片。
根據(jù)本公開(kāi)的另一方面,提供了一種外掛字幕的顯示控制裝置,包括:
時(shí)間點(diǎn)獲取模塊,用于獲取當(dāng)前視頻幀的時(shí)間點(diǎn);
當(dāng)前字幕圖像獲取模塊,用于在存在與所述當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像;
紋理生成模塊,用于生成所述當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及所述當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理;
渲染模塊,用于通過(guò)圖形處理器GPU對(duì)所述視頻幀紋理以及所述字幕紋理進(jìn)行渲染。
在一種可能的實(shí)現(xiàn)方式中,所述裝置還包括:
判定模塊,用于在所述當(dāng)前視頻幀的時(shí)間點(diǎn)晚于或等于第一字幕切片的開(kāi)始時(shí)間點(diǎn),且所述當(dāng)前視頻幀的時(shí)間點(diǎn)早于或等于所述第一字幕切片的結(jié)束時(shí)間點(diǎn)的情況下,判定存在與所述當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片,其中,所述第一字幕切片為任意一個(gè)字幕切片。
在一種可能的實(shí)現(xiàn)方式中,所述當(dāng)前字幕圖像獲取模塊包括:
第一獲取子模塊,用于在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;
第一轉(zhuǎn)換子模塊,用于將所述當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像;
第一緩存子模塊,用于將所述當(dāng)前字幕圖像存入緩存中。
在一種可能的實(shí)現(xiàn)方式中,所述當(dāng)前字幕圖像獲取模塊包括:
第二獲取子模塊,用于在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片的情況下,從緩存中獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
在一種可能的實(shí)現(xiàn)方式中,所述當(dāng)前字幕圖像獲取模塊包括:
第三獲取子模塊,用于在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片,或者當(dāng)前字幕屬性相對(duì)于所述上一視頻幀發(fā)生變化的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;
第二轉(zhuǎn)換子模塊,用于根據(jù)所述當(dāng)前字幕屬性將所述當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像;
第二緩存子模塊,用于將所述當(dāng)前字幕圖像存入緩存中。
在一種可能的實(shí)現(xiàn)方式中,所述當(dāng)前字幕圖像獲取模塊包括:
第四獲取子模塊,用于在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片,且當(dāng)前字幕屬性相對(duì)于所述上一視頻幀未發(fā)生變化的情況下,從緩存中獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
在一種可能的實(shí)現(xiàn)方式中,所述裝置還包括:
外掛字幕文件獲取模塊,用于獲取外掛字幕文件;
字幕切片生成模塊,用于根據(jù)所述外掛字幕文件中每句字幕的開(kāi)始時(shí)間點(diǎn)、結(jié)束時(shí)間點(diǎn)和字幕內(nèi)容,生成每句字幕對(duì)應(yīng)的字幕切片。
根據(jù)本公開(kāi)的另一方面,提供了一種外掛字幕的顯示控制裝置,包括:
處理器;
用于存儲(chǔ)處理器可執(zhí)行指令的存儲(chǔ)器;
其中,所述處理器被配置為:
獲取當(dāng)前視頻幀的時(shí)間點(diǎn);
在存在與所述當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像;
生成所述當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及所述當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理;
通過(guò)圖形處理器GPU對(duì)所述視頻幀紋理以及所述字幕紋理進(jìn)行渲染。
根據(jù)本公開(kāi)的另一方面,提供了一種非易失性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)所述存儲(chǔ)介質(zhì)中的指令由終端和/或服務(wù)器的處理器執(zhí)行時(shí),使得終端和/或服務(wù)器能夠執(zhí)行一種外掛字幕的顯示控制方法,所述方法包括:
獲取當(dāng)前視頻幀的時(shí)間點(diǎn);
在存在與所述當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像;
生成所述當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及所述當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理;
通過(guò)圖形處理器GPU對(duì)所述視頻幀紋理以及所述字幕紋理進(jìn)行渲染。
通過(guò)獲取當(dāng)前視頻幀的時(shí)間點(diǎn),在存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,生成當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理,并通過(guò)GPU對(duì)該視頻幀紋理以及該字幕紋理進(jìn)行渲染,根據(jù)本公開(kāi)的各方面的外掛字幕的顯示控制方法及裝置能夠保證外掛字幕與視頻畫(huà)面同步,且無(wú)需添加額外的字幕解碼模塊與字幕顯示控件。
根據(jù)下面參考附圖對(duì)示例性實(shí)施例的詳細(xì)說(shuō)明,本公開(kāi)的其它特征及方面將變得清楚。
附圖說(shuō)明
包含在說(shuō)明書(shū)中并且構(gòu)成說(shuō)明書(shū)的一部分的附圖與說(shuō)明書(shū)一起示出了本公開(kāi)的示例性實(shí)施例、特征和方面,并且用于解釋本公開(kāi)的原理。
圖1示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的流程圖。
圖2示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的一示例性的流程圖。
圖3示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法中字幕切片的示意圖。
圖4示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法中將字幕切片加入字幕軌道的示意圖。
圖5示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法中視頻幀在字幕軌道上的時(shí)間點(diǎn)以及字幕切片在字幕軌道上的時(shí)間段的示意圖。
圖6示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的一示例性的流程圖。
圖7示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的另一示例性的流程圖。
圖8示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的另一示例性的流程圖。
圖9示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制裝置的框圖。
圖10示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制裝置的一示例性的框圖。
圖11是根據(jù)一示例性實(shí)施例示出的一種用于外掛字幕的顯示控制的裝置800的框圖。
具體實(shí)施方式
以下將參考附圖詳細(xì)說(shuō)明本公開(kāi)的各種示例性實(shí)施例、特征和方面。附圖中相同的附圖標(biāo)記表示功能相同或相似的元件。盡管在附圖中示出了實(shí)施例的各種方面,但是除非特別指出,不必按比例繪制附圖。
在這里專用的詞“示例性”意為“用作例子、實(shí)施例或說(shuō)明性”。這里作為“示例性”所說(shuō)明的任何實(shí)施例不必解釋為優(yōu)于或好于其它實(shí)施例。
另外,為了更好的說(shuō)明本公開(kāi),在下文的具體實(shí)施方式中給出了眾多的具體細(xì)節(jié)。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,沒(méi)有某些具體細(xì)節(jié),本公開(kāi)同樣可以實(shí)施。在一些實(shí)例中,對(duì)于本領(lǐng)域技術(shù)人員熟知的方法、手段、元件和電路未作詳細(xì)描述,以便于凸顯本公開(kāi)的主旨。
實(shí)施例1
圖1示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的流程圖。該方法可以應(yīng)用于手機(jī)或者平板電腦等移動(dòng)終端中,也可以應(yīng)用于PC(Personal Computer,個(gè)人計(jì)算機(jī))中,在此不作限定。如圖1所示,該方法包括:
在步驟S101中,獲取當(dāng)前視頻幀的時(shí)間點(diǎn)。
其中,當(dāng)前視頻幀可以指即將播放的視頻幀。當(dāng)前視頻幀的時(shí)間點(diǎn)可以為當(dāng)前視頻幀的時(shí)間戳,或者可以為當(dāng)前視頻幀在視頻中的時(shí)間點(diǎn),在此不作限定。
在步驟S102中,在存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
在本實(shí)施例中,可以根據(jù)當(dāng)前視頻幀的時(shí)間點(diǎn)判斷是否存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片。當(dāng)前字幕圖像可以為位圖文件(Bitmap),在此不作限定。
在步驟S103中,生成當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理。
作為本實(shí)施例的一個(gè)示例,在通過(guò)視頻解碼器進(jìn)行視頻解碼時(shí),可以獲取紋理對(duì)象,例如可以從GPU(Graphics Processing Unit,圖形處理器)申請(qǐng)紋理對(duì)象,并可以將紋理對(duì)象設(shè)置到視頻解碼器上。在生成當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理(Texture)以及當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理之后,可以由GPU直接合成渲染。
在步驟S104中,通過(guò)GPU對(duì)該視頻幀紋理以及該字幕紋理進(jìn)行渲染。
在本實(shí)施例中,可以通過(guò)GPU將視頻幀紋理以及字幕紋理渲染到為視頻顯示分配的內(nèi)存上。通過(guò)GPU取代CPU(Center Processing Unit,中央處理器)進(jìn)行渲染,能夠加快渲染速度,從而能夠?qū)崿F(xiàn)字幕的實(shí)時(shí)渲染。
作為本實(shí)施例的一個(gè)示例,可以通過(guò)視頻播放架構(gòu)中的渲染模塊將需要渲染的視頻幀紋理以及字幕紋理送給GPU進(jìn)行渲染,進(jìn)而顯示到屏幕上。
本實(shí)施例能夠保證外掛字幕與視頻畫(huà)面同步,且無(wú)需添加額外的字幕解碼模塊與字幕顯示控件。
圖2示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的一示例性的流程圖。如圖2所示,該方法包括:
在步驟S201中,獲取外掛字幕文件。
外掛字幕文件可以從本地獲取,也可以在線獲取,在此不作限定。
在步驟S202中,根據(jù)外掛字幕文件中每句字幕的開(kāi)始時(shí)間點(diǎn)、結(jié)束時(shí)間點(diǎn)和字幕內(nèi)容,生成每句字幕對(duì)應(yīng)的字幕切片。
在本實(shí)施例中,不對(duì)每句字幕的長(zhǎng)度進(jìn)行限制,本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際應(yīng)用需求選擇每句字幕的長(zhǎng)度。
作為本實(shí)施例的一個(gè)示例,對(duì)外掛字幕文件進(jìn)行解析,可以得到每句字幕的開(kāi)始時(shí)間點(diǎn)、結(jié)束時(shí)間點(diǎn)和字幕內(nèi)容??梢愿鶕?jù)每句字幕的開(kāi)始時(shí)間點(diǎn)、結(jié)束時(shí)間點(diǎn)和字幕內(nèi)容,生成每句字幕對(duì)應(yīng)的字幕切片。
作為本實(shí)施例的另一個(gè)示例,對(duì)外掛字幕文件進(jìn)行解析,可以得到每句字幕的開(kāi)始時(shí)間點(diǎn)、時(shí)長(zhǎng)和字幕內(nèi)容??梢愿鶕?jù)每句字幕的開(kāi)始時(shí)間點(diǎn)、時(shí)長(zhǎng)和字幕內(nèi)容,生成每句字幕對(duì)應(yīng)的字幕切片。
圖3示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法中字幕切片的示意圖。如圖3所示,某句字幕的開(kāi)始時(shí)間點(diǎn)為00:00:02.941(即2941ms),時(shí)長(zhǎng)為1159ms,由此可以確定該句字幕的結(jié)束時(shí)間點(diǎn)為00:00:04.100。根據(jù)該句字幕的開(kāi)始時(shí)間點(diǎn)、結(jié)束時(shí)間點(diǎn)以及字幕內(nèi)容“怎么啦”,可以生成該句字幕對(duì)應(yīng)的字幕切片。
在步驟S203中,獲取當(dāng)前視頻幀的時(shí)間點(diǎn)。
對(duì)步驟S203參見(jiàn)上文對(duì)步驟S101的描述。
在步驟S204中,在存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
對(duì)步驟S204參見(jiàn)上文對(duì)步驟S102的描述。
在步驟S205中,生成當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理。
對(duì)步驟S205參見(jiàn)上文對(duì)步驟S103的描述。
在步驟S206中,通過(guò)圖形處理器GPU對(duì)該視頻幀紋理以及該字幕紋理進(jìn)行渲染。
對(duì)步驟S206參見(jiàn)上文對(duì)步驟S104的描述。
圖4示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法中將字幕切片加入字幕軌道的示意圖。作為本實(shí)施例的一個(gè)示例,可以將各個(gè)字幕切片加入字幕軌道中。如圖4所示,可以將字幕切片1、字幕切片2和字幕切片3加入字幕軌道中。
在一種可能的實(shí)現(xiàn)方式中,該方法還可以包括:在當(dāng)前視頻幀的時(shí)間點(diǎn)晚于或等于第一字幕切片的開(kāi)始時(shí)間點(diǎn),且當(dāng)前視頻幀的時(shí)間點(diǎn)早于或等于第一字幕切片的結(jié)束時(shí)間點(diǎn)的情況下,判定存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片,其中,第一字幕切片可以為任意一個(gè)字幕切片。在該實(shí)現(xiàn)方式中,若第一字幕切片的開(kāi)始時(shí)間點(diǎn)≤當(dāng)前視頻幀的時(shí)間點(diǎn)≤第一字幕切片的開(kāi)始時(shí)間點(diǎn)+第一字幕切片的時(shí)長(zhǎng),則判定存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片,且當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片為第一字幕切片。
圖5示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法中視頻幀在字幕軌道上的時(shí)間點(diǎn)以及字幕切片在字幕軌道上的時(shí)間段的示意圖。如圖5所示,字幕軌道包括字幕切片1、字幕切片2和字幕切片3,字幕切片1至3在字幕軌道上所占的時(shí)間段與字幕切片在圖5中顯示的長(zhǎng)度相對(duì)應(yīng)。如圖5所示,不存在任意一個(gè)字幕切片,使視頻幀1的時(shí)間點(diǎn)晚于或等于該字幕切片的開(kāi)始時(shí)間點(diǎn),且使視頻幀1的時(shí)間點(diǎn)早于或等于該字幕切片的結(jié)束時(shí)間點(diǎn),因此,判定不存在與視頻幀1的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片,即在播放視頻幀1時(shí)沒(méi)有字幕需要顯示。視頻幀2的時(shí)間點(diǎn)晚于字幕切片2的開(kāi)始時(shí)間點(diǎn),且早于字幕切片2的結(jié)束時(shí)間點(diǎn),因此,判定存在與視頻幀2的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片,且視頻幀2的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片為字幕切片2,即在播放視頻幀2時(shí)有字幕需要顯示,且需要顯示的字幕切片為字幕切片2。
其中,軌道(Track)是視頻播放架構(gòu)中定義的一個(gè)概念,軌道可以用于管理添加到其上面的每個(gè)多媒體資源。例如,首先添加一個(gè)視頻資源A,再添加一個(gè)字幕資源B,則可以將視頻資源A中畫(huà)面部分的資源添加到視頻軌道上,將視頻資源A中聲音部分的資源添加到音頻軌道上,將字幕資源B添加到字幕軌道上。當(dāng)開(kāi)始播放時(shí),可以從視頻軌道取出相應(yīng)的視頻畫(huà)面,從音頻軌道中取出相應(yīng)的聲音,從字幕軌道中取出相應(yīng)的字幕信息。
在一種可能的實(shí)現(xiàn)方式中,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,可以包括:在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片的情況下,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;將當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像;將當(dāng)前字幕圖像存入緩存中。
在另一種可能的實(shí)現(xiàn)方式中,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,包括:在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片的情況下,從緩存中獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
圖6示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的一示例性的流程圖。如圖6所示,該方法包括:
在步驟S601中,獲取當(dāng)前視頻幀的時(shí)間點(diǎn)。
對(duì)步驟S601參見(jiàn)上文對(duì)步驟S101的描述。
在步驟S602中,在存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,判斷當(dāng)前視頻幀與上一視頻幀是否對(duì)應(yīng)于不同的字幕切片,若是,則執(zhí)行步驟S603,否則執(zhí)行步驟S606。
在本示例中,在存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,判斷當(dāng)前視頻幀與上一視頻幀是否對(duì)應(yīng)于不同的字幕切片,即判斷當(dāng)前視頻幀與上一視頻幀是否對(duì)應(yīng)于不同句字幕。
在步驟S603中,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片。
在本示例中,在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片的情況下,需要獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片。由于當(dāng)前字幕切片是根據(jù)當(dāng)前視頻幀的時(shí)間點(diǎn)獲取的,因此可以保證字幕與視頻畫(huà)面同步。
在步驟S604中,將當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像。
在一種可能的實(shí)現(xiàn)方式中,可以將字幕圖像中除字幕內(nèi)容以外的部分(即字幕圖像中的背景部分)的透明度設(shè)置為第一數(shù)值,例如,第一數(shù)值為100%。通過(guò)設(shè)置字幕圖像中背景部分的透明度,能夠?qū)崿F(xiàn)字幕紋理與視頻幀紋理的融合。
在步驟S605中,將當(dāng)前字幕圖像存入緩存中。
在本示例中,通過(guò)將當(dāng)前字幕圖像存入緩存中,能夠減少內(nèi)存的頻繁分配占用。
在一種可能的實(shí)現(xiàn)方式中,在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片的情況下,可以從緩存中刪除上一字幕圖像。
在步驟S606中,從緩存中獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
在本示例中,在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于相同的字幕切片的情況下,從緩存中獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,而無(wú)需重新獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片并轉(zhuǎn)換為當(dāng)前字幕圖像,從而能夠提高獲取相同字幕圖像的效率。
在步驟S607中,生成當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理。
對(duì)步驟S607參見(jiàn)上文對(duì)步驟S103的描述。
在步驟S608中,通過(guò)GPU對(duì)該視頻幀紋理以及該字幕紋理進(jìn)行渲染。
對(duì)步驟S608參見(jiàn)上文對(duì)步驟S104的描述。
在另一種可能的實(shí)現(xiàn)方式中,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,包括:在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片,或者當(dāng)前字幕屬性相對(duì)于上一視頻幀發(fā)生變化的情況下,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;根據(jù)當(dāng)前字幕屬性將當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像;將當(dāng)前字幕圖像存入緩存中。其中,字幕屬性可以包括字幕字體、文字大小、文字顏色和字體效果等中的一項(xiàng)或多項(xiàng),在此不作限定。例如,字體效果可以包括漸變效果、字體邊緣抗鋸齒方式和透明度等中的一項(xiàng)或多項(xiàng),在此不作限定。在該實(shí)現(xiàn)方式中,通過(guò)在渲染字幕之前,判斷當(dāng)前字幕屬性相對(duì)于上一視頻幀是否發(fā)生變化,并在發(fā)生變化的情況下根據(jù)當(dāng)前字幕屬性將當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像,由此能夠使用戶設(shè)置的字幕屬性實(shí)時(shí)生效,從而能夠提高用戶體驗(yàn)。
在另一種可能的實(shí)現(xiàn)方式中,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,包括:在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片,且當(dāng)前字幕屬性相對(duì)于上一視頻幀未發(fā)生變化的情況下,從緩存中獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。在該實(shí)現(xiàn)方式中,通過(guò)在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片,且當(dāng)前字幕屬性相對(duì)于上一視頻幀未發(fā)生變化的情況下,從緩存中獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,而無(wú)需重新獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片并轉(zhuǎn)換為當(dāng)前字幕圖像,從而能夠提高獲取相同字幕圖像的效率。
圖7示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的另一示例性的流程圖。如圖7所示,該方法包括:
在步驟S701中,獲取當(dāng)前視頻幀的時(shí)間點(diǎn)。
對(duì)步驟S701參見(jiàn)上文對(duì)步驟S101的描述。
在步驟S702中,在存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,判斷當(dāng)前視頻幀與上一視頻幀是否對(duì)應(yīng)于不同的字幕切片,若是,則執(zhí)行步驟S704,否則執(zhí)行步驟S703。
在本示例中,判斷當(dāng)前視頻幀與上一視頻幀是否對(duì)應(yīng)于不同的字幕切片,即判斷當(dāng)前視頻幀與上一視頻幀是否對(duì)應(yīng)于不同句字幕。若當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片,則需要獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;若當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于相同的字幕切片,則需要進(jìn)一步判斷當(dāng)前字幕屬性相對(duì)于上一視頻幀是否發(fā)生變化。
在步驟S703中,判斷當(dāng)前字幕屬性相對(duì)于上一視頻幀是否發(fā)生變化,若是,則執(zhí)行步驟S704,否則執(zhí)行步驟S707。
在本示例中,在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片,或者當(dāng)前字幕屬性相對(duì)于上一視頻幀發(fā)生變化的情況下,需要獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;在當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片,且當(dāng)前字幕屬性相對(duì)于上一視頻幀未發(fā)生變化的情況下,從緩存中獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像,而無(wú)需重新獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片并轉(zhuǎn)換為當(dāng)前字幕圖像,從而能夠提高獲取相同字幕圖像的效率。
在步驟S704中,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片。
對(duì)步驟S704參見(jiàn)上文對(duì)步驟S603的描述。
在步驟S705中,根據(jù)當(dāng)前字幕屬性將當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像。
本示例可以實(shí)現(xiàn)用戶動(dòng)態(tài)設(shè)置字幕屬性,靈活性較大,便于用戶根據(jù)喜好方便快捷地設(shè)置字幕樣式,能夠提高用戶體驗(yàn)。
在步驟S706中,將當(dāng)前字幕圖像存入緩存中。
對(duì)步驟S706參見(jiàn)上文對(duì)步驟S605的描述。
在步驟S707中,從緩存中獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
對(duì)步驟S707參見(jiàn)上文對(duì)步驟S606的描述。
在步驟S708中,生成當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理。
對(duì)步驟S708參見(jiàn)上文對(duì)步驟S103的描述。
在步驟S709中,通過(guò)GPU對(duì)該視頻幀紋理以及該字幕紋理進(jìn)行渲染。
對(duì)步驟S709參見(jiàn)上文對(duì)步驟S104的描述。
圖8示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制方法的另一示例性的流程圖。如圖8所示,該方法包括:
在步驟S801中,獲取外掛字幕文件。
對(duì)步驟S801參見(jiàn)上文對(duì)步驟S201的描述。
在步驟S802中,根據(jù)外掛字幕文件中每句字幕的開(kāi)始時(shí)間點(diǎn)、結(jié)束時(shí)間點(diǎn)和字幕內(nèi)容,生成每句字幕對(duì)應(yīng)的字幕切片。
對(duì)步驟S802參見(jiàn)上文對(duì)步驟S202的描述。
在步驟S803中,將各個(gè)字幕切片加入字幕軌道中。
如圖4所示,可以按照字幕切片的時(shí)間順序,將各個(gè)字幕切片加入字幕軌道中。字幕軌道可以用于管理各個(gè)字幕切片。
在步驟S804中,獲取當(dāng)前視頻幀的時(shí)間點(diǎn)。
對(duì)步驟S804參見(jiàn)上文對(duì)步驟S101的描述。
在步驟S805中,判斷是否存在與當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片,若是,則執(zhí)行步驟S806,否則執(zhí)行步驟S812。
在步驟S806中,判斷當(dāng)前字幕屬性相對(duì)于上一視頻幀是否發(fā)生變化,若是,則執(zhí)行步驟S808,否則執(zhí)行步驟S807。
在步驟S807中,判斷當(dāng)前視頻幀與上一視頻幀是否對(duì)應(yīng)于不同的字幕切片,若是,則執(zhí)行步驟S808,否則執(zhí)行步驟S811。
在步驟S808中,獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片。
在步驟S809中,根據(jù)當(dāng)前字幕屬性將當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像。
在步驟S810中,將當(dāng)前字幕圖像存入緩存中。
在步驟S811中,從緩存中獲取當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
對(duì)步驟S806至步驟S811參見(jiàn)上文對(duì)步驟S702至步驟S707的描述。
在步驟S812中,生成當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理。
作為本實(shí)施例的一個(gè)示例,在通過(guò)視頻解碼器進(jìn)行視頻解碼時(shí),可以獲取紋理對(duì)象,例如可以從GPU申請(qǐng)紋理對(duì)象,并可以將紋理對(duì)象設(shè)置到視頻解碼器上。在生成當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理之后,可以由GPU進(jìn)行渲染。
在步驟S813中,通過(guò)GPU對(duì)該視頻幀紋理進(jìn)行渲染。
在該步驟中,可以通過(guò)視頻播放架構(gòu)中的渲染模塊將需要渲染的視頻幀紋理送給GPU進(jìn)行渲染,進(jìn)而顯示到屏幕上。
在步驟S814中,生成當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理。
對(duì)步驟S814參見(jiàn)上文對(duì)步驟S103的描述。
在步驟S815中,通過(guò)GPU對(duì)該視頻幀紋理以及該字幕紋理進(jìn)行渲染。
對(duì)步驟S815參見(jiàn)上文對(duì)步驟S104的描述。
實(shí)施例2
圖9示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制裝置的框圖。如圖9所示,該裝置包括:時(shí)間點(diǎn)獲取模塊91,用于獲取當(dāng)前視頻幀的時(shí)間點(diǎn);當(dāng)前字幕圖像獲取模塊92,用于在存在與所述當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像;紋理生成模塊93,用于生成所述當(dāng)前視頻幀對(duì)應(yīng)的視頻幀紋理以及所述當(dāng)前字幕圖像對(duì)應(yīng)的字幕紋理;渲染模塊94,用于通過(guò)圖形處理器GPU對(duì)所述視頻幀紋理以及所述字幕紋理進(jìn)行渲染。
本實(shí)施例能夠保證外掛字幕與視頻畫(huà)面同步,且無(wú)需添加額外的字幕解碼模塊與字幕顯示控件。
圖10示出根據(jù)本公開(kāi)一實(shí)施例的外掛字幕的顯示控制裝置的一示例性的框圖。如圖10所示:
在一種可能的實(shí)現(xiàn)方式中,所述裝置還包括:判定模塊95,用于在所述當(dāng)前視頻幀的時(shí)間點(diǎn)晚于或等于第一字幕切片的開(kāi)始時(shí)間點(diǎn),且所述當(dāng)前視頻幀的時(shí)間點(diǎn)早于或等于所述第一字幕切片的結(jié)束時(shí)間點(diǎn)的情況下,判定存在與所述當(dāng)前視頻幀的時(shí)間點(diǎn)對(duì)應(yīng)的字幕切片,其中,所述第一字幕切片為任意一個(gè)字幕切片。
在一種可能的實(shí)現(xiàn)方式中,所述當(dāng)前字幕圖像獲取模塊92包括:第一獲取子模塊921,用于在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;第一轉(zhuǎn)換子模塊922,用于將所述當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像;第一緩存子模塊923,用于將所述當(dāng)前字幕圖像存入緩存中。
在一種可能的實(shí)現(xiàn)方式中,所述當(dāng)前字幕圖像獲取模塊92包括:第二獲取子模塊924,用于在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片的情況下,從緩存中獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
在一種可能的實(shí)現(xiàn)方式中,所述當(dāng)前字幕圖像獲取模塊92包括:第三獲取子模塊925,用于在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于不同的字幕切片,或者當(dāng)前字幕屬性相對(duì)于所述上一視頻幀發(fā)生變化的情況下,獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕切片;第二轉(zhuǎn)換子模塊926,用于根據(jù)所述當(dāng)前字幕屬性將所述當(dāng)前字幕切片轉(zhuǎn)換為當(dāng)前字幕圖像;第二緩存子模塊927,用于將所述當(dāng)前字幕圖像存入緩存中。
在一種可能的實(shí)現(xiàn)方式中,所述當(dāng)前字幕圖像獲取模塊92包括:第四獲取子模塊928,用于在所述當(dāng)前視頻幀與上一視頻幀對(duì)應(yīng)于同一字幕切片,且當(dāng)前字幕屬性相對(duì)于所述上一視頻幀未發(fā)生變化的情況下,從緩存中獲取所述當(dāng)前視頻幀對(duì)應(yīng)的當(dāng)前字幕圖像。
在一種可能的實(shí)現(xiàn)方式中,所述裝置還包括:外掛字幕文件獲取模塊96,用于獲取外掛字幕文件;字幕切片生成模塊97,用于根據(jù)所述外掛字幕文件中每句字幕的開(kāi)始時(shí)間點(diǎn)、結(jié)束時(shí)間點(diǎn)和字幕內(nèi)容,生成每句字幕對(duì)應(yīng)的字幕切片。
實(shí)施例3
圖11是根據(jù)一示例性實(shí)施例示出的一種用于外掛字幕的顯示控制的裝置800的框圖。例如,裝置800可以是移動(dòng)電話,計(jì)算機(jī),數(shù)字廣播終端,消息收發(fā)設(shè)備,游戲控制臺(tái),平板設(shè)備,醫(yī)療設(shè)備,健身設(shè)備,個(gè)人數(shù)字助理等。
參照?qǐng)D11,裝置800可以包括以下一個(gè)或多個(gè)組件:處理組件802,存儲(chǔ)器804,電源組件806,多媒體組件808,音頻組件810,輸入/輸出(I/O)的接口812,傳感器組件814,以及通信組件816。
處理組件802通??刂蒲b置800的整體操作,諸如與顯示,電話呼叫,數(shù)據(jù)通信,相機(jī)操作和記錄操作相關(guān)聯(lián)的操作。處理組件802可以包括一個(gè)或多個(gè)處理器820來(lái)執(zhí)行指令,以完成上述的方法的全部或部分步驟。此外,處理組件802可以包括一個(gè)或多個(gè)模塊,便于處理組件802和其他組件之間的交互。例如,處理組件802可以包括多媒體模塊,以方便多媒體組件808和處理組件802之間的交互。
存儲(chǔ)器804被配置為存儲(chǔ)各種類型的數(shù)據(jù)以支持在裝置800的操作。這些數(shù)據(jù)的示例包括用于在裝置800上操作的任何應(yīng)用程序或方法的指令,聯(lián)系人數(shù)據(jù),電話簿數(shù)據(jù),消息,圖片,視頻等。存儲(chǔ)器804可以由任何類型的易失性或非易失性存儲(chǔ)設(shè)備或者它們的組合實(shí)現(xiàn),如靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM),電可擦除可編程只讀存儲(chǔ)器(EEPROM),可擦除可編程只讀存儲(chǔ)器(EPROM),可編程只讀存儲(chǔ)器(PROM),只讀存儲(chǔ)器(ROM),磁存儲(chǔ)器,快閃存儲(chǔ)器,磁盤或光盤。
電源組件806為裝置800的各種組件提供電力。電源組件806可以包括電源管理系統(tǒng),一個(gè)或多個(gè)電源,及其他與為裝置800生成、管理和分配電力相關(guān)聯(lián)的組件。
多媒體組件808包括在所述裝置800和用戶之間的提供一個(gè)輸出接口的屏幕。在一些實(shí)施例中,屏幕可以包括液晶顯示器(LCD)和觸摸面板(TP)。如果屏幕包括觸摸面板,屏幕可以被實(shí)現(xiàn)為觸摸屏,以接收來(lái)自用戶的輸入信號(hào)。觸摸面板包括一個(gè)或多個(gè)觸摸傳感器以感測(cè)觸摸、滑動(dòng)和觸摸面板上的手勢(shì)。所述觸摸傳感器可以不僅感測(cè)觸摸或滑動(dòng)動(dòng)作的邊界,而且還檢測(cè)與所述觸摸或滑動(dòng)操作相關(guān)的持續(xù)時(shí)間和壓力。在一些實(shí)施例中,多媒體組件808包括一個(gè)前置攝像頭和/或后置攝像頭。當(dāng)裝置800處于操作模式,如拍攝模式或視頻模式時(shí),前置攝像頭和/或后置攝像頭可以接收外部的多媒體數(shù)據(jù)。每個(gè)前置攝像頭和后置攝像頭可以是一個(gè)固定的光學(xué)透鏡系統(tǒng)或具有焦距和光學(xué)變焦能力。
音頻組件810被配置為輸出和/或輸入音頻信號(hào)。例如,音頻組件810包括一個(gè)麥克風(fēng)(MIC),當(dāng)裝置800處于操作模式,如呼叫模式、記錄模式和語(yǔ)音識(shí)別模式時(shí),麥克風(fēng)被配置為接收外部音頻信號(hào)。所接收的音頻信號(hào)可以被進(jìn)一步存儲(chǔ)在存儲(chǔ)器804或經(jīng)由通信組件816發(fā)送。在一些實(shí)施例中,音頻組件810還包括一個(gè)揚(yáng)聲器,用于輸出音頻信號(hào)。
I/O接口812為處理組件802和外圍接口模塊之間提供接口,上述外圍接口模塊可以是鍵盤,點(diǎn)擊輪,按鈕等。這些按鈕可包括但不限于:主頁(yè)按鈕、音量按鈕、啟動(dòng)按鈕和鎖定按鈕。
傳感器組件814包括一個(gè)或多個(gè)傳感器,用于為裝置800提供各個(gè)方面的狀態(tài)評(píng)估。例如,傳感器組件814可以檢測(cè)到裝置800的打開(kāi)/關(guān)閉狀態(tài),組件的相對(duì)定位,例如所述組件為裝置800的顯示器和小鍵盤,傳感器組件814還可以檢測(cè)裝置800或裝置800一個(gè)組件的位置改變,用戶與裝置800接觸的存在或不存在,裝置800方位或加速/減速和裝置800的溫度變化。傳感器組件814可以包括接近傳感器,被配置用來(lái)在沒(méi)有任何的物理接觸時(shí)檢測(cè)附近物體的存在。傳感器組件814還可以包括光傳感器,如CMOS或CCD圖像傳感器,用于在成像應(yīng)用中使用。在一些實(shí)施例中,該傳感器組件814還可以包括加速度傳感器,陀螺儀傳感器,磁傳感器,壓力傳感器或溫度傳感器。
通信組件816被配置為便于裝置800和其他設(shè)備之間有線或無(wú)線方式的通信。裝置800可以接入基于通信標(biāo)準(zhǔn)的無(wú)線網(wǎng)絡(luò),如WiFi,2G或3G,或它們的組合。在一個(gè)示例性實(shí)施例中,通信組件816經(jīng)由廣播信道接收來(lái)自外部廣播管理系統(tǒng)的廣播信號(hào)或廣播相關(guān)信息。在一個(gè)示例性實(shí)施例中,所述通信組件816還包括近場(chǎng)通信(NFC)模塊,以促進(jìn)短程通信。例如,在NFC模塊可基于射頻識(shí)別(RFID)技術(shù),紅外數(shù)據(jù)協(xié)會(huì)(IrDA)技術(shù),超寬帶(UWB)技術(shù),藍(lán)牙(BT)技術(shù)和其他技術(shù)來(lái)實(shí)現(xiàn)。
在示例性實(shí)施例中,裝置800可以被一個(gè)或多個(gè)應(yīng)用專用集成電路(ASIC)、數(shù)字信號(hào)處理器(DSP)、數(shù)字信號(hào)處理設(shè)備(DSPD)、可編程邏輯器件(PLD)、現(xiàn)場(chǎng)可編程門陣列(FPGA)、控制器、微控制器、微處理器或其他電子元件實(shí)現(xiàn),用于執(zhí)行上述方法。
在示例性實(shí)施例中,還提供了一種包括指令的非易失性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),例如包括指令的存儲(chǔ)器804,上述指令可由裝置800的處理器820執(zhí)行以完成上述方法。
本公開(kāi)可以是系統(tǒng)、方法和/或計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)程序產(chǎn)品可以包括計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上載有用于使處理器實(shí)現(xiàn)本公開(kāi)的各個(gè)方面的計(jì)算機(jī)可讀程序指令。
計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是可以保持和存儲(chǔ)由指令執(zhí)行設(shè)備使用的指令的有形設(shè)備。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是――但不限于――電存儲(chǔ)設(shè)備、磁存儲(chǔ)設(shè)備、光存儲(chǔ)設(shè)備、電磁存儲(chǔ)設(shè)備、半導(dǎo)體存儲(chǔ)設(shè)備或者上述的任意合適的組合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體的例子(非窮舉的列表)包括:便攜式計(jì)算機(jī)盤、硬盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦式可編程只讀存儲(chǔ)器(EPROM或閃存)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、便攜式壓縮盤只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能盤(DVD)、記憶棒、軟盤、機(jī)械編碼設(shè)備、例如其上存儲(chǔ)有指令的打孔卡或凹槽內(nèi)凸起結(jié)構(gòu)、以及上述的任意合適的組合。這里所使用的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)不被解釋為瞬時(shí)信號(hào)本身,諸如無(wú)線電波或者其他自由傳播的電磁波、通過(guò)波導(dǎo)或其他傳輸媒介傳播的電磁波(例如,通過(guò)光纖電纜的光脈沖)、或者通過(guò)電線傳輸?shù)碾娦盘?hào)。
這里所描述的計(jì)算機(jī)可讀程序指令可以從計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)下載到各個(gè)計(jì)算/處理設(shè)備,或者通過(guò)網(wǎng)絡(luò)、例如因特網(wǎng)、局域網(wǎng)、廣域網(wǎng)和/或無(wú)線網(wǎng)下載到外部計(jì)算機(jī)或外部存儲(chǔ)設(shè)備。網(wǎng)絡(luò)可以包括銅傳輸電纜、光纖傳輸、無(wú)線傳輸、路由器、防火墻、交換機(jī)、網(wǎng)關(guān)計(jì)算機(jī)和/或邊緣服務(wù)器。每個(gè)計(jì)算/處理設(shè)備中的網(wǎng)絡(luò)適配卡或者網(wǎng)絡(luò)接口從網(wǎng)絡(luò)接收計(jì)算機(jī)可讀程序指令,并轉(zhuǎn)發(fā)該計(jì)算機(jī)可讀程序指令,以供存儲(chǔ)在各個(gè)計(jì)算/處理設(shè)備中的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中。
用于執(zhí)行本公開(kāi)操作的計(jì)算機(jī)程序指令可以是匯編指令、指令集架構(gòu)(ISA)指令、機(jī)器指令、機(jī)器相關(guān)指令、微代碼、固件指令、狀態(tài)設(shè)置數(shù)據(jù)、或者以一種或多種編程語(yǔ)言的任意組合編寫(xiě)的源代碼或目標(biāo)代碼,所述編程語(yǔ)言包括面向?qū)ο蟮木幊陶Z(yǔ)言—諸如Smalltalk、C++等,以及常規(guī)的過(guò)程式編程語(yǔ)言—諸如“C”語(yǔ)言或類似的編程語(yǔ)言。計(jì)算機(jī)可讀程序指令可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過(guò)任意種類的網(wǎng)絡(luò)—包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來(lái)通過(guò)因特網(wǎng)連接)。在一些實(shí)施例中,通過(guò)利用計(jì)算機(jī)可讀程序指令的狀態(tài)信息來(lái)個(gè)性化定制電子電路,例如可編程邏輯電路、現(xiàn)場(chǎng)可編程門陣列(FPGA)或可編程邏輯陣列(PLA),該電子電路可以執(zhí)行計(jì)算機(jī)可讀程序指令,從而實(shí)現(xiàn)本公開(kāi)的各個(gè)方面。
這里參照根據(jù)本公開(kāi)實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或框圖描述了本公開(kāi)的各個(gè)方面。應(yīng)當(dāng)理解,流程圖和/或框圖的每個(gè)方框以及流程圖和/或框圖中各方框的組合,都可以由計(jì)算機(jī)可讀程序指令實(shí)現(xiàn)。
這些計(jì)算機(jī)可讀程序指令可以提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機(jī)器,使得這些指令在通過(guò)計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時(shí),產(chǎn)生了實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的裝置。也可以把這些計(jì)算機(jī)可讀程序指令存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,這些指令使得計(jì)算機(jī)、可編程數(shù)據(jù)處理裝置和/或其他設(shè)備以特定方式工作,從而,存儲(chǔ)有指令的計(jì)算機(jī)可讀介質(zhì)則包括一個(gè)制造品,其包括實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的各個(gè)方面的指令。
也可以把計(jì)算機(jī)可讀程序指令加載到計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上,使得在計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上執(zhí)行一系列操作步驟,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過(guò)程,從而使得在計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上執(zhí)行的指令實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作。
附圖中的流程圖和框圖顯示了根據(jù)本公開(kāi)的多個(gè)實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段或指令的一部分,所述模塊、程序段或指令的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動(dòng)作的專用的基于硬件的系統(tǒng)來(lái)實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來(lái)實(shí)現(xiàn)。
以上已經(jīng)描述了本公開(kāi)的各實(shí)施例,上述說(shuō)明是示例性的,并非窮盡性的,并且也不限于所披露的各實(shí)施例。在不偏離所說(shuō)明的各實(shí)施例的范圍和精神的情況下,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō)許多修改和變更都是顯而易見(jiàn)的。本文中所用術(shù)語(yǔ)的選擇,旨在最好地解釋各實(shí)施例的原理、實(shí)際應(yīng)用或?qū)κ袌?chǎng)中的技術(shù)的技術(shù)改進(jìn),或者使本技術(shù)領(lǐng)域的其它普通技術(shù)人員能理解本文披露的各實(shí)施例。