一種視頻通話方法、裝置和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及視頻領(lǐng)域,特別涉及一種視頻通話方法、裝置和系統(tǒng)。
【背景技術(shù)】
[0002]由于視頻通話的實時性以及較高的交互體驗,使得越來越多的用戶選擇即時視頻來實現(xiàn)自身的交互需求。
[0003]但是現(xiàn)有的即時視頻交互技術(shù)中,用戶間的視頻通話是建立在網(wǎng)絡(luò)環(huán)境基礎(chǔ)上的。傳統(tǒng)的視頻通話在網(wǎng)絡(luò)環(huán)境不通暢或者視頻通話用戶的視頻通話裝置運行不流暢時,視頻通話畫面會出現(xiàn)模糊、卡頓甚至直接視頻通話斷開的情況,從而降低了用戶體驗,尤其是用戶在視頻通話過程中的交互體驗。
【發(fā)明內(nèi)容】
[0004]為了滿足用戶在即時視頻交互過程中的交互體驗,尤其是網(wǎng)絡(luò)環(huán)境較差或者視頻通話裝置運行不流暢的場景下的交互體驗,本發(fā)明實施例提供了一種視頻通話方法、裝置和系統(tǒng)。所述技術(shù)方案如下:
[0005]第一方面,提供了一種視頻通話方法,所述方法包括:
[0006]在視頻通話過程中第一視頻通話裝置檢測是否發(fā)生第一默認事件,若是,則:
[0007]所述第一視頻通話裝置獲取當(dāng)前視頻幀和虛擬形象的標識符及虛擬形象標識符對應(yīng)的虛擬形象;
[0008]所述第一視頻通話裝置根據(jù)所述虛擬形象對所述當(dāng)前視頻幀進行裁剪,得到裁剪后的當(dāng)前視頻幀;
[0009]所述第一視頻通話裝置向所述第二視頻通話裝置發(fā)送所述裁剪后的當(dāng)前視頻幀和所述虛擬形象的標識符;
[0010]所述第二視頻通話裝置接收所述裁剪后的當(dāng)前視頻幀和虛擬形象的標識符,并根據(jù)所述虛擬形象的標識符獲取對應(yīng)的虛擬形象;以及
[0011]所述第二視頻通話裝置對所述裁剪后的當(dāng)前視頻幀和所述虛擬形象進行匹配,得到匹配后的當(dāng)前視頻幀,并顯示所述匹配后的當(dāng)前視頻幀。
[0012]結(jié)合第一方面,在第一種可能的實現(xiàn)方式中,所述第一默認事件包括網(wǎng)絡(luò)參數(shù)大于第一預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動。
[0013]結(jié)合第一方面,在第二種可能的實現(xiàn)方式中,所述第一默認事件包括用戶晃動所述第一視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0014]結(jié)合第一方面至第一方面的第二種任意一種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述方法包括:
[0015]在視頻通話過程中第一視頻通話裝置檢測是否發(fā)生第二默認事件,若是,則:所述第一視頻通話裝置獲取虛擬形象的動作和/或表情的標識符;
[0016]所述第一視頻通話裝置向第二視頻通話裝置發(fā)送所述虛擬形象的動作和/或表情的標識符;
[0017]所述第二視頻通話裝置接收所述虛擬形象的動作和/或表情的標識符;
[0018]所述第二視頻通話裝置根據(jù)接收的虛擬形象的動作和/或表情的標識符,獲取對應(yīng)的虛擬形象的動作和/或表情;以及
[0019]所述第二視頻通話裝置顯示所述虛擬形象的動作和/或表情。
[0020]結(jié)合第一方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述第二默認事件包括網(wǎng)絡(luò)參數(shù)大于第二預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動,其中,所述第二預(yù)設(shè)閾值大于所述第一預(yù)設(shè)閾值。
[0021]結(jié)合第一方面的第三種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述第二默認事件包括用戶晃動所述第一視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0022]結(jié)合第一方面至第一方面的第五種任意一種可能的實現(xiàn)方式,在第六種可能的實現(xiàn)方式中,所述第一視頻通話裝置向所述第二視頻通話裝置發(fā)送所述裁剪后的當(dāng)前視頻幀和所述虛擬形象的標識符之后,所述方法還包括:
[0023]所述第一視頻通話裝置檢測是否發(fā)生第三默認事件,若是,則:所述第一視頻通話裝置向所述第二視頻通話裝置發(fā)送所述當(dāng)前視頻幀;以及
[0024]所述第二視頻通話裝置接收并顯示所述當(dāng)前視頻幀。
[0025]結(jié)合第一方面的第六種可能的實現(xiàn)方式,在第七種可能的實現(xiàn)方式中,所述第三默認事件包括網(wǎng)絡(luò)參數(shù)小于或者等于所述第一預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動。
[0026]結(jié)合第一方面的第六種可能的實現(xiàn)方式,在第八種可能的實現(xiàn)方式中,所述第三默認事件包括用戶晃動所述第一視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0027]第二方面,提供了一種視頻通話裝置,所述裝置包括:
[0028]默認事件檢測模塊,用于在視頻通話過程中檢測是否發(fā)生第一默認事件;
[0029]視頻幀獲取模塊,用于在所述默認事件檢測模塊檢測到發(fā)生所述第一默認事件后,獲取當(dāng)前視頻幀;
[0030]虛擬形象標識符獲取模塊,用于在所述默認事件檢測模塊檢測到發(fā)生所述第一默認事件后,獲取虛擬形象的標識符;
[0031]第一虛擬形象獲取模塊,用于根據(jù)所述虛擬形象的標識符獲取對應(yīng)的第一虛擬形象;
[0032]裁剪模塊,用于根據(jù)所述第一虛擬形象對所述當(dāng)前視頻幀進行裁剪,得到裁剪后的當(dāng)前視頻幀;以及
[0033]發(fā)送模塊,用于向其他視頻通話裝置發(fā)送所述裁剪后的當(dāng)前視頻幀和所述虛擬形象的標識符;
[0034]結(jié)合第二方面,在第一種可能的實現(xiàn)方式中,所述裝置還包括:
[0035]接收模塊,用于接收來自所述其他視頻通話裝置的裁剪后的當(dāng)前視頻幀和虛擬形象的標識符;
[0036]第二虛擬形象獲取模塊,用于根據(jù)接收的虛擬形象的標識符獲取對應(yīng)的第二虛擬形象;
[0037]匹配模塊,用于對所述裁剪后的當(dāng)前視頻幀和所述第二虛擬形象進行匹配,得到匹配后的當(dāng)前視頻幀;以及
[0038]顯示模塊,用于顯示所述匹配后的當(dāng)前視頻幀。
[0039]結(jié)合第二方面,在第二種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測第一默認事件,所述第一默認事件包括網(wǎng)絡(luò)參數(shù)大于第一預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動。
[0040]結(jié)合第二方面,在第三種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測第一默認事件,所述第一默認事件包括用戶晃動所述視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0041]結(jié)合第二方面至第二方面的第三種任意一種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述默認事件檢測模塊還用于在視頻通話過程中檢測是否發(fā)生第二默認事件;
[0042]所述虛擬形象標識符獲取模塊還用于在所述默認事件檢測模塊檢測到發(fā)生所述第二默認事件后,獲取第一虛擬形象的動作和/或表情的標識符;
[0043]所述發(fā)送模塊還用于向其他視頻通話裝置發(fā)送所述第一虛擬形象的動作和/或表情的標識符;
[0044]所述接收模塊還用于接收來自其他視頻通話裝置的第二虛擬形象的動作和/或表情的標識符;以及
[0045]所述第二虛擬形象獲取模塊還用于根據(jù)接收的所述來自其他視頻通話裝置的所述第二虛擬形象的動作和/或表情的標識符獲取對應(yīng)的第二虛擬形象的動作和/或表情;
[0046]所述顯示模塊還用于顯示所述第二虛擬形象的動作和/或表情。
[0047]結(jié)合第二方面的第四種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測所述第二默認事件,所述第二默認事件包括網(wǎng)絡(luò)參數(shù)大于第二預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動,其中,所述第二預(yù)設(shè)閾值大于所述第一預(yù)設(shè)閾值。
[0048]結(jié)合第二方面的第四種可能的實現(xiàn)方式,在第六種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測所述第二默認事件,所述第二默認事件包括用戶晃動所述視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0049]結(jié)合第二方面至第二方面的第六種任意一種可能的實現(xiàn)方式,在第七種可能的實現(xiàn)方式中,所述默認事件檢測模塊還用于檢測是否發(fā)生第三默認事件,若是,則所述發(fā)送模塊還用于向其他視頻通話裝置發(fā)送所述當(dāng)前視頻幀;
[0050]所述接收模塊還用于接收來自其他視頻通話裝置的所述當(dāng)前視頻幀;以及[0051 ]所述顯示模塊還用于顯示接收的所述當(dāng)前視頻幀。
[0052]結(jié)合第二方面的第七種可能的實現(xiàn)方式,在第八種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測第三默認事件,所述第三默認事件包括網(wǎng)絡(luò)參數(shù)小于或者等于所述第一預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動。
[0053]結(jié)合第二方面的第七種可能的實現(xiàn)方式,在第九種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測第三默認事件,所述第三默認事件包括用戶晃動所述視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0054]第三方面,提供了一種視頻通話裝置,所述裝置包括存儲器、觸摸顯示屏、攝像頭、發(fā)送/接收模塊以及與所述存儲器、所述觸摸顯示屏、所述攝像頭、所述發(fā)送/接收模塊連接的處理器,其中,所述存儲器用于存儲一組程序代碼,所述處理器調(diào)用所述存儲器所存儲的程序代碼用于執(zhí)行以下操作:
[0055]在視頻通話過程中第一視頻通話裝置檢測是否發(fā)生第一默認事件,若是,則:
[0056]所述第一視頻通話裝置通過攝像頭獲取當(dāng)前視頻幀和虛擬形象的標識符及虛擬形象標識符對應(yīng)的虛擬形象;
[0057]所述第一視頻通話裝置根據(jù)所述虛擬形象對所述當(dāng)前視頻幀進行裁剪,得到裁剪后的當(dāng)前視頻幀;
[0058]所述第一視頻通話裝置通過發(fā)送/接收模塊向所述第二視頻通話裝置發(fā)送所述裁剪后的當(dāng)前視頻幀和所述虛擬形象的標識符;
[0059]所述第二視頻通話裝置通過發(fā)送/接收模塊接收所述裁剪后的當(dāng)前視頻幀和虛擬形象的標識符,并根據(jù)所述虛擬形象的標識符獲取對應(yīng)的虛擬形象;以及
[0060]所述第二視頻通話裝置對所述裁剪后的當(dāng)前視頻幀和所述虛擬形象進行匹配,得到匹配后的當(dāng)前視頻幀,并通過觸摸顯示屏顯示所述匹配后的當(dāng)前視頻幀。
[0061]結(jié)合第三方面,在第一種可能的實現(xiàn)方式中,所述處理器調(diào)用所述存儲器所存儲的程序代碼具體用于執(zhí)行以下操作:
[0062]所述第一默認事件包括網(wǎng)絡(luò)參數(shù)大于第一預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動。
[0063]結(jié)合第三方面,在第二種可能的實現(xiàn)方式中,所述處理器調(diào)用所述存儲器所存儲的程序代碼具體用于執(zhí)行以下操作:
[0064]所述第一默認事件包括用戶晃動所述第一視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0065]結(jié)合第三方面至第三方面的第二種任意一種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述處理器調(diào)用所述存儲器所存儲的程序代碼還用于執(zhí)行以下操作:
[0066]在視頻通話過程中第一視頻通話裝置檢測是否發(fā)生第二默認事件,若是,則:所述第一視頻通話裝置獲取虛擬形象的動作和/或表情的標識符;
[0067]所述第一視頻通話裝置通過發(fā)送/接收模塊向第二視頻通話裝置發(fā)送所述虛擬形象的動作和/或表情的標識符;
[0068]所述第二視頻通話裝置通過發(fā)送/接收模塊接收所述虛擬形象的動作和/或表情的標識符;
[0069]所述第二視頻通話裝置根據(jù)接收的虛擬形象的動作和/或表情的標識符,獲取對應(yīng)的虛擬形象的動作和/或表情;以及
[0070]所述第二視頻通話裝置通過觸摸顯示屏顯示所述虛擬形象的動作和/或表情。
[0071]結(jié)合第三方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述處理器調(diào)用所述存儲器所存儲的程序代碼具體用于執(zhí)行以下操作:
[0072]所述第二默認事件包括網(wǎng)絡(luò)參數(shù)大于第二預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動,其中,所述第二預(yù)設(shè)閾值大于所述第一預(yù)設(shè)閾值。
[0073]結(jié)合第三方面的第三種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述處理器調(diào)用所述存儲器所存儲的程序代碼具體用于執(zhí)行以下操作:
[0074]所述第二默認事件包括用戶晃動所述第一視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0075]結(jié)合第三方面至第三方面的第五種任意一種可能的實現(xiàn)方式,在第六種可能的實現(xiàn)方式中,所述處理器調(diào)用所述存儲器所存儲的程序代碼還用于執(zhí)行以下操作:
[0076]所述第一視頻通話裝置向通過發(fā)送/接收模塊所述第二視頻通話裝置發(fā)送所述裁剪后的當(dāng)前視頻幀和所述虛擬形象的標識符之后,所述方法還包括:
[0077]所述第一視頻通話裝置檢測是否發(fā)生第三默認事件,若是,則:所述第一視頻通話裝置向所述第二視頻通話裝置通過發(fā)送/接收模塊發(fā)送所述當(dāng)前視頻幀;以及
[0078]所述第二視頻通話裝置通過發(fā)送/接收模塊接收并通過觸摸顯示屏顯示所述當(dāng)前視頻幀。
[0079]結(jié)合第三方面的第六種可能的實現(xiàn)方式,在第七種可能的實現(xiàn)方式中,所述處理器調(diào)用所述存儲器所存儲的程序代碼具體用于執(zhí)行以下操作:
[0080]所述第三默認事件包括網(wǎng)絡(luò)參數(shù)小于或者等于所述第一預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動。
[0081]結(jié)合第三方面的第六種可能的實現(xiàn)方式,在第八種可能的實現(xiàn)方式中,所述處理器調(diào)用所述存儲器所存儲的程序代碼具體用于執(zhí)行以下操作:
[0082]所述第三默認事件包括用戶晃動所述第一視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0083]第四方面,提供了一種視頻通話系統(tǒng),所述系統(tǒng)包括第一視頻通話裝置和第二視頻通話裝置,其中,
[0084]所述第一視頻通話裝置包括:
[0085]默認事件檢測模塊,用于在視頻通話過程中檢測是否發(fā)生第一默認事件;
[0086]視頻幀獲取模塊,用于在所述默認事件檢測模塊檢測到發(fā)生所述第一默認事件后,獲取當(dāng)前視頻幀;
[0087]虛擬形象標識符獲取模塊,用于在所述默認事件檢測模塊檢測到發(fā)生所述第一默認事件后,獲取虛擬形象的標識符;
[0088]第一虛擬形象獲取模塊,用于根據(jù)所述虛擬形象的標識符獲取對應(yīng)的虛擬形象;
[0089]裁剪模塊,用于根據(jù)所述虛擬形象對所述當(dāng)前視頻幀進行裁剪,得到裁剪后的當(dāng)前視頻幀;
[0090]發(fā)送模塊,用于向第二視頻通話裝置發(fā)送所述裁剪后的當(dāng)前視頻幀和所述虛擬形象的標識符;
[0091 ]所述第二視頻通話裝置包括:
[0092]接收模塊,用于接收來自所述第一視頻通話裝置的所述裁剪后的當(dāng)前視頻幀和虛擬形象的標識符;
[0093]第二虛擬形象獲取模塊,用于根據(jù)所述虛擬形象的標識符獲取對應(yīng)的虛擬形象;
[0094]匹配模塊,用于對所述裁剪后的當(dāng)前視頻幀和所述虛擬形象進行匹配,得到匹配后的當(dāng)前視頻幀;以及
[0095]顯示模塊,用于顯示所述匹配后的當(dāng)前視頻幀。
[0096]結(jié)合第四方面,在第一種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測第一默認事件,所述第一默認事件包括網(wǎng)絡(luò)參數(shù)大于第一預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動。
[0097]結(jié)合第四方面,在第二種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測第一默認事件,所述第一默認事件包括用戶晃動所述視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0098]結(jié)合第四方面至第四方面的第二種任意一種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述默認事件檢測模塊還用于在視頻通話過程中檢測是否發(fā)生第二默認事件;
[0099]所述虛擬形象標識符獲取模塊還用于在所述默認事件檢測模塊檢測到發(fā)生所述第二默認事件后,獲取虛擬形象的動作和/或表情的標識符;
[0100]所述發(fā)送模塊還用于向所述第二視頻通話裝置發(fā)送所述虛擬形象的動作和/或表情的標識符;
[0101]所述接收模塊還用于接收來自所述第一視頻通話裝置的所述虛擬形象的動作和/或表情的標識符;
[0102]所述第二虛擬形象獲取模塊還用于根據(jù)接收的所述虛擬形象的動作和/或表情的標識符獲取對應(yīng)的虛擬形象的動作和/或表情;以及
[0103]所述顯示模塊還用于所述第二視頻通話裝置顯示所述虛擬形象的動作和/或表
*卜主1同O
[0104]結(jié)合第四方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測所述第二默認事件,所述第二默認事件包括網(wǎng)絡(luò)參數(shù)大于第二預(yù)設(shè)閾值,其中,所述網(wǎng)絡(luò)參數(shù)包括丟包率、往返時延以及抖動,其中,所述第二預(yù)設(shè)閾值大于所述第一預(yù)設(shè)閾值。
[0105]結(jié)合第四方面的第三種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述默認事件檢測模塊具體用于檢測所述第二默認事件,所述第二默認事件包括用戶晃動所述視頻通話裝置所在的物理設(shè)備、預(yù)設(shè)的用戶手勢、預(yù)設(shè)的語音和點擊預(yù)設(shè)的按鍵中的任意一個或多個。
[0106]結(jié)合第四方面至第四方面的第五種任意一種可能的實現(xiàn)方式,在第六種可能的實現(xiàn)方式中,所述默