一种视频通信方法和装置与流程

文档序号:26937688发布日期:2021-10-12 12:36阅读:100来源:国知局
一种视频通信方法和装置与流程

1.本技术涉及数据处理领域,特别是涉及一种视频通信方法和装置。


背景技术:

2.随着计算机技术、网络技术、通信技术和流媒体技术的迅速发展,为多媒体视频通信的发展提供了强有力的技术保障。视频通信被广泛的应用于如视频会议、在线教育、在线娱乐等场景中。
3.目前,视频通信以视频会议为例,参与会议的用户可以接收其它参与会议的各个用户的会议数据并在本地显示,且针对不同用户显示窗口大小相同。
4.但是,实际视频会议中,参与会议的用户往往关注的是正在发言的用户,目前的视频通信方法难以满足重点关注发言用户的需求,且发言用户的视频质量较低,为用户使用带来不便。


技术实现要素:

5.为了解决上述技术问题,本技术提供了一种视频通信方法和装置,从而满足关注发言用户的需求。同时,由于第一视频数据的成像质量较高,从而在大显示窗口显示时保证了较高的成像质量,提高用户体验。
6.本技术实施例公开了如下技术方案:
7.第一方面,本技术实施例提供一种视频通信方法,所述方法包括:
8.获取第一终端发送的多路视频数据;所述多路视频数据为所述第一终端采用不同的编码参数对采集到的原始视频数据进行编码生成的,所述多路视频数据至少包括第一路视频数据和第二路视频数据,所述第一路视频数据的成像质量高于所述第二路视频数据的成像质量;
9.若获取到针对所述第一终端的目标下发条件,向第二终端发送所述第一路视频数据。
10.第二方面,本技术实施例提供一种视频通信装置,所述装置包括获取单元和发送单元:
11.所述获取单元,用于获取第一终端发送的多路视频数据;所述多路视频数据为所述第一终端采用不同的编码参数对采集到的原始视频数据进行编码生成的,所述多路视频数据至少包括第一路视频数据和第二路视频数据,所述第一路视频数据的成像质量高于所述第二路视频数据的成像质量;
12.所述发送单元,用于若获取到针对所述第一终端的目标下发条件,向第二终端发送所述第一路视频数据。
13.第三方面,本技术实施例提供一种视频通信方法,所述方法包括:
14.接收所述服务器发送的第一路视频数据;所述第一路视频数据的成像质量高于所述第二路视频数据的成像质量;
15.利用与所述第一路视频数据匹配的显示窗口显示所述第一路视频数据;用于显示所述第一路视频数据的显示窗口大于用于显示所述第二路视频数据的显示窗口。
16.第四方面,本技术实施例提供一种视频通信装置,所述装置包括接收单元和显示单元:
17.所述接收单元,用于接收服务器发送的第一路视频数据;所述第一路视频数据的成像质量高于所述第二路视频数据的成像质量;
18.所述显示单元,用于利用与所述第一路视频数据匹配的显示窗口显示所述第一路视频数据;用于显示所述第一路视频数据的显示窗口大于用于显示所述第二路视频数据的显示窗口。
19.第五方面,本技术实施例提供一种设备,所述设备包括处理器以及存储器:
20.所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
21.所述处理器用于根据所述程序代码中的指令执行第一方面或第三方面所述的方法。
22.第六方面,本技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行第一方面或第三方面所述的方法。
23.由上述技术方案可以看出,在进行视频通信时,某个用户对应的终端例如第一终端采集原始视频数据后,采用不同的编码参数对原始视频数据进行编码,生成多路视频数据并发送至服务器,以便在需要进行大小显示窗口切换时进行不同视频数据的切换。其中,多路视频数据至少包括第一路视频数据和第二路视频数据,第一路视频数据的成像质量高于第二路视频数据的成像质量,若服务器获取到针对第一终端的目标下发条件,则可以认为需要关注第一终端所对应的用户,此时向第二终端发送第一路视频数据,从而满足关注该用户的需求。同时,由于第一视频数据的成像质量较高,从而在显示时保证了较高的成像质量,提高用户体验。
附图说明
24.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
25.图1为本技术实施例提供的一种视频通信方法的应用场景示意图;
26.图2为本技术实施例提供的一种视频通信方法的信令交互图;
27.图3为本技术实施例提供的一种视频通信系统架构的结构图;
28.图4为本技术实施例提供的一种视频通信系统架构的结构图;
29.图5为本技术实施例提供的一种视频通信方法的流程图;
30.图6a为本技术实施例提供的一种视频通信装置的结构图;
31.图6b为本技术实施例提供的一种视频通信装置的结构图;
32.图7a为本技术实施例提供的一种视频通信装置的结构图;
33.图7b为本技术实施例提供的一种视频通信装置的结构图;
34.图7c为本技术实施例提供的一种视频通信装置的结构图;
35.图8为本技术实施例提供的一种设备的结构图;
36.图9为本技术实施例提供的一种服务器的结构图。
具体实施方式
37.下面结合附图,对本技术的实施例进行描述。
38.在视频通信过程中,以视频会议为例,参与会议的用户通过终端接收到其它参与会议的各个用户的视频数据后,采用大小相同的显示窗口显示每个用户的视频数据。
39.然而,参与会议的用户往往关注的是正在发言的用户,例如希望主要显示或者仅显示发言用户的视频数据,目前的方法难以实现该目的。即使可以实现该目的,也仅是调整显示窗口的大小,视频的成像质量较低,用户体验不好。
40.为了解决上述技术问题,本技术实施提供一种视频通信方法,该方法在基于不同的编码参数生成多路视频数据,从而在显示窗口大小切换时进行不同成像质量的视频数据的切换。针对第一终端,在获取多路视频后,若获取到针对第一终端的目标下发条件时,可以认为需要关注第一终端对应的用户,则向第二终端发送成像质量较高的第一路视频数据,以便在第二终端通过较大的显示窗口进行显示,满足重点关注该用户的需求,同时提高了针对该用户的成像质量。
41.需要强调的是,本技术实施例所提供的视频通信方法可以应用于视频会议、在线教育、在线娱乐例如在线k歌等多种场景。
42.为了便于理解本技术的技术方案,下面结合系统架构对本技术实施例提供的视频通信方法进行介绍。
43.参见图1,图1为本技术实施例提供的视频通信方法的系统架构示意图。该系统架构中包括多个终端101和服务器102,终端101可以是手机、计算机、个人数字助理(personal digital assistant,简称pda)、平板电脑等具有音频、视频采集和显示功能的设备,终端101上可以安装视频通信软件,以便通过终端101运行该软件实现视频通信,具体的,多个终端101之间可以通过网络电话(voice over internet protocol,缩写为voip)建立视频通信;服务器102是视频通信软件对应的服务器,可以为独立服务器,也可以为集群服务器。
44.终端101可以采集原始视频数据,原始视频数据中可以包括终端101对应的用户视频和/或音频,每个终端101可以采用不同的编码参数对采集的原始视频数据进行编码,生成多路视频数据。其中,多路视频数据至少包括第一路视频数据和第二路视频数据,第一路视频数据的成像质量高于第二路视频数据的成像质量。
45.本技术实施例对多路视频的具体路数不做限定,多路视频数据可以包括三路、四路甚至更多路,多路视频数据的成像质量不同,为了便于介绍,本技术实施例仅以其中两路为例进行介绍。
46.终端101可以将多路视频发送至服务器102,针对某个用户例如发言用户,为了可以更加方便的关注发言用户,若服务器获取到针对第一终端(例如发言用户对应的终端101)的目标下发条件,服务器102可以向其他终端例如第二终端发送成像质量较高的第一路视频数据,这样,在通过第二终端上较大的显示窗口显示视频数据时,由于第一路视频数据的成像质量高于第二路视频数据的成像质量,可以使得第二终端对应的用户看到一个成像质量较高的视频,提高了针对发言用户的成像质量,进而提高了用户体验。
47.接下来,将从终端与服务器进行交互的角度,结合附图对本技术实施例提供的视频通信方法进行详细介绍。参见图2,所述方法包括:
48.s201、第一终端采用不同的编码参数对采集到的原始视频数据进行编码,生成多路视频数据。
49.其中,第一终端具有采集原始视频数据并上传视频数据的能力,第一终端可以为第二终端对应的用户希望关注的用户对应的终端,例如可以是发言用户对应的终端。
50.当第一终端采集到原始视频数据后,第一终端可以采用不同的编码参数对采集到的原始视频数据进行编码,生成多路视频数据。在本实施例中,多路视频数据不限于两路,还可以是三路、四路等等,本实施例以多路视频数据中包括的第一路视频数据和第二路视频数据进行说明,其中,第一路视频数据的成像质量高于所述第二路视频数据的成像质量。成像质量可以通过分辨率、码流等参数体现。
51.s202、第一终端向服务器发送所述多路视频数据。
52.第一终端生成多路视频数据后,可以将多路视频数据发送至服务器。与相关技术相比,相关技术中由于多个大小相同的显示窗口同时显示视频数据,为了降低带宽压力,故每个显示窗口显示的视频数据的成像质量是固定的,且成像质量较低。而在本技术实施例中,第一终端生成成像质量不同的多路视频数据并发送至服务器,从而在某个或某些终端显示窗口大小切换时进行视频数据的切换,以便在显示窗口较大时,显示成像质量较高的视频数据,提高成像质量,提高用户体验。
53.服务器可以包括数据服务器和信令服务器,数据服务器主要用户接收或发送数据,信令服务器主要用于处理信令,数据服务器和信令服务器之间可以通信,以便信令服务器可以将某些信令转发给数据服务器。
54.视频通信过程中,参与视频通信的终端可以包括多个,终端之间通过voip网络电话建立通信连接,在一些情况下,多个终端可以全部具有采集原始视频数据并上传原始视频数据的能力。
55.然而,在一些情况下,为了增加视频通信的能力,扩大视频通信的规模人数,本技术实施例提供一种视频通信方法,该方法所应用的视频通信架构参见图3所示,该视频通信架构相对于相关技术而言,可以支持更多的终端同时接入视频通信。考虑到实际视频通信场景例如会议场景中只有少数人说话,多数人在听的情况,该视频通信架构允许前n路通道具有上传视频数据到服务器的能力,通过服务器转发至每个终端,其余终端仅具有下行视频数据的能力。其中,前n路通道具有上传视频数据能力的终端对应的用户可以称为台上用户,其余终端对应的用户可以称为台下用户。通过设置台上用户和台下用户的方式,允许更多用户同时接入视频通信,增加视频通信的能力,扩大视频通信的规模人数。
56.例如图3所示,包括服务器301、台上用户302和台下用户303。其中终端a、终端b和终端c为台上用户302,其可以上行视频数据(参见指向服务器的箭头所示),当然也可以下行视频数据,即接收其它终端例如终端b和终端c通过服务器转发的视频数据(参见指向终端a、b、c的箭头所示);终端1、终端2、
……
终端50为台下用户303,其只具有下行视频数据的能力,例如可以接收终端a、终端b和终端c通过服务器转发的视频数据。图3中a、b、c依次分别表示终端a、b、c的第二路视频数据,a、b、c依次分别表示终端a、b、c的第一路视频数据。
57.在这种情况下,在s202之前,针对第一终端可以首先请求获取上行视频数据的能
力,若服务器接收到针对第一终端的上行视频数据请求,服务器可以计算已占用的上行视频数据通路个数是否小于预设数量,即已台上用户的数量是否小于预设数量,若已占用的上行视频数据通路个数小于预设数量,服务器向第一终端发送上行视频数据确认消息,第一终端根据上行视频数据确认消息开始采集视频数据并将采集的视频数据上传至服务器,此时,第一终端对应的用户可以称为台上用户,此过程可以称为上台过程。
58.在一些情况下,为了避免服务器接收并向各终端转发非法用户的视频数据,服务器在确定已占用的上行视频数据通路个数小于预设数量后,还可以对该上行视频数据请求的合法性进行验证,若合法,则继续后续处理。
59.需要说明的是,针对第一终端的上行视频数据请求可以是第一终端发送的,也可以是其他终端邀请第一终端发言而发送的,例如视频通信场景中通常会有主持人的角色,主持人可以发起会议,邀请用户上台、下台、静音等会议控制的操作,当然,用户也可以自己主动发起上台、下台、静音等请求。这些都是通过终端和信令服务器之间的网络协议交互而实现的。
60.以上行视频数据请求是主持人对应的终端发送的为例,假设主持人a邀请用户b上台,主持人a对应的终端a会发送上行视频数据请求到服务器例如信令服务器,若信令服务器确定台上用户人数小于预设数量n,并且上行视频数据请求也是合法的请求,则会发送上行视频数据确认消息给终端b(即第一终端),终端b接收到上行视频数据确认消息后通知终端b的音视频引擎开始采集视频数据和上传采集到的视频数据,通过服务器例如数据服务器转发给会议中所有终端。
61.相应的,由于在视频通信过程中一个用户可能不会一直是台上用户或台下用户,当台上用户不再发言或者暂时不发言时,该用户还可以从台上用户变成台下用户,此过程可以称为下台过程。以第一终端为例,下台过程例如可以是服务器接收到针对第一终端的上行视频数据终止请求,若服务器检查第一终端对应的用户为台上用户,则会向第一终端发送上行视频数据终止确认消息,第一终端接收到上行视频数据终止确认消息后通知第一终端的音视频引擎停止采集视频数据和上传视频数据,其他终端就不会收到第一终端发送的视频数据。
62.s203、若服务器获取到针对所述第一终端的目标下发条件,向第二终端发送所述第一路视频数据。
63.其中,第二终端为参与视频通信的其他用户对应的终端,在一些情况下,为了便于关注第一终端对应的用户,第二终端上用于显示第一路视频数据的显示窗口大于用于显示第二路视频数据的显示窗口。此时,第一路视频数据可以称为大视频,第二路视频数据可以称为小视频,大视频可以是全屏显示,也可以是利用相对于其他显示窗口较大的显示窗口进行显示。
64.若服务器获取到针对所述第一终端的目标下发条件,则认为由第一终端对应的用户需要被关注,为了便于其他用户更好的关注该用户,第二终端可以采用较大的显示窗口显示视频数据,由于采用大的显示窗口,相应的,显示窗口的数量可能会减少,此时,为了提高成像质量,服务器可以向第二终端发送第一路视频数据,以便在第二终端显示成像质较高的视频数据。
65.s204、第二终端利用与所述第一路视频数据匹配的显示窗口显示所述第一路视频
数据。
66.第二终端接收到第一路视频数据后,可以利用与第一路视频数据匹配的显示窗口显示第一路视频数据,即显示大视频,从而方便第二终端对应的用户观看第一终端对应的用户,同时提高了成像质量和用户体验。
67.由上述技术方案可以看出,在进行视频通信时,发言用户对应的终端例如第一终端采集原始视频数据后,采用不同的编码参数对原始视频数据进行编码,生成多路视频数据并发送至服务器,以便在需要进行大小显示窗口切换时进行不同视频数据的切换。其中,多路视频数据至少包括第一路视频数据和第二路视频数据,第一路视频数据的成像质量高于第二路视频数据的成像质量,若服务器获取到针对第一终端的目标下发条件,则可以认为需要关注第一终端所对应的用户,此时向第二终端发送第一路视频数据,从而满足关注发言用户的需求。同时,由于第一视频数据的成像质量较高,从而在大显示窗口显示时保证了较高的成像质量,提高用户体验。
68.需要说明的是,在本技术实施例中,根据目标下发条件的不同,s203的实现方式可以包括多种,服务器可以是从服务器自身、第一终端、第二终端中一种或多种组合获取目标下发条件,也就是说,向第二终端发送的是第一路视频数据还是第二路视频数据可以是服务器自身选择,也可以是第一终端或第二终端选择,再通知服务器的。
69.第一种方式可以是根据服务器的自动识别结果向第二终端发送第一路视频数据,即目标下发条件是从服务器自身获取的。例如,服务器可以根据进行视频通信的网络状况或者原始视频数据本身的重要性进行抉择。
70.服务器在根据进行视频通信的网络状况进行抉择时,网络状况可以通过网络状况参数体现,因此,服务器可以获取网络状况参数,若根据网络状况参数确定网络状况满足第二预设条件,可以认为网络状况良好,则向第二终端发送第一路视频数据。此时,目标下发条件为网络状况满足第二预设条件。
71.由于网络状况可以与网络自身信息以及参与视频通信的人数有关,故本实施例中网络状况参数可以包括网络自身信息(例如网络带宽等)和参与视频通信的人数。例如服务器获取当前网络带宽,若网络带宽较大,足够传输成像质量较好的第一路视频数据,则可以向第二终端发送第一路视频数据,否则,为了保证通信顺畅,则向第二终端发送第二路视频数据。又如,服务器获取参与视频通信的人数,若人数小于某一阈值,则可以认为网络带宽压力较小,此时,可以向第二终端发送成像质量较好的第一视频数据,否则,为了降低带宽压力,向第二终端发送第二路视频数据。
72.服务器在根据原始视频数据本身的重要性进行抉择时,由于通常情况下,第二终端对应的用户可能更希望关注发言用户,即发言用户的原始视频数据更为重要。而发言用户对应的视频数据与其他用户对应的视频数据相比,其对应的音频能量更大,其他用户可能偶尔发出声音或者不发出声音,其视频数据所对应的音频能量非常小。因此,在本实施例中,可以通过音频能量来反映视频数据的重要性,服务器可以根据接收到的原始视频数据,计算音频能量,若音频能量满足第一预设条件,则可以确认第一终端对应的用户为发言用户,为了便于第二用户对应的终端观看发言用户,服务器可以向所述第二终端发送第一路视频数据。其中,第一预设条件可以是该音频能量达到预设阈值,或者该音频能量是所有原始视频数据对应的音频能量中最大;第二终端可以是除第一终端外的所有其他终端。此时,
目标下发条件为音频能量满足所述第一预设条件。
73.在一些情况下,视频通信例如视频会议中通常存在主持人(发起人),主持人通常是视频会议中的主要发言用户,其对应的视频数据一般比较中央台,因此,服务器可以根据多路视频数据是否来自主持人所对应的终端进行抉择。
74.可以理解的是,若在在服务器向第二终端发送第一路视频数据之前,服务器向第二终端发送的是第二路视频数据,则通过第一种方式确定出音频能量满足第一预设条件后,服务器向第二终端发送第一路视频数据可以是服务器将向第二终端发送的第二路视频数据切换为第二路视频数据。
75.第二种方式可以是触发第二终端发送切换指令,根据指令向第二终端发送第一路视频数据,即目标下发条件是从第二终端获取的。
76.在一些场景下,在服务器向第二终端发送第一路视频数据之前,服务器向第二终端发送的是第二路视频数据即小视频,例如视频通信刚开始时,默认向第二终端发送第二路视频数据,此时,第二终端对应的用户希望观看第一终端对应的用户的大视频,则第二终端对应的用户可以点击用于展示第一终端对应用户的显示窗口,触发切换视频数据。
77.具体的,服务器可以接收第二终端发送的第一视频切换指令,第一视频切换指令包括第一终端的身份标识(identification,id)和第一视频标识,然后,根据身份标识和视频标识确定第一路视频数据,并将向第二终端发送的第二路视频数据切换为第一路视频数据。此时,目标下发条件为接收到所述第一视频切换指令。
78.其中,第一视频切换指令可以是响应于第二终端对应的用户的触发操作生成的。例如,在第二终端对应的用户希望通过大显示窗口观看第一终端对应的用户时,第二终端对应的用户手动切换显示窗口(例如点击当前显示窗口),为了提供高成像质量的视频数据,触发第二终端向服务器发送第一视频切换指令。
79.第一视频切换指令还可以是在第二终端对应的用户对原始视频数据的关注程度满足第三预设条件时生成的。第二终端对应的用户对原始视频数据的关注程度可以通过分析用户对视频的操作程度,或者对其他无关页面的点击浏览等,来判断用户对该视频的关注程度。若第二终端判断关注程度满足第三预设条件,则说明关注程度较高,向服务器发送第一视频切换指令,使得服务器可以向第二终端发送第一路视频数据,否则,发送成像质量较低的第二路视频数据。其中,用户对所显示视频的操作越频繁,或者对其他无关页面的点击浏览次数越少等,说明用户对该视频的关注程度越高。
80.通过第二种方式可以根据用户的实际需求,仅向实际希望观看某用户大视频的用户对应的第二终端发送第一路视频数据,避免不必要的第一路视频数据的发送,提高用户体验。
81.若服务器包括信令服务器和数据服务器,则第二终端首先向信令服务器发送第一视频切换指令,并由信令服务器将第一视频切换指令转发至数据服务器,数据服务器可以对第一视频切换指令中包括的信息进行记录,从而有针对性的下发视频数据。其中,第一视频切换指令可以是订阅协议,此时第一终端可以称为被订阅者,数据服务器中记录的信息可以称为订阅状态。
82.可以理解的是,若第二终端显示第一路视频数据的显示窗口为全屏显示,那么,服务器还需要停止向第二终端发送除第一终端之外的其它终端的视频数据。
83.当第二终端对应的用户不需要关注第一终端对应的用户时,例如,第一终端对应的用户发言结束,此时第二终端对应的用户可以点击用于展示第一终端对应用户的显示窗口,触发切换视频数据。
84.具体的,第二终端可以向服务器发送第二视频切换指令,第二视频切换指令中包括第一终端的身份标识和第二视频标识,服务器根据身份标识和第二视频标识确定出第二路视频数据,并将向第二终端发送的第一路视频数据切换为第二路视频数据。
85.第三种方式可以是服务器从第一终端获取目标下发条件。此时,目标下发条件为第一终端对应的用户与第二终端对应的用户之间的亲密程度满足第四预设条件。
86.通常情况下,参与视频通信的用户可能更加关注与自己较为亲密的用户,而对于自己不熟悉的用户不是很关注,因此,在本实施例中,第一终端可以确定第一终端对应的用户与第二终端对应的用户之间的亲密程度,若该亲密程度满足第四预设条件,则向服务器发送目标下发条件,使得终端可以根据该目标下发条件向第二终端发送成像质量较高的第一路视频数据。
87.需要说明的是,为了防止第一视频切换指令在传输过程中丢失,从而导致用户实际观看到的视频数据与用户希望观看到的视频数据不一致,第二终端在收到第一路视频数据时要确定第一路视频数据与第一视频标识所表征的视频数据是否一致,若不一致,重新向服务器发送所述第一视频切换指令。例如可以每2秒重发1次,最多重发5次。当通过第二视频切换指令进行切换时,可以采用类似的方式检查收到的第二视频数据与第二视频标识所表征的视频数据是否一致,以防止第二视频切换指令在传输过程中丢失,从而导致用户实际观看到的视频数据与用户希望观看到的视频数据不一致。
88.在一些可能的实现方式中,为了保证视频切换时视野不跳动,提高用户体验,可以使得第一路视频数据与第二路视频数据的宽高比保持一致,例如宽高比都是4:3,也可以是成像质量更清晰的16:9等。
89.接下来,将结合实际应用场景对本技术实施例提供的视频通信方法进行介绍。在该应用场景中,多个用户通过其终端上安装的软件进行视频会议,该应用场景所采用的系统架构参见图4所示,该系统架构中数据服务器401、信令服务器402、台上用户403例如包括终端a、终端b和终端c、台下用户404例如终端1、终端2、
……
终端50。
90.参见图5,所述方法包括:
91.s501、数据服务器接收台上用户包括的各个终端发送的多路视频数据。
92.多路视频数据包括第一路视频数据(大视频)和第二路视频数据(小视频)。其中,第一路视频数据的成像质量高于第二路视频数据的成像质量,第一路视频数据对应的显示窗口大于第二路视频数据对应的显示窗口。
93.s502、数据服务器默认转发台上用户中每个终端的第二路视频数据给参与视频会议的其它终端。
94.图4中a、b、c依次分别表示终端a、b、c的第二路视频数据,a、b、c依次分别表示终端a、b、c的第一路视频数据。
95.s503、用户a点击用户b的显示窗口。
96.s504、终端a发送订阅协议到信令服务器。
97.s505、信令服务器转发订阅协议到数据服务器。
98.当用户a需要看某个用户b的大视频时,用户a点击用户b的显示窗口,从而触发用户a对应的终端a(即第二终端)发送订阅协议至信令服务器,再由信令服务器转发给数据服务器。其中,订阅协议包扩含被订阅者(终端b即第一终端)的id和第一视频标识。
99.s506、终端a连接的数据服务器上会记录a的订阅状态。
100.s507、数据服务器将向终端a发送的用户b的第二路视频数据切换为第一路视频数据。
101.参见图4所示,图4中虚线表示切换前向终端a发送用户b的第二路视频数据,图4中实线表示切换后向终端a发送用户b的第一路视频数据。
102.s508、数据服务器停止向终端a发送用户b和用户c的第二路视频数据。
103.s509、当用户a不需要看用户b的大视频时,终端a再次发送订阅协议到信令服务器。
104.订阅协议包括终端b的id和第二视频标识。
105.s510、终端a连接的数据服务器上更新终端a的订阅状态,恢复为终端a下发用户b和用户c的第二视频数据,不再传输用户b的第一视频数据。
106.基于前述实施例提供的视频通信方法,本实施例还一种视频通信装置,参见图6a,所述装置包括获取单元601和发送单元602:
107.所述获取单元601,用于获取第一终端发送的多路视频数据;所述多路视频数据为所述第一终端采用不同的编码参数对采集到的原始视频数据进行编码生成的,所述多路视频数据至少包括第一路视频数据和第二路视频数据,所述第一路视频数据的成像质量高于所述第二路视频数据的成像质量;
108.所述发送单元602,用于若获取到针对所述第一终端的目标下发条件,向第二终端发送所述第一路视频数据。
109.在一种可能的实现方式中,所述目标下发条件是从服务器自身、所述第一终端和所述第二终端中一种或多种组合获取的。
110.在一种可能的实现方式中,若所述目标下发条件是从服务器自身获取的,所述发送单元602,用于;
111.根据所述多路视频数据,计算音频能量;
112.若所述音频能量满足第一预设条件,向所述第二终端发送所述第一路视频数据;所述目标下发条件为所述音频能量满足所述第一预设条件。
113.在一种可能的实现方式中,若所述目标下发条件是从服务器自身获取的,所述发送单元602,用于;
114.获取网络状况参数;
115.若根据所述网络状况参数确定网络状况满足第二预设条件,向所述第二终端发送所述第一路视频数据;所述目标下发条件为所述网络状况满足所述第二预设条件。
116.在一种可能的实现方式中,在所述发送单元602向第二终端发送所述第一路视频数据之前,若向所述第二终端发送的是第二路视频数据,所述目标下发条件是从所述第二终端获取的,所述发送单元602,用于:
117.接收所述第二终端发送的第一视频切换指令,所述第一视频切换指令包括所述第一终端的身份标识和第一视频标识;
118.根据所述身份标识和所述视频标识确定所述第一路视频数据;
119.将向所述第二终端发送的所述第二路视频数据切换为所述第一路视频数据;所述目标下发条件为接收到所述第一视频切换指令。
120.在一种可能的实现方式中,所述第一视频切换指令是响应于第二终端对应的用户的触发操作生成,或,所述第一视频切换指令是在第二终端对应的用户对所述原始视频数据的关注程度满足第三预设条件时生成的。
121.在一种可能的实现方式中,若所述目标下发条件是从所述第一终端获取的,所述目标下发条件为所述第一终端对应的用户与所述第二终端对应的用户之间的亲密程度满足第四预设条件。
122.在一种可能的实现方式中,所述发送单元602,还用于:
123.停止向所述第二终端发送除所述第一终端之外的其它终端的视频数据。
124.在一种可能的实现方式中,参见图6b,所述装置还包括接收单元603、确定单元604和切换单元605:
125.所述接收单元603,用于接收所述第二终端发送的第二视频切换指令,所述第二视频切换指令中包括所述第一终端的身份标识和第二视频标识;
126.所述确定单元604,用于根据所述身份标识和所述第二视频标识确定所述第二路视频数据;
127.所述切换单元605,用于将向所述第二终端发送的所述第一路视频数据切换为所述第二路视频数据。
128.在一种可能的实现方式中,所述第一路视频数据与所述第二路视频数据的宽高比保持一致。
129.在一种可能的实现方式中,所述接收单元603,还用于接收针对所述第一终端的上行视频数据请求;
130.所述发送单元602,还用于若已占用的上行视频数据通路个数小于预设数量,向所述第一终端发送上行视频数据确认消息。
131.本技术实施例还提供一种视频通信装置,参见图7a,所述装置包括接收单元701和显示单元702:
132.所述接收单元701,用于接收服务器发送的第一路视频数据;所述第一路视频数据的成像质量高于所述第二路视频数据的成像质量;
133.所述显示单元702,用于利用与所述第一路视频数据匹配的显示窗口显示所述第一路视频数据;用于显示所述第一路视频数据的显示窗口大于用于显示所述第二路视频数据的显示窗口。
134.在一种可能的实现方式中,在利用与所述第一路视频数据匹配的显示窗口显示所述第一路视频数据之前,若显示的是第二路视频数据,参见图7b,所述装置还包括发送单元703:
135.所述发送单元703,用于向服务器发送第一视频切换指令,所述第一视频切换指令包括所述第一终端的身份标识和第一视频标识;
136.所述接收单元701,还用于接收所述服务器发送的所述第一路视频数据;
137.所述显示单元702,还用于将所述第二路视频数据切换为所述第一路视频数据。
138.在一种可能的实现方式中,参见图7c,所述装置还包括确定单元704:
139.所述确定单元704,用于确定所述第一路视频数据与所述第一视频标识所表征的视频数据是否一致;
140.若不一致,所述发送单元703用于重新向所述服务器发送所述第一视频切换指令。
141.本技术实施例还提供了一种设备,该设备可以进行视频通信。下面结合附图对该设备进行介绍。请参见图8所示,本技术实施例提供了一种设备800,该设备800还可以是终端,该终端可以为包括手机、平板电脑、个人数字助理(personal digital assistant,简称pda)、销售终端(point of sales,简称pos)、车载电脑等任意智能终端,以终端为手机为例:
142.图8示出的是与本技术实施例提供的终端相关的手机的部分结构的框图。参考图8,手机包括:射频(radio frequency,简称rf)电路810、存储器820、输入单元830、显示单元840、传感器850、音频电路860、无线保真(wireless fidelity,简称wifi)模块870、处理器880、以及电源890等部件。本领域技术人员可以理解,图8中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
143.下面结合图8对手机的各个构成部件进行具体的介绍:
144.rf电路810可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器880处理;另外,将设计上行的数据发送给基站。通常,rf电路810包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noise amplifier,简称lna)、双工器等。此外,rf电路810还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(global system of mobile communication,简称gsm)、通用分组无线服务(general packet radio service,简称gprs)、码分多址(code division multiple access,简称cdma)、宽带码分多址(wideband code division multiple access,简称wcdma)、长期演进(long term evolution,简称lte)、电子邮件、短消息服务(short messaging service,简称sms)等。
145.存储器820可用于存储软件程序以及模块,处理器880通过运行存储在存储器820的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器820可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
146.输入单元830可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元830可包括触控面板831以及其他输入设备832。触控面板831,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板831上或在触控面板831附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板831可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触
点坐标,再送给处理器880,并能接收处理器880发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板831。除了触控面板831,输入单元830还可以包括其他输入设备832。具体地,其他输入设备832可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
147.显示单元840可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元840可包括显示面板841,可选的,可以采用液晶显示器(liquid crystal display,简称lcd)、有机发光二极管(organic light-emitting diode,简称oled)等形式来配置显示面板841。进一步的,触控面板831可覆盖显示面板841,当触控面板831检测到在其上或附近的触摸操作后,传送给处理器880以确定触摸事件的类型,随后处理器880根据触摸事件的类型在显示面板841上提供相应的视觉输出。虽然在图8中,触控面板831与显示面板841是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板831与显示面板841集成而实现手机的输入和输出功能。
148.手机还可包括至少一种传感器850,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板841的亮度,接近传感器可在手机移动到耳边时,关闭显示面板841和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
149.音频电路860、扬声器861,传声器862可提供用户与手机之间的音频接口。音频电路860可将接收到的音频数据转换后的电信号,传输到扬声器861,由扬声器861转换为声音信号输出;另一方面,传声器862将收集的声音信号转换为电信号,由音频电路860接收后转换为音频数据,再将音频数据输出处理器880处理后,经rf电路810以发送给比如另一手机,或者将音频数据输出至存储器820以便进一步处理。
150.wifi属于短距离无线传输技术,手机通过wifi模块870可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图8示出了wifi模块870,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
151.处理器880是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器820内的软件程序和/或模块,以及调用存储在存储器820内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器880可包括一个或多个处理单元;优选的,处理器880可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器880中。
152.手机还包括给各个部件供电的电源890(比如电池),优选的,电源可以通过电源管理系统与处理器880逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
153.尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
154.在本实施例中,该终端所包括的处理器880还具有以下功能:
155.接收服务器发送的第一路视频数据;所述第一路视频数据的成像质量高于所述第二路视频数据的成像质量;
156.利用与所述第一路视频数据匹配的显示窗口显示所述第一路视频数据;用于显示所述第一路视频数据的显示窗口大于用于显示所述第二路视频数据的显示窗口。
157.本技术实施例还提供服务器,请参见图9所示,图9为本技术实施例提供的服务器900的结构图,服务器900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,简称cpu)922(例如,一个或一个以上处理器)和存储器932,一个或一个以上存储应用程序942或数据944的存储介质930(例如一个或一个以上海量存储设备)。其中,存储器932和存储介质930可以是短暂存储或持久存储。存储在存储介质930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器922可以设置为与存储介质930通信,在服务器900上执行存储介质930中的一系列指令操作。
158.服务器900还可以包括一个或一个以上电源926,一个或一个以上有线或无线网络接口950,一个或一个以上输入输出接口958,和/或,一个或一个以上操作系统941,例如windows servertm,mac os xtm,unixtm,linuxtm,freebsdtm等等。
159.在本实施例中,该服务器所包括的中央处理器922还具有以下功能:
160.获取第一终端发送的多路视频数据;所述多路视频数据为所述第一终端采用不同的编码参数对采集到的原始视频数据进行编码生成的,所述多路视频数据至少包括第一路视频数据和第二路视频数据,所述第一路视频数据的成像质量高于所述第二路视频数据的成像质量;
161.若获取到针对所述第一终端的目标下发条件,向第二终端发送所述第一路视频数据。
162.本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行前述各个实施例所述的视频通信方法。
163.本技术实施例还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例所述的视频通信方法。
164.本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
165.应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可
以是多个。
166.在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
167.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
168.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
169.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等各种可以存储程序代码的介质。
170.以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1