延遲減少的服務(wù)器干預(yù)式音頻-視頻通信的制作方法
【專利說明】延遲減少的服務(wù)器干預(yù)式音頻-視頻通信
【背景技術(shù)】
[0001] 1.技術(shù)領(lǐng)域
[0002] 本發(fā)明的領(lǐng)域設(shè)及通信,更具體地,設(shè)及用于音頻-視頻通信的平臺(tái)。 陽00引 2.相關(guān)技術(shù)描述
[0004] 諸如SKYPE?之類的互聯(lián)網(wǎng)服務(wù)實(shí)現(xiàn)了在兩個(gè)或更多個(gè)用戶之間的音頻或音 頻-視頻對話。使用服務(wù)器來發(fā)起對話W及對媒體類型的協(xié)商。用戶之間的實(shí)際音頻流或 視頻流在對等會(huì)話中傳遞而無需進(jìn)一步的服務(wù)器干預(yù)。 陽0化]在諸如SKYPE?之類的服務(wù)中,建立對等會(huì)話,W避免由于業(yè)務(wù)對服務(wù)器造成的過 載所導(dǎo)致的瓶頸,且避免通過服務(wù)器引入延遲。
[0006] iMessage?是一種允許用戶發(fā)送文本、圖片、視頻、聯(lián)系信息和組消息的服務(wù)。
[0007] AOL Instant Messager(AIM)是一種允許用戶實(shí)時(shí)通信的服務(wù)。
[0008] WhatsA卵TMMessager是一種用于智能電話的私有的、跨平臺(tái)即時(shí)消息服務(wù)。除了 文本消息之外,用戶還能夠向彼此發(fā)送圖像、視頻和語音媒體消息。
[0009] 傳統(tǒng)的無線頻率半雙工通信系統(tǒng)提供了從單個(gè)發(fā)射機(jī)到一個(gè)或多個(gè)接收機(jī)的通 信。在一個(gè)時(shí)間僅有一個(gè)發(fā)射方可W進(jìn)行廣播,因?yàn)橄嗤奈锢硇诺辣还蚕韥碛糜谙蛩?接收方進(jìn)行廣播。一旦接收機(jī)開始接收信號,由于物理信道不可用,接收方在答復(fù)之前就需 要等待發(fā)射機(jī)停止發(fā)射。
【發(fā)明內(nèi)容】
[0010] 本文公開了各種數(shù)據(jù)通信系統(tǒng),用于在被配置為客戶端計(jì)算機(jī)系統(tǒng)的多個(gè)計(jì)算機(jī) 系統(tǒng)之間的視頻通信。所述客戶端計(jì)算機(jī)系統(tǒng)中的一個(gè)(或多個(gè))在進(jìn)行發(fā)送時(shí)是客戶端 發(fā)射機(jī),所述客戶端計(jì)算機(jī)系統(tǒng)中的一個(gè)(或多個(gè))在進(jìn)行接收或消費(fèi)時(shí)是客戶端接收方。 客戶端發(fā)射機(jī)能夠發(fā)送或記錄視頻消息W用于在客戶端接收方上顯示??蛻舳税l(fā)射機(jī)被配 置為建立與視頻服務(wù)器的連接,并將視頻消息發(fā)送到視頻服務(wù)器。視頻服務(wù)器對視頻消息 進(jìn)行存檔。如果在視頻消息的傳輸開始期間客戶端接收方不可用而在視頻消息的傳輸期間 稍后客戶端接收方可用,則客戶端接收方能夠在視頻消息的傳輸仍然繼續(xù)進(jìn)行的同時(shí),從 視頻消息的開始處顯示視頻消息。
[0011] 客戶端計(jì)算機(jī)系統(tǒng)可W被配置為交替作為客戶端發(fā)射機(jī)和客戶端接收機(jī),并且交 替地發(fā)送和接收視頻內(nèi)容。
[0012] 管理服務(wù)器適于從客戶端發(fā)射機(jī)接收包含對客戶端接收方的參考的第一字符串, 并作為響應(yīng),向客戶端接收方發(fā)送包含對客戶端發(fā)射機(jī)的參考的第二字符串。響應(yīng)于第二 字符串,客戶端接收方被配置為向視頻服務(wù)器發(fā)送第=字符串。第=字符串參考所述視頻 消息,并且一旦視頻服務(wù)器接收到第=字符串,視頻服務(wù)器就將所述視頻消息發(fā)送到客戶 端接收方。
[0013]當(dāng)客戶端接收方不可用時(shí),客戶端接收方可W適于:在客戶端接收方稍后可用時(shí), 從視頻服務(wù)器的消息存檔中取回視頻消息。被配置為客戶端發(fā)射機(jī)的多個(gè)客戶端計(jì)算機(jī)系 統(tǒng)可W同時(shí)地向所述客戶端接收方發(fā)送各自的視頻消息。
[0014] 各種客戶端計(jì)算機(jī)系統(tǒng)和/或其軟件應(yīng)用可W被配置為在數(shù)據(jù)通信網(wǎng)絡(luò)中使用。 客戶端計(jì)算機(jī)系統(tǒng)和/或軟件應(yīng)用可W包括發(fā)射機(jī)模塊,發(fā)射機(jī)模塊被配置為:與視頻服 務(wù)器建立連接,向視頻服務(wù)器發(fā)送第一視頻消息,W及向管理服務(wù)器發(fā)送第一字符串??蛻?端計(jì)算機(jī)系統(tǒng)和/或軟件應(yīng)用可W包括接收機(jī)模塊,接收機(jī)模塊被配置為:向視頻服務(wù)器 發(fā)送第二字符串,接收第二視頻消息,并且顯示第二視頻消息。
[0015] 各種客戶端計(jì)算機(jī)系統(tǒng)和/或者其軟件應(yīng)用可W被配置為在數(shù)據(jù)通信網(wǎng)絡(luò)中使 用。管理服務(wù)器可W包括:管理接收機(jī)模塊,適于從客戶端發(fā)射機(jī)接收第一字符串;W及管 理發(fā)射機(jī)模塊,適于向客戶端接收方發(fā)送第二字符串。
[0016] 各種視頻服務(wù)器可W被配置為在數(shù)據(jù)通信網(wǎng)絡(luò)中使用。視頻服務(wù)器包括:網(wǎng)絡(luò)適 配器,配置為建立與客戶端發(fā)射機(jī)的連接,并接收視頻消息;W及視頻數(shù)據(jù)存儲(chǔ)設(shè)備,適于 對視頻消息進(jìn)行存檔。網(wǎng)絡(luò)適配器被配置為接收第=字符串,并響應(yīng)于第=字符串向客戶 端接收方發(fā)送視頻消息。
[0017] 本文公開了各種方法用來管理在多個(gè)計(jì)算機(jī)系統(tǒng)之間的視頻通信。所述客戶端計(jì) 算機(jī)系統(tǒng)中的一個(gè)(或多個(gè))在進(jìn)行發(fā)送時(shí)是客戶端發(fā)射機(jī),所述客戶端計(jì)算機(jī)系統(tǒng)中的 一個(gè)或多個(gè)在進(jìn)行接收或消費(fèi)時(shí)是客戶端接收方??蛻舳税l(fā)射機(jī)能夠發(fā)送視頻消息W用于 在客戶端接收方上顯示??蛻舳税l(fā)射機(jī)被配置為建立與視頻服務(wù)器的連接,并將視頻消息 發(fā)送到視頻服務(wù)器。視頻服務(wù)器對視頻消息進(jìn)行存檔。當(dāng)在視頻消息的傳輸開始期間客戶 端接收方不可用而在視頻消息的傳輸期間稍后客戶端接收方可用時(shí),客戶端接收方能夠在 視頻消息向視頻服務(wù)器的傳輸期間,從視頻消息的開始處顯示視頻消息。
[0018] 視頻消息可W由客戶端接收方接收并顯示。
[0019] 客戶端計(jì)算機(jī)系統(tǒng)可W被配置為交替作為客戶端發(fā)射機(jī)和客戶端接收機(jī),并且交 替地分別進(jìn)行發(fā)送和接收。
[0020] 客戶端接收方可W被選擇用來:在視頻消息正在向視頻服務(wù)器發(fā)送的同時(shí),接收 或消費(fèi)視頻消息??蒞自主地建立所述連接,而無需客戶端發(fā)射機(jī)用戶的干預(yù)。可W響應(yīng)于 先前安裝在客戶端發(fā)射機(jī)中的程序,通過監(jiān)視客戶端發(fā)射機(jī)用戶的動(dòng)作,來建立所述連接, 并且可W基于用戶的所述被監(jiān)視動(dòng)作來建立所述連接??蒞在無需預(yù)先通知客戶端接收方 用戶的情況下,執(zhí)行由客戶端接收方對第二字符串向視頻服務(wù)器的傳輸。
[0021] 通過在從客戶端發(fā)射機(jī)向視頻服務(wù)器發(fā)送視頻消息的同時(shí)從視頻服務(wù)器向客戶 端接收方發(fā)送視頻消息,從而減少延遲。
[0022] 可W用處理指令來編碼各種計(jì)算機(jī)可讀媒體,所述處理指令用于使得客戶端計(jì)算 機(jī)系統(tǒng)的處理器和/或視頻服務(wù)器的處理器和/或管理服務(wù)器的處理器執(zhí)行本文公開的方 法。
[0023] 通過結(jié)合附圖考慮W下詳細(xì)描述,上述各個(gè)方面和/或其他方面將會(huì)變得更為清 楚。
【附圖說明】
[0024] 在本文中W非限定性方式,借助于實(shí)例并僅參考附圖來描述本發(fā)明,在附圖中:
[00巧]圖1圖示了根據(jù)本發(fā)明的特征的移動(dòng)計(jì)算機(jī)系統(tǒng)的簡化框圖。
[00%] 圖2示出了根據(jù)本發(fā)明的特征的系統(tǒng)的簡化框圖。
[0027]圖3a、3b和4示出了根據(jù)本發(fā)明的特征的方法的流程圖。
[002引圖5圖示了根據(jù)本發(fā)明的特征,當(dāng)客戶端接收方可用時(shí)可W執(zhí)行的子過程。
[0029]圖6圖示了根據(jù)本發(fā)明的特征,當(dāng)在視頻消息的發(fā)送的初始時(shí)刻客戶端接收方不 可用時(shí)可W執(zhí)行的子過程。
[0030]圖7圖示了根據(jù)本發(fā)明的特征,客戶端發(fā)射機(jī)向客戶端接收方發(fā)送兩個(gè)消息的簡 化時(shí)序圖。
[0031] 圖8圖示了根據(jù)本發(fā)明的特征,在組線程的客戶端之間傳送的消息的時(shí)序圖。
[0032] 通過結(jié)合附圖考慮W下詳細(xì)描述,上述各個(gè)方面和/或其他方面將會(huì)變得更為清 楚。
【具體實(shí)施方式】
[0033] 現(xiàn)在將詳細(xì)地參考本發(fā)明的實(shí)施例,在附圖中圖示了本發(fā)明的實(shí)例,其中,類似的 參考數(shù)字在整個(gè)附圖中指代類似的元素。W下通過參考附圖描述了實(shí)施例,來解釋本發(fā)明。
[0034] 作為介紹,本發(fā)明的實(shí)施例旨在提供一種視頻通信系統(tǒng)和方法,其用戶體驗(yàn)類似 于無線電頻率通信中公知的半雙工通信(有時(shí)稱為"對講(walkie-ta化ie)"或"一鍵通 (push-to-ta化)")。使用諸如Skype?之類服務(wù)的"全雙工"會(huì)話的平均長度可W超過10 分鐘。根據(jù)所使用的網(wǎng)絡(luò)和實(shí)現(xiàn)方式,已有技術(shù)使用現(xiàn)有技術(shù)的視頻服務(wù)來發(fā)起視頻流所 需要的初始化時(shí)間范圍可W在10到30秒之間。該初始化時(shí)間在諸如Skype?之類的現(xiàn)有 技術(shù)的視頻服務(wù)中是可接受的。例如,假設(shè)10分鐘的視頻會(huì)話,30秒的初始化時(shí)間對于10 分鐘的會(huì)話而言僅是4. 76 %的開銷。本發(fā)明的實(shí)施例旨在適應(yīng)平均長度為20到30秒的音 頻和/或視頻消息或突發(fā)。用來傳送25秒的音頻和/或視頻消息的30秒初始化時(shí)間將會(huì) 是54. 5%的開銷,運(yùn)將是不接受的。因此,本發(fā)明的實(shí)施例中要解決的技術(shù)問題之一是:提 供"半雙工"通信系統(tǒng)的用戶體驗(yàn),同時(shí)最小化初始化時(shí)間和其他時(shí)間延遲,從而使得用戶 體驗(yàn)接近實(shí)時(shí)消息傳送。
[0035] 總之,本發(fā)明的實(shí)施例旨在一種音頻-視頻消息發(fā)送通信平臺(tái),其適于包含短音 頻-視頻消息突發(fā)(例如10-30秒長)的對話,并具有小于3到5秒的減少的初始化時(shí)間和 總體延遲。在初始化傳輸之后的1到2秒內(nèi),用戶正在記錄的視頻內(nèi)容已經(jīng)正在服務(wù)器中 進(jìn)行存檔,并且對于共享通信線程的所有用戶而言是可用的,或者正在由其進(jìn)行消費(fèi)。本發(fā) 明的實(shí)施例的用戶可W參與其他用戶來接近實(shí)時(shí)地共享視頻內(nèi)容。如果該用戶不可用,例 如不在線,則可W通過從存檔中流傳輸(streaming),來稍后消費(fèi)視頻內(nèi)容和消息。如果用 戶是目標(biāo)接收方,并且在傳輸開始時(shí)不可用而在隨后變得可用并由此進(jìn)入通信線程較晚, 則用戶可W從視頻內(nèi)容的傳輸開始時(shí)的線程開始處消費(fèi)視頻內(nèi)容,并參與到線程中,而不 會(huì)丟失該線程的開始。從存檔中進(jìn)行流傳輸使得多個(gè)用戶能夠同時(shí)向相同的接收方發(fā)送, 并且該接收方可W從全部用戶接收并消費(fèi)全部視頻內(nèi)容,例如,按照傳輸順序。
[0036] 在詳細(xì)解釋本發(fā)明的實(shí)施例之前,要理解的是,本發(fā)明在其應(yīng)用方面并不局限于 設(shè)計(jì)細(xì)節(jié)和在隨后的描述中所闡述的或附圖中所圖示的組件的排列。本發(fā)明能夠使用其他 實(shí)施例,或者能夠W各種方式實(shí)現(xiàn)或?qū)嵤?。此外,要理解的是,本文所用到的措辭和術(shù)語是 為了說明的目的,而不應(yīng)被視為對本發(fā)明的限定。
[0037] 現(xiàn)在參考附圖,圖I圖示了根據(jù)本發(fā)明的特征的移動(dòng)計(jì)算機(jī)系統(tǒng)100的簡化方框 圖。移動(dòng)計(jì)算機(jī)系統(tǒng)100可W通過蜂窩基站119連接到蜂窩網(wǎng)絡(luò)121。蜂窩通信模塊117 將處理器110連接到蜂窩網(wǎng)絡(luò)121。移動(dòng)計(jì)算機(jī)系統(tǒng)100還可W通過數(shù)據(jù)通信網(wǎng)絡(luò)106連 接到服務(wù)器205W及連接到服務(wù)器206。移動(dòng)計(jì)算機(jī)系統(tǒng)100包括處理器110,其連接到本 地?cái)?shù)據(jù)存儲(chǔ)設(shè)備101。數(shù)據(jù)通信模塊104可操作地將處理器110連接到數(shù)據(jù)通信網(wǎng)絡(luò)106。 音頻-視頻編碼器202和音頻-視頻解碼器204分別用于編碼和解碼從移動(dòng)計(jì)算機(jī)系統(tǒng)100 發(fā)送和由移動(dòng)計(jì)算機(jī)系統(tǒng)100接收的音頻-視頻內(nèi)容。音頻-視頻編碼器202和音頻-視 頻解碼器204的音頻-視頻內(nèi)容可W包括音頻或視頻,其包括多個(gè)通道,例如,立體視頻或 立體聲,其每一個(gè)包括左右音頻通道。移動(dòng)計(jì)算機(jī)系統(tǒng)100可W包括外圍輔助設(shè)備,諸如顯 示器109、全球定位系統(tǒng)(GP巧接收機(jī)107、相機(jī)105、麥克風(fēng)111、揚(yáng)聲器113、振動(dòng)器115、 加速計(jì)/重力傳感器(未示出)、近場通信(NF