CN108337535B - 客户端视频的转发方法、装置、设备和存储介质 - Google Patents

客户端视频的转发方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN108337535B
CN108337535B CN201810236118.2A CN201810236118A CN108337535B CN 108337535 B CN108337535 B CN 108337535B CN 201810236118 A CN201810236118 A CN 201810236118A CN 108337535 B CN108337535 B CN 108337535B
Authority
CN
China
Prior art keywords
client
video
forwarding
video forwarding
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810236118.2A
Other languages
English (en)
Other versions
CN108337535A (zh
Inventor
田建超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Shiyuan Electronics Thecnology Co Ltd
Guangzhou Shizhen Information Technology Co Ltd
Original Assignee
Guangzhou Shiyuan Electronics Thecnology Co Ltd
Guangzhou Shizhen Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Shiyuan Electronics Thecnology Co Ltd, Guangzhou Shizhen Information Technology Co Ltd filed Critical Guangzhou Shiyuan Electronics Thecnology Co Ltd
Priority to CN201810236118.2A priority Critical patent/CN108337535B/zh
Publication of CN108337535A publication Critical patent/CN108337535A/zh
Application granted granted Critical
Publication of CN108337535B publication Critical patent/CN108337535B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例公开了一种客户端视频的转发方法、装置、设备和存储介质,该方法包括:获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型;若所述客户端的视频转发策略类型为自动转发,则根据服务器中的视频转发对应的配置文件确定视频转发策略;根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发。结合客户端自身特性和订阅请求确定视频转发策略和视频转发列表,使客户端收到满足需求的视频。

Description

客户端视频的转发方法、装置、设备和存储介质
技术领域
本发明涉及视频数据处理技术,尤其涉及一种客户端视频的转发方法、装置、设备和存储介质。
背景技术
视频会议是现代会议模式的一种常用的会议手段,通过视频会议,各个与会者无论处于何方,都可以在视频会议的客户端通过语音和视频进行交流,还可以在各自的客户端中显示会议主持人想要主讲的会议内容,会议内容可以是视频、文字或演示文稿等。
在举行视频会议时,各个视频会议的客户端无差别的显示所有与会者的画面,或者管理员手动切换各个视频会议客户端的显示画面,或者由各个与会者手动切换自身视频会议客户端的显示画面。
在实现本发明的过程中,发明人发现现有技术中至少存在如下问题,不同客户端的解码能力不同,给各个客户端转发相同质量的视频流,或者给各个客户端转发的其他客户端的视频并不是客户端本身想要观看的视频,或者当前客户端收到的视频的质量较差,影响视频播放效果和用户观看质量。
发明内容
本发明实施例提供一种客户端视频的转发方法、装置、设备和存储介质,结合客户端自身特性和订阅请求确定视频转发策略和视频转发列表,使客户端收到满足需求的视频。
第一方面,本发明实施例提供了一种客户端视频的转发方法,该方法包括:
获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型;
若所述客户端的视频转发策略类型为自动转发,则根据服务器中的视频转发对应的配置文件确定视频转发策略;
根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发。
第二方面,本发明实施例还提供了一种客户端视频的转发装置,该装置包括:
订阅请求获取模块,用于获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型;
第一转发策略确定模块,用于在所述客户端的视频转发策略类型为自动转发时,根据服务器中的视频转发对应的配置文件确定视频转发策略;
视频转发模块,用于根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明实施例中任一所述的客户端视频的转发方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例中任一所述的客户端视频的转发方法。
本发明实施例子中,首先获取当前会议模式中的客户端的订阅请求,若所述客户端的视频转发策略类型为自动转发,则根据服务器中的视频转发对应的配置文件确定视频转发策略,然后根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发。结合客户端自身特性和订阅请求确定视频转发策略和视频转发列表,使客户端收到满足需求的视频。
附图说明
图1是本发明实施例一中的一种客户端视频的转发方法的流程图;
图2是本发明实施例二中的一种客户端视频的转发方法的流程图;
图3是本发明实施例三中的一种客户端视频的转发装置的结构示意图;
图4是本发明实施例四中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
本发明实施例中的客户端可以是智能平板或智能电视等,将同一个会议中的各个客户端发送给服务器的视频称为客户端视频。接下来用一个具体的例子说明视频转发策略的含义,假设有一个远程会议,会议同时有北京、上海、广州、武汉和重庆这五个客户端接入视频会议,但是重庆的客户端由于解码能力或者带宽的限制,只能显示一路视频,那么服务器要决定转发北京、上海、广州和武汉这四路中的一路视频给重庆,选择哪一路视频进行转发就是视频转发策略。
实施例一
图1为本发明实施例一提供的一种客户端视频的转发方法的流程图,本实施例可适用于多个客户端时如何确定各客户端收到的视频的情况,该方法可以由本发明实施例提供的客户端视频的转发装置来执行,该装置可采用软件和/或硬件的方式实现。参考图1,该方法具体可以包括如下步骤:
S110、获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型。
具体的,假设有一个远程会议,会议同时有北京、上海、广州、武汉和重庆这五个客户端接入视频会议,以北京客户端为例,获取当前会议模式中北京客户端的订阅请求。订阅请求中包括客户端的视频转发策略类型,其中,视频转发策略类型包括自动转发和客户端订阅,可选的,自动转发也称为非客户端订阅。
客户端订阅为当前的客户端来确定该客户端希望看到来自其他哪个客户端的会议视频,非客户端订阅对应依据其他规则确定的视频转发策略。在一个具体的例子中,客户端订阅是指客户端指定时的订阅,可以通过Sub(ssrc+Policy::SUBCRIPTION+"uuid"+Quality+group)指令来实现,非客户端订阅是指自行转发,可以通过Sub(ssrc+Policy::ACTIVEVIDEO+""+Quality+group)指令来实现。
S120、若所述客户端的视频转发策略类型为自动转发,则根据服务器中的视频转发对应的配置文件确定视频转发策略。
具体的,若当前客户端的视频转发策略类型为自动转发,则查找服务器中的视频转发策略对应的配置文件,其中,所述配置文件为运维人员根据会议发起人或者会议负责人根据本次的会议要求在服务器中设置的文件。该配置文件表征了会议负责人或者会议发起人希望各客户端以何种规则来接收会议视频。根据服务器中的视频转发对应的配置文件确定视频转发策略,例如,主持人指定客户端、限时展示客户端和高音频客户端的优先级依次降低。
在一个具体的例子中,配置文件的内容如下:
(1)主持人指定客户端的最大权重值;
(2)主持人指定客户端的间隔权重值;
(3)限时展示客户端队列中队首客户端的权重值;
(4)高音频客户端中音频最大的客户端的权重值;
(5)所取高音频客户端的数量。
其中,主持人为当前会议中具有获取并操作与会人员列表权限的人,限时展示客户端是指在会议进行过程中新加入的会议成员希望在当时各与会客户端露脸的客户端,可选的,露脸时间可以是5秒,假如当前接入视频会议的是北京、上海、广州、武汉和重庆这五个客户端,在会议过程中深圳需要加入该视频会议,且需要在北京、上海、广州、武汉和重庆这五个客户端的会议显示页面中露脸5秒钟,则深圳的客户端称为限时展示客户端。
S130、根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发。
其中,每个客户端视频对应的检测到的影响因子事件是指,在确定了视频转发策略之后,根据视频转发策略对主持人指定客户端列表、限时展示客户端列表和高音频客户端列表中的各个列表在每隔一段时间进行刷新的同时,计算各个列表中各个客户端视频的权重值。
本发明实施例子中,首先获取当前会议模式中的客户端的订阅请求,若所述客户端的视频转发策略类型为自动转发,则根据服务器中的视频转发对应的配置文件确定视频转发策略,然后根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发。结合客户端自身特性和订阅请求确定视频转发策略和视频转发列表,使客户端收到满足需求的视频。
在上述技术方案的基础上,在获取当前会议模式中的客户端的订阅请求之后,若所述客户端的视频转发策略为客户端订阅,则根据所述客户端订阅的请求确定所述客户端需要显示的客户端视频进行转发。
其中,针对当前客户端的视频转发策略为客户端订阅的情况,服务器可以直接根据当前客户端指定的客户端ID找到对应的客户端视频,并将其视频流的识别视频流(Synchronization Source Identifier,SSRC)与当前客户端的显示窗口进行匹配。
在一个具体的例子中,例如北京客户端想在自己的客户端显示页面显示上海视频会议的画面,则服务器根据预先存储的各客户端的ID找到上海客户端对应的视频,并将其转发至北京客户端的显示页面上。客户端订阅的情况中,根据不同客户端的需求转发对应的视频,极大程度满足了客户的需求。
需要说明的是,本发明实施例中的服务器只负责转发视频,客户端根据收到的视频进行解码并显示,降低了服务器解码视频的压力,提高了视频转发的速度。
实施例二
图2为本发明实施例二提供的一种客户端视频的转发方法的流程图,本实施例在上述实施例的基础上,对“根据所述视频转发策略和每个视频对应的检测到的影响因子事件确定视频转发列表”进行了优化。参考图2,该方法具体可以包括如下步骤:
S210、获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型。
可选的,所述视频转发策略包括所述影响因子事件的权重值。在一个具体的例子中,影响因子事件可以包括主持人指定事件、限时展示事件和高音频筛选事件,在确定了视频转发策略后,则可以确定各影响因子事件的权重值。例如,视频转发策略为主持人指定客户端、限时展示客户端和高音频客户端的优先级依次降低,则主持人指定客户端的权重值依次取1000、990、980……,限时展示客户端队列中队首客户端的权重值为5,高音频客户端的最高音频的三个客户端的权重值依次为3、2、1。
需要说明的是,该影响因子事件的权重值的分配只针对该例子中的视频转发策略,而实际应用时存在多种视频转发策略,例如高音频客户端、主持人指定客户端、限时展示客户端和的优先级依次降低。
可选的,所述订阅请求还包括所述客户端显示窗口对应的标识符、所述客户端的最大分辨率和所述显示窗口的分组信息,其中,窗口的分组信息中包括每组中显示的窗口数。
其中,服务器在收到每个客户端的订阅请求后,会将每订阅请求推送到对应的Endpoint,Endpoint是指服务器中的中介层,存储有指定接收消息的客户端的地址。每个Endpoint会根据客户端订阅请求保存窗口列表情况,客户端显示窗口对应的标识符,根据该标识符可以确定显示窗口以及该显示窗口所属的客户端。可选的,显示窗口是指,在客户端页面上显示的小窗,例如三个显示窗口可以分别显示上海、北京和广州三个客户端的视频画面。
客户端的最大分辨率是指客户端能承受的视频的最大分辨率,可选的,根据所述客户端的解码能力以及当前网络带宽确定所述客户端的最大分辨率。这样,在转发视频时,结合当前客户端的解码能力以及当前网络带宽,来确定当前客户端的最大分辨率,根据客户端的承载能力调整转发视频的路数。考虑到不同的客户端解码能力和网络状况不一样,保证各个客户端视频会议的正常进行。
其中,窗口的分组信息中包括每组中显示的窗口数,具体的,显示窗口的分组信息是指,北京客户端能同时显示3个窗口,广州客户端能同时显示4个窗口,则该三个显示窗口为一组,共用同一个ID。
S220、若所述客户端的视频转发策略类型为自动转发,则根据服务器中的视频转发对应的配置文件确定视频转发策略。
S230、根据所述影响因子事件的权重值和每个视频对应的检测到的影响因子事件确定每个客户端视频的权重值。
具体的,以主持人指定客户端、限时展示客户端和高音频发声者客户端的优先级依次降低为例,根据主持人指定客户端事件对应的权重值遍历主持人指定客户端成员列表,获取主持人指定客户端列表中各客户端视频的权重值;根据限时展示客户端事件对应的权重值遍历限时展示客户端成员列表,获取限时展示客户端成员列表中各客户端视频的权重值;根据高音频发声者客户端事件对应的权重值遍历发声者成员列表,获取高音频发声者客户端成员列表中各客户端视频的权重值。
在一个具体的例子中,假设当前会议模式中参与者为北京、上海、广州、重庆和武汉,主持人指定客户端成员列表中的客户端分别为北京、上海和广州,对应的客户端视频的权重值分别为1000、990和980,限时展示客户端成员列表中依次是上海、广州和重庆,则确定队首客户端成员为上海,权重值为5,按照声音能量进行排序后,获得的高音频客户端成员列表中三个最高音频的客户端依次是广州、重庆和武汉,权重值依次为3、2和1。
在上述具体的例子中,主持人指定的规则是从权重值1000开始,多指定一个客户端,在之前指定客户端视频权重值的基础上减10,目的是让优先指定的客户端视频的优先级更高。
限时展示客户端成员的应用是为了让刚加入视频会议的客户端由于需要打招呼而转发给其他客户端等情况。对于新加入的成员,用一个限时展示客户端队列来存储,每次该队列只有一个客户端成员能被转发,即取队首的客户端成员,按照其对应的优先级设定一个固定的权重值。当其露脸时间结束时,将其从限时展示客户端队列删除,并选择下一个客户端成员进行转发。由于每次只能有一个成员来打招呼,所以既能保证会议的正常显示,又能让每个新加入的客户端成员都有露脸的机会。
高音频客户端成员列表的应用,选取音频最高的三个客户端,考虑了声音能量对选择视频转发的影响,根据当前声音的大小进行排序,取声音较高的前3个,在原有权重值的基础上增加一定值(增量大小与声音能量相对于其他情况的优先级确定),保证声音较大的客户端视频能够被优先转发。让当前客户端的与会人员看到的视频画面和当前正在说话的人对应,增加客户端使用者的体验。
将客户端订阅、主持人指定、新加入成员露脸以及声音和视频画面同步显示等多种情况结合起来,根据不同会议中不同客户端视频的权重值进行定制,适用性广,实用性高。
S240、根据所述权重值对所述客户端视频进行排序生成视频转发列表。
具体的,将确定的各客户端视频按照权重值由高到低依次进行排序,生成视频转发列表,也即,视频转发列表中存储有当前会议模式中各客户端视频或者各客户端视频的编号,根据编号可以确定客户端视频。
在一个具体的例子中,根据S230中的举例结果可知,北京、上海、广州、重庆和武汉对应客户端视频的权重值分别为1000、995(990+5)、983(980+3)、2和1。在这个具体的例子中,视频转发列表中存储的是按权重值1000、995、983、2和1进行顺序排列的北京、上海、广州、重庆和武汉。需要说明的是,初始权重值默认是0,每个客户端根据自身符合的条件进行权重值的累加。
可选的,按照所述客户端的最大分辨率和显示窗口的分组信息,从所述视频转发列表中选取设定数量的客户端视频转发至所述分组信息对应的显示窗口对应的客户端。其中,所述客户端视频的分辨率低于所述最大分辨率,所述设定数量与所述显示窗口的数量相同,根据所述显示窗口对应的标识符确定所述显示窗口所属的客户端。
具体的,从视频转发列表中选取要转发的客户端视频时,结合当前客户端的最大分辨率以及显示窗口的分组信息,选取的客户端视频的数量与当前客户端的显示窗口的数量相同,选取的客户端视频的分辨率低于当前客户端能承受的最大分辨率,显示窗口的标识符具有唯一性,例如,同一客户端上显示的两个显示窗口,若显示窗口大小不同,则其标识符也不同。根据显示窗口对应的标识符确定显示窗口的客户端。
S250、按照所述视频转发列表对所述客户端进行视频转发。
本发明实施例中,根据影响因子事件的权重值和每个视频对应的检测到的影响因子事件确定每个客户端视频的权重值,然后根据所述权重值对所述客户端视频进行排序生成视频转发列表,考虑了影响因子事件的权重值,根据确定的每个客户端视频的权重值进行视频转发,根据不同会议的需求,灵活调整权重值,能够根据不同客户端的需求转发不同质量不同路数的视频流。
在上述技术方案的基础上,从所述视频转发列表中选取设定数量客户端视频转发至所述分组信息对应的显示窗口对应的客户端之前,还包括:将当前客户端对应的视频在所述视频转发列表中进行隐藏。
其中,视频转发列表中选取的设定数量的客户端视频中可能包括当前客户端自身的视频,因此,在确定视频转发列表中存在当前客户端对应的视频,则将当前客户端对应的视频在视频列表中进行隐藏,也即,在对当前客户端进行视频转发时,其自身的客户端视频不在被转发范围内;若视频转发列表中不存在当前客户端对应的视频,则不对视频转发列表进行任何处理。
在一个具体的例子中,若视频转发列表中存在当前客户端对应的视频的情况,且在从所述视频转发列表中选取设定数量客户端视频中包括当前客户端视频,还可以从未选取的客户端视频中选取权重值最大的客户端视频替换当前客户端视频,并将其转发至所述分组信息对应的显示窗口对应的客户端。需要说明的是,本发明实施例中的会议场景只是用来说明,该技术方案还可以适用其他场景,如教师远程授课等,能够更大程度地满足客户需求。
在上述技术方案的基础上,接下来以主持人指定客户端、限时展示(sayhello)客户端和高频音(ActiveAudio Depenent)客户端为例,来说明本发明实施例的权重值配置策略:
表1主持人指定>sayhello>ActiveAudio Depenent的权重值配置策略表
主持人指定>sayhello>ActiveAudio Depenent weight
主持人指定 1000(间隔权重值为10)
sayhello 5
ActiveAudio Depenent 3、2、1
表2主持人指定>ActiveAudio Depenent>sayhello的权重值配置策略表
主持人指定>ActiveAudio Depenent>sayhello weight
主持人指定 1000(间隔权重值为10)
ActiveAudio Depenent 6、4、2
sayhello 1
表3ActiveAudio Depenent>主持人指定>sayhello的权重值配置策略表
ActiveAudio Depenent>主持人指定>sayhello weight
ActiveAudio Depenent(Top3) 900、600、300
主持人指定 200(间隔权重值为2)
sayhello 1
表4ActiveAudio Depenent>sayhello>主持人指定的权重值配置策略表
ActiveAudio Depenent>sayhello>主持人指定 weight
ActiveAudio Depenent 900、600、300
sayhello 150
主持人指定 100(间隔权重值为2)
表5sayhello>ActiveAudio Depenent>主持人指定的权重值配置策略表
sayhello>ActiveAudio Depenent>主持人指定 weight
sayhello
ActiveAudio Depenent 600、400、200
主持人指定 100(间隔权重值为1)
表6sayhello>主持人指定>ActiveAudio Depenent的权重值配置策略表
sayhello>主持人指定>ActiveAudio Depenent weight
sayhello 2000
主持人指定 1000(间隔权重值为10)
ActiveAudio Depenent 3、2、1
实施例三
图3是本发明实施例三提供的一种客户端视频的转发装置的结构示意图,该装置适用于执行本发明实施例提供给的一种客户端视频的转发方法。如图3所示,该装置具体可以包括:
订阅请求获取模块310,用于获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型;
第一转发策略确定模块320,用于在所述客户端的视频转发策略类型为自动转发时,根据服务器中的视频转发对应的配置文件确定视频转发策略;
视频转发模块330,用于根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发。
进一步的,还包括:
第二转发策略确定模块,用于在获取当前会议模式中的客户端的订阅请求之后,若所述客户端的视频转发策略为客户端订阅,则根据所述客户端订阅的请求确定所述客户端需要显示的客户端视频进行转发。
进一步的,所述视频转发策略包括所述影响因子事件的权重值;
相应的,视频转发模块330包括:
权重值确定子模块,用于根据所述影响因子事件的权重值和每个视频对应的检测到的影响因子事件确定每个客户端视频的权重值;
视频转发列表生成子模块,用于根据所述权重值对所述客户端视频进行排序生成视频转发列表。
进一步的,所述订阅请求还包括所述客户端显示窗口对应的标识符、所述客户端的最大分辨率和所述显示窗口的分组信息,其中,窗口的分组信息中包括每组中显示的窗口数。
进一步的,所述视频转发列表生成子模块具体用于:
按照所述客户端的最大分辨率和显示窗口的分组信息,从所述视频转发列表中选取设定数量的客户端视频转发至所述分组信息对应的显示窗口对应的客户端;
其中,所述客户端视频的分辨率低于所述最大分辨率,所述设定数量与所述显示窗口的数量相同,根据所述显示窗口对应的标识符确定所述显示窗口所属的客户端。
进一步的,还包括:
视频隐藏模块,用于在从所述视频转发列表中选取设定数量客户端视频转发至所述分组信息对应的显示窗口对应的客户端之前,将当前客户端对应的视频在所述视频转发列表中进行隐藏。
进一步的,根据所述客户端的解码能力以及当前网络带宽确定所述客户端的最大分辨率。
本发明实施例提供的客户端视频的转发装置可执行本发明任意实施例提供的客户端视频的转发方法,具备执行方法相应的功能模块和有益效果。
实施例四
图4为本发明实施例四提供的一种计算机设备的结构示意图。图4示出了适于用来实现本发明实施方式的示例性计算机设备12的框图。图4显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图4中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的客户端视频的转发方法:
也即,所述处理单元执行所述程序时实现:获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型;若所述客户端的视频转发策略类型为自动转发,则根据服务器中的视频转发对应的配置文件确定视频转发策略;根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发。
实施例五
本发明实施例五提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请所有发明实施例提供的客户端视频的转发方法:
也即,该程序被处理器执行时实现:获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型;若所述客户端的视频转发策略类型为自动转发,则根据服务器中的视频转发对应的配置文件确定视频转发策略;根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (9)

1.一种客户端视频的转发方法,其特征在于,包括:
获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型;
若所述客户端的视频转发策略类型为自动转发,则根据服务器中的视频转发对应的配置文件确定视频转发策略;
根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发;
所述影响因子事件包括主持人指定事件、限时展示事件和高音频筛选事件;
所述视频转发策略包括所述影响因子事件的权重值;
相应的,所述根据所述视频转发策略和每个视频对应的检测到的影响因子事件确定视频转发列表,包括:
根据所述影响因子事件的权重值和每个视频对应的检测到的影响因子事件确定每个客户端视频的权重值;
根据所述权重值对所述客户端视频进行排序生成视频转发列表。
2.根据权利要求1所述的方法,其特征在于,所述获取当前会议模式中的客户端的订阅请求之后,还包括:
若所述客户端的视频转发策略为客户端订阅,则根据所述客户端订阅的请求确定所述客户端需要显示的客户端视频进行转发。
3.根据权利要求2所述的方法,其特征在于,所述订阅请求还包括所述客户端显示窗口对应的标识符、所述客户端的最大分辨率和所述显示窗口的分组信息,其中,窗口的分组信息中包括每组中显示的窗口数。
4.根据权利要求3所述的方法,其特征在于,按照根据所述权重值对所述客户端视频进行排序生成视频转发列表,包括:
按照所述客户端的最大分辨率和显示窗口的分组信息,从所述视频转发列表中选取设定数量的客户端视频转发至所述分组信息对应的显示窗口对应的客户端;
其中,所述客户端视频的分辨率低于所述最大分辨率,所述设定数量与所述显示窗口的数量相同,根据所述显示窗口对应的标识符确定所述显示窗口所属的客户端。
5.根据权利要求4所述的方法,其特征在于,所述从所述视频转发列表中选取设定数量客户端视频转发至所述分组信息对应的显示窗口对应的客户端之前,还包括:
将当前客户端对应的视频在所述视频转发列表中进行隐藏。
6.根据权利要求3-5任一项所述的方法,其特征在于,根据所述客户端的解码能力以及当前网络带宽确定所述客户端的最大分辨率。
7.一种客户端视频的转发装置,其特征在于,包括:
订阅请求获取模块,用于获取当前会议模式中的客户端的订阅请求,其中,所述订阅请求包括所述客户端的视频转发策略类型;
第一转发策略确定模块,用于在所述客户端的视频转发策略类型为自动转发时,根据服务器中的视频转发对应的配置文件确定视频转发策略;
视频转发模块,用于根据所述视频转发策略和每个客户端视频对应的检测到的影响因子事件确定视频转发列表,按照所述视频转发列表对所述客户端进行视频转发;
所述影响因子事件包括主持人指定事件、限时展示事件和高音频筛选事件;
所述视频转发策略包括所述影响因子事件的权重值;
相应的,视频转发模块包括:
权重值确定子模块,用于根据所述影响因子事件的权重值和每个视频对应的检测到的影响因子事件确定每个客户端视频的权重值;
视频转发列表生成子模块,用于根据所述权重值对所述客户端视频进行排序生成视频转发列表。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-6中任一所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN201810236118.2A 2018-03-21 2018-03-21 客户端视频的转发方法、装置、设备和存储介质 Active CN108337535B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810236118.2A CN108337535B (zh) 2018-03-21 2018-03-21 客户端视频的转发方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810236118.2A CN108337535B (zh) 2018-03-21 2018-03-21 客户端视频的转发方法、装置、设备和存储介质

Publications (2)

Publication Number Publication Date
CN108337535A CN108337535A (zh) 2018-07-27
CN108337535B true CN108337535B (zh) 2020-12-29

Family

ID=62932318

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810236118.2A Active CN108337535B (zh) 2018-03-21 2018-03-21 客户端视频的转发方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN108337535B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109660826B (zh) * 2019-02-01 2020-09-29 广州视源电子科技股份有限公司 一种视频传输方法、装置、设备及存储介质
WO2021128089A1 (zh) * 2019-12-25 2021-07-01 华为技术有限公司 转发设备、网卡及报文转发方法
CN112203038B (zh) * 2020-10-12 2022-09-16 北京字节跳动网络技术有限公司 在线会议的处理方法、装置、电子设备及计算机存储介质
CN115865877B (zh) * 2023-02-13 2023-05-16 共道网络科技有限公司 音视频处理方法、设备及计算机可读存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141613A (zh) * 2007-10-10 2008-03-12 中国联合通信有限公司 一种视频会议切换控制系统及方法
CN103152545A (zh) * 2011-12-07 2013-06-12 Polycom通讯技术(北京)有限公司 一种处理纠错请求的方法、视频服务器和视频会议系统
US9237363B2 (en) * 2011-02-12 2016-01-12 Openwave Mobility, Inc. Dynamic injection of metadata into flash video
CN105656986A (zh) * 2015-11-26 2016-06-08 乐视云计算有限公司 一种直播视频的播放方法、装置及系统
CN105809556A (zh) * 2016-03-04 2016-07-27 高世强 基于用户数据更新的多维度用户智能化联络方法及系统
CN106254301A (zh) * 2015-06-11 2016-12-21 中兴通讯股份有限公司 一种会议备份方法、管理节点和会议系统
CN106302377A (zh) * 2015-06-29 2017-01-04 华为技术有限公司 媒体会话处理方法方法和相关设备及通信系统
CN106462744A (zh) * 2014-06-12 2017-02-22 微软技术许可有限责任公司 基于规则的视频重要性分析
CN107295054A (zh) * 2016-04-12 2017-10-24 中兴通讯股份有限公司 云会议资源的管理方法及装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141613A (zh) * 2007-10-10 2008-03-12 中国联合通信有限公司 一种视频会议切换控制系统及方法
US9237363B2 (en) * 2011-02-12 2016-01-12 Openwave Mobility, Inc. Dynamic injection of metadata into flash video
CN103152545A (zh) * 2011-12-07 2013-06-12 Polycom通讯技术(北京)有限公司 一种处理纠错请求的方法、视频服务器和视频会议系统
CN106462744A (zh) * 2014-06-12 2017-02-22 微软技术许可有限责任公司 基于规则的视频重要性分析
CN106254301A (zh) * 2015-06-11 2016-12-21 中兴通讯股份有限公司 一种会议备份方法、管理节点和会议系统
CN106302377A (zh) * 2015-06-29 2017-01-04 华为技术有限公司 媒体会话处理方法方法和相关设备及通信系统
CN105656986A (zh) * 2015-11-26 2016-06-08 乐视云计算有限公司 一种直播视频的播放方法、装置及系统
CN105809556A (zh) * 2016-03-04 2016-07-27 高世强 基于用户数据更新的多维度用户智能化联络方法及系统
CN107295054A (zh) * 2016-04-12 2017-10-24 中兴通讯股份有限公司 云会议资源的管理方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IPv6下远程多媒体教学系统网络服务质量研究;陈活;《软件导刊》;20110331;全文 *

Also Published As

Publication number Publication date
CN108337535A (zh) 2018-07-27

Similar Documents

Publication Publication Date Title
CN108337535B (zh) 客户端视频的转发方法、装置、设备和存储介质
US20140344286A1 (en) Method and apparatus for displaying webcast roomss
WO2014183427A1 (en) Method and apparatus for displaying webcast rooms
CN112118215A (zh) 基于话题确定的方便实时会话
US10084829B2 (en) Auto-generation of previews of web conferences
US10785270B2 (en) Identifying or creating social network groups of interest to attendees based on cognitive analysis of voice communications
US8091034B2 (en) Tiered web conference
CN110139152B (zh) 禁言方法、装置、电子设备及计算机可读存储介质
US20200259770A1 (en) Extensible chat rooms in a hosted chat environment
CN112203151B (zh) 视频处理方法、装置、电子设备及计算机可读存储介质
CN111541905B (zh) 一种直播方法、装置、计算机设备和存储介质
US11689757B2 (en) Method and apparatus for providing video streams
US11431770B2 (en) Method, system, apparatus, and electronic device for managing data streams in a multi-user instant messaging system
CN114339124A (zh) 基于媒体转发服务器的多媒体会议的录制方法及相关产品
US20130055108A1 (en) Managing an On-Line Conference Session
CN113973103A (zh) 音频处理方法、装置、电子设备及存储介质
CN113139123A (zh) 资源推荐方法、装置、服务端以及存储介质
CN111885351A (zh) 一种屏幕显示方法、装置、终端设备和存储介质
US10938869B2 (en) Conference system and method for controlling bandwidth thereof
US20190268172A1 (en) Device Ranking for Secure Collaboration
CN112291573B (zh) 直播流推送方法、装置、电子设备和计算机可读介质
US20220030302A1 (en) Automatic media control
US20210067360A1 (en) Apparatus and method for managing online conference
CN113724735A (zh) 语音流处理方法及装置、计算机可读存储介质、电子设备
US11477326B2 (en) Audio processing method, device, and apparatus for multi-party call

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant