相關(guān)申請(qǐng)
本申請(qǐng)要求享受2015年2月23日提交的、標(biāo)題為“availabilitystarttimeadjustmentbydevicefordashoverbroadcast”的美國(guó)臨時(shí)專利申請(qǐng)no.62/119,353的優(yōu)先權(quán),故以引用方式將其全部?jī)?nèi)容并入本文。
背景技術(shù):
當(dāng)前,超文本傳輸協(xié)議(http)流是互聯(lián)網(wǎng)上最流行的用于傳送內(nèi)容的方法。對(duì)于實(shí)時(shí)事件而言,通過(guò)固定持續(xù)時(shí)間的分段而使內(nèi)容逐漸可用。這種分段可用性是沿著的時(shí)間軸,后者指示每一個(gè)后續(xù)的分段在http服務(wù)器處何時(shí)變得可用。
超文本傳輸協(xié)議上的動(dòng)態(tài)自適應(yīng)流(dash)是一種實(shí)現(xiàn)http流的標(biāo)準(zhǔn)。dash在媒體呈現(xiàn)描述(mpd)中通告分段可用性。mpd是用于通告分段、分段可用的時(shí)間、以及這些分段的大小的分段可用性時(shí)間軸。
在當(dāng)前系統(tǒng)中,通過(guò)空中下載(ota)傳輸來(lái)向接收機(jī)設(shè)備提供mpd。在所提供的mpd中,可以選擇分段可用性時(shí)間,以計(jì)入所估計(jì)的要在該分段的編碼器輸出和接收機(jī)設(shè)備接收之間發(fā)生的最大路徑延遲。但是,并不是網(wǎng)絡(luò)中的所有接收機(jī)設(shè)備都會(huì)經(jīng)歷最大路徑延遲。因此,使用當(dāng)前mpd中的分段可用性時(shí)間的處于較低延遲區(qū)域的接收機(jī)設(shè)備,可能經(jīng)歷比所必要的更長(zhǎng)的信道采集和切換時(shí)間,這是因?yàn)樽畲舐窂窖舆t比處于較低延遲區(qū)域中的接收機(jī)設(shè)備所經(jīng)歷的實(shí)際延遲更長(zhǎng)。
技術(shù)實(shí)現(xiàn)要素:
各個(gè)實(shí)施例的系統(tǒng)、方法和設(shè)備使設(shè)備能夠使用修改的分段可用性時(shí)間。在各個(gè)實(shí)施例中,可以使廣播多媒體服務(wù)中心(bmsc)服務(wù)器能夠修改用于說(shuō)明這些分段的可用性時(shí)間的分段可用性時(shí)間軸。在各個(gè)實(shí)施例中,可以在接收機(jī)設(shè)備的服務(wù)層,執(zhí)行分段可用性時(shí)間調(diào)整。在各個(gè)實(shí)施例中,分段可用性時(shí)間調(diào)整可以由接收機(jī)設(shè)備上的客戶端應(yīng)用來(lái)執(zhí)行。
各個(gè)實(shí)施例可以包括:在設(shè)備處接收分段可用性時(shí)間軸;在設(shè)備處接收文件傳輸表(fdt)分組,該fdt分組包括fdt時(shí)間戳;在設(shè)備處確定fdt到達(dá)時(shí)間;在設(shè)備處至少部分地基于fdt到達(dá)時(shí)間和fdt時(shí)間戳來(lái)確定實(shí)際可用性開始時(shí)間;以及至少部分地基于所確定的實(shí)際可用性開始時(shí)間對(duì)分段可用性時(shí)間軸的開始時(shí)間進(jìn)行偏移。
各個(gè)實(shí)施例可以包括:確定fdt分組的傳輸時(shí)間;在fdt分組中指示fdt時(shí)間戳,其中,該fdt時(shí)間戳是至少部分地基于所確定的傳輸時(shí)間的;以及在所確定的傳輸時(shí)間處發(fā)送fdt分組。
另外的實(shí)施例包括:配置有處理器可執(zhí)行指令以執(zhí)行上面所概述的方法的操作的設(shè)備。另外的實(shí)施例包括:具有用于執(zhí)行上面概述的方法的功能的單元的設(shè)備。另外的實(shí)施例包括在其上存儲(chǔ)有處理器可執(zhí)行指令的非臨時(shí)性處理器可讀存儲(chǔ)介質(zhì),其中所述處理器可執(zhí)行指令被配置為使設(shè)備處理器執(zhí)行上面所概述的方法的操作。
附圖說(shuō)明
被并入本文并且構(gòu)成本說(shuō)明書一部分的附圖,描繪了本發(fā)明的示例性實(shí)施例,并且連同上面給出的概括描述以及下面給出的詳細(xì)描述一起來(lái)解釋本發(fā)明的特征。
圖1是適合于結(jié)合各種實(shí)施例使用的網(wǎng)絡(luò)的通信系統(tǒng)框圖。
圖2是根據(jù)一個(gè)實(shí)施例,示出接收機(jī)設(shè)備的架構(gòu)的框圖。
圖3a根據(jù)一個(gè)實(shí)施例,示出了分段傳輸路徑和mpd傳輸調(diào)整之間的關(guān)系。
圖3b根據(jù)一個(gè)實(shí)施例,示出了分段傳輸路徑和mpd傳輸調(diào)整之間的關(guān)系。
圖4根據(jù)一個(gè)實(shí)施例,示出了網(wǎng)絡(luò)的不同部分中的傳輸路徑延遲之間的關(guān)系。
圖5根據(jù)一個(gè)實(shí)施例,示出了可用性時(shí)間軸、mpd可用性開始時(shí)間、傳輸時(shí)間和到達(dá)時(shí)間。
圖6a是示出用于修改分段可用性時(shí)間軸的實(shí)施例方法的處理流程圖。
圖6b是用于生成延遲調(diào)整消息的實(shí)施例方法的處理流程圖。
圖7是根據(jù)一個(gè)實(shí)施例的異步分層編碼(alc)分組的數(shù)據(jù)結(jié)構(gòu)圖。
圖8根據(jù)一個(gè)實(shí)施例,示出了mpd可用性開始時(shí)間、傳輸時(shí)間、到達(dá)時(shí)間和偏移時(shí)間。
圖9a是示出用于修改分段可用性時(shí)間軸的另一種實(shí)施例方法的處理流程圖。
圖9b是用于生成延遲調(diào)整消息的另一種實(shí)施例方法的處理流程圖。
圖10a是示出用于在文件傳輸表(fdt)中指示fdt時(shí)間戳的實(shí)施例方法的處理流程圖。
圖10b是示出用于在fdt中指示fdt時(shí)間戳的另一種實(shí)施例方法的處理流程圖。
圖10c是示出用于在fdt中指示fdt時(shí)間戳的第三實(shí)施例方法的處理流程圖。
圖11是示出基于延遲調(diào)整消息,調(diào)整可用性時(shí)間的實(shí)施例方法的處理流程圖。
圖12是適合于結(jié)合各種實(shí)施例使用的示例性移動(dòng)設(shè)備的組件圖。
圖13是適合于結(jié)合各種實(shí)施例使用的示例性服務(wù)器的組件圖。
具體實(shí)施方式
現(xiàn)在參照附圖來(lái)詳細(xì)地描述各個(gè)實(shí)施例。在可以的地方,貫穿附圖使用相同的附圖標(biāo)記來(lái)指代相同或者類似的部件。對(duì)于特定示例和實(shí)現(xiàn)的引用只是用于說(shuō)明目的,而不是旨在限制本發(fā)明或者權(quán)利要求的保護(hù)范圍。
本文所使用的“示例性的”一詞意味著“用作例子、例證或說(shuō)明”。本文中描述為“示例性”的任何實(shí)現(xiàn)方式不應(yīng)被解釋為比其它實(shí)現(xiàn)方式更優(yōu)選或更具優(yōu)勢(shì)。
如本文所使用的,本文互換地使用術(shù)語(yǔ)“移動(dòng)設(shè)備”和“接收機(jī)設(shè)備”,以指代下面中的任何一項(xiàng)或者全部:蜂窩電話、智能電話、個(gè)人或移動(dòng)多媒體播放器、個(gè)人數(shù)據(jù)助理(pda)、膝上型計(jì)算機(jī)、平板計(jì)算機(jī)、智能本、掌上計(jì)算機(jī)、無(wú)線電子郵件接收機(jī)、具備多媒體互聯(lián)網(wǎng)功能的蜂窩電話、無(wú)線游戲控制器、以及類似的個(gè)人電子設(shè)備,其中這些個(gè)人電子設(shè)備包括可編程處理器和存儲(chǔ)器,以及用于接收mpd和使mpd可用于dash客戶端的電路。
本文使用術(shù)語(yǔ)“服務(wù)器”來(lái)描述各個(gè)實(shí)施例,以指代能夠?qū)崿F(xiàn)服務(wù)器功能的任何計(jì)算設(shè)備,例如,主交換服務(wù)器、web服務(wù)器、郵件服務(wù)器、文檔服務(wù)器、內(nèi)容服務(wù)器或者任何其它類型的服務(wù)器。服務(wù)器可以是專用計(jì)算設(shè)備或者包括服務(wù)器模塊的計(jì)算設(shè)備(例如,運(yùn)行可以使得該計(jì)算設(shè)備操作成服務(wù)器的應(yīng)用)。服務(wù)器模塊(例如,服務(wù)器應(yīng)用)可以是全功能服務(wù)器模塊,也可以是被配置為在接收機(jī)設(shè)備上的動(dòng)態(tài)數(shù)據(jù)庫(kù)之間提供同步服務(wù)的輕型或輔助服務(wù)器模塊(例如,輕型或輔助服務(wù)器應(yīng)用)。輕型或輔助服務(wù)器可以是能在接收機(jī)設(shè)備上實(shí)現(xiàn)的精簡(jiǎn)版的服務(wù)器類型功能,從而使其僅僅達(dá)到充當(dāng)互聯(lián)網(wǎng)服務(wù)器(例如,企業(yè)電子郵件服務(wù)器)所需的程度,以提供本文所描述的功能。
超文本傳輸協(xié)議上的動(dòng)態(tài)自適應(yīng)流(dash)是一種實(shí)現(xiàn)http流媒體的標(biāo)準(zhǔn)。dash在媒體呈現(xiàn)描述(mpd)中通告分段可用性。mpd是用于通告分段、分段可用的時(shí)間、以及這些分段的大小的分段可用性時(shí)間軸。在當(dāng)前系統(tǒng)中,通過(guò)空中下載(ota)傳送來(lái)向接收機(jī)設(shè)備提供mpd。第三代合作伙伴計(jì)劃(3gpp)已經(jīng)將下載傳輸上的dash標(biāo)準(zhǔn)化為用于在長(zhǎng)期演進(jìn)(lte)上使用廣播來(lái)提供http流的方法(即,演進(jìn)型多媒體廣播多播服務(wù)(embms))。
本文討論了不同的應(yīng)用/客戶端、中間件、分段可用性時(shí)間軸、無(wú)線電技術(shù)和傳輸協(xié)議的各種示例,特別是dash客戶端、多播服務(wù)設(shè)備客戶端、mpd、embms和http。dash客戶端、多播服務(wù)設(shè)備客戶端、mpd、embms和http的討論,只是提供成用于更好地描繪各個(gè)實(shí)施例的方面的例子,而不是旨在以任何方式來(lái)限制各個(gè)實(shí)施例。其它的應(yīng)用/客戶端、中間件、分段可用性時(shí)間軸、無(wú)線電技術(shù)和傳輸協(xié)議也可以結(jié)合各個(gè)實(shí)施例來(lái)使用,并在不脫離本發(fā)明的精神或保護(hù)范圍的基礎(chǔ)上,可以在各個(gè)例子中替換其它的應(yīng)用/客戶端、中間件、分段可用性時(shí)間軸、無(wú)線電技術(shù)和傳輸協(xié)議。例如,各個(gè)實(shí)施例可以使用根據(jù)一種或多種其它自適應(yīng)流傳送協(xié)議(例如,http實(shí)時(shí)流(“hls”))進(jìn)行格式化的分段,其中這些自適應(yīng)流傳送協(xié)議可以使用具有開始時(shí)間的諸如hls索引文件之類的其它分段可用性時(shí)間軸。
各個(gè)實(shí)施例使設(shè)備(例如,接收機(jī)設(shè)備、廣播多媒體服務(wù)中心(bmsc)服務(wù)器等等)能夠考慮在用于該設(shè)備的數(shù)據(jù)流中的數(shù)據(jù)分段的可用性(“分段可用性”)中的延遲。在一個(gè)實(shí)施例中,接收機(jī)設(shè)備可以基于接收的分段可用于該接收機(jī)設(shè)備上的應(yīng)用/客戶端(例如,獲取用于媒體播放器應(yīng)用的分段的dash客戶端)的實(shí)際時(shí)間,調(diào)整從網(wǎng)絡(luò)接收的分段可用性時(shí)間軸(例如,通過(guò)ota從bmsc服務(wù)器接收的mpd)中的可用性時(shí)間,以生成修改的mpd列表。在另一個(gè)實(shí)施例中,bmsc可以基于接收的分段將可用于來(lái)自bmsc服務(wù)器的傳輸?shù)膶?shí)際時(shí)間,調(diào)整從網(wǎng)絡(luò)接收的分段可用性時(shí)間軸(例如,通過(guò)ota從編碼器和/或分段器接收的mpd)中的可用性時(shí)間,以生成修改的mpd列表。
在各個(gè)實(shí)施例中,諸如接收機(jī)設(shè)備、bmsc服務(wù)器等等之類的設(shè)備可以接收具有分段的可用性開始時(shí)間(ast)的mpd,其中這些ast被設(shè)置為由編碼器設(shè)定的初始開始時(shí)間(ast1)或者最差情況開始時(shí)間(ast3)。最差情況開始時(shí)間可以是至少部分地基于經(jīng)由網(wǎng)絡(luò)向該設(shè)備傳輸分組的所估計(jì)的最差情況延遲(delaymax),來(lái)選定的在mpd中標(biāo)識(shí)的用于這些分段的開始時(shí)間。設(shè)備可以接收文件傳輸表(fdt)分組并且確定該分組的fdt到達(dá)時(shí)間(tnr)。在各個(gè)實(shí)施例中,fdt分組可以包括在來(lái)自發(fā)送方設(shè)備(例如,向接收機(jī)設(shè)備發(fā)送分組的bmsc服務(wù)器、向bmsc服務(wù)器發(fā)送分組的編碼器等等)的fdt分組中指示的時(shí)間戳,其反映了fdt分組傳輸時(shí)間(tnt)加上傳輸延遲(δ1)和處理延遲(δ2)。該時(shí)間戳可以是用于指示fdt分組傳輸時(shí)間(tnt)加上延遲(δ1和δ2)的單一值(例如,值等于(δ1+δ2-tnt)),或者其可以是三個(gè)單獨(dú)的值(例如,tnt、δ1、和δ2)。當(dāng)mpd指示最差情況開始時(shí)間(ast3)時(shí),可以將fdt分組的傳輸時(shí)間tnt偏移該最差情況延遲(例如,tnt=tnt+delaymax),以說(shuō)明mpd開始時(shí)間中的偏移。設(shè)備可以通過(guò)執(zhí)行網(wǎng)絡(luò)抖動(dòng)估計(jì)的方式,將實(shí)際可用性開始時(shí)間(ast2)確定為:在mpd中所指示的分段的可用性開始時(shí)間(例如,ast1或ast3)加上傳輸延遲(δ1)加上處理延遲(δ2)加上所確定的fdt到達(dá)時(shí)間(tnr)再減去該值(如果fdt分組傳輸時(shí)間(tnt),再加上分段持續(xù)時(shí)間(d)的話)。設(shè)備可以將mpd開始時(shí)間(availabilitystarttime)偏移為實(shí)際可用性開始時(shí)間(ast2)加上確定的網(wǎng)絡(luò)抖動(dòng)估計(jì)量。用此方式,可以使用fdt分組的時(shí)間戳來(lái)偏移mpd的開始時(shí)間,而無(wú)需等待分段的完全到達(dá)。
在各個(gè)實(shí)施例中,諸如接收機(jī)設(shè)備、bmsc服務(wù)器等等之類的設(shè)備可以接收具有將分段的可用性開始時(shí)間(ast)設(shè)置為任何開始時(shí)間的mpd。設(shè)備可以接收文件傳輸表(fdt)分組并且確定該分組的fdt到達(dá)時(shí)間(t2)。在各個(gè)實(shí)施例中,fdt分組可以包括在來(lái)自發(fā)送方設(shè)備(例如,向接收機(jī)設(shè)備發(fā)送分組的bmsc服務(wù)器、向bmsc服務(wù)器發(fā)送分組的編碼器等等)的fdt分組中指示的時(shí)間戳,其反映了從發(fā)送方設(shè)備原始接收的mpd中指示的可用性開始時(shí)間(ast1)開始的fdt分組的傳輸時(shí)間(t1)的偏移時(shí)間(packetoffset),例如,(packetoffset=t1-ast1)。該時(shí)間戳可以是用于指示fdt分組傳輸時(shí)間(t1)減去發(fā)送方設(shè)備原始接收的mpd(ast1)中指示的可用性開始時(shí)間的單一值(例如,值等于(t1-ast1)),或者其可以是兩個(gè)單獨(dú)的值(例如,(t1)和(ast1))。設(shè)備可以將實(shí)際可用性開始時(shí)間(ast2)確定為所確定的fdt到達(dá)時(shí)間(t2)減去偏移時(shí)間(packetoffset)(例如,t1-ast1)。設(shè)備可以將mpd開始時(shí)間(availabilitystarttime)偏移為實(shí)際可用性開始時(shí)間(ast2)加上確定的網(wǎng)絡(luò)抖動(dòng)估計(jì)量。用此方式,可以使用fdt分組的時(shí)間戳來(lái)偏移mpd的開始時(shí)間,而無(wú)需等待分段的完全到達(dá),并且不管用于生成如該設(shè)備所接收的mpd中的可用性開始時(shí)間的任何延遲。
在各個(gè)實(shí)施例中,可以將具有偏移的mpd開始時(shí)間的修改的mpd存儲(chǔ)在設(shè)備(例如,接收機(jī)設(shè)備、bmsc服務(wù)器等等)的存儲(chǔ)器中,設(shè)備可以基于修改的mpd,在該偏移的mpd開始時(shí)間請(qǐng)求分段。在各個(gè)實(shí)施例中,諸如接收機(jī)設(shè)備、bmsc服務(wù)器等等之類的設(shè)備可以將該偏移的mpd開始時(shí)間的指示(availabilitystarttime)存儲(chǔ)在延遲調(diào)整消息中。延遲調(diào)整消息可以是延遲調(diào)整的參數(shù)和/或指示,例如,包括有延遲調(diào)整的文件。在一個(gè)實(shí)施例中,該延遲調(diào)整消息可以使另一個(gè)應(yīng)用(例如,接收機(jī)設(shè)備上的客戶端應(yīng)用)基于接收的分段將可用于該接收機(jī)設(shè)備上的應(yīng)用/客戶端(例如,獲取用于媒體播放器應(yīng)用的分段的dash客戶端)的實(shí)際時(shí)間,修改從網(wǎng)絡(luò)接收的分段可用性時(shí)間軸(例如,通過(guò)ota從廣播多媒體服務(wù)中心(bmsc)服務(wù)器接收的mpd)中的可用性時(shí)間,以生成修改的mpd列表。在另一個(gè)實(shí)施例中,該延遲調(diào)整消息可以使接收機(jī)設(shè)備上的另一個(gè)應(yīng)用(例如,客戶端應(yīng)用)能夠在不修改分段可用性時(shí)間軸本身的情況下,基于接收的分段將可用于該接收機(jī)設(shè)備上的應(yīng)用/客戶端(例如,獲取用于媒體播放器應(yīng)用的分段的dash客戶端)的實(shí)際時(shí)間,來(lái)調(diào)整其針對(duì)于分段的請(qǐng)求的時(shí)間。
在一個(gè)實(shí)施例中,可以在用于描述發(fā)送給接收機(jī)設(shè)備的分段可用性時(shí)間軸(例如,mpd)的清單文件中,提供網(wǎng)絡(luò)抖動(dòng)估計(jì)量(例如,網(wǎng)絡(luò)抖動(dòng)值)。在另一個(gè)實(shí)施例中,可以在接收機(jī)設(shè)備上預(yù)先規(guī)定該網(wǎng)絡(luò)抖動(dòng)(例如,在接收機(jī)設(shè)備制造時(shí),將其存儲(chǔ)在該接收機(jī)設(shè)備的非易失性存儲(chǔ)器中)。在其它實(shí)施例中,可以用任何消息(例如,服務(wù)通告)來(lái)向接收機(jī)設(shè)備傳輸該網(wǎng)絡(luò)抖動(dòng)估計(jì)量。在一個(gè)實(shí)施例中,可以在獨(dú)立于傳輸mpd的消息的消息中,向接收機(jī)設(shè)備傳輸該網(wǎng)絡(luò)抖動(dòng)估計(jì)量。如本文所使用的,“抖動(dòng)”將分段的最早和最晚可能到達(dá)時(shí)間之間的差值,指代成該分段的可用性時(shí)間軸中的差值。
在各個(gè)實(shí)施例中,可以以任何方式,在fdt中指示fdt時(shí)間戳。舉例而言,可以在標(biāo)準(zhǔn)alc分組報(bào)頭字段(例如,發(fā)送方當(dāng)前時(shí)間字段(sct字段))中,指示fdt時(shí)間戳。再舉一個(gè)例子,可以將諸如64比特字段之類的擴(kuò)展報(bào)頭增加為alc擴(kuò)展報(bào)頭,以傳送fdt時(shí)間戳。再舉一個(gè)例子,可以將諸如64比特字段之類的擴(kuò)展報(bào)頭增加為fdt擴(kuò)展報(bào)頭,以傳送fdt時(shí)間戳。再舉一個(gè)例子,可以向alc擴(kuò)展報(bào)頭增加三個(gè)單獨(dú)的32比特字段,其每一個(gè)值分別對(duì)應(yīng)于fdt分組傳輸時(shí)間(tnt)、傳輸延遲(δ1)和處理延遲(δ2)。再舉一個(gè)例子,可以向alc擴(kuò)展報(bào)頭增加單一32比特字段,以指示fdt分組傳輸時(shí)間(tnt)、傳輸延遲(δ1)和處理延遲(δ2)所對(duì)應(yīng)的值的總和的值(例如,值等于tnt+δ1-δ2)。
各個(gè)實(shí)施例提供了用于基于除了僅僅設(shè)備(例如,接收機(jī)設(shè)備、bmsc服務(wù)器等等)確定的信息之外的另外信息,來(lái)修改分段可用性時(shí)間軸(例如,該設(shè)備接收分段的時(shí)間)的方法。各個(gè)實(shí)施例提供了用于基于設(shè)備確定的信息(例如,fdt到達(dá)時(shí)間)和在設(shè)備之外確定的信息(例如,網(wǎng)絡(luò)所提供的信息(如,fdt時(shí)間戳)),來(lái)修改分段可用性時(shí)間軸的方法。例如,各個(gè)實(shí)施例提供了用于發(fā)送指示fdt時(shí)間戳的fdt分組的方法,其中該fdt時(shí)間戳是至少部分地基于確定的該fdt分組的傳輸時(shí)間。設(shè)備可以接收用于指示該fdt時(shí)間戳的fdt分組,確定fdt分組實(shí)際到達(dá)該設(shè)備的時(shí)間(例如,fdt到達(dá)時(shí)間)、以及如fdt時(shí)間戳所指示的該fdt分組的傳輸時(shí)間。與設(shè)備僅僅基于設(shè)備確定的信息(例如,fdt到達(dá)時(shí)間)來(lái)確定實(shí)際可用性開始時(shí)間相比,在修改分段可用性時(shí)間軸時(shí)使用設(shè)備確定的信息(例如,fdt到達(dá)時(shí)間)和在設(shè)備之外確定的信息(例如,fdt時(shí)間戳),可以導(dǎo)致設(shè)備確定分段可用性時(shí)間軸的更準(zhǔn)確的可用性開始時(shí)間。
本文討論了不同的設(shè)備(具體而言,接收機(jī)設(shè)備和bmsc服務(wù)器)修改mpd可用性開始時(shí)間的各個(gè)例子。僅僅將接收機(jī)設(shè)備和bmsc服務(wù)器的討論,提供成用于更好地描繪各個(gè)實(shí)施例的方面的例子,而不是旨在以任何方式來(lái)限制各個(gè)實(shí)施例。其它設(shè)備可以結(jié)合各個(gè)實(shí)施例來(lái)修改mpd,可以在各個(gè)例子中替代為這些其它設(shè)備來(lái)修改mpd,而不脫離本發(fā)明的保護(hù)范圍。
圖1示出了適合于結(jié)合各種實(shí)施例使用的蜂窩網(wǎng)絡(luò)系統(tǒng)100。蜂窩網(wǎng)絡(luò)系統(tǒng)100可以包括多個(gè)設(shè)備,例如,接收機(jī)設(shè)備102、一個(gè)或多個(gè)蜂窩塔或基站104、以及連接到互聯(lián)網(wǎng)110的服務(wù)器108和112。接收機(jī)設(shè)備102可以經(jīng)由一個(gè)或多個(gè)蜂窩連接106(其包括cdma、tdma、gsm、pcs、3g、4g、lte、或者任何其它類型的連接),與蜂窩塔或基站104交換數(shù)據(jù)。蜂窩塔或基站104可以與路由器進(jìn)行通信,其中路由器可以連接到互聯(lián)網(wǎng)110。用此方式,經(jīng)由與蜂窩塔或基站104和/或互聯(lián)網(wǎng)110的連接,可以在接收機(jī)設(shè)備102與服務(wù)器108和112之間交換數(shù)據(jù)。在一個(gè)實(shí)施例中,服務(wù)器108可以是提供用于通過(guò)dash客戶端來(lái)輸出的mpd和分段的內(nèi)容提供商服務(wù)器或編碼器。在一個(gè)實(shí)施例中,服務(wù)器112可以是能從編碼器接收mpd和分段輸出,并且控制這些mpd和分段向接收機(jī)設(shè)備102的ota傳輸?shù)膹V播多媒體服務(wù)中心(bmsc)服務(wù)器。當(dāng)然,雖然本文所描述的接收機(jī)設(shè)備的特征是參照ota傳輸來(lái)描述的,但這些特征也可以結(jié)合有線傳輸、無(wú)線傳輸或者有線傳輸和無(wú)線傳輸?shù)慕M合來(lái)使用。因此,并不是必須進(jìn)行ota傳輸。
圖2示出了根據(jù)一個(gè)實(shí)施例的簡(jiǎn)化接收機(jī)設(shè)備202的架構(gòu)。接收機(jī)設(shè)備202可以包括調(diào)制解調(diào)器層208,后者管理接收機(jī)設(shè)備202的所有無(wú)線電方面,例如,捕獲、切換、鏈路維持等等。調(diào)制解調(diào)器層208可以對(duì)接收的embms承載信號(hào)進(jìn)行解碼,將互聯(lián)網(wǎng)協(xié)議(ip)分組傳送給多播服務(wù)設(shè)備客戶端(msdc)206。多播服務(wù)設(shè)備客戶端206可以是接收機(jī)設(shè)備202的服務(wù)層,其從傳送的ip分組中恢復(fù)分段,并使分段可用于應(yīng)用/客戶端(例如,應(yīng)用/dash客戶端204)。舉例而言,多播服務(wù)設(shè)備客戶端206可以是服務(wù)層,其中該服務(wù)層是接收機(jī)設(shè)備202的操作系統(tǒng)的一部分。此外,多播服務(wù)設(shè)備客戶端206還可以從傳送的ip分組中恢復(fù)mpd。多播服務(wù)設(shè)備客戶端206可以將接收的分段存儲(chǔ)在該接收機(jī)設(shè)備的存儲(chǔ)器中。在一個(gè)實(shí)施例中,多播服務(wù)設(shè)備客戶端206可以調(diào)整該mpd以生成修改的mpd,將修改的mpd存儲(chǔ)在該接收機(jī)設(shè)備的存儲(chǔ)器中,并將修改的mpd傳送給應(yīng)用/dash客戶端204。在另一個(gè)實(shí)施例中,多播服務(wù)設(shè)備客戶端206可以確定用于該mpd的延遲調(diào)整量,將用于該mpd的延遲調(diào)整量存儲(chǔ)在接收機(jī)設(shè)備的存儲(chǔ)器中(例如,存儲(chǔ)在延遲調(diào)整消息中),將mpd存儲(chǔ)在接收機(jī)設(shè)備的存儲(chǔ)器中,并將該mpd和用于該mpd的延遲調(diào)整量傳送給應(yīng)用/dash客戶端204。應(yīng)用/dash客戶端204可以是具備dash能力的應(yīng)用和/或用于發(fā)起dash客戶端以呈現(xiàn)媒體(直接呈現(xiàn)和/或通過(guò)諸如媒體播放器之類的另一個(gè)應(yīng)用進(jìn)行呈現(xiàn))的應(yīng)用。在一個(gè)實(shí)施例中,應(yīng)用/dash客戶端204可以從多播服務(wù)設(shè)備客戶端206獲得修改的mpd位置(例如,統(tǒng)一資源定位符(url)),從多播服務(wù)設(shè)備客戶端206請(qǐng)求和接收修改的mpd,并根據(jù)修改的mpd中的可用性時(shí)間軸來(lái)從多播服務(wù)設(shè)備客戶端206請(qǐng)求分段。在另一個(gè)實(shí)施例中,應(yīng)用/dash客戶端204可以從多播服務(wù)設(shè)備客戶端206獲得mpd位置(例如,統(tǒng)一資源定位符(url))和針對(duì)該mpd位置(例如,url)的延遲調(diào)整量,從多播服務(wù)設(shè)備客戶端206請(qǐng)求和接收mpd和針對(duì)該mpd的延遲調(diào)整量,根據(jù)針對(duì)該mpd的延遲調(diào)整量來(lái)修改該mpd以生成修改的mpd,并根據(jù)修改的mpd中的可用性時(shí)間軸來(lái)從多播服務(wù)設(shè)備客戶端206請(qǐng)求分段。應(yīng)用/dash客戶端204可以從多播服務(wù)設(shè)備客戶端206接收所請(qǐng)求的分段,并呈現(xiàn)分段內(nèi)容(直接呈現(xiàn)和/或通過(guò)諸如媒體播放器之類的另一個(gè)應(yīng)用進(jìn)行呈現(xiàn))。在另外的實(shí)施例中,可以將用于確定mpd的延遲調(diào)整量的多播服務(wù)設(shè)備客戶端206的功能,集成到客戶端206中,客戶端206可以確定延遲調(diào)整量和/或修改mpd本身。
圖3a根據(jù)一個(gè)實(shí)施例,示出了沿著分段傳輸路徑,針對(duì)分段可用性時(shí)間軸(例如,mpd)所做出的傳輸調(diào)整。該分段傳輸路徑可以包括編碼器302、bmsc304、接收機(jī)設(shè)備的多播服務(wù)設(shè)備客戶端306、以及接收機(jī)設(shè)備的dash客戶端308。編碼器302可以將媒體內(nèi)容編碼到分段中,并且定期地向bmsc304傳送分段。例如,可以通過(guò)embms網(wǎng)關(guān),定期地從編碼器302向bmsc304傳送分段。bmsc304可以接收這些分段,并且通過(guò)承載(例如,通過(guò)ota廣播)來(lái)廣播這些分段。接收機(jī)設(shè)備可以通過(guò)調(diào)制解調(diào)器接收這些分段,并且多播服務(wù)設(shè)備客戶端306可以通過(guò)該調(diào)制解調(diào)器來(lái)接收這些分段,并且處理這些分段(例如,對(duì)這些分段進(jìn)行解碼,應(yīng)用fec等等),以使這些分段可用于該接收機(jī)設(shè)備的dash客戶端308。dash客戶端308可以向接收機(jī)設(shè)備的應(yīng)用(例如,媒體播放器)或編解碼器提供這些分段,以使接收機(jī)設(shè)備能夠輸出媒體內(nèi)容。
除了生成分段之外,編碼器302可以生成mpd310。編碼器所生成的mpd310可以列出所生成的分段和/或?qū)⒂删幋a器302生成的分段、分段長(zhǎng)度(例如,大小)、以及這些分段的可用性時(shí)間。在一個(gè)實(shí)施例中,編碼器所生成的mpd310中的可用性時(shí)間可以對(duì)應(yīng)于編碼器302生成的分段的輸出時(shí)間。編碼器302可以向bmsc304提供所生成的mpd310。在一個(gè)實(shí)施例中,bmsc304可以接收所生成的mpd310,并且調(diào)整分段可用性時(shí)間軸以說(shuō)明任何ota傳輸延遲(例如,網(wǎng)絡(luò)抖動(dòng)),從而生成mpd312。bmsc304可以向接收機(jī)設(shè)備發(fā)送mpd312。mpd312可以列出與這些分段的ota可用性時(shí)間相對(duì)應(yīng)的分段可用性時(shí)間。在一個(gè)實(shí)施例中,接收機(jī)設(shè)備可以接收mpd312,并且接收機(jī)設(shè)備的多播服務(wù)設(shè)備客戶端306可以根據(jù)fdt時(shí)間戳來(lái)調(diào)整可用性時(shí)間,以生成修改的mpd314,其中該修改的mpd314列出了在該接收機(jī)設(shè)備處這些分段的實(shí)際估計(jì)的可用性時(shí)間。多播服務(wù)設(shè)備客戶端306可以向dash客戶端308提供修改的mpd314,并且該dash客戶端可以使用該mpd中的分段可用性時(shí)間,以便使用接收機(jī)設(shè)備時(shí)鐘從該接收機(jī)設(shè)備的本地http服務(wù)器請(qǐng)求分段。在另一個(gè)實(shí)施例中,接收機(jī)設(shè)備的多播服務(wù)設(shè)備客戶端306根據(jù)fdt時(shí)間戳來(lái)調(diào)整mpd312中的可用性時(shí)間,并且獨(dú)立于向dash客戶端308發(fā)送的任何mpd來(lái)向dash客戶端308傳輸針對(duì)這些可用性時(shí)間的調(diào)整量。
圖3b根據(jù)另一個(gè)實(shí)施例,示出了沿著分段傳輸路徑,針對(duì)分段可用性時(shí)間軸(例如,mpd)所做出的傳輸調(diào)整。圖3b中所示出的傳輸調(diào)整類似于上面關(guān)于圖3a中所描述的,除了在圖3b中,在向dash客戶端308發(fā)送mpd之前,多播服務(wù)設(shè)備客戶端306不能修改該mpd。在一個(gè)實(shí)施例中,接收機(jī)設(shè)備可以接收mpd312,并且接收機(jī)設(shè)備的多播服務(wù)設(shè)備客戶端306可以向dash客戶端308提供mpd312,而不修改分段可用性時(shí)間。在一個(gè)實(shí)施例中,多播服務(wù)設(shè)備客戶端306可以確定用于根據(jù)fdt時(shí)間戳來(lái)調(diào)整可用性時(shí)間的延遲調(diào)整量,并且生成用于列出這些延遲調(diào)整量的延遲調(diào)整消息316。多播服務(wù)設(shè)備客戶端306可以向dash客戶端308提供該延遲調(diào)整消息。在一個(gè)實(shí)施例中,dash客戶端308可以使用延遲調(diào)整消息316中的延遲調(diào)整指示來(lái)修改mpd312中的分段可用性時(shí)間以生成修改的mpd314。dash客戶端308可以使用接收機(jī)設(shè)備時(shí)鐘從接收機(jī)設(shè)備的本地http服務(wù)器請(qǐng)求分段。在另一個(gè)實(shí)施例中,dash客戶端308可以接收延遲調(diào)整消息316,并且使用延遲調(diào)整消息316來(lái)修改從該接收機(jī)設(shè)備的本地http服務(wù)器中進(jìn)行的針對(duì)分段的請(qǐng)求,而不用生成修改的mpd314。
圖4根據(jù)一個(gè)實(shí)施例,示出了網(wǎng)絡(luò)400的不同部分中的傳輸路徑延遲δ1、δ2、和δ3之間的關(guān)系。來(lái)自編碼器402的內(nèi)容可以從編碼器402傳送到分段器404,并且提供給不同的bmsc(bmsc1和bmsc2)以及它們相應(yīng)的演進(jìn)節(jié)點(diǎn)b(enodeb)(enb1.1、enb1.2、enb1.n、enb2.1、enb2.2、enb2.n等等)所服務(wù)的網(wǎng)絡(luò)406、408的兩個(gè)不同部分。enodebenb1.2可以在第一部分406中向接收機(jī)設(shè)備1410提供該內(nèi)容,并且enodebenb2.2可以在第二部分408中向接收機(jī)設(shè)備2412提供該內(nèi)容。路徑延遲δ1可以是在從編碼器向bmsc(bmsc1和bmsc2)提供分段時(shí)所經(jīng)歷的延遲。路徑延遲δ2可以是bmsc(bmsc1和bmsc2)的處理延遲。路徑延遲δ3可以是在從相應(yīng)的bmsc(bmsc1或bmsc2)通過(guò)它們相應(yīng)的enodeb(enb1.1、enb1.2、enb1.n、enb2.1、enb2.2、enb2.n)分別向接收機(jī)設(shè)備1410或接收機(jī)設(shè)備2412提供分段時(shí)所經(jīng)歷的延遲。針對(duì)網(wǎng)絡(luò)400的估計(jì)的最差路徑延遲可以是沿著任何路徑的最大延遲,例如,max(δ1+δ2+δ3)。第一部分406中的路徑延遲可以與第二部分中的路徑延遲不同。因此,由于不同部分406、408中的不同路徑延遲δ2和δ3,內(nèi)容的相同分段可能在接收機(jī)設(shè)備1410處實(shí)際上與在接收機(jī)設(shè)備2412處不同的時(shí)間可用。當(dāng)與針對(duì)網(wǎng)絡(luò)400的估計(jì)的最差情況延遲相比,路徑延遲更小時(shí),內(nèi)容的分段在接收機(jī)設(shè)備1410或接收機(jī)設(shè)備2412處的實(shí)際可用性時(shí)間,比提供給接收機(jī)設(shè)備的mpd中列出的可用性時(shí)間更早。各個(gè)實(shí)施例可以使接收機(jī)設(shè)備1410和/或接收機(jī)設(shè)備2412能夠考慮它們的實(shí)際經(jīng)歷的路徑延遲δ1、δ2、和/或δ3,并且在內(nèi)容的分段實(shí)際可用時(shí)進(jìn)行請(qǐng)求。
圖5根據(jù)一個(gè)實(shí)施例,示出了可用性時(shí)間軸501、502、和503、以及它們的mpd可用性開始時(shí)間ast1、ast2、和ast3。如圖5中所示,在編碼器處的可用性時(shí)間軸501可以指示可用性開始時(shí)間ast1,并且在接收機(jī)設(shè)備處的可用性時(shí)間軸503可以指示可用性開始時(shí)間ast2。在時(shí)間tn,分段n可以變得在編碼器處可用,并且在時(shí)間tna,該分段可以到達(dá)bmsc。延遲δ1可以表示從編碼器到bmsc的傳輸延遲,例如,時(shí)間tna和tn之間的差值。時(shí)間tnt可以是從bmsc向接收機(jī)設(shè)備發(fā)送分段n的傳輸時(shí)間的時(shí)間戳。延遲δ2可以表示在bmsc處的處理延遲,例如,時(shí)間tnt和tna之間的差值。時(shí)間tnr可以是在接收機(jī)設(shè)備處的分段n的到達(dá)時(shí)間的時(shí)間戳。延遲δ3可以表示從bmsc到接收機(jī)設(shè)備的傳輸延遲,例如,時(shí)間tnr和tnt之間的差值。持續(xù)時(shí)間d可以表示分段持續(xù)時(shí)間,并且時(shí)間tn’可以表示分段n在接收機(jī)設(shè)備處的分段可用性時(shí)間。
基于可用性時(shí)間ast1和ast2、延遲δ1和δ2、傳輸時(shí)間戳tnt、和到達(dá)時(shí)間戳tna的關(guān)系,可以將可用性開始時(shí)間(ast2)確定為:可用性開始時(shí)間ast1加上延遲δ1加上延遲δ2加上到達(dá)時(shí)間戳tna和傳輸時(shí)間戳tnt之間的差值,再加上分段持續(xù)時(shí)間d(例如,ast2=ast1+δ1+δ2+(tnr-tnt)+d)。接收機(jī)設(shè)備可以接收具有ast1可用性時(shí)間的mpd,并且bmsc可以向接收機(jī)設(shè)備發(fā)送延遲δ1和δ2的估計(jì)量與傳輸時(shí)間戳tnt。通過(guò)向接收機(jī)設(shè)備提供延遲δ1和δ2的估計(jì)量與傳輸時(shí)間戳tnt,可以使接收機(jī)設(shè)備能夠?qū)pd中的可用性開始時(shí)間ast1修改成可用性開始時(shí)間ast2,并且生成修改的mpd以用于當(dāng)分段實(shí)際可用時(shí)進(jìn)行請(qǐng)求。替代地,當(dāng)接收機(jī)設(shè)備接收的mpd包括ast3最差情況延遲可用性時(shí)間時(shí)(例如,ast3=ast1+delaymax),則用于分組傳輸?shù)腷msc時(shí)間戳可以考慮相同的延遲(例如,tnt=傳輸時(shí)間+delaymax)時(shí)間戳。
圖6a是示出用于修改分段可用性時(shí)間軸的實(shí)施例方法600a的處理流程圖。在一個(gè)實(shí)施例中,方法600a的操作可以由在接收機(jī)設(shè)備(例如,智能電話)的處理器上運(yùn)行的多播服務(wù)設(shè)備客戶端來(lái)執(zhí)行。在另一個(gè)實(shí)施例中,方法600a的操作可以由在接收機(jī)設(shè)備的處理器上運(yùn)行的客戶端應(yīng)用(例如,dash客戶端)來(lái)執(zhí)行。在另一個(gè)實(shí)施例中,方法600a的操作可以由bmsc服務(wù)器的處理器來(lái)執(zhí)行。在方框602中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以接收mpd。mpd中的開始時(shí)間可以是編碼器所指示的初始開始時(shí)間(ast1),也可以是最差情況開始時(shí)間(ast3)。在一個(gè)實(shí)施例中,設(shè)備可以經(jīng)由ota傳輸來(lái)接收mpd。在一個(gè)實(shí)施例中,mpd可以是從網(wǎng)絡(luò)接收的,并且頭端可以將分段的可用性時(shí)間設(shè)置在mpd中。在一個(gè)實(shí)施例中,mpd中的可用性時(shí)間可以由網(wǎng)絡(luò)進(jìn)行設(shè)置,并且可以考慮從生成分段的編碼器到接收機(jī)設(shè)備的最差情況端到端傳輸延遲(例如,網(wǎng)絡(luò)抖動(dòng))。在一個(gè)實(shí)施例中,客戶端應(yīng)用可以經(jīng)由多播服務(wù)設(shè)備客戶端來(lái)接收mpd。
在方框603處,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以確定網(wǎng)絡(luò)抖動(dòng)。在一個(gè)實(shí)施例中,設(shè)備可以接收用戶服務(wù)描述(usd)中的網(wǎng)絡(luò)抖動(dòng)值。在其它實(shí)施例中,該網(wǎng)絡(luò)抖動(dòng)值可以是預(yù)先設(shè)置的,并且存儲(chǔ)在設(shè)備的存儲(chǔ)器中。
在方框604處,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以接收f(shuō)dt,并且確定fdt到達(dá)時(shí)間戳(tnr)。在一個(gè)實(shí)施例中,fdt可以包括用于指示一個(gè)或多個(gè)值的fdt時(shí)間戳,例如,fdt傳輸時(shí)間(tnt)、來(lái)自編碼器的傳輸延遲(δ1)、和/或bmsc處的處理延遲(δ2)。當(dāng)mpd中的開始時(shí)間是初始開始時(shí)間(ast1)時(shí),fdt傳輸時(shí)間(tnt)可以表示發(fā)送該fdt分組的實(shí)際時(shí)間。當(dāng)mpd中的開始時(shí)間是最差情況開始時(shí)間(ast3)時(shí),可以通過(guò)以下方式將fdt傳輸時(shí)間(tnt)調(diào)整為考慮最差情況延遲(delaymax):將最差情況延遲(delaymax)增加到發(fā)送該fdt分組的實(shí)際時(shí)間,以生成偏移的傳輸時(shí)間(tnt=tnt+delaymax)。在一個(gè)實(shí)施例中,可以在fdt時(shí)間戳中單獨(dú)地指示這些值,例如,針對(duì)tnt、δ1、和δ2的不同的值。在另一個(gè)實(shí)施例中,可以將這些值指示成單一值,例如,δ1+δ2-tnt的和。
在方框606處,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以確定fdt時(shí)間戳值(tnt、δ1、和δ2)。例如,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以解析fdt分組的報(bào)頭(例如,解析alc報(bào)頭元素、alc報(bào)頭擴(kuò)展、fdt報(bào)頭擴(kuò)展等等),以確定在fdt分組報(bào)頭中指示的fdt時(shí)間戳。在方框607中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以確定與該fdt相關(guān)聯(lián)的分段的分段持續(xù)時(shí)間(d)。可以在所接收的mpd中、在fdt中、或者在可用于多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器的另一個(gè)數(shù)據(jù)源中,指示分段持續(xù)時(shí)間(d)。
在方框608中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器將實(shí)際可用起始時(shí)間(ast2)確定為:來(lái)自所接收的mpd的開始時(shí)間(例如,初始可用性開始時(shí)間(ast1)或最差情況開始時(shí)間(ast3))加上來(lái)自編碼器的傳輸延遲(δ1)加上bmsc處的處理延遲(δ2)加上fdt到達(dá)時(shí)間(tnr)減去fdt傳輸時(shí)間(tnt)再加上分段持續(xù)時(shí)間(d)(例如,ast2=(ast1orast3)+δ1+δ2+(tnr-tnt)+d)。
在方框610中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以將mpd開始時(shí)間(availabilitystarttime)偏移到所確定的實(shí)際開始時(shí)間(ast2)加上網(wǎng)絡(luò)抖動(dòng)(networkjitter)。用此方式,可以對(duì)mpd進(jìn)行偏移,以反映分段可用的實(shí)際時(shí)間,并且考慮接收機(jī)設(shè)備所實(shí)際經(jīng)歷的路徑延遲。在可選框612,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器將修改后的mpd存儲(chǔ)在可用于該多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器的存儲(chǔ)器中。在一個(gè)實(shí)施例中,存儲(chǔ)修改的mpd可以包括:將修改的mpd存儲(chǔ)在與一個(gè)url相關(guān)聯(lián)的存儲(chǔ)器位置處,其中在該位置,一些或者全部mpd存儲(chǔ)在接收機(jī)設(shè)備或bmsc服務(wù)器上。在另一個(gè)實(shí)施例中,客戶端應(yīng)用可以不用專門將修改后的mpd存儲(chǔ)在單獨(dú)的存儲(chǔ)位置。相反,在可選框614中,客戶端應(yīng)用可以僅僅使用修改后的mpd,來(lái)請(qǐng)求位于偏移的可用性時(shí)間的分段。在另外的實(shí)施例中,可以在每個(gè)表示的基礎(chǔ)上,重復(fù)方法600a的操作,以便能夠獨(dú)立地對(duì)不同的表示中的可用性時(shí)間進(jìn)行偏移。
圖6b示出了用于生成延遲調(diào)整消息的實(shí)施例方法600b。實(shí)施例方法600b類似于上面參照?qǐng)D6a所描述的方法600a,除了可以在無(wú)需對(duì)分段可用性時(shí)間軸進(jìn)行偏移的情況下,生成用于指示該分段可用性時(shí)間軸中的偏移的延遲調(diào)整消息之外。在一個(gè)實(shí)施例中,方法600b的操作可以由在接收機(jī)設(shè)備(例如,智能電話)的處理器上運(yùn)行的多播服務(wù)設(shè)備客戶端來(lái)執(zhí)行。在另一個(gè)實(shí)施例中,方法600b的操作可以由在接收機(jī)設(shè)備的處理器上運(yùn)行的客戶端應(yīng)用(例如,dash客戶端)來(lái)執(zhí)行。在另一個(gè)實(shí)施例中,方法600b的操作可以由bmsc服務(wù)器的處理器來(lái)執(zhí)行。
在方框602、603、604、606、607、608和610中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以執(zhí)行上面參照?qǐng)D6a所描述的方法600a中的類似編號(hào)模塊的操作,以確定偏移的mpd開始時(shí)間(availabilitystarttime)。在方框616中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以將偏移的mpd開始時(shí)間的指示(availabilitystarttime)存儲(chǔ)在延遲調(diào)整消息中。在一個(gè)實(shí)施例中,延遲調(diào)整消息可以是客戶端應(yīng)用能夠用于確定延遲調(diào)整量的數(shù)據(jù)文件,其考慮了設(shè)備處的分段可用性的延遲,可以使用延遲調(diào)整消息對(duì)一個(gè)或多個(gè)分段的可用性時(shí)間進(jìn)行偏移。在一個(gè)實(shí)施例中,可以將延遲調(diào)整消息存儲(chǔ)在與一個(gè)url相關(guān)聯(lián)的存儲(chǔ)器位置處,其中在該位置,一些或者全部延遲調(diào)整消息存儲(chǔ)在設(shè)備上。在方框618中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以向客戶端應(yīng)用發(fā)送該延遲調(diào)整消息,以便客戶端應(yīng)用在偏移一個(gè)或多個(gè)分段的可用性時(shí)間時(shí)進(jìn)行使用,例如,如下面參照?qǐng)D11的方框1106所討論的。在另一個(gè)實(shí)施例中,可以不發(fā)送該延遲調(diào)整消息,而是由客戶端應(yīng)用根據(jù)需要,在該消息所存儲(chǔ)的存儲(chǔ)位置處訪問(wèn)或者請(qǐng)求。
圖7是根據(jù)一個(gè)實(shí)施例的alc分組700的數(shù)據(jù)結(jié)構(gòu)圖。在一個(gè)實(shí)施例中,可以在諸如發(fā)送方當(dāng)前時(shí)間(sct)字段之類的標(biāo)準(zhǔn)alc分組報(bào)頭字段中,指示fdt時(shí)間戳。在其它實(shí)施例中,可以使用alc擴(kuò)展報(bào)頭來(lái)指示fdt時(shí)間戳值。在一個(gè)實(shí)施例中,可以在fdt時(shí)間戳中單獨(dú)地指示這些值,例如,在alc擴(kuò)展報(bào)頭中的三個(gè)單獨(dú)32比特字段中指示的用于tnt、δ1、和δ2的不同值。在另一個(gè)實(shí)施例中,可以將這些值指示成單一值,例如,在alc擴(kuò)展報(bào)頭中的單一32比特字段中指示的δ1+δ2-tnt的和。
圖8根據(jù)一個(gè)實(shí)施例,示出了mpd801、803、和805,以及它們的可用性開始時(shí)間ast1、ast2、和ast3、傳輸時(shí)間(t1、t2、和t3)、到達(dá)時(shí)間、和偏移時(shí)間(packetoffset)。如圖8中所示,在bmsc處接收的mpd801中的可用性時(shí)間軸可以指示可用性開始時(shí)間ast1,并且可以在時(shí)間t1,從bmsc向接收機(jī)設(shè)備發(fā)送第一分段n。bmsc可以基于某種延遲來(lái)修改mpd801,以在提供給接收機(jī)設(shè)備的mpd803中指示用于第一分段n的可用性開始時(shí)間ast3。但是,由于與所估計(jì)的延遲相比,路由延遲可能更小,因此分段n可能在實(shí)際時(shí)間t2到達(dá),其比在假定bmsc所使用的延遲情況下,分段n將到達(dá)的時(shí)間t3更早。因此,分段n在mpd803中所指示的時(shí)間之前就可用,接收機(jī)設(shè)備經(jīng)歷該接收機(jī)設(shè)備應(yīng)當(dāng)進(jìn)行等待,直到mpd803中所列出的時(shí)間才請(qǐng)求分段n的不必要延遲。為了說(shuō)明實(shí)際路徑延遲,接收機(jī)設(shè)備可以生成修改的mpd805,其中對(duì)可用性開始時(shí)間(ast2)進(jìn)行偏移以反映分段n可用的實(shí)際時(shí)間。偏移時(shí)間(packetoffset)可以對(duì)應(yīng)于傳輸t1和可用性時(shí)間ast1之間的時(shí)間,可以將可用性開始時(shí)間(ast2)確定為到達(dá)時(shí)間t2減去偏移時(shí)間(packetoffset)(例如,ast2=t2-packetoffset)。通過(guò)向接收機(jī)設(shè)備提供偏移時(shí)間(packetoffset),可以使接收機(jī)設(shè)備能夠確定實(shí)際可用性開始時(shí)間ast2而不管mpd803中的開始時(shí)間ast3,并生成修改的mpd805以反映實(shí)際可用性開始時(shí)間ast2。
圖9a是示出用于修改分段可用性時(shí)間軸的另一種實(shí)施例方法的處理流程圖。在一個(gè)實(shí)施例中,方法900a的操作可以由在接收機(jī)設(shè)備(例如,智能電話)的處理器上運(yùn)行的多播服務(wù)設(shè)備客戶端來(lái)執(zhí)行。在另一個(gè)實(shí)施例中,方法900a的操作可以由在接收機(jī)設(shè)備的處理器上運(yùn)行的客戶端應(yīng)用(例如,dash客戶端)來(lái)執(zhí)行。在另一個(gè)實(shí)施例中,方法900a的操作可以由bmsc服務(wù)器的處理器來(lái)執(zhí)行。在方框902中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以接收mpd。mpd中的開始時(shí)間可以是任何開始時(shí)間,例如,最差情況開始時(shí)間或者其它開始時(shí)間。在一個(gè)實(shí)施例中,設(shè)備可以經(jīng)由ota傳輸來(lái)接收mpd。在一個(gè)實(shí)施例中,mpd可以是從網(wǎng)絡(luò)接收的,并且頭端可以將分段的可用性時(shí)間設(shè)置在mpd中。在一個(gè)實(shí)施例中,客戶端應(yīng)用可以經(jīng)由多播服務(wù)設(shè)備客戶端來(lái)接收mpd。
如上面所討論的,在方框603處,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以確定網(wǎng)絡(luò)抖動(dòng)。在方框903中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以接收f(shuō)dt,并且確定fdt到達(dá)時(shí)間(t2)。在一個(gè)實(shí)施例中,fdt可以包括:用于指示在發(fā)送設(shè)備處,該fdt分組的傳輸和mpd中的可用性時(shí)間之間的偏移時(shí)間(packetoffset)的fdt時(shí)間戳。在方框904中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以確定該fdt時(shí)間戳(packetoffset)。例如,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以解析fdt分組的報(bào)頭(例如,解析alc報(bào)頭元素、alc報(bào)頭擴(kuò)展、fdt擴(kuò)展擴(kuò)展等等),以確定fdt分組報(bào)頭中所指示的fdt時(shí)間戳。在方框906中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器將實(shí)際可用性開始時(shí)間(ast2)確定為:fdt到達(dá)時(shí)間(t2)減去該fdt時(shí)間戳(packetoffset)(例如,ast2=t2-packetoffset)。如上面參照?qǐng)D6a所討論的,在方框610、612和614中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以對(duì)mpd進(jìn)行偏移,存儲(chǔ)經(jīng)修改的mpd,并根據(jù)偏移后的mpd來(lái)請(qǐng)求分段。
圖9b示出了用于生成延遲調(diào)整消息的實(shí)施例方法900b。實(shí)施例方法900b類似于上面參照?qǐng)D9a所描述的方法900a,除了可以在無(wú)需對(duì)分段可用性時(shí)間軸進(jìn)行偏移的情況下,生成用于指示分段可用性時(shí)間軸中的偏移的延遲調(diào)整消息之外。在一個(gè)實(shí)施例中,方法900b的操作可以由在接收機(jī)設(shè)備(例如,智能電話)的處理器上運(yùn)行的多播服務(wù)設(shè)備客戶端來(lái)執(zhí)行。在另一個(gè)實(shí)施例中,方法900b的操作可以由在接收機(jī)設(shè)備的處理器上運(yùn)行的客戶端應(yīng)用(例如,dash客戶端)來(lái)執(zhí)行。在另一個(gè)實(shí)施例中,方法900b的操作可以由bmsc服務(wù)器的處理器來(lái)執(zhí)行。在方框902、603、903、904、906和610中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以執(zhí)行上面參照?qǐng)D9a所描述的方法900a中的類似編號(hào)模塊的操作,以確定偏移的mpd開始時(shí)間(availabilitystarttime)。如上面參照?qǐng)D6b所討論的,在方框616和618中,多播服務(wù)設(shè)備客戶端、客戶端應(yīng)用、或者bmsc服務(wù)器可以存儲(chǔ)該偏移的mpd開始時(shí)間的指示,發(fā)送延遲消息。
圖10a是示出用于在fdt中指示fdt時(shí)間戳的實(shí)施例方法1000a的處理流程圖。在一個(gè)實(shí)施例中,方法1000a的操作可以由bmsc服務(wù)器的處理器來(lái)執(zhí)行。在方框1002中,bmsc服務(wù)器可以接收包括初始開始時(shí)間(ast1)的指示的mpd。在方框1003中,bmsc服務(wù)器可以向接收機(jī)設(shè)備發(fā)送包括初始開始時(shí)間(ast1)的指示的mpd。
在方框1004中,bmsc服務(wù)器可以確定從編碼器到bmsc服務(wù)器的傳輸延遲(δ1)。bmsc服務(wù)器可以通過(guò)將從編碼器接收的分組中的時(shí)間戳與接收到該分組的實(shí)際時(shí)間進(jìn)行比較,來(lái)估計(jì)傳輸延遲。替代地,該傳輸延遲(δ1)可以是存儲(chǔ)在可用于bmsc服務(wù)器的存儲(chǔ)器中的預(yù)先設(shè)定的值。在方框1005中,bmsc服務(wù)器可以確定在準(zhǔn)備分組以進(jìn)行傳輸時(shí)的處理延遲(δ2)。該處理延遲(δ2)可以是存儲(chǔ)在可用于bmsc服務(wù)器的存儲(chǔ)器中的預(yù)先設(shè)定的值。
在方框1006中,bmsc服務(wù)器可以確定fdt傳輸時(shí)間(tnt),并且在方框1007中,bmsc服務(wù)器可以在fdt中指示fdt時(shí)間戳(tnt、δ1、δ2)。例如,可以在fdt或者alc或者fdt報(bào)頭擴(kuò)展的alc元素中,指示該fdt時(shí)間戳。在一個(gè)實(shí)施例中,可以在fdt時(shí)間戳中單獨(dú)地指示這些值,例如,針對(duì)tnt、δ1、和δ2的不同的值。在另一個(gè)實(shí)施例中,可以將這些值指示成單一值,例如,δ1+δ2-tnt的和。在方框1008中,bmsc服務(wù)器可以在fdt傳輸時(shí)間來(lái)發(fā)送fdt。
圖10b是示出用于在fdt中指示fdt時(shí)間戳的實(shí)施例方法1000b的處理流程圖。實(shí)施例方法1000b類似于上面參照?qǐng)D10a所描述的方法1000a,除了可以使用最差情況延遲(delaymax)對(duì)mpd可用性開始時(shí)間和fdt傳輸時(shí)間進(jìn)行偏移之外。在方框1002中,bmsc服務(wù)器可以接收包括有初始開始時(shí)間(ast1)的指示的mpd。
在方框1010中,bmsc服務(wù)器可以估計(jì)用于向接收機(jī)設(shè)備發(fā)送分段的最差情況延遲(delaymax)。在方框1011中,bmsc服務(wù)器可以至少部分地基于初始開始時(shí)間(ast1)和估計(jì)的最差情況延遲(delaymax)來(lái)確定最差情況開始時(shí)間(ast3)。例如,可以將ast3確定為ast1加上最差情況延遲(delaymax)(例如,ast3=ast1+delaymax)。
在方框1012處,bmsc服務(wù)器可以將mpd開始時(shí)間偏移到最差情況開始時(shí)間(ast3),以生成包括最差情況開始時(shí)間(ast3)的指示的mpd。在方框1013處,bmsc服務(wù)器可以向接收機(jī)設(shè)備發(fā)送包括最差情況開始時(shí)間(ast3)的指示的mpd。
如上面所討論的,bmsc服務(wù)器可以在方框1004和1005中,確定傳輸延遲(δ1)和處理延遲(δ2)。在方框1014中,bmsc服務(wù)器可以確定針對(duì)所估計(jì)的最差情況延遲(delaymax)調(diào)整的fdt傳輸時(shí)間(例如,tnt=tnt+delaymax)。用此方式,從bmsc服務(wù)器發(fā)送的fdt時(shí)間戳可以包括傳輸時(shí)間(tnt),其考慮了用于生成具有最差情況開始時(shí)間(ast3)的mpd的最差情況延遲。如上面所討論的,在方框1007中,bmsc服務(wù)器可以在fdt中指示fdt時(shí)間戳(tnt、δ1、δ2),并且在方框1008中,bmsc服務(wù)器可以在fdt傳輸時(shí)間來(lái)發(fā)送fdt。
圖10c是示出用于在fdt中指示fdt時(shí)間戳的實(shí)施例方法1000c的處理流程圖。實(shí)施例方法1000c類似于上面參照?qǐng)D10a所描述的方法1000a,除了將偏移時(shí)間(packetoffset)使用成fdt時(shí)間戳,而不是使用傳輸時(shí)間加上最差情況延遲之外。
在方框1002和1003中,bmsc服務(wù)器可以執(zhí)行上面參照?qǐng)D10a所描述的方法1000a中的類似編號(hào)模塊的操作,以接收和發(fā)送mpd。在方框1015中,bmsc服務(wù)器可以確定fdt傳輸時(shí)間(t1)。在方框1016中,bmsc服務(wù)器可以確定傳輸時(shí)間(t1)和初始開始時(shí)間(ast1)之間的偏移時(shí)間(packetoffset),例如,通過(guò)從t1中減去ast1。在方框1017中,bmsc服務(wù)器可以在fdt中指示fdt時(shí)間戳(packetoffset)。例如,可以在fdt或者alc或fdt報(bào)頭擴(kuò)展的alc元素中指示該fdt時(shí)間戳。如上面所討論的,在方框1008中,bmsc服務(wù)器可以在fdt傳輸時(shí)間(t1)發(fā)送fdt。
圖11示出了用于基于延遲調(diào)整消息中的指示,調(diào)整可用性時(shí)間的實(shí)施例方法。在一個(gè)實(shí)施例中,方法1100的操作可以由在接收機(jī)設(shè)備(例如,智能電話)的處理器上運(yùn)行的客戶端應(yīng)用(例如,dash客戶端)來(lái)執(zhí)行。在方框1102中,客戶端應(yīng)用可以接收mpd。在一個(gè)實(shí)施例中,客戶端應(yīng)用可以經(jīng)由多播服務(wù)設(shè)備客戶端,通過(guò)接收機(jī)設(shè)備上的http服務(wù)器來(lái)接收mpd。在方框1104中,客戶端應(yīng)用可以接收延遲調(diào)整消息。在一個(gè)實(shí)施例中,客戶端應(yīng)用可以經(jīng)由多播服務(wù)設(shè)備客戶端,通過(guò)接收機(jī)設(shè)備上的http服務(wù)器來(lái)接收延遲調(diào)整消息。在方框1106中,客戶端應(yīng)用可以基于該延遲調(diào)整消息,對(duì)mpd中的一些或者所有分段的可用性時(shí)間進(jìn)行偏移。在一個(gè)實(shí)施例中,基于延遲調(diào)整消息對(duì)可用性時(shí)間進(jìn)行偏移可以包括:使用偏移的mpd可用性開始時(shí)間(availabilitystarttime)的指示和/或其它值,來(lái)調(diào)整每個(gè)分段在接收機(jī)設(shè)備上可用的時(shí)間。在一個(gè)實(shí)施例中,對(duì)可用性時(shí)間進(jìn)行偏移可以包括:修改mpd本身以生成修改的mpd。在另一個(gè)實(shí)施例中,對(duì)可用性時(shí)間進(jìn)行偏移可以涉及:在不修改mpd本身的情況下,改變分段在接收機(jī)設(shè)備上可用的時(shí)間的指示。在修改mpd的實(shí)施例中,在可選框1108中,客戶端應(yīng)用可以將修改后的mpd存儲(chǔ)在可用于該客戶端應(yīng)用的存儲(chǔ)器中。在方框1110中,客戶端應(yīng)用可以在經(jīng)偏移的mpd開始時(shí)間(availabilitystarttime),對(duì)分段進(jìn)行請(qǐng)求。
各種實(shí)施例(其包括但不限于上面參照?qǐng)D3a、3b、4、5、6a、6b、7、8、9a、9b和圖11所討論的實(shí)施例)可以在各種各樣的移動(dòng)設(shè)備(即,接收機(jī)設(shè)備)中的任何一種之中實(shí)現(xiàn),圖12示出了其一種例子。例如,移動(dòng)計(jì)算設(shè)備1200可以包括耦合到觸摸屏控制器1204和內(nèi)部存儲(chǔ)器1202的處理器1201。處理器1201可以是被設(shè)計(jì)為實(shí)現(xiàn)通用任務(wù)或特定處理任務(wù)的一個(gè)或多個(gè)多核集成電路(ic)。內(nèi)部存儲(chǔ)器1202可以是易失性存儲(chǔ)器或非易失性存儲(chǔ)器,還可以是安全和/或加密存儲(chǔ)器,或者非安全和/或非加密存儲(chǔ)器、或者其任意組合。此外,觸摸屏控制器1204和處理器1201還可以耦合到觸摸屏面板1212,例如,電阻式感應(yīng)觸摸屏、電容感應(yīng)觸摸屏、紅外線感測(cè)觸摸屏等等。移動(dòng)計(jì)算設(shè)備1200可以具有用于進(jìn)行發(fā)送和接收的一個(gè)或多個(gè)無(wú)線信號(hào)收發(fā)機(jī)1208(例如,
各種實(shí)施例(其包括但不限于上面參照?qǐng)D3a、3b、4、5、6a、6b、7、8、9a、9b、10a、10b和圖11所討論的實(shí)施例)還可以實(shí)現(xiàn)在各種各樣的市場(chǎng)上可買到的服務(wù)器設(shè)備中的任何一種上(例如,圖13中所示出的服務(wù)器1300)。通常,這種服務(wù)器1300包括耦合到易失性存儲(chǔ)器1302和大容量非易失性存儲(chǔ)器(例如,硬盤驅(qū)動(dòng)器1304)的處理器1301。此外,服務(wù)器1300還可以包括耦合到處理器1301的軟盤驅(qū)動(dòng)器、壓縮光盤(cd)或者dvd光盤驅(qū)動(dòng)器1306。此外,服務(wù)器1300還可以包括耦合到處理器1301的一個(gè)或多個(gè)網(wǎng)絡(luò)收發(fā)機(jī)1303(例如,網(wǎng)絡(luò)接入端口),以便與通信網(wǎng)絡(luò)1307(例如,耦合到其它通告系統(tǒng)計(jì)算機(jī)和服務(wù)器的局域網(wǎng)、互聯(lián)網(wǎng)、公眾交換電話網(wǎng)和/或蜂窩網(wǎng)絡(luò)(例如,cdma、tdma、gsm、pcs、3g、4g、lte或者任何其它類型的蜂窩網(wǎng)絡(luò)))建立網(wǎng)絡(luò)接口連接。
處理器1201和1301可以是能通過(guò)軟件指令(應(yīng)用)進(jìn)行配置,以執(zhí)行多種功能(其包括上面所描述的各種實(shí)施例的功能)的任何可編程的微處理器、微計(jì)算機(jī)或多個(gè)處理器芯片或芯片集。在一些設(shè)備中,可以提供多個(gè)處理器,例如,一個(gè)處理器專用于無(wú)線通信功能,一個(gè)處理器專用于運(yùn)行其它應(yīng)用。通常,在訪問(wèn)軟件應(yīng)用并將它們裝載到處理器1201和1301之前,可以將這些軟件應(yīng)用存儲(chǔ)在內(nèi)部存儲(chǔ)器中。處理器1201和1301可以包括足夠用于存儲(chǔ)這些應(yīng)用軟件指令的內(nèi)部存儲(chǔ)器。在很多設(shè)備中,內(nèi)部存儲(chǔ)器可以是易失性存儲(chǔ)器或者非易失性存儲(chǔ)器(例如,閃存)、或者二者的混合。為了便于說(shuō)明起見(jiàn),對(duì)于存儲(chǔ)器的引用通常指代:處理器1201和1301可訪問(wèn)的存儲(chǔ)器,其包括內(nèi)部存儲(chǔ)器或者插入在設(shè)備之中的可移動(dòng)存儲(chǔ)器、以及處理器1201和1301自身中的存儲(chǔ)器。
上述的方法描述和處理流程圖僅僅是用作為說(shuō)明性例子,而不是旨在要求或者隱含著必須以所給出的順序來(lái)執(zhí)行各個(gè)實(shí)施例的步驟。如本領(lǐng)域普通技術(shù)人員所應(yīng)當(dāng)理解的,可以以任何順序來(lái)執(zhí)行上述的實(shí)施例中的步驟順序。此外,諸如“其后”、“轉(zhuǎn)而”、“接著”等等之類的詞語(yǔ),并不旨在限制這些步驟的順序;這些詞語(yǔ)僅僅只是用于引導(dǎo)讀者遍歷該方法的描述。此外,任何對(duì)權(quán)利要求元素的單數(shù)引用(例如,使用冠詞“一個(gè)(a)”、“某個(gè)(an)”或者“該(the)”),不應(yīng)被解釋為將該元素限制為單數(shù)形式。
結(jié)合本文所公開的實(shí)施例描述的各種示例性的邏輯框、模塊、電路和算法步驟均可以實(shí)現(xiàn)成電子硬件、計(jì)算機(jī)軟件或二者的組合。為了清楚地表示硬件和軟件之間的這種可交換性,上面對(duì)各種示例性的部件、框、模塊、電路和步驟均圍繞其功能進(jìn)行了總體描述。至于這種功能是實(shí)現(xiàn)成硬件還是實(shí)現(xiàn)成軟件,取決于特定的應(yīng)用和對(duì)整個(gè)系統(tǒng)所施加的設(shè)計(jì)約束條件。熟練的技術(shù)人員可以針對(duì)每個(gè)特定應(yīng)用,以變通的方式實(shí)現(xiàn)所描述的功能,但是,這種實(shí)現(xiàn)決策不應(yīng)解釋為背離本發(fā)明的保護(hù)范圍。
用于執(zhí)行本文所述功能的通用處理器、數(shù)字信號(hào)處理器(dsp)、專用集成電路(asic)、現(xiàn)場(chǎng)可編程門陣列(fpga)或其它可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件部件或者其任意組合,可以用來(lái)實(shí)現(xiàn)或執(zhí)行結(jié)合本文所公開的方面描述的用于實(shí)現(xiàn)各種示例性的邏輯、邏輯框、模塊和電路的硬件。通用處理器可以是微處理器,或者,該處理器也可以是任何常規(guī)的處理器、控制器、微控制器或者狀態(tài)機(jī)。處理器也可以實(shí)現(xiàn)為計(jì)算設(shè)備的組合,例如,dsp和微處理器的組合、若干微處理器、一個(gè)或多個(gè)微處理器與dsp內(nèi)核的結(jié)合,或者任何其它此種結(jié)構(gòu)。替代地,一些步驟或方法可以由特定于給定的功能的電路來(lái)執(zhí)行。
在一個(gè)或多個(gè)示例性方面,本文所述功能可以用硬件、軟件、固件或它們?nèi)我饨M合的方式來(lái)實(shí)現(xiàn)。當(dāng)在軟件中實(shí)現(xiàn)時(shí),可以將這些功能存儲(chǔ)成非臨時(shí)性計(jì)算機(jī)可讀介質(zhì)或者非臨時(shí)性處理器可讀介質(zhì)上的一個(gè)或多個(gè)處理器可執(zhí)行指令或者計(jì)算機(jī)可執(zhí)行指令或代碼。本文所公開的方法或算法的步驟,可以體現(xiàn)在處理器可執(zhí)行軟件模塊中,后者可以位于非臨時(shí)性計(jì)算機(jī)可讀或者處理器可讀存儲(chǔ)介質(zhì)上。非臨時(shí)性服務(wù)器可讀、計(jì)算機(jī)可讀或者處理器可讀存儲(chǔ)介質(zhì)可以是計(jì)算機(jī)或處理器能夠存取的任何存儲(chǔ)介質(zhì)。舉例而言,但非做出限制,這種非臨時(shí)性服務(wù)器可讀介質(zhì)、計(jì)算機(jī)可讀或處理器可讀介質(zhì)可以包括ram、rom、eeprom、閃存、cd-rom或其它光盤存儲(chǔ)器、磁盤存儲(chǔ)器或其它磁存儲(chǔ)設(shè)備、或者能夠用于存儲(chǔ)具有指令或數(shù)據(jù)結(jié)構(gòu)形式的期望的程序代碼并能夠由計(jì)算機(jī)進(jìn)行存取的任何其它介質(zhì)。如本文所使用的,磁盤和光盤包括壓縮光盤(cd)、激光光盤、光盤、數(shù)字通用光盤(dvd)、軟盤和藍(lán)光光盤,其中磁盤通常磁性地復(fù)制數(shù)據(jù),而光盤則用激光來(lái)光學(xué)地復(fù)制數(shù)據(jù)。上述的組合也應(yīng)當(dāng)包括在非臨時(shí)性服務(wù)器可讀、計(jì)算機(jī)可讀和處理器可讀介質(zhì)的保護(hù)范圍之內(nèi)。另外,一種方法或算法的操作可以作為一個(gè)代碼和/或指令集或者其任意組合,位于非臨時(shí)性服務(wù)器可讀介質(zhì)、處理器可讀介質(zhì)和/或計(jì)算機(jī)可讀介質(zhì)上,其中該非臨時(shí)性服務(wù)器可讀介質(zhì)、處理器可讀介質(zhì)和/或計(jì)算機(jī)可讀介質(zhì)可以并入到計(jì)算機(jī)程序產(chǎn)品中。
為使本領(lǐng)域任何普通技術(shù)人員能夠?qū)崿F(xiàn)或者使用本發(fā)明,上面圍繞所公開的實(shí)施例進(jìn)行了描述。對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)說(shuō),對(duì)這些實(shí)施例的各種修改是顯而易見(jiàn)的,并且,本文定義的總體原理也可以在不脫離本發(fā)明的精神或保護(hù)范圍的基礎(chǔ)上應(yīng)用于其它實(shí)施例。因此,本發(fā)明并不限于本文所示出的實(shí)施例,而是與所附權(quán)利要求書和本文公開的原理和新穎性特征的最廣范圍相一致。