背景
隨著計(jì)算技術(shù)的發(fā)展,越來越強(qiáng)大的移動(dòng)設(shè)備已經(jīng)變得可用。例如,智能電話以及其他計(jì)算設(shè)備已經(jīng)變得普及。此類設(shè)備的處理能力已導(dǎo)致開發(fā)出不同類型的功能性,諸如與數(shù)字個(gè)人助理相關(guān)功能性。
實(shí)現(xiàn)在各種移動(dòng)設(shè)備內(nèi)的數(shù)字個(gè)人助理具有交互式和內(nèi)置會(huì)話理解力以能夠?qū)τ脩魡栴}或語音命令作出響應(yīng)。然而,取決于正被使用的設(shè)備的類型,來自數(shù)字個(gè)人助理的這樣的響應(yīng)可能不是總是適當(dāng)?shù)?。例如,一些設(shè)備可能不具有觸摸屏,并且指令用戶觸摸或按壓屏幕上的按鈕的響應(yīng)可能不是可行的。
概述
提供本概述以便以簡化的形式介紹以下在詳細(xì)描述中進(jìn)一步描述的一些概念。本概述并不旨在標(biāo)識所要求保護(hù)主題的關(guān)鍵特征或必要特征,也不旨在用于限制所要求保護(hù)主題的范圍。
根據(jù)一個(gè)或多個(gè)方面,一種用于提供數(shù)字個(gè)人助理響應(yīng)的方法可包括由與多個(gè)反應(yīng)型代理相關(guān)聯(lián)的數(shù)字個(gè)人助理接收發(fā)起與計(jì)算設(shè)備內(nèi)的數(shù)字個(gè)人助理的對話的用戶輸入。響應(yīng)于接收到該輸入,可從多個(gè)可用操作模式中檢測計(jì)算設(shè)備的操作模式??苫诮邮盏降妮斎雭磉x擇多個(gè)反應(yīng)型代理中的一個(gè)反應(yīng)型代理。可訪問與所選的反應(yīng)型代理相關(guān)聯(lián)的多個(gè)響應(yīng)串。至少基于計(jì)算設(shè)備的操作模式和/或至少一個(gè)硬件特性選擇多個(gè)響應(yīng)串中的至少一個(gè)響應(yīng)串。在對話期間提供多個(gè)響應(yīng)串中所選的至少一個(gè)響應(yīng)串作為對用戶輸入的響應(yīng)。
根據(jù)一個(gè)或多個(gè)方面,包括處理器、存儲(chǔ)器和話筒的計(jì)算設(shè)備可被適配成執(zhí)行一種用于提供數(shù)字個(gè)人助理響應(yīng)的方法。該方法包括由數(shù)字個(gè)人助理接收由用戶生成的輸入(例如,文本、語音、觸覺等),其中該輸入可經(jīng)由話筒來接收(在數(shù)字語音輸入的實(shí)例中)。響應(yīng)于接收到該輸入,檢測計(jì)算設(shè)備的操作模式和/或至少一個(gè)硬件特性。選擇與數(shù)字個(gè)人助理的反應(yīng)型代理相關(guān)聯(lián)的多個(gè)響應(yīng)串中的至少一個(gè)響應(yīng)串以及多個(gè)響應(yīng)串中的該至少一個(gè)響應(yīng)串的呈現(xiàn)模式。對多個(gè)響應(yīng)串中的至少一個(gè)響應(yīng)串以及呈現(xiàn)模式的選擇可至少基于操作模式和/或至少一個(gè)硬件特性??墒褂迷摮尸F(xiàn)模式來提供多個(gè)響應(yīng)串中的該至少一個(gè)響應(yīng)串作為對數(shù)字語音輸入的響應(yīng)。
根據(jù)一個(gè)或多個(gè)方面,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可包括指令,這些指令在執(zhí)行之際,使得計(jì)算機(jī)系統(tǒng)通過在該計(jì)算機(jī)系統(tǒng)上運(yùn)行的第三方應(yīng)用來接收由用戶生成的輸入。該輸入可包括數(shù)字語音輸入、通過例如打字接收的文本輸入和/或任何其他類型的用戶輸入(例如,觸覺輸入)。數(shù)字語音輸入可通過話筒來接收。話筒可以是計(jì)算機(jī)系統(tǒng)內(nèi)的內(nèi)置式話筒、可通過有線連接連接(附連)到計(jì)算機(jī)系統(tǒng)的可拆卸話筒、無線地耦合到計(jì)算機(jī)系統(tǒng)的遠(yuǎn)程監(jiān)聽設(shè)備(例如,具有話筒的藍(lán)牙耳機(jī))和/或具有話筒和/或揚(yáng)聲器能力的伴隨設(shè)備(例如,智能手表)。在數(shù)字語音輸入被使用時(shí)的實(shí)例中,使用數(shù)字語音輸入的自然語言處理被執(zhí)行以確定用戶語音請求。用戶語音請求與由在計(jì)算機(jī)系統(tǒng)上運(yùn)行的應(yīng)用執(zhí)行的一個(gè)或多個(gè)功能性相關(guān)聯(lián)。應(yīng)用包括用于執(zhí)行一個(gè)或多個(gè)功能性的一個(gè)或多個(gè)反應(yīng)型代理??蛇x擇一個(gè)或多個(gè)反應(yīng)型代理中的一個(gè)反應(yīng)型代理來執(zhí)行一個(gè)或多個(gè)功能性。由應(yīng)用請求標(biāo)識計(jì)算機(jī)系統(tǒng)的操作模式和至少一個(gè)硬件特性的信息,該請求使用api請求。響應(yīng)于api請求,接收標(biāo)識計(jì)算機(jī)系統(tǒng)的操作模式和/或至少一個(gè)硬件特性的信息。選擇與所選的第三方反應(yīng)型代理相關(guān)聯(lián)的多個(gè)響應(yīng)串中的至少一個(gè)響應(yīng)串以及多個(gè)響應(yīng)串中的該至少一個(gè)響應(yīng)串的呈現(xiàn)模式。對多個(gè)響應(yīng)串中的至少一個(gè)響應(yīng)串以及呈現(xiàn)模式的選擇可至少基于操作模式和/或至少一個(gè)硬件特性。可使用該呈現(xiàn)模式來提供多個(gè)響應(yīng)串中的該至少一個(gè)響應(yīng)串作為對用戶語音請求的響應(yīng)。
如本文所述的,各種其它特征和優(yōu)點(diǎn)可按照需要被結(jié)合到所述技術(shù)中。
附圖簡述
圖1是解說根據(jù)本公開的示例實(shí)施例的用于跨具有不同設(shè)備能力的諸計(jì)算設(shè)備縮放數(shù)字個(gè)人助理代理的示例架構(gòu)的框圖。
圖2是解說根據(jù)本公開的示例實(shí)施例的具有在圖1的架構(gòu)中使用的縮放服務(wù)的示例反應(yīng)型代理的框圖。
圖3是解說根據(jù)本公開的示例實(shí)施例的具有示例設(shè)備操作模式和對應(yīng)的輸出串的表的框圖。
圖4是根據(jù)本公開的示例實(shí)施例的使用可被縮放的應(yīng)用反應(yīng)型代理的計(jì)算設(shè)備的框圖。
圖5-7是解說根據(jù)一個(gè)或多個(gè)實(shí)施例的跨諸設(shè)備縮放數(shù)字個(gè)人助理代理的流程圖。
圖8是解說可結(jié)合其來實(shí)現(xiàn)此處描述的創(chuàng)新的示例移動(dòng)計(jì)算設(shè)備的框圖。
圖9是可用于實(shí)現(xiàn)所描述的一些實(shí)施例的示例計(jì)算系統(tǒng)的示圖。
詳細(xì)描述
如本文中所描述的,各種技術(shù)和解決方案可被應(yīng)用來跨諸設(shè)備縮放數(shù)字個(gè)人助理反應(yīng)型代理。更具體地,在檢測到用戶輸入(例如,用于語音控制數(shù)字個(gè)人助理的語音輸入、諸如鍵入打字輸入之類的文本輸入、觸覺輸入等)之際,反應(yīng)型代理可被選擇來幫助執(zhí)行與設(shè)備功能性相關(guān)聯(lián)并通過該用戶輸入觸發(fā)的任務(wù)。數(shù)字個(gè)人助理(或代理)可隨后使用當(dāng)前設(shè)備操作模式和一個(gè)或多個(gè)設(shè)備能力(例如,諸如硬件特性之類的一個(gè)或多個(gè)設(shè)備特征或特性)來定制響應(yīng)于該用戶輸入而發(fā)起的語音響應(yīng)對話。響應(yīng)串可基于設(shè)備操作模式和/或一個(gè)或多個(gè)設(shè)備能力來選擇。此外,用于呈現(xiàn)響應(yīng)串的呈現(xiàn)模式(例如,純音頻、純顯示、音頻/顯示組合、響應(yīng)串有多詳細(xì)等)可基于設(shè)備操作模式和/或一個(gè)或多個(gè)設(shè)備能力來定制。就此而言,通過使用該設(shè)備類型的硬件能力以及用戶在與數(shù)字個(gè)人助理進(jìn)行交互時(shí)可能如何參與(例如,基于設(shè)備操作模式),數(shù)字個(gè)人助理可提供針對正在特定操作模式中使用的特定設(shè)備定制的更相關(guān)及高效的響應(yīng)體驗(yàn)。
如本文中所使用的,術(shù)語“反應(yīng)型代理”指代可被數(shù)字個(gè)人助理用來實(shí)現(xiàn)與設(shè)備功能性相關(guān)聯(lián)的一個(gè)或多個(gè)響應(yīng)對話(例如,語音、文本和/或觸覺響應(yīng))的數(shù)據(jù)/命令結(jié)構(gòu)。該設(shè)備功能性(例如,電子郵件收發(fā)、消息收發(fā)等)可由到數(shù)字個(gè)人助理的用戶輸入(例如,語音命令)來激活。反應(yīng)型代理(或代理)可使用語音代理定義(vad)或反應(yīng)型代理定義(rad)xml文檔以及用于驅(qū)動(dòng)該代理來通過對話的編程代碼(例如,c++代碼)來定義。
圖1是解說根據(jù)本公開的示例實(shí)施例的用于跨具有不同設(shè)備能力的諸計(jì)算設(shè)備縮放數(shù)字個(gè)人助理代理的示例架構(gòu)100的框圖。參考圖1,架構(gòu)100可包括計(jì)算設(shè)備102、…、104,其中每一計(jì)算設(shè)備分別具有特定設(shè)備能力(或特性),諸如120、…、121。計(jì)算設(shè)備102、…、104可包括臺(tái)式計(jì)算機(jī)、膝上型計(jì)算機(jī)、上網(wǎng)本、平板計(jì)算機(jī)、智能電話或可執(zhí)行操作系統(tǒng)(例如,106、...、107)和數(shù)字個(gè)人助理108(其可以是語音控制的數(shù)字個(gè)人助理)的其他計(jì)算設(shè)備。盡管數(shù)字個(gè)人助理108被示為被安裝在計(jì)算設(shè)備102上,但本公開不限于此。例如,伴隨設(shè)備(例如,智能手表)可與其上安裝有數(shù)字個(gè)人助理的另一設(shè)備(例如電話)通信。在該情況下,盡管伴隨設(shè)備沒有數(shù)字個(gè)人助理被安裝在該設(shè)備上,但通過依賴于由安裝在第二設(shè)備(即,電話)上的數(shù)字個(gè)人助理提供的信息(例如,響應(yīng)串),它仍可利用本文中描述的功能性。數(shù)字個(gè)人助理也可以是云環(huán)境中的服務(wù)器的一部分,該服務(wù)器可由云環(huán)境中的多個(gè)其他設(shè)備訪問。
計(jì)算設(shè)備102、…、104中的每一者都可使用數(shù)字個(gè)人助理(dpa)108。dpa108可包括合適的邏輯、電路系統(tǒng)、接口和/或代碼,并且可用于使用一個(gè)或多個(gè)反應(yīng)型代理(ra),諸如ra110、…、114。ra可被用于執(zhí)行一個(gè)或多個(gè)功能性,該一個(gè)或多個(gè)功能性可由到dpa108的用戶輸入(例如,語音輸入)觸發(fā)。例如,ra110可以是電子郵件代理,該電子郵件代理可基于用戶語音命令被用于打開新的電子郵件窗口、基于語音輸入來創(chuàng)作電子郵件以及向由語音輸入指定的電子郵件地址發(fā)送電子郵件。ra110、…、114也可被用來在用dpa108發(fā)起的對話會(huì)話期間基于用戶輸入提供一個(gè)或多個(gè)響應(yīng)(例如,音頻/視頻/觸覺響應(yīng))。更具體地,ra110、…、114和dpa108可使用縮放服務(wù)116來獲得模式/設(shè)備適當(dāng)響應(yīng)(mdar)126、…、130和132、…、136。mdar可以是基于設(shè)備操作模式和/或一個(gè)或多個(gè)設(shè)備特性/能力選擇的響應(yīng)(諸如,響應(yīng)串)。
在示例實(shí)現(xiàn)中,響應(yīng)串和/或這樣的響應(yīng)的呈現(xiàn)模式的選擇可進(jìn)一步基于其他因素,諸如用戶距設(shè)備的距離、用戶的姿態(tài)(例如,正躺著、正坐著還是正站著)、用戶周圍的社交環(huán)境的知識(例如,存在另一用戶嗎)、噪聲水平和當(dāng)前用戶活動(dòng)(例如,用戶處于活躍的會(huì)話還是正執(zhí)行物理活動(dòng))。例如,用戶主動(dòng)參與計(jì)算設(shè)備的當(dāng)前可用性可基于關(guān)于用戶的當(dāng)前活動(dòng)的知識來確定(例如,設(shè)備可通過檢測用戶的語音來檢測用戶當(dāng)前參與了會(huì)話;設(shè)備可檢測到用戶正活躍地移動(dòng),從而指示物理活動(dòng)并且因此用戶不可用于看著設(shè)備屏幕;設(shè)備可檢測到?jīng)]有移動(dòng),從而指示用戶不在移動(dòng)并且完全參與該設(shè)備可以是可能的)。
用戶距設(shè)備的距離可基于例如在用戶經(jīng)由免提與設(shè)備通信時(shí)接收到的信號強(qiáng)度來確定。如果確定用戶超出閾值距離,則該設(shè)備可認(rèn)為該屏幕對用戶是不可見的,并且因此不可用。在該實(shí)例中,mdar可被選擇,并且恰當(dāng)?shù)某尸F(xiàn)模式可被進(jìn)一步修改(例如,純音頻呈現(xiàn)模式可被選擇)。
縮放服務(wù)116可包括合適的邏輯、電路系統(tǒng)、接口和/或代碼,并可用于基于設(shè)備操作模式信息(例如,118、…、119)和/或設(shè)備能力(或設(shè)備特性)信息(例如,120、…、121)來生成mdar126、…、130。更具體地,縮放服務(wù)116可確定當(dāng)前活躍(例如,處于與使用dpa108的用戶的對話中)的反應(yīng)型代理,并可訪問與反應(yīng)型代理相關(guān)聯(lián)的多個(gè)響應(yīng)串(或可用對話響應(yīng),例如在圖2中看見的)。縮放服務(wù)116可隨后基于設(shè)備操作模式118和/或設(shè)備能力120來縮放響應(yīng)(例如,通過選擇適當(dāng)?shù)捻憫?yīng))。例如,計(jì)算設(shè)備102和104可具有不同的設(shè)備能力/特性(120和121;例如不同的設(shè)備形狀因素)。在該情況下,縮放服務(wù)116將分別為諸相同的反應(yīng)型代理110、…、114選擇不同的模式/設(shè)備適當(dāng)響應(yīng)132、...、136。在設(shè)備操作模式118和/或設(shè)備能力120不可用時(shí)的實(shí)例中,則默認(rèn)響應(yīng)(例如,圖2中的202)可被選擇。
盡管縮放設(shè)備116是與ra和dpa108分開地解說的,但本公開不限于此。在一示例實(shí)施例中,縮放設(shè)備可被實(shí)現(xiàn)為諸反應(yīng)型代理中的一者或多者的一部分和/或數(shù)字個(gè)人助理108的一部分。附加地,盡管反應(yīng)型代理110、…、114被解說為本機(jī)代理(即,被實(shí)現(xiàn)在計(jì)算設(shè)備102、…、104內(nèi)),諸反應(yīng)型代理中的一者或多者可被實(shí)現(xiàn)在計(jì)算設(shè)備外部(例如,在云環(huán)境中的服務(wù)器計(jì)算機(jī)中,其可由計(jì)算設(shè)備102、…、104經(jīng)由一個(gè)或多個(gè)通信網(wǎng)絡(luò)來訪問)。
圖2是解說根據(jù)本公開的示例實(shí)施例的具有在圖1的架構(gòu)中使用的縮放服務(wù)的示例反應(yīng)型代理的框圖。參考圖2,示例反應(yīng)型代理200是與(在圖1中解說的)數(shù)字個(gè)人助理108相關(guān)聯(lián)的反應(yīng)型代理。與反應(yīng)型代理200分開地實(shí)現(xiàn)的縮放服務(wù)116被通信地耦合到響應(yīng)數(shù)據(jù)庫212和用戶界面(u/i)引擎214。
縮放服務(wù)116也可包括語音平臺(tái)211,語音平臺(tái)211可包括合適的邏輯、電路系統(tǒng)、接口和/或代碼,并可用于執(zhí)行對信息的語音到文本和文本到語音處理。語音平臺(tái)211可任選地被實(shí)現(xiàn)在縮放服務(wù)116外部。在計(jì)算設(shè)備102上運(yùn)行的一個(gè)或多個(gè)應(yīng)用(例如,諸如圖4中的應(yīng)用402之類的第三方應(yīng)用)以及數(shù)字個(gè)人助理108可使用語音平臺(tái)211與縮放服務(wù)116以及諸反應(yīng)型代理110、…、114中的一者或多者交互。就此而言,語音平臺(tái)211抽象化與設(shè)備102和/或dpa108的反應(yīng)型代理的通信。設(shè)備模式信息210和/或設(shè)備能力信息208可最初被提供給語音平臺(tái)211,并隨后被傳遞給縮放服務(wù)116以在從數(shù)據(jù)庫212獲得模式/設(shè)備適當(dāng)響應(yīng)時(shí)使用。
在操作中,用戶可通過提供用戶輸入來發(fā)起與數(shù)字個(gè)人助理108的對話。該輸入可包括數(shù)字語音輸入、通過例如打字接收的文本輸入和/或任何其他用戶輸入(例如,觸覺輸入)。數(shù)字語音輸入可通過話筒來接收。話筒可以是計(jì)算機(jī)系統(tǒng)內(nèi)的內(nèi)置式話筒、可通過有線連接連接(附連)到計(jì)算機(jī)系統(tǒng)的可拆卸話筒、無線地耦合到計(jì)算機(jī)系統(tǒng)的遠(yuǎn)程監(jiān)聽設(shè)備(例如,具有話筒的藍(lán)牙耳機(jī))和/或具有話筒和/或揚(yáng)聲器能力的伴隨設(shè)備(例如,智能手表)。在數(shù)字語音輸入被使用時(shí)的實(shí)例中,使用數(shù)字語音輸入的自然語言處理(例如,由語音平臺(tái)211進(jìn)行)被執(zhí)行以確定用戶語音請求。用戶語音請求可與由數(shù)字個(gè)人助理和/或計(jì)算設(shè)備上運(yùn)行的應(yīng)用執(zhí)行的一個(gè)或多個(gè)功能性相關(guān)聯(lián)。數(shù)字個(gè)人助理和/或應(yīng)用可包括用于執(zhí)行該一個(gè)或多個(gè)功能性的一個(gè)或多個(gè)反應(yīng)型代理(例如,反應(yīng)型代理200)。
當(dāng)前設(shè)備操作模式210和/或設(shè)備能力/特性信息208可被傳達(dá)到語音平臺(tái)211和縮放服務(wù)116。設(shè)備能力/特性信息208可包括以下中的一者或多者:與計(jì)算設(shè)備相關(guān)聯(lián)的顯示器分辨率、顯示器類型/尺寸、顯示器可用性、音頻能力(例如,話筒可用性、揚(yáng)聲器可用性)、藍(lán)牙可用性和/或設(shè)備形狀因素。
例如,顯示器類型可包括全顯示類型(將對響應(yīng)串/回答的尺寸存在很少限制到?jīng)]有限制);擴(kuò)展顯示類型(可包括不是主設(shè)備顯示器的第二/附加顯示器,使得響應(yīng)串的多個(gè)版本可被用于可用顯示器中的每一者);受限/小顯示類型(具有小顯示器的設(shè)備,諸如不具有觸摸屏能力的移動(dòng)電話、可穿戴設(shè)備等);以及無顯示設(shè)備(該設(shè)備僅具有音頻能力,而沒有任何顯示器)。
音頻能力可包括文本到語音(tts)可用性(該設(shè)備能夠輸出將幫助給出用戶信息的音頻);無tts可用性(該設(shè)備不具有發(fā)聲/揚(yáng)聲器能力或者用戶已使揚(yáng)聲器靜音);以及純耳聽信號(earcon)可用性(例如,該設(shè)備可生成有限的聲音,諸如耳聽信號(或蜂鳴聲))。
圖3是解說根據(jù)本公開的示例實(shí)施例的具有示例設(shè)備操作模式和對應(yīng)的輸出串的表的框圖。參考圖3,列出了具有對應(yīng)的顯示輸出串312和/或音頻輸出串314的示例設(shè)備操作模式310。
設(shè)備操作模式310可包括純音頻模式316、完全參與模式322、半分心模式328和限制顯示模式334。盡管圖3中僅解說了四個(gè)操作模式(316、322、328和334),但本公開不限于此,并且其他操作模式和設(shè)備類型也可與本文中公開的技術(shù)一起使用。當(dāng)計(jì)算設(shè)備不具有物理顯示表面時(shí),或者當(dāng)設(shè)備顯示器不可用(例如,主顯示器被斷開連接并且次顯示器活躍)時(shí),可使用純音頻模式316。在主顯示器不活躍而次顯示器活躍的情況下,詳細(xì)的顯示串318可作為輸出被呈現(xiàn)。詳細(xì)的tts串320也可被呈現(xiàn)(例如,經(jīng)由揚(yáng)聲器)。
當(dāng)用戶在物理上在該設(shè)備旁邊(例如,在該設(shè)備前面)并且存在該用戶完全參與該設(shè)備的高可能性(例如,用戶在臺(tái)式計(jì)算機(jī)或膝上型計(jì)算機(jī)前面)時(shí),可使用完全參與模式322。在該情況下,低詳細(xì)顯示串324可被顯示和/或短tts串326可被呈現(xiàn)作為音頻輸出314。
當(dāng)用戶在計(jì)算設(shè)備附近,但用戶沒有完全參與該設(shè)備(例如,用戶正在駕駛,并且他旁邊有具有數(shù)字個(gè)人助理的移動(dòng)電話)時(shí),可使用半分心模式328。在該情況下,低詳細(xì)顯示串330可被顯示和/或中等詳細(xì)tts串332可被呈現(xiàn)作為音頻輸出314。
當(dāng)計(jì)算設(shè)備是具有受限顯示表面的次/外圍設(shè)備時(shí),可使用限制顯示模式334。在該情況下,短顯示串336可被顯示作為輸出串312。
顯示和音頻串的簡要概述在本文中被提供如下:
詳細(xì)的顯示串可以是旨在快速地概括作為回答來提供的信息的文本串。詳細(xì)的顯示串可以或可以不提供可預(yù)期作為回答的完整信息。這種類型的顯示串可與以下示例設(shè)備形狀因素或操作模式一起使用:不受可用面積限制但聲音關(guān)閉的顯示器、聲音被靜音或者音頻喪失的臺(tái)式機(jī)、電子布告板、具有純文本能力的可滾動(dòng)小屏幕和/或可穿戴設(shè)備的擴(kuò)展顯示器。
短的詳細(xì)串可以是文本串(例如,最多100個(gè)字符),并且可在語言方面支持有限的個(gè)性化,并且更針對工具應(yīng)用。這種類型的顯示串可與以下示例設(shè)備形狀因素或操作模式一起使用:諸如智能手表之類的可穿戴設(shè)備、恒溫器、智能計(jì)算器、烤箱、冰箱等。
低細(xì)節(jié)顯示串可以是作為對數(shù)字個(gè)人助理的用戶體驗(yàn)的支持串的文本串,并且該串可被用于攜帶非實(shí)質(zhì)信息。這種類型的顯示串可與以下示例設(shè)備形狀因素或操作模式一起使用:電話(當(dāng)用戶當(dāng)前正看著設(shè)備屏幕時(shí))、臺(tái)式計(jì)算機(jī)、具有智能設(shè)備/顯示能力的汽車、游戲控制臺(tái)等等。
詳細(xì)的tts音頻串可以是旨在快速地概括在與數(shù)字個(gè)人助理的對話期間作為回答來提供的信息的響應(yīng)串。這種類型的音頻tts串可與以下示例設(shè)備形狀因素或操作模式一起使用:處于純音頻模式的計(jì)算設(shè)備、在駕駛時(shí)使用的計(jì)算設(shè)備(如果駕駛時(shí)使用被檢測到,則設(shè)備可自動(dòng)切換到純音頻模式)、較老一代的智能設(shè)備或不具有智能電話能力的移動(dòng)設(shè)備等等。
中等詳細(xì)tts音頻串可提供有用的響應(yīng)信息,而無需響應(yīng)串與純音頻模式期間提供的響應(yīng)串一樣詳細(xì)。這種類型的音頻tts串可與以下示例設(shè)備形狀因素或操作模式一起使用:由分心的用戶使用的計(jì)算設(shè)備(例如,用戶使用另一設(shè)備,并且該用戶的移動(dòng)電話在桌子上該用戶旁邊)。
短tts音頻串(或純耳聽信號)可提供非常短的讀出。這種類型的音頻tts串可與以下示例設(shè)備形狀因素或操作模式一起使用:游戲控制臺(tái)、電視機(jī)、臺(tái)式計(jì)算機(jī)等等。
再次參考圖2,在語音平臺(tái)211接收到設(shè)備能力信息208和操作模式信息210后,該信息被用于訪問響應(yīng)數(shù)據(jù)庫212,并獲得一個(gè)或多個(gè)模式/設(shè)備適當(dāng)響應(yīng)218,諸如mdar204、…、206。此外,如果計(jì)算設(shè)備102使用第二顯示器(或者具有顯示/音頻/觸覺能力的另一外圍設(shè)備),則第二響應(yīng)串220也可被傳遞回給反應(yīng)型代理200,并隨后被傳遞到外圍設(shè)備(從數(shù)據(jù)庫212到外圍設(shè)備的直接通信也是可能的)。此外,縮放服務(wù)116可使用用戶界面引擎214來生成u/i(例如,htmlu/i)222,該u/i針對設(shè)備形狀因素和/或其他設(shè)備能力(例如,能力/特性208)進(jìn)行了優(yōu)化。
在一示例實(shí)施例中,反應(yīng)型代理200可結(jié)合多個(gè)設(shè)備來使用。例如,兩個(gè)計(jì)算設(shè)備可一起工作,其中一個(gè)設(shè)備作為主設(shè)備,且另一設(shè)備作為次/伴隨設(shè)備。在該情況下,代理(例如,200)可生成兩個(gè)響應(yīng)(例如,204和206),每種設(shè)備類型/模式一個(gè)響應(yīng)。
在設(shè)備操作模式信息210(和/或設(shè)備能力208中的一者或多者)對縮放服務(wù)116不可用時(shí)的實(shí)例中,則可提供默認(rèn)響應(yīng)202。默認(rèn)響應(yīng)202可能不知道設(shè)備能力,并且可被優(yōu)化以供在多個(gè)設(shè)備形狀因素中的使用(例如,用戶和用于發(fā)送文本消息的數(shù)字個(gè)人助理之間的對話交換可詢問消息接收方和消息內(nèi)容)。
圖4是根據(jù)本公開的示例實(shí)施例的使用可被縮放的應(yīng)用反應(yīng)型代理的計(jì)算設(shè)備的框圖。參考圖4,計(jì)算設(shè)備102可能正在運(yùn)行一個(gè)或多個(gè)應(yīng)用,諸如應(yīng)用(app)402。應(yīng)用402可以是例如第三方應(yīng)用或通過設(shè)備操作系統(tǒng)提供的本機(jī)應(yīng)用。應(yīng)用402可使用一個(gè)或多個(gè)應(yīng)用反應(yīng)型代理(ara),諸如ara404。在一示例實(shí)施例中,ara404可被實(shí)現(xiàn)為應(yīng)用402的一部分(或者在計(jì)算設(shè)備102外部,諸如通信地耦合到設(shè)備102的遠(yuǎn)程服務(wù)器)。當(dāng)與應(yīng)用402的用戶的對話被發(fā)起時(shí),ara404可用于生成由應(yīng)用402使用的響應(yīng)。就此而言,參考圖1-3描述的功能性中的一者或多者可對應(yīng)用402可用。
更具體地,應(yīng)用402可使用可縮放服務(wù)116(其也可被實(shí)現(xiàn)為應(yīng)用402的一部分)以提供模式/設(shè)備適當(dāng)響應(yīng)。例如,如果縮放服務(wù)116被實(shí)現(xiàn)在應(yīng)用402(或ara404)內(nèi),則api請求420可被用于請求模式和/或設(shè)備能力信息。設(shè)備模式信息118和/或設(shè)備能力信息120可被傳遞給應(yīng)用402以供縮放服務(wù)116使用(在縮放服務(wù)是應(yīng)用402的一部分時(shí)的實(shí)例中)。在與響應(yīng)數(shù)據(jù)庫(例如,212)和用戶界面引擎(例如,214)的通信后,模式/設(shè)備適當(dāng)響應(yīng)可被生成并被傳遞給應(yīng)用402或ara404以供應(yīng)用402使用。
在另一實(shí)施例中,ara404可被實(shí)現(xiàn)為設(shè)備本機(jī)代理110、…、114的一部分(如通過數(shù)字個(gè)人助理108內(nèi)的404的虛線指示的)。在該情況下,模式/設(shè)備適當(dāng)響應(yīng)(例如,414)可被生成,如參考圖1-3中的本機(jī)ra110、…、114描述的。mdar114可隨后被傳遞給tpa402以供在由應(yīng)用402的用戶發(fā)起的對話中使用。
圖5-7是解說根據(jù)一個(gè)或多個(gè)實(shí)施例的跨諸設(shè)備縮放數(shù)字個(gè)人助理代理的流程圖。參考圖1-3和5,示例方法500可始于502,這時(shí)計(jì)算設(shè)備102可接收發(fā)起與該計(jì)算設(shè)備內(nèi)的數(shù)字個(gè)人助理(例如,dpa108)的對話的用戶輸入。數(shù)字個(gè)人助理108可與多個(gè)反應(yīng)型代理(諸如,ra110、…、114)相關(guān)聯(lián)。在504,響應(yīng)于接收到該輸入,可從多個(gè)可用操作模式(例如,316、322、328和334)中檢測該計(jì)算設(shè)備的操作模式(例如,118)。在506,dpa108可基于接收到的輸入選擇多個(gè)反應(yīng)型代理中的一個(gè)反應(yīng)型代理(例如,110)。例如,這些ra中的一個(gè)ra可基于與接收到的用戶輸入相關(guān)聯(lián)的功能性的類型(例如,消息收發(fā)、電子郵件、導(dǎo)航等)來選擇。在508,縮放服務(wù)116(和/或反應(yīng)型代理)可訪問與所選的反應(yīng)型代理相關(guān)聯(lián)的多個(gè)響應(yīng)串(例如,數(shù)據(jù)庫212中的響應(yīng))。在510,縮放服務(wù)116可至少基于計(jì)算設(shè)備的操作模式(例如,118)和/或至少一個(gè)硬件特性(例如,設(shè)備能力/特性120中的一者或多者)來選擇多個(gè)響應(yīng)串中的至少一個(gè)響應(yīng)串。在512,縮放服務(wù)116可提供多個(gè)響應(yīng)串中被選的至少一個(gè)響應(yīng)串作為對用戶輸入的響應(yīng)。
參考圖1-3和6,示例方法600可起始于602,這時(shí)數(shù)字個(gè)人助理108可接收由用戶生成的數(shù)字語音輸入。數(shù)字語音輸入可通過計(jì)算設(shè)備102的話筒來接收。在604,響應(yīng)于接收到數(shù)字語音輸入,可檢測計(jì)算設(shè)備的操作模式(例如,118)和至少一個(gè)硬件特征(例如,120)。在606,縮放服務(wù)116可選擇與數(shù)字個(gè)人助理(例如,108)的反應(yīng)型代理(例如,ra110、…、114中的一個(gè)ra)相關(guān)聯(lián)的多個(gè)響應(yīng)串(例如,在響應(yīng)數(shù)據(jù)庫212內(nèi))中的至少一個(gè)響應(yīng)串。在608,縮放服務(wù)116可選擇針對多個(gè)響應(yīng)串中的該至少一個(gè)響應(yīng)串(例如,針對被傳遞給ra110的所返回的mdar126)的呈現(xiàn)模式(例如,如參考圖3所描述的)。對多個(gè)響應(yīng)串中的該至少一個(gè)響應(yīng)串和呈現(xiàn)模式的選擇可至少基于操作模式(118)和/或至少一個(gè)硬件特性(120)。在610,ra110、dpa108(和/或縮放服務(wù)116)可使用該呈現(xiàn)模式提供多個(gè)響應(yīng)串中的至少一個(gè)響應(yīng)串(例如,mdar126)作為對數(shù)字語音輸入的響應(yīng)。
參考圖1-4和7,示例方法700可起始于702,這時(shí)在計(jì)算機(jī)系統(tǒng)(例如,設(shè)備102)上運(yùn)行的應(yīng)用(例如,應(yīng)用402)可接收由用戶生成的數(shù)字語音輸入。數(shù)字語音輸入可通過計(jì)算設(shè)備102的話筒來接收。在704,計(jì)算設(shè)備102可執(zhí)行使用該數(shù)字語音輸入的自然語言處理以確定用戶語音請求(例如,自然語言處理可由與縮放服務(wù)116相關(guān)聯(lián)的語音平臺(tái)211來執(zhí)行)。用戶語音請求可與由在計(jì)算機(jī)系統(tǒng)(例如,設(shè)備102)上運(yùn)行的應(yīng)用(應(yīng)用402)執(zhí)行的一個(gè)或多個(gè)功能性相關(guān)聯(lián)。應(yīng)用(應(yīng)用402)可包括用于執(zhí)行該一個(gè)或多個(gè)功能性的一個(gè)或多個(gè)應(yīng)用反應(yīng)型代理(例如,ara404)。
在706,應(yīng)用402(和/或dpa108)可選擇用于執(zhí)行該一個(gè)或多個(gè)功能性的一個(gè)或多個(gè)應(yīng)用反應(yīng)型代理中的一個(gè)反應(yīng)型代理(例如,ara404可被選擇)。在708,應(yīng)用(應(yīng)用402)可使用api請求(例如,420)來請求標(biāo)識計(jì)算機(jī)系統(tǒng)的操作模式和/或至少一個(gè)硬件特性的信息。在710,響應(yīng)于該api請求420,可在應(yīng)用402處接收所請求的標(biāo)識計(jì)算機(jī)系統(tǒng)的操作模式(例如,118)和/或至少一個(gè)硬件特性(例如,120)的信息(例如,當(dāng)應(yīng)用402實(shí)現(xiàn)縮放服務(wù)116和/或dpa108的功能性時(shí),應(yīng)用402接收信息118和/或120)。在712,可選擇與所選的反應(yīng)型代理相關(guān)聯(lián)的多個(gè)響應(yīng)串中的至少一個(gè)響應(yīng)串(例如,可選擇mdar414)。在714,縮放服務(wù)116可選擇針對多個(gè)響應(yīng)串中的該至少一個(gè)響應(yīng)串的呈現(xiàn)模式。對多個(gè)響應(yīng)串中的該至少一個(gè)響應(yīng)串和呈現(xiàn)模式的選擇可至少基于操作模式(118)和/或至少一個(gè)硬件特性(120)。在716,可使用該呈現(xiàn)模式來提供多個(gè)響應(yīng)串中的該至少一個(gè)響應(yīng)串(mdar414)作為對用戶語音請求的響應(yīng)。
圖8是解說可結(jié)合其來實(shí)現(xiàn)本文中描述的創(chuàng)新的示例移動(dòng)計(jì)算設(shè)備的框圖。移動(dòng)設(shè)備800包括各種任選的硬件和軟件組件,其通常在802處示出。一般來說,移動(dòng)設(shè)備中的組件802可與該設(shè)備的任何其他組件通信,但出于容易說明的目的未示出所有連接。移動(dòng)設(shè)備800可以是各種計(jì)算設(shè)備(例如,蜂窩電話、智能電話、手持式計(jì)算機(jī)、膝上型計(jì)算機(jī)、筆記本計(jì)算機(jī)、平板設(shè)備、上網(wǎng)本、媒體播放器、個(gè)人數(shù)字助理(pda)、相機(jī)、攝像機(jī)等)中的任何一個(gè),并且可允許與諸如無線保真(wi-fi)、蜂窩、或衛(wèi)星網(wǎng)絡(luò)之類的一個(gè)或多個(gè)移動(dòng)通信網(wǎng)絡(luò)804進(jìn)行無線雙向通信。
所解說的移動(dòng)設(shè)備800可包括用于執(zhí)行如信號編碼、數(shù)據(jù)處理(包括分配權(quán)重和對諸如搜索結(jié)果之類的數(shù)據(jù)進(jìn)行排名)、輸入/輸出處理、電源控制和/或其他功能等任務(wù)的控制器或處理器810(例如,信號處理器、微處理器、asic、或其他控制和處理邏輯電路)。操作系統(tǒng)812控制各組件802的分配和使用,并且支持一個(gè)或多個(gè)應(yīng)用程序811。操作系統(tǒng)812可包括具有反應(yīng)型代理的數(shù)字個(gè)人助理813a以及縮放服務(wù)813b??s放服務(wù)813b和具有反應(yīng)型代理的數(shù)字個(gè)人助理813a可具有與如參考圖1-4所描述的縮放服務(wù)116、dpa108和反應(yīng)型代理(例如,110、…、114、404)的功能性相似的功能性。
所示的移動(dòng)設(shè)備800包括存儲(chǔ)器820。存儲(chǔ)器820可以包括不可移動(dòng)存儲(chǔ)器822和/或可移動(dòng)存儲(chǔ)器824。不可移動(dòng)存儲(chǔ)器822可以包括ram、rom、閃存、硬盤或者其他公知的存儲(chǔ)器存儲(chǔ)技術(shù)??梢苿?dòng)存儲(chǔ)器824可包括閃存或訂戶身份模塊(sim)卡——其在全球移動(dòng)通信系統(tǒng)(gsm)等通信系統(tǒng)中是眾所周知的,或者其他眾所周知的存儲(chǔ)器存儲(chǔ)技術(shù),諸如“智能卡”。存儲(chǔ)器820可用于存儲(chǔ)運(yùn)行操作系統(tǒng)812和應(yīng)用811的數(shù)據(jù)和/或代碼。示例數(shù)據(jù)可以包括要經(jīng)由一個(gè)或多個(gè)有線或無線網(wǎng)絡(luò)被發(fā)送至和/或接收自一個(gè)或多個(gè)網(wǎng)絡(luò)服務(wù)器或其他設(shè)備的網(wǎng)頁、文本、圖像、聲音文件、視頻數(shù)據(jù)或者其他數(shù)據(jù)集。存儲(chǔ)器820可用于存儲(chǔ)訂戶標(biāo)識符和設(shè)備標(biāo)識符,所述訂戶標(biāo)識符諸如國際移動(dòng)訂戶身份(imsi),所述設(shè)備標(biāo)識符諸如國際移動(dòng)設(shè)備標(biāo)識符(imei)。這種標(biāo)識符可以被發(fā)射至網(wǎng)絡(luò)服務(wù)器以標(biāo)識用戶和設(shè)備。
移動(dòng)設(shè)備800可支持一個(gè)或多個(gè)輸入設(shè)備830以及一個(gè)或多個(gè)輸出設(shè)備850,一個(gè)或多個(gè)輸入設(shè)備830為諸如觸摸屏832(例如,能夠捕捉手指輕擊輸入、手指姿勢輸入或虛擬鍵盤或小鍵盤的鍵擊輸入)、話筒834(例如,能夠捕捉語音輸入)、相機(jī)836(例如,能夠捕捉靜止圖片和/或視頻圖像)、物理鍵盤838、按鈕和/或跟蹤球840,一個(gè)或多個(gè)輸出設(shè)備850為諸如揚(yáng)聲器852和顯示器854。其他可能的輸出設(shè)備(未示出)可以包括壓電或其他觸覺輸出設(shè)備。一些設(shè)備可以用于多于一個(gè)輸入/輸出功能。例如,觸摸屏832和顯示器854可以在單個(gè)輸入/輸出設(shè)備內(nèi)被組合。移動(dòng)設(shè)備800可提供一個(gè)或多個(gè)自然用戶界面(nui)。例如,操作系統(tǒng)812或應(yīng)用811可包括多媒體處理軟件,諸如音頻/視頻播放器。
無線調(diào)制解調(diào)器860可被耦合至一個(gè)或多個(gè)天線(未示出),并且可支持處理器810與外置設(shè)備間的雙向通信,如本領(lǐng)域中充分理解的那樣。調(diào)制解調(diào)器860一般被示為并可包括例如用于通過移動(dòng)通信網(wǎng)絡(luò)804進(jìn)行長程通信的蜂窩式調(diào)制解調(diào)器、可兼容藍(lán)牙的調(diào)制解調(diào)器864、或用于通過外置的配備有藍(lán)牙的設(shè)備或者本地的無線數(shù)據(jù)網(wǎng)絡(luò)或路由器來進(jìn)行短程通信的可兼容wi-fi的調(diào)制解調(diào)器862。無線調(diào)制解調(diào)器860一般被配置成與一個(gè)或多個(gè)蜂窩網(wǎng)絡(luò)(諸如gsm網(wǎng)絡(luò))通信,用于單個(gè)蜂窩網(wǎng)絡(luò)內(nèi)、多個(gè)蜂窩網(wǎng)絡(luò)之間、或者在移動(dòng)設(shè)備和公共交換電話網(wǎng)(pstn)之間的數(shù)據(jù)和語音通信。
移動(dòng)設(shè)備可進(jìn)一步包括至少一個(gè)輸入/輸出端口880、電源882、衛(wèi)星導(dǎo)航系統(tǒng)接收機(jī)884(諸如全球定位系統(tǒng)(gps)接收機(jī))、傳感器886(諸如,用于檢測設(shè)備800的方向和運(yùn)動(dòng)并用于接收姿勢命令來作為輸入的加速度計(jì)、陀螺儀或紅外鄰近傳感器)、收發(fā)機(jī)888(用于無線發(fā)射模擬或數(shù)字信號)和/或物理連接器890,它可以是usb端口、ieee1394(火線)端口、和/或rs-232端口。所示的組件802不是必需的或所有都包括的,因?yàn)榭蓜h除所示的組件中的任何一個(gè)并可添加其他組件。
移動(dòng)設(shè)備可基于通過衛(wèi)星導(dǎo)航系統(tǒng)接收機(jī)884(例如,gps接收機(jī))接收到的信息來確定指示移動(dòng)設(shè)備的位置的位置數(shù)據(jù)。或者,移動(dòng)設(shè)備可以另一方式來確定指示移動(dòng)設(shè)備的位置的位置數(shù)據(jù)。例如,可以通過蜂窩網(wǎng)絡(luò)的各蜂窩塔之間的三角測量來確定移動(dòng)設(shè)備的位置。或者,可基于在移動(dòng)設(shè)備附近的wi-fi路由器的已知位置來確定移動(dòng)設(shè)備的位置??梢悦棵腌娀蛞云渌麨榛A(chǔ)來更新位置數(shù)據(jù),這取決于實(shí)現(xiàn)和/或用戶設(shè)置。不管位置數(shù)據(jù)的源如何,移動(dòng)設(shè)備都可以向地圖導(dǎo)航工具提供位置數(shù)據(jù)以供在地圖導(dǎo)航中使用。
作為客戶端計(jì)算設(shè)備,移動(dòng)設(shè)備800可以向服務(wù)器計(jì)算設(shè)備(例如,搜索服務(wù)器、路由服務(wù)器等)發(fā)送請求,并且作為回報(bào)從服務(wù)器計(jì)算設(shè)備接收地圖圖像、距離、方向、其他地圖數(shù)據(jù)、搜索結(jié)果(例如,基于指定搜索區(qū)域內(nèi)的poi搜索的poi)或其他數(shù)據(jù)。
移動(dòng)設(shè)備800可以是實(shí)現(xiàn)環(huán)境的一部分,在實(shí)現(xiàn)環(huán)境中各種類型的服務(wù)(例如,計(jì)算服務(wù))是通過計(jì)算“云”來提供的。例如,云可包括可位于中央或是分布式的計(jì)算設(shè)備集,其向經(jīng)由諸如因特網(wǎng)等網(wǎng)絡(luò)連接的各種類型的用戶和設(shè)備提供基于云的服務(wù)。一些任務(wù)(例如,處理用戶輸入和呈現(xiàn)用戶界面)可在本地計(jì)算設(shè)備(例如,連接的設(shè)備)上執(zhí)行,而其他任務(wù)(例如,對將在后繼處理中使用的數(shù)據(jù)的存儲(chǔ)、數(shù)據(jù)的加權(quán)和數(shù)據(jù)的排名)可在云中執(zhí)行。
雖然圖8示出了移動(dòng)設(shè)備800,但更一般地本文中描述的創(chuàng)新可以通過具有其他屏幕能力和設(shè)備形成因素的設(shè)備來實(shí)現(xiàn),諸如臺(tái)式計(jì)算機(jī)、電視屏幕或連接到電視機(jī)的設(shè)備(例如,機(jī)頂盒或游戲控制臺(tái))??捎稍仆ㄟ^服務(wù)提供商、或通過其他在線服務(wù)的提供商來提供服務(wù)。此外,由于本文中描述的技術(shù)可涉及音頻流傳輸,可能不需要或使用設(shè)備屏幕(在音頻/視頻內(nèi)容正被流傳輸?shù)骄哂幸曨l回放能力的多媒體端點(diǎn)設(shè)備時(shí)的實(shí)例中,可使用顯示器)。
圖9是可用于實(shí)現(xiàn)所描述的一些實(shí)施例的示例計(jì)算系統(tǒng)的示圖。計(jì)算系統(tǒng)900并不旨對使用范圍或功能提出任何限制,因?yàn)檫@些創(chuàng)新可以在不同的通用或?qū)S糜?jì)算系統(tǒng)中實(shí)現(xiàn)。
參考圖9,計(jì)算環(huán)境900包括一個(gè)或多個(gè)處理單元910、915和存儲(chǔ)器920、925。在圖9中,該基本配置930被包括在虛線內(nèi)。處理單元910、915執(zhí)行計(jì)算機(jī)可執(zhí)行的指令。處理單元可以是通用中央處理單元(cpu)、專用集成電路(asic)中的處理器或任意其它類型的處理器。在多處理系統(tǒng)中,多個(gè)處理單元執(zhí)行計(jì)算機(jī)可執(zhí)行指令以提高處理能力。例如,圖9示出中央處理單元910以及圖形處理單元或協(xié)處理單元915。有形存儲(chǔ)器920、925可以是可由(諸)處理單元存取的易失性存儲(chǔ)器(例如,寄存器、高速緩存、ram)、非易失性存儲(chǔ)器(例如,rom、eeprom、閃存等)或者兩者的某一組合。存儲(chǔ)器920、925以適合被(諸)處理單元執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的形式,存儲(chǔ)實(shí)現(xiàn)此處描述的一個(gè)或多個(gè)發(fā)明的軟件980。
計(jì)算系統(tǒng)還可具有附加的特征。例如,計(jì)算系統(tǒng)900包括存儲(chǔ)940、一個(gè)或多個(gè)輸入設(shè)備950、一個(gè)或多個(gè)輸出設(shè)備960以及一個(gè)或多個(gè)通信連接970。諸如總線、控制器或網(wǎng)絡(luò)之類的互連機(jī)制(未示出)將計(jì)算系統(tǒng)900的各組件互連。通常,操作系統(tǒng)軟件(未示出)為在計(jì)算系統(tǒng)900中執(zhí)行的其它軟件提供操作環(huán)境,并協(xié)調(diào)計(jì)算系統(tǒng)900的各組件的活動(dòng)。
有形存儲(chǔ)940可以是可移動(dòng)或不可移動(dòng)的,并包括磁盤、磁帶或磁帶盒、cd-rom、dvd或可用于儲(chǔ)存信息并可在計(jì)算系統(tǒng)900內(nèi)訪問的任何其他介質(zhì)。存儲(chǔ)器940存儲(chǔ)用于軟件980的指令,所述軟件980實(shí)現(xiàn)此處描述的一個(gè)或多個(gè)發(fā)明。
(諸)輸入設(shè)備950可以是觸摸輸入設(shè)備(諸如鍵盤、鼠標(biāo)、筆或跟蹤球)、語音輸入設(shè)備、掃描設(shè)備或向計(jì)算系統(tǒng)900提供輸入的另一設(shè)備。對于視頻編碼,(諸)輸入設(shè)備950可以是相機(jī)、視頻卡、tv調(diào)諧卡或接受模擬或數(shù)字形式的視頻輸入的類似設(shè)備,或?qū)⒁曨l樣本讀入計(jì)算系統(tǒng)900的cd-rom或cd-rw。(諸)輸出設(shè)備960可以是顯示器、打印機(jī)、揚(yáng)聲器、cd刻錄機(jī)或提供來自計(jì)算系統(tǒng)900的輸出的另一設(shè)備。
(諸)通信連接970允許在通信介質(zhì)上到另一計(jì)算實(shí)體的通信。通信介質(zhì)傳達(dá)諸如計(jì)算機(jī)可執(zhí)行指令、音頻或視頻輸入或輸出、或已調(diào)制數(shù)據(jù)信號中的其他數(shù)據(jù)之類的信息。已調(diào)制數(shù)據(jù)信號是使其一個(gè)或多個(gè)特征以在信號中編碼信息的方式設(shè)置或改變的信號。作為示例而非限制,通信介質(zhì)可以使用電的、光學(xué)的、rf或其它載體。
各創(chuàng)新可在計(jì)算機(jī)可執(zhí)行指令(諸如包括在程序模塊中的在目標(biāo)現(xiàn)實(shí)或虛擬處理器上在計(jì)算系統(tǒng)中執(zhí)行的那些計(jì)算機(jī)可執(zhí)行指令)的一般上下文中描述。一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、庫、對象、類、組件、數(shù)據(jù)結(jié)構(gòu)等。如各實(shí)施例中所描述的,這些程序模塊的功能可以被組合,或者在這些程序模塊之間拆分。針對各程序模塊的計(jì)算機(jī)可執(zhí)行指令可以在本地或分布式計(jì)算系統(tǒng)中執(zhí)行。
術(shù)語“系統(tǒng)”和“設(shè)備”在本文中被互換地使用。除非上下文明確指示,否則,術(shù)語并不暗示對計(jì)算系統(tǒng)或計(jì)算設(shè)備的類型的任何限制。一般說來,計(jì)算系統(tǒng)或計(jì)算設(shè)備可以是本地的或分布式的,并且可以包括具有實(shí)現(xiàn)本文中描述的功能的軟件的專用硬件和/或通用硬件的任意組合。
出于介紹的目的,本詳細(xì)描述使用了如“確定”和“使用”等術(shù)語來描述計(jì)算系統(tǒng)中的計(jì)算機(jī)操作。這些術(shù)語是對由計(jì)算機(jī)執(zhí)行的操作的高級抽象,且不應(yīng)與人類所執(zhí)行的動(dòng)作混淆。對應(yīng)于這些術(shù)語的實(shí)際的計(jì)算機(jī)操作取決于實(shí)現(xiàn)而不同。
盡管以特定的順序次序描述所公開方法的一些的操作以便于方便呈現(xiàn),但應(yīng)當(dāng)理解,這一描述方式包含重排,除非以下提出的具體語言要求特定的次序。例如,順序描述的操作可以在一些情況下并行地重排或同時(shí)執(zhí)行。此外,為簡潔起見,附圖可能不示出所公開的方法可以結(jié)合其他方法使用的各種方式。
所公開的方法中的任何方法可被實(shí)現(xiàn)為被存儲(chǔ)在一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上并在計(jì)算設(shè)備(例如任何可用計(jì)算設(shè)備,包括智能電話或其他包括計(jì)算硬件的移動(dòng)設(shè)備)上執(zhí)行的計(jì)算機(jī)可執(zhí)行指令或計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)是在計(jì)算環(huán)境內(nèi)可訪問的任何可用的有形介質(zhì)(例如,諸如dvd或cd之類的一個(gè)或多個(gè)光學(xué)介質(zhì)盤、易失性存儲(chǔ)器組件(諸如dram或sram)或非易失性存儲(chǔ)器組件(諸如閃存或硬件驅(qū)動(dòng)器))。作為示例并參考圖9,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括存儲(chǔ)器920和925以及存儲(chǔ)940。術(shù)語“計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)”不包括信號和載波。此外,術(shù)語“計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)”不包括通信連接(例如,970)。
用于實(shí)現(xiàn)所公開技術(shù)的計(jì)算機(jī)可執(zhí)行指令中的任一個(gè)以及在實(shí)現(xiàn)所公開的實(shí)施例期間創(chuàng)建和使用的任何數(shù)據(jù)可以被存儲(chǔ)在一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上。計(jì)算機(jī)可執(zhí)行指令可以是例如專用軟件應(yīng)用或者經(jīng)由web瀏覽器或其他軟件應(yīng)用(諸如遠(yuǎn)程計(jì)算應(yīng)用)訪問和下載的軟件應(yīng)用的一部分。這種軟件可以例如在單個(gè)本地計(jì)算機(jī)(例如,任何適當(dāng)?shù)纳虡I(yè)可購買計(jì)算機(jī))上或者使用一個(gè)或多個(gè)網(wǎng)絡(luò)計(jì)算機(jī)在網(wǎng)絡(luò)環(huán)境(例如,經(jīng)由互聯(lián)網(wǎng)、廣域網(wǎng)、局域網(wǎng)、客戶端-服務(wù)器網(wǎng)絡(luò)(諸如云計(jì)算網(wǎng)絡(luò))、或者其他這樣的網(wǎng)絡(luò))中執(zhí)行。
為清楚起見,僅描述了基于軟件的實(shí)現(xiàn)方式的特定所選方面。省略了本領(lǐng)域公知的其他細(xì)節(jié)。例如,應(yīng)當(dāng)理解,所公開的技術(shù)不限于任何具體的計(jì)算機(jī)語言或程序。例如,所公開的技術(shù)可以通過以c++、java、perl、javascript、adobeflash或者任何其他適當(dāng)?shù)木幊陶Z言編寫的軟件來實(shí)現(xiàn)。同樣,所公開的技術(shù)不限于任何特定的計(jì)算機(jī)或硬件類型。適當(dāng)計(jì)算機(jī)和硬件的特定細(xì)節(jié)是公知的,并且不需要在本公開中詳細(xì)提出。
而且,基于軟件的實(shí)施例(包括例如用于使計(jì)算機(jī)執(zhí)行所公開方法的任一種的計(jì)算機(jī)可執(zhí)行指令)中的任一者可以通過適當(dāng)?shù)耐ㄐ攀侄伪簧陷d、下載或遠(yuǎn)程地訪問。這種適當(dāng)?shù)耐ㄐ攀侄伟ɡ缁ヂ?lián)網(wǎng)、萬維網(wǎng)、內(nèi)聯(lián)網(wǎng)、軟件應(yīng)用、電纜(包括光纖電纜)、磁通信、電磁通信(包括rf、微波和紅外通信)、電子通信或者其他這樣的通信手段。
所公開的方法、裝置和系統(tǒng)不應(yīng)以任何方式被限制。相反,本公開針對各種公開的實(shí)施例(單獨(dú)和彼此的各種組合和子組合)的所有新穎和非顯而易見的特征和方面。所公開的方法、裝置和系統(tǒng)不限于任何具體方面或特征或它們的組合,所公開的實(shí)施例也不要求存在任一個(gè)或多個(gè)具體優(yōu)點(diǎn)或者解決問題。
來自任何示例的技術(shù)可以與在任何一個(gè)或多個(gè)其他示例中所描述的技術(shù)相組合。鑒于可應(yīng)用所公開的本技術(shù)的原理的許多可能的實(shí)施例,應(yīng)當(dāng)認(rèn)識到,所示實(shí)施例僅是所公開的技術(shù)的示例,并且不應(yīng)被用作是對所公開的技術(shù)的范圍的限制。相反,本公開的技術(shù)的范圍由后續(xù)的權(quán)利要求書的范圍和精神來覆蓋。