CN110300118B - 流媒体处理方法、装置及存储介质 - Google Patents

流媒体处理方法、装置及存储介质 Download PDF

Info

Publication number
CN110300118B
CN110300118B CN201910613897.8A CN201910613897A CN110300118B CN 110300118 B CN110300118 B CN 110300118B CN 201910613897 A CN201910613897 A CN 201910613897A CN 110300118 B CN110300118 B CN 110300118B
Authority
CN
China
Prior art keywords
streaming media
video
media data
video slice
foreground mask
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
CN201910613897.8A
Other languages
English (en)
Other versions
CN110300118A (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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201910613897.8A priority Critical patent/CN110300118B/zh
Publication of CN110300118A publication Critical patent/CN110300118A/zh
Application granted granted Critical
Publication of CN110300118B publication Critical patent/CN110300118B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Landscapes

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

Abstract

本申请提供了一种流媒体处理方法、装置及存储介质。对于点播第一流媒体数据的大量客户端,播放第一流媒体数据时,可以从播放的第一流媒体数据中选取预设时长的视频切片,并将视频切片输入视频分割模型进行处理,得到该视频切片的前景掩膜,再将该前景掩膜及其视频切片的播放时间上报给流媒体服务器。可见,本申请不需要流媒体服务器对第一流媒体数据进行视频分割处理,而是将该视频分割处理操作分担到多个客户端上,即每一个客户端只需要对第一流媒体数据中的一部分进行视频分割处理,极大提高了处理效率,且大大降低了硬件、运维与运营成本、能够针对各复杂场景进行高精度的人物前景与背景分割,同时对客户端设备几乎无任何额外性能开销。

Description

流媒体处理方法、装置及存储介质
技术领域
本申请主要涉及通信技术领域,更具体地说是涉及一种流媒体处理方法、装置及存储介质。
背景技术
弹幕是指在网络上观看视频时弹出的评论性字幕,通常会在视频播放过程中从屏幕中飘过,所以,在实际应用中,如图1所示,海量弹幕往往会对正常的视频观看造成巨大干扰,譬如弹幕遮挡住播放视频中的人物等。
为了实现弹幕智能躲避前景人物,目前行业内通常是由流媒体供应商购买服务器,由服务器离线对资源库中的每一个视频的每一帧图像进行运算分析,确定出视频中的前景、背景,以使视频中的按钮、弹幕等内容,不再遮挡视频前景人物。
然而,现有的这种流媒体处理方法只能适用于背景非常单一的情况,对于背景稍微复杂的视频,前景的识别与分割准确率将会大大降低,且因需要先构建硬件基础设施,购买大量昂贵的GPU(Graphics Processing Unit,图形处理器)服务器集群对每一个视频进行人物提取,还会在硬件、耗电及运维人员等方面造成很大的成本开销;受离线能力限制,只能在云端逐个对视频进行运算,无法跟上视频上新的节奏,降低了视频观看体验。
发明内容
有鉴于此,本申请提供了一种流媒体处理方法、装置及存储介质,由大量客户端对媒体流数据中的不同视频切片进行处理,得到相应的前景掩膜,再上传至流媒体服务器,无需流媒体供应商购买专用服务器,降低了成本开销,提高了数据处理速度,进而提高了视频观看体验。
为了实现上述发明目的,本申请提供了以下技术方案:
一种流媒体处理方法,包括:
从播放的第一流媒体数据中,选取预设时长的视频切片;
下载视频分割模型,并将所述视频切片输入所述视频分割模型进行处理,得到所述视频切片的前景掩膜;
将所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间上报至流媒体服务器,以使流媒体服务器按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列。
优选地,本方法还包括:
向流媒体服务器发起针对所述视频切片的分割验证请求;
获取所述流媒体服务器响应所述分割验证请求反馈的验证结果;
若所述验证结果表明未有客户端得到所述视频切片对应的前景掩膜,执行所述下载视频分割模型步骤;
若所述验证结果表明第二客户端已得到所述视频切片对应的前景掩膜,从播放的第一流媒体数据中,重新选取预设时长的视频切片。
优选地,本方法还包括:
向流媒体服务器发起点播请求,所述点播请求中携带有本次点播请求的第二流媒体数据的标识,由所述流媒体服务器检测是否存储有与所述标识对应的前景掩膜序列;
在所述流媒体服务器存储有与所述标识对应的前景掩膜序列的情况下,接收所述流媒体服务器同步发送的第二流媒体数据、与所述标识对应的前景掩膜序列和时序弹幕数据;
对所述第二流媒体数据、与所述标识对应的前景掩膜序列和时序弹幕数据进行合成渲染,得到目标视频;
输出所述目标视频。
优选地,从播放的第一流媒体数据中,选取预设时长的视频切片,包括:
通过网页工作线程,从播放的第一流媒体数据中,选取一帧视频切片。
一种流媒体处理方法,可以包括:
向客户端发送第一流媒体数据,由所述客户端从播放的第一流媒体数据中,选取预设时长的视频切片,并将所述视频切片输入视频分割模型进行处理,得到所述视频切片的前景掩膜;
接收所述客户端上报的所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间;
按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列;
将所述前景掩膜序列与所述第一流媒体数据的标识进行关联存储。
一种流媒体处理装置,包括:
视频切片选取模块,用于从播放的第一流媒体数据中,选取预设时长的视频切片;
视频分割模块,用于下载视频分割模型,并将所述视频切片输入所述视频分割模型进行处理,得到所述视频切片的前景掩膜;
数据传输模块,用于将所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间上报至流媒体服务器,以使流媒体服务器按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列。
一种流媒体处理装置,包括:
流媒体数据发送模块,用于向客户端发送第一流媒体数据,由所述客户端从播放的第一流媒体数据中,选取预设时长的视频切片,并将所述视频切片输入视频分割模型进行处理,得到所述视频切片的前景掩膜;
数据接收模块,用于接收所述客户端上报的所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间;
合并模块,用于按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列;
存储模块,用于将所述前景掩膜序列与所述第一流媒体数据的标识进行关联存储。
一种存储介质,其上存储有程序,所述程序被处理器调用,实现如上所属的任一项所述的流媒体处理方法。
由此可见,与现有技术相比,本申请提供了一种流媒体处理方法、装置及存储介质,对于点播第一流媒体数据的大量客户端,播放第一流媒体数据时,可以从播放的第一流媒体数据中选取预设时长的视频切片,并将视频切片输入视频分割模型进行处理,得到该视频切片的前景掩膜,再将该前景掩膜及其视频切片的播放时间上报给流媒体服务器。可见,本申请不需要流媒体服务器对第一流媒体数据进行视频分割处理,而是将该视频分割处理操作分担到多个客户端上,即每一个客户端只需要对第一流媒体数据中的一部分进行视频分割处理,极大提高了处理效率,且大大降低了硬件、运维与运营成本、能够针对各复杂场景进行高精度的人物前景与背景分割,同时对客户端设备几乎无任何额外性能开销。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种弹幕遮挡前景人物的示意图;
图2为本申请实施例提供的一种视频画面的示意图;
图3为本申请实施例提供的一种流媒体处理方法应用于客户端的流程图;
图4为本申请实施例提供的一种选取视频切片的效果示意图;
图5为本申请实施例提供的一种前景掩膜的获取示意图;
图6为本申请实施例提供的一种流媒体处理方法的应用的示意图;
图7为本申请实施例提供的一种验证方法应用于客户端的流程图;
图8为本申请实施例提供的一种目标视频输出方法应用于客户端的流程图;
图9为本申请实施例提供的一种流媒体处理方法应用于流媒体服务器的流程图;
图10为本申请实施例提供的一种验证方法应用于流媒体服务器的流程图;
图11为本申请实施例提供的一种流媒体处理系统架构图;
图12为本申请实施例提供的一种流媒体处理装置应用于客户端的结构图;
图13为本申请实施例提供的一种流媒体处理装置应用于流媒体服务器的结构图;
图14为本申请实施例提供的一种流媒体处理设备结构图。
具体实施方式
本申请发明人研究发现,为了实现弹幕智能躲避前景人物的目标,需要对视频中的每一帧图片进行前景与背景的分割。其中,前景人物指的是用户在观看视频过程中感兴趣的主要画面,相反的,背景指的是视频播放过程中的相对不重要的,用户可能不感兴趣的画面。可以理解的是,可以根据需求识别前景与背景。
例如,如图2示出了视频的一帧画面示意图,该示意图中包括跳舞的男人以及周围的舞台布置。在一种可能的情况下,用户在观看该视频的该帧画面时,可能感兴趣的画面为图中所示的跳舞的男人,相对于跳舞的男人舞台布置(例如主持台或背景幕布)则可能为用户不感兴趣的画面。即,在图2所示的视频画面中,前景人物为跳舞的人,背景为舞台布置及画面的空白处。在另一种可能的情况下,用户在观看该视频的该帧画面时,可能感兴趣的画面为图中所示的跳舞的人以及舞台布置的各个物品。即,在图2所示的视频画面中,前景人物为跳舞的人舞台布置的各个物品,背景为视频画面的空白处。
目前提出的,在流媒体服务器端采用基于深度学习的实例分割技术,以及在流媒体服务器端采用基于传统图像算法的分割技术这两种现有方式,遮挡效果不理想,不能很好的实现弹幕智能躲避前景人物,导致不能保证用户良好的观看体验,而且,如上文背景技术描述,上述两种方法的实现均在流媒体服务器上实现相应的算法,才会造成大量的成本开销,导致方法应用困难。
基于上述分析,本申请提出将对同一个流媒体数据包含的每一帧或少量帧图像的处理,分配给多个客户端进行分别处理,不仅提高了图像处理效率,且不用在购买大量,昂贵的GPU(Graphics Processing Unit,图形处理器)服务器集群,降低了成本开销,且不再受离线能力限制,能够及时跟上视频上新的节奏,提高视频观看体验。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提供的流媒体处理方法主要可以适用于视频播放过程中,需要实现弹幕智能躲避前景人物以提高用户的观看体验,同时降低成本开销。需要说明的是,本申请提供的各个实施例提及的弹幕可以包括:文字性评论弹幕、按钮弹幕或者表情弹幕等。
可选的,本申请提供的流媒体处理方法可以应用于安装在智能电子设备中的客户端,其中电子设备可以包括手机、平板或电脑等,客户端的版本可以包括网页客户端(即windows web)、安卓客户端或苹果客户端等。其中,客户端能够支持对流媒体的点播及播放。下文在描述各方法实施例时不再说明。
另外,本申请提供的流媒体处理方法还可以应用于流媒体服务器,流媒体服务器可以是设置于网络侧的服务设备,可以与客户端通过网络进行数据交互。并且,流媒体服务器可以是单台服务器实现,或是多台服务器组成的服务器集群实现,也可以是基于云计算平台实现。本方案中的流媒体服务器可以是由流媒体供应商提供的服务器。
需要说明,对于分别应用于客户端和流媒体服务器的流媒体处理方法,由于是从不同角度来描述流媒体处理方法,因此,相应实施例所执行的方法步骤是不同的。
接下来将先对应用于客户端的场景下实现的流媒体处理方法进行介绍,图3示例了一种流媒体处理方法应用于客户端的流程图,该方法可以包括:
步骤S301:客户端从播放的第一流媒体数据中,选取预设时长的视频切片。
流媒体指在网络在线状态下中使用流式传输技术的连续时基媒体,例如:音频、视频或多媒体文件。一般地,本申请实施例提及的流媒体包括可以在客户端点播的视频。
在实际应用中,随着智能电子设备的普及,对于任一流媒体,通常会有多个客户端同时对其点播,对于点播该流媒体的各客户端所播放的该流媒体内容可以不同,本申请提出的方法实施例可以是在多个客户端同时播放同一流媒体数据的情况下实现。
流媒体服务器(即云端)为运营商建立的可以存储海量视频以及提供客户端的点播服务的软件平台。当然,流媒体服务器可以具有多种功能,本申请实施例对其复杂的工作原理及功能不做赘述。
由上可知,当用户在客户端点播视频时,该客户端将收到流媒体服务器发送的该视频的流媒体数据,客户端可以基于该流媒体数据利用H5技术在线播放该视频,而无需将该视频下载至本地。可以理解的是,海量用户可以在同一时间点播同一段视频,即海量客户端可以同时播放该视频。
本步骤中,针对任一正在客户端播放的视频,将该视频对应的流媒体数据定义为第一流媒体数据。在该视频播放过程中,从播放的第一流媒体数据中,选取预设时长的视频切片。其中,视频切片指的是从一段视频截取出的视频片段,可以根据视频的清晰度、用户的播放顺序或者播放设置预设该视频切片的时长。
例如,以正在某客户端播放的视频A为例,其中,该视频A的时长为n秒,如图4所示,图4示出了客户端从视频A中选取1s的视频切片的示意图。即,可以选择从播放的视频A中,选取自视频第1秒至视频第2秒的时长为1s的视频切片。
步骤S302:客户端下载视频分割模型,并将视频切片输入视频分割模型进行处理,得到视频切片的前景掩膜。
具体地,可以在用户无感知的情况下,由客户端自动构建深度神经网络运行环境,并自动下载视频分割模型。其中,视频分割模型包括用于获取前景掩膜的算法模型,可选地,视频分割模型可以包括MASKR-CNN。可选地,该视频分割模型的输入数据为视频切片,输出数据为该视频切片对应的前景掩膜。其中,前景掩膜指的是针对视频切片中主要前景人物的滤镜模板,即该前景掩膜可以对其对应的视频切片中的主要前景人物进行遮挡。
其中,上述自动构建深度神经网络运行环境并自动下载视频分割模型的方法,根据客户端种类的不同可以包括多种。以客户端为网页客户端为例,该网页客户端可以在浏览器的JS引擎中,构建自动构建深度神经网络运行环境,并同步下载视频分割模型。
本步骤中,可以将步骤S301中获取的视频切片输入下载的视频分割模型进行处理,得到视频切片的前景掩膜。即,将视频切片作为视频分割模型的输入,获取其输出的该视频切片的前景掩膜。
进一步,以上述举例的视频A为例,该视频A的时长为n秒,步骤S301中选取自视频A第1秒至视频第2秒的时长为1s的视频切片。本步骤将该视频切片输入至视频分割模型MASKR-CNN,得到该视频切片的前景掩膜如附图5所示。可以看出,该视频切片对应的视频画面中的前景人物为主人公,所以得到的前景掩膜是与该主人公轮廓相同的,可以对该主人公进行遮挡的画面。
需要说明的是,上述视频分割模型可以是基于神经网络等深度学习算法,对根据用户的观看需求选择的大量训练数据进行训练得到的,这样可以针对复杂场景下的前景进行准确的分割,得到符合用户需求的前景掩膜,保证用户观看体验的前景掩膜。
步骤S303:客户端将前景掩膜及视频切片在第一流媒体数据中的播放时间上报至流媒体服务器,以使流媒体服务器按照播放时间,对不同客户端上报的第一流媒体数据的多个前景掩膜进行合并,得到第一流媒体数据的前景掩膜序列。
具体地,上述步骤为针对第一流媒体数据,由正在播放该第一流媒体数据的一个客户端选取预设时长的视频切片。可以理解的是,还可以记录该视频切片在第一流媒体数据中的播放时间,例如上述的视频A的视频切片在视频A中的播放时间为第1秒至第2秒。所以得到的该视频切片对应的前景掩膜的时间也即第1秒至第2秒。
进一步地,该客户端可以将其获选取的前景掩膜及视频切片在第一流媒体数据中的播放时间上报至流媒体服务器。
可以理解的是,每一段视频都为一段连续的视频,且可能同时存在海量客户端同时播放该视频,所以每一个客户端都可以按照上述的方法步骤,基于该第一流媒体数据,选取预设时长的视频切片,并进一步得到该视频片段对应的前景掩膜。基于此,不同客户端针对第一流媒体数据,可以同时将其获取的前景掩膜及其对应的视频切片在第一流媒体数据中的播放时间上报至流媒体服务器。以网页客户端为例,海量网页客户端可以分别基于REST API(RepresentationalState Transfer,表征状态转移;Application ProgrammingInterface,应用程序编程接口)将其各自针对第一流媒体数据获取的前景掩膜及其对应的视频切片在第一流媒体数据中的播放时间上报至流媒体服务器。可见,由海量客户端同时进行上述步骤,大大提高了生成前景掩膜的效率,例如,针对一个时长为一小时的第一流媒体数据,假设有3600个用户端同时播放该视频时,只需要5~10秒,就可以完成上述步骤。对比与传统的利用服务器进行前景与背景的分割方法(大概需要2~4小时的运算),大大节省了时间,提高效率。
可以理解的是,流媒体服务器可以同时接收多个前景掩膜,及其对应的视频切片在第一流媒体数据中的播放时间,在此基础上,流媒体服务器可以按照播放时间,对不同客户端上报的第一流媒体数据的多个前景掩膜进行排序并合并,得到第一流媒体数据的前景掩膜序列。
接下来,参照附图6并以视频A为例,进一步对上述过程进行说明。视频A的时长为n秒,假设同时点播该视频A的客户端数量为m,即在当前时刻有m个客户端接收视频A的播放数据并播放该视频。需要说明的是,该m个客户端播放该视频的方式可能是顺序播放或跳跃播放。
如图6所示,首先,m个客户端经上述步骤S301可以选取m个选取预设时长为1s的视频切片,分别为视频切片A1,视频切片A2…视频切片Am,视频切片Am-1。
然后将该m个视频切片输入视频分割模型进行处理,得到该m个视频切片对应的m个前景掩膜,分别为前景掩膜B1,前景掩膜B2,…,前景掩膜Bm-1,前景掩膜Bm。
进一步地,可以将该m个前景掩膜及其分别对应的视频切片在视频A中的播放时间上报至流媒体服务器。以使流媒体服务器按照该m个视频切片的播放时间,对该m个客户端上报的m个前景掩膜进行合并,得到视频A的前景掩膜序列。
由此可见,本实施例中,对于点播第一流媒体数据的大量客户端,播放第一流媒体数据时,可以从播放的第一流媒体数据中选取预设时长的视频切片,并将视频切片输入视频分割模型进行处理,得到该视频切片的前景掩膜,再将该前景掩膜及其视频切片的播放时间上报给流媒体服务器。可见,本申请不需要流媒体服务器对第一流媒体数据进行视频分割处理,而是将该视频分割处理操作分担到多个客户端上,即每一个客户端只需要对第一流媒体数据中的一部分进行视频分割处理,极大提高了处理效率,且大大降低了硬件、运维与运营成本、能够针对各复杂场景进行高精度的人物前景与背景分割,同时对客户端设备几乎无任何额外性能开销。
接下来提出本申请实施例对上述步骤S301,从播放的第一流媒体数据中,选取预设时长的视频切片的过程进行介绍。
具体地,选取预设时长的视频切片的方法可以包括多种,可以根据第一流媒体数据的种类、复杂程度或客户端预设要求来预设视频切片的时长。例如,针对复杂程度较低的第一媒体数据,视频切片的时长可以较长;而针对复杂程度较高的第一媒体数据,为了保证用户观看体验,视频切片的时长较短。
另外,可以按照帧数来预设视频切片的时长。在图像信息领域,每一帧视频都是静止的图象,快速连续地显示帧便形成了运动的假象,因此高的帧率可以得到更流畅、更逼真的动画。基于此,为了保证用户良好的观看体验,可以将视频切片的时长预设为一帧视频对应的时长。也即,可以通过网页工作线程(即Web Worker线程),从播放的第一流媒体数据中,选取一帧视频切片。其中,网页工作线程是使用多个线程并发执行程序,通过使用多线程代码,可以保证不影响当前视频的播放。
可以理解的是,由于存在海量客户端点播同一视频的情况,所以,可能存在不同的客户端从播放的第一流媒体数据中,选取的视频切片相同。例如,针对视频A,两个不同的客户端都得到了播放时间为第1秒至第2秒的视频切片,进一步都得到该视频切片对应的前景掩膜。
对于此,可选的一种处理方法为,将重复的前景掩膜及视频切片在第一流媒体数据中的播放时间上报至流媒体服务器,以便流媒体服务器对重复部分进行取舍。但是,这种方法浪费大量的重复获取同一视频切片及其前景掩膜的时间,所以本案发明人经过进一步研究提出了下述申请实施例,介绍了一种避免重复获取同一前景掩膜的方法。如附图7所示,具体可以包括:
S701:向流媒体服务器发起针对视频切片的分割验证请求。
具体地,当多个已完成上述步骤S303的客户端将获取的前景掩膜及视频切片在第一流媒体数据中的播放时间上报至流媒体服务器后,流媒体服务器可以对上报的数据进行存储。所以,当新的客户端通过步骤S301从播放的第一流媒体数据中,选取到预设时长的视频切片之后,进一步可以向流媒体服务器发起针对该视频切片的分割验证请求,用以验证该视频切片是否是重复的视频切片。
可选地,可以将该视频切片在第一流媒体数据中的播放时间发送至流媒体服务端,并发送分割验证请求。
S702:获取流媒体服务器响应分割验证请求反馈的验证结果。
具体地,客户端获取的验证结果可以表明该视频切片是否是重复的视频切片。可以理解的是,流媒体服务器中包含已经获取的前景掩膜及其对应的视频切片在第一流媒体数据中的播放时间。
S703:判断验证结果是否表明有客户端得到视频切片对应的前景掩膜。
具体地,如果不存在前景掩膜对应的视频切片在第一流媒体数据中的播放时间与该视频切片在第一流媒体数据中的播放时间相同,则确定验证结果表明未有客户端得到视频切片对应的前景掩膜。此时,执行下述步骤S704。
如果存在至少一个前景掩膜对应的视频切片在第一流媒体数据中的播放时间与该视频切片在第一流媒体数据中的播放时间相同,则确定验证结果表明已经有至少一个客户端已得到该视频切片对应的前景掩膜,将该至少一个客户端定义为第二客户端。此时,执行下述步骤S705。
S704:若验证结果表明未有客户端得到视频切片对应的前景掩膜,客户端执行下载视频分割模型步骤。
具体地,当确定验证结果表明未有客户端得到视频切片对应的前景掩膜时,则确定还没有客户端获取该视频切片对应的前景掩膜,所以该客户端可以继续执行步骤S302介绍的下载视频分割模型步骤,即,由该客户端下载视频分割模型,并将视频切片输入视频分割模型进行处理,得到视频切片的前景掩膜。
S705:若验证结果表明第二客户端已得到视频切片对应的前景掩膜,客户端从播放的第一流媒体数据中,重新选取预设时长的视频切片。
具体地,当确定验证结果表明已经有至少一个客户端已得到该视频切片对应的前景掩膜时,则确定已经有第二客户端获取该视频切片对应的前景掩膜。所以该客户端可以返回重新执行步骤S301介绍的选取预设时长的视频切片的过程。
例如,客户端A选取的视频切片A在第一流媒体数据中的播放时间为第2秒至第3秒。客户端B选取的视频切片B在第一流媒体数据中的播放时间为第5秒至第6秒。两个客户端分别向流媒体服务器发送针对其对应视频切片的分割验证请求。
假设流媒体服务器中已经接收到其他客户端上报的视频切片A对应的前景掩膜,但是没有接收到其他客户端上报的视频切片B对应的前景掩膜。所以客户端A获取的验证结果表明第二客户端已得到视频切片对应的前景掩膜,可选地,标记为Y。客户端B获取的验证结果表明未有客户端得到视频切片对应的前景掩膜,可选地,标记为N。
基于上述验证结果,客户端A可以执行从播放的第一流媒体数据中,重新选取预设时长的视频切片。客户端B可以执行下载视频分割模型,并将视频切片输入视频分割模型进行处理,得到视频切片的前景掩膜。
基于上述各实施例,本方法还可以应用在客户端发起流媒体点播并向用户播放的场景下。所以本申请实施例结合附图8对此进行进一步地介绍。具体可以包括:
S801:向流媒体服务器发起点播请求。
具体地,点播请求中携带有本次点播请求的第二流媒体数据的标识,该标识可以唯一地代表该第二流媒体数据。该标识的作用是能够被流媒体服务器识别,并基于此检测是否存储有与该标识对应的前景掩膜序列。
S802:在流媒体服务器存储有与标识对应的前景掩膜序列的情况下,接收流媒体服务器同步发送的第二流媒体数据、与标识对应的前景掩膜序列和时序弹幕数据。
具体地,流媒体服务器中存储有已经由大量客户端针对流媒体数据上报的前景掩膜生成的前景掩膜序列,当客户端在流媒体服务器存储有与标识对应的前景掩膜序列的情况,则表明,已经有客户端将其针对第二流媒体数据得到的视频切片对应的前景掩膜及视频切片在第二流媒体数据中的播放时间上报至流媒体服务器。以使流媒体服务器已经按照播放时间,对不同客户端上报的第二流媒体数据的多个前景掩膜进行合并,得到第二流媒体数据的前景掩膜序列。
基于此,该客户端可以接收流媒体服务器同步发送的第二流媒体数据、与标识对应的前景掩膜序列和时序弹幕数据。
其中,第二流媒体数据为该客户端点播的视频数据;与标识对应的前景掩膜序列为存储在流媒体服务器中的、第二流媒体数据的前景掩膜序列;时序弹幕数据指的是按照接收时间,对用户输入的评论性弹幕进行合并得到的时序序列。显然第二流媒体数据、与标识对应的前景掩膜序列和时序弹幕数据均为按照时间顺序播放的时序序列,且三者之间由对应关系。
以第二流媒体数据为视频A为例进行说明,该视频A的时长为n秒。基于上述各实施例,客户端在点播该时频A后,可以在接收该n秒时视频的同时,同步接收该视频A对应的时长为n秒的前景掩膜序列,以及该视频A对应的n秒的时序弹幕数据。
S803:对第二流媒体数据、与标识对应的前景掩膜序列和时序弹幕数据进行合成渲染,得到目标视频。
具体地,上述可知第二流媒体数据、与标识对应的前景掩膜序列和时序弹幕数据为时间相同且同步的三种时序序列,所以可以对上述三种时序序列进行渲染,得到渲染后的视频画面,能进一步由不间断的视频画面合并得到目标视频。如图9所示,为视频A对应的时长为n秒的前景掩膜序列,以及该视频A对应的n秒的时序弹幕数据的渲染过程示意图。图中以一帧的前景掩膜序列及其对应的时序弹幕数据以及对应的视频A的渲染过程为例,示例了目标视频中的该帧画面。
可选地,可以利用H5技术以及CSS3技术进行渲染,该渲染技术为现有技术,本实施例不做赘述。
S804:输出目标视频。
可以理解的是,客户端设置有面向用户的展示屏幕,可以在点播第二流媒体数据后播放上述得到的目标视频。该目标视频即为实现智能防遮挡技术的视频画面。该视频播放过程中,弹幕可以智能的躲避画面上的前景人物,大大提高了用户观看体验。
由上述各个实施例可以看出,本申请不需要流媒体服务器对第一流媒体数据进行视频分割处理,而是将该视频分割处理操作分担到多个客户端上,即每一个客户端只需要对第一流媒体数据中的一部分进行视频分割处理,极大提高了处理效率,且大大降低了硬件、运维与运营成本、能够针对各复杂场景进行高精度的人物前景与背景分割,同时对客户端设备几乎无任何额外性能开销。
接下来结合附图9对本申请提供的流媒体处理方法应用于流媒体服务器的场景进行介绍,图9示例了一种流媒体处理方法应用于服务器的流程图,该方法详细可以包括:
S901:向客户端发送第一流媒体数据。
具体地,流媒体服务器存数有海量的流媒体数据,当用户端点播第一流媒体数据时,流媒体服务器将发送该第一流媒体数据至该用户端,以使该客户端可以基于该流媒体数据利用H5技术在线播放该视频,而无需将该视频下载至本地。可以理解的是,流媒体服务器可以同时向多个客户端发送该第一流媒体数据,以使多个客户端可以在同一时间点播同一段视频。
基于此,由客户端从播放的第一流媒体数据中,选取预设时长的视频切片,并将视频切片输入视频分割模型进行处理,得到视频切片的前景掩膜。该过程应用于客户端,具体实现方式可以参照上述描述,本申请实施例不做赘述。
S902:接收客户端上报的前景掩膜及视频切片在第一流媒体数据中的播放时间。
具体地,视频切片为客户端在播放的第一流媒体数据中选取的预设时长的视频片段对应的画面,其对应的前景掩膜为客户端将该视频切片输入视频分割模型进行处理,得到的视频切片对应的能够遮挡前景的画面。进一步的,当客户端将其获取的该前景掩膜及其对应的视频切片在第一流媒体数据中的播放时间上报至流媒体服务器后,流媒体服务器可以接收并存储该前景掩膜及其对应的视频切片在第一流媒体数据中的播放时间。
S903:按照播放时间,对不同客户端上报的第一流媒体数据的多个前景掩膜进行合并,得到第一流媒体数据的前景掩膜序列。
具体地,由于不同客户端从第一流媒体数据选取的视频切片不同,则其得到视频切片的前景掩膜不同。所以流媒体服务器可以接收多个客户端上报的第一流媒体数据的多个前景掩膜及其各自对应的视频切片在该第一流视频数据中的播放时间。可以理解的是,第一流媒体数据可以看作是具有时序的数据流,所以流媒体服务器可以进一步按照其接收的播放时间,对不同客户端上报的第一流媒体数据的多个前景掩膜进行合并,由此可以得到第一流媒体数据的前景掩膜序列。可以理解的是,该前景掩膜序列是与该第一流媒体数据时间相对应的时间序列。
S904:将前景掩膜序列与第一流媒体数据的标识进行关联存储。
具体地,可以为每一第一流媒体数据添加标识,该标识可以唯一的表征该第一流媒体数据。即,一个第一流媒体数据对应于其特定的一个标识。又因为,前景序列与第一流媒体数据一一对应。所以针对每一前景序列,其对应于一个第一流媒体数据,并对应于该第一流媒体数据的标识。据此,流媒体服务器将前景掩膜序列与第一流媒体数据的标识进行关联存储。
提出以下申请实施例并结合附图10对本申请还包括的实施步骤进行说明。具体可以包括:
S1001:接收客户端针对任一视频切片发送的分割验证请求。
具体地,为了避免客户端对于第一流媒体数据重复获取同一其前景掩膜的情况,需要进行针对选取的视频切片的验证过程。可选地,当客户端向流媒体服务器发起针对视频切片的分割验证请求后,接收客户端针对任一视频切片发送的分割验证请求。
S1002:响应分割验证请求,验证是否有客户端已得到视频切片对应的前景掩膜。
具体地,流媒体服务器进一步响应上述针对任一视频切片发送的分割验证请求,并基于该分割验证请求,验证是否有客户端已得到视频切片对应的前景掩膜。
可选地,将客户端选取的该视频切片在第一流媒体数据中的播放时间与流媒体服务器中包含的所有前景掩膜对应的视频切片在第一流媒体数据中的播放时间进行匹配。由流媒体服务器确定是否包含与该前景掩膜相同的已接收的前景掩膜。如果有,则确定有客户端已得到视频切片对应的前景掩膜;如果没有,则确定还没有客户端得到视频切片对应的前景掩膜。
可选地,上述过程可以基于流媒体服务器中存储的第一流媒体数据的视频切片分割状态进行,其中,第一流媒体数据的视频切片分割状态指的是:流媒体服务器根据已经接收的多个客户端上报的前景掩膜及视频切片在第一流媒体数据中的播放时间创建并储存的。可选地,视频切片分割状态可以记载针对该第一流媒体数据中的任一视频切片是否已经有客户端得到其对应的前景掩膜
需要说明的是,每当流媒体接收一个客户端上报的前景掩膜及其对应的视频切片在第一流媒体中的播放时间,都会触发对第一流媒体数据的视频切片分割状态的更新过程。
本步骤可以进一步,根据利用更新后的视频切片分割状态,验证是否存储有视频切片对应的前景掩膜。
S1003:将得到的验证结果反馈至发起分割验证请求的客户端。
具体地,验证结果可以表明未有客户端得到视频切片对应的前景掩膜,或,第二客户端已得到视频切片对应的前景掩膜。流媒体服务器可以进一步将该验证结果反馈至客户端,可以理解的是,该客户端是针对该视频切片发送分割验证请求至流媒体服务端的客户端
基于上述所有实施例,本方法可以同时应用于流媒体服务端、第一客户端或第二客户端,接下来假设第一流媒体数据为视频A且第二流媒体数据也为视频A。结合附图11,对本方法的可选的一种具体实施过程进行说明,图11为本申请实施例提供的流媒体处理的一种系统架构图。具体可以包括:
客户端可以从播放的视频A中,选取一帧的视频切片,其中,视频A是基于流媒体服务器发送至客户端的视频数据播放。
客户端可以基于该视频切片发送分割验证请求至流媒体服务端,此时流媒体服务器可以接收该分割验证请求,并基于响应分割验证请求,验证是否有客户端已得到视频切片对应的前景掩膜。并将得到的验证结果反馈至该客户端。该客户端可以上述验证结果,并基于验证结果判断是否有客户端已得到视频切片对应的前景掩膜。图11中示例了当验证结果表明未有客户端得到视频切片对应的前景掩膜的情况下(即验证结果为否),客户端进一步下载视频分割模型。并将视频切片输入视频分割模型进行处理,得到视频切片的前景掩膜。
需要说明的是,还可能存在验证结果表明已经有客户端得到视频切片对应的前景掩膜的情况(即验证结果为是),则,客户端需要重新选取视频切片。
由此,完成一个客户端对于视频A的前景掩膜的获取过程,可以理解的是,因为客户端用户数量庞大,所以不同的客户端可以分别对播放中的视频A进行上述过程,以得到多个不同的视频A的前景掩膜。
进一步地,不同客户端可以将各自的前景掩膜及其对应的视频切片在视频A中的播放时间上报至流媒体服务端。流媒体服务器可以接收客户端上报的前景掩膜及视频切片在第一流媒体数据中的播放时间,并基于此,按照播放时间,对不同客户端上报的第一流媒体数据的多个前景掩膜进行合并,得到第一流媒体数据的前景掩膜序列。
可以理解的是,每个流媒体数据应对应于一个标识,所以可以将前景掩膜序列与视频A的标识进行关联存储。进一步地,当有其他客户端点播视频A的时候,需要发送带有视频A的标识的点播请求至流媒体服务器。当流媒体服务器接收到该点播请求时,可以基于已经存储的前景掩膜序列与视频A数据的标识的对应关系,向该其他客户端发送视频A、与标识对应的前景掩膜序列和时序弹幕数据。
基于此,该其他客户端可以对上述视频A、与标识对应的前景掩膜序列和时序弹幕数据进行合成渲染,得到目标视频,显然该目标视频为视频A。此时,在视频A的播放过程中,弹幕不再遮挡画面中的前景人物,达到智能躲避前景人物的目的,提高用户的观看体验。
上述本申请公开的实施例中详细描述了方法,对于本申请的方法可采用多种形式的装置实现,因此本申请还公开了一种装置,下面给出具体的实施例进行详细说明。
如图12所示,为本申请实施例公开的一种应用于客户端的流媒体处理装置结构示意图,该装置可以包括:
视频切片选取模块1201,用于从播放的第一流媒体数据中,选取预设时长的视频切片;
视频分割模块1202,用于下载视频分割模型,并将所述视频切片输入所述视频分割模型进行处理,得到所述视频切片的前景掩膜;
数据传输模块1203,用于将所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间上报至流媒体服务器,以使流媒体服务器按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列。
可选地,上述视频切片选取模块1201可以包括:
帧级视频切片选取模块,用于通过网页工作线程,从播放的第一流媒体数据中,选取一帧视频切片。
可选地,基于上述实施例,本申请提供的装置还可以包括:
分割验证请求发起模块,用于向流媒体服务器发起针对所述视频切片的分割验证请求;
验证结果获取模块,用于获取所述流媒体服务器响应所述分割验证请求反馈的验证结果;
第一验证结果响应模块,用于当上述验证结果获取模块获取的验证结果表明未有客户端得到所述视频切片对应的前景掩膜,执行所述下载视频分割模型步骤;
第二验证结果响应模块,用于当上述验证结果获取模块获取的验证结果表明第二客户端已得到所述视频切片对应的前景掩膜,从播放的第一流媒体数据中,重新选取预设时长的视频切片。
可选地,基于上述各实施例,本申请提供的装置还可以包括:
点播请求发送模块,用于向流媒体服务器发起点播请求,所述点播请求中携带有本次点播请求的第二流媒体数据的标识,由所述流媒体服务器检测是否存储有与所述标识对应的前景掩膜序列;
数据接收模块,用于在所述流媒体服务器存储有与所述标识对应的前景掩膜序列的情况下,接收所述流媒体服务器同步发送的第二流媒体数据、与所述标识对应的前景掩膜序列和时序弹幕数据;
合成渲染模块,用于对所述第二流媒体数据、与所述标识对应的前景掩膜序列和时序弹幕数据进行合成渲染,得到目标视频;
目标视频输出模块,用于输出所述目标视频。
如图13所示,为本申请实施例公开的一种应用于服务器的流媒体处理装置结构示意图,该装置可以包括:
流媒体数据发送模块1301,用于向客户端发送第一流媒体数据,由所述客户端从播放的第一流媒体数据中,选取预设时长的视频切片,并将所述视频切片输入视频分割模型进行处理,得到所述视频切片的前景掩膜;
数据接收模块1302,用于接收所述客户端上报的所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间;
合并模块1303,用于按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列;
存储模块1304,用于将所述前景掩膜序列与所述第一流媒体数据的标识进行关联存储。
可选地,本申请实施例提供的流媒体处理装置还可以包括:
验证请求接收模块,用于接收客户端针对任一视频切片发送的分割验证请求;
验证模块,用于响应验证请求接收模块接收到的分割验证请求,验证是否有客户端已得到所述视频切片对应的前景掩膜;
结果反馈模块,用于将得到的验证结果反馈至发起所述分割验证请求的客户端。
可选地,基于上述各实施例,本装置还可以包括:
状态更新模块,用于在数据接收模块1302接收到客户端上报的所述前景掩膜之后,更新所述第一流媒体数据的视频切片分割状态;
基于此,上述验证模块还可以包括:
更新状态利用模块,用于利用更新后的视频切片分割状态,验证是否存储有所述视频切片对应的前景掩膜。
本申请实施例还提供了一种流媒体处理设备,请参阅图14,示出了该流媒体处理设备的结构示意图,该设备可以包括:至少一个处理器1401,至少一个通信接口1402,至少一个存储器1403和至少一个通信总线1404;
在本申请实施例中,处理器1401、通信接口1402、存储器1403、通信总线1404的数量为至少一个,且处理器1401、通信接口1402、存储器1403通过通信总线1404完成相互间的通信;
处理器1401可能是一个中央处理器CPU,或者是特定集成电路ASIC
(Application Specific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路等;
存储器1403可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory)等,例如至少一个磁盘存储器;
其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序应用于客户端,用于:
从播放的第一流媒体数据中,选取预设时长的视频切片;
下载视频分割模型,并将所述视频切片输入所述视频分割模型进行处理,得到所述视频切片的前景掩膜;
将所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间上报至流媒体服务器,以使流媒体服务器按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列。
所述程序应用于流媒体服务器,用于:
向客户端发送第一流媒体数据,由所述客户端从播放的第一流媒体数据中,选取预设时长的视频切片,并将所述视频切片输入视频分割模型进行处理,得到所述视频切片的前景掩膜;
接收所述客户端上报的所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间;
按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列;
将所述前景掩膜序列与所述第一流媒体数据的标识进行关联存储。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
本申请实施例还提供一种存储介质,该存储介质可存储有适于处理器执行的程序,所述程序应用于客户端,用于:
从播放的第一流媒体数据中,选取预设时长的视频切片;
下载视频分割模型,并将所述视频切片输入所述视频分割模型进行处理,得到所述视频切片的前景掩膜;
将所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间上报至流媒体服务器,以使流媒体服务器按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列。
所述程序应用于流媒体服务器,用于:
向客户端发送第一流媒体数据,由所述客户端从播放的第一流媒体数据中,选取预设时长的视频切片,并将所述视频切片输入视频分割模型进行处理,得到所述视频切片的前景掩膜;
接收所述客户端上报的所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间;
按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列;
将所述前景掩膜序列与所述第一流媒体数据的标识进行关联存储。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
另外,需要说明的是,关于上述各实施例中,诸如第一、第二等之类的关系术语仅仅用来将一个操作、单元或模块与另一个操作、单元或模块区分开来,而不一定要求或者暗示这些单元、操作或模块之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法或者系统中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种流媒体处理方法,所述方法包括:
从播放的第一流媒体数据中,选取预设时长的视频切片;
下载视频分割模型,并将所述视频切片输入所述视频分割模型进行处理,得到所述视频切片的前景掩膜;
将所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间上报至流媒体服务器,以使流媒体服务器按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列。
2.根据权利要求1所述的方法,所述方法还包括:
向流媒体服务器发起针对所述视频切片的分割验证请求;
获取所述流媒体服务器响应所述分割验证请求反馈的验证结果;
若所述验证结果表明未有客户端得到所述视频切片对应的前景掩膜,执行所述下载视频分割模型步骤;
若所述验证结果表明第二客户端已得到所述视频切片对应的前景掩膜,从播放的第一流媒体数据中,重新选取预设时长的视频切片。
3.根据权利要求1或2所述的方法,所述方法还包括:
向流媒体服务器发起点播请求,所述点播请求中携带有本次点播请求的第二流媒体数据的标识,由所述流媒体服务器检测是否存储有与所述标识对应的前景掩膜序列;
在所述流媒体服务器存储有与所述标识对应的前景掩膜序列的情况下,接收所述流媒体服务器同步发送的第二流媒体数据、与所述标识对应的前景掩膜序列和时序弹幕数据;
对所述第二流媒体数据、与所述标识对应的前景掩膜序列和时序弹幕数据进行合成渲染,得到目标视频;
输出所述目标视频。
4.根据权利要求1或2所述的方法,所述从播放的第一流媒体数据中,选取预设时长的视频切片,包括:
通过网页工作线程,从播放的第一流媒体数据中,选取一帧视频切片。
5.一种流媒体处理方法,所述方法包括:
向客户端发送第一流媒体数据,由所述客户端从播放的第一流媒体数据中,选取预设时长的视频切片,并将所述视频切片输入视频分割模型进行处理,得到所述视频切片的前景掩膜;
接收所述客户端上报的所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间;
按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列;
将所述前景掩膜序列与所述第一流媒体数据的标识进行关联存储。
6.根据权利要求5所述的方法,所述方法还包括:
接收客户端针对任一视频切片发送的分割验证请求;
响应所述分割验证请求,验证是否有客户端已得到所述视频切片对应的前景掩膜;
将得到的验证结果反馈至发起所述分割验证请求的客户端。
7.根据权利要求6所述的方法,在接收到所述客户端上报的所述前景掩膜之后,所述方法还包括:
更新所述第一流媒体数据的视频切片分割状态;
所述验证是否有客户端已得到所述视频切片对应的前景掩膜,包括:
利用更新后的视频切片分割状态,验证是否存储有所述视频切片对应的前景掩膜。
8.一种流媒体处理装置,所述装置包括:
视频切片选取模块,用于从播放的第一流媒体数据中,选取预设时长的视频切片;
视频分割模块,用于下载视频分割模型,并将所述视频切片输入所述视频分割模型进行处理,得到所述视频切片的前景掩膜;
数据传输模块,用于将所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间上报至流媒体服务器,以使流媒体服务器按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列。
9.一种流媒体处理装置,所述装置包括:
流媒体数据发送模块,用于向客户端发送第一流媒体数据,由所述客户端从播放的第一流媒体数据中,选取预设时长的视频切片,并将所述视频切片输入视频分割模型进行处理,得到所述视频切片的前景掩膜;
数据接收模块,用于接收所述客户端上报的所述前景掩膜及所述视频切片在所述第一流媒体数据中的播放时间;
合并模块,用于按照所述播放时间,对不同客户端上报的所述第一流媒体数据的多个前景掩膜进行合并,得到所述第一流媒体数据的前景掩膜序列;
存储模块,用于将所述前景掩膜序列与所述第一流媒体数据的标识进行关联存储。
10.一种存储介质,其上存储有程序,所述程序被处理器调用,实现如权利要求1~4任一项所述的流媒体处理方法,或实现如权利要求5~7任一项所述的流媒体处理方法。
CN201910613897.8A 2019-07-09 2019-07-09 流媒体处理方法、装置及存储介质 Active CN110300118B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910613897.8A CN110300118B (zh) 2019-07-09 2019-07-09 流媒体处理方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910613897.8A CN110300118B (zh) 2019-07-09 2019-07-09 流媒体处理方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN110300118A CN110300118A (zh) 2019-10-01
CN110300118B true CN110300118B (zh) 2020-09-25

Family

ID=68030781

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910613897.8A Active CN110300118B (zh) 2019-07-09 2019-07-09 流媒体处理方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN110300118B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111147332B (zh) * 2019-12-29 2022-04-29 北京浪潮数据技术有限公司 存储系统云备份的上传进度确定方法、系统及相关装置
CN113766339B (zh) * 2021-09-07 2023-03-14 网易(杭州)网络有限公司 一种弹幕显示方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4707093B2 (ja) * 2005-04-21 2011-06-22 Kddi株式会社 自由視点映像生成システム
CN109120984A (zh) * 2018-09-30 2019-01-01 重庆小雨点小额贷款有限公司 弹幕显示方法、装置、终端及服务器
CN109302619A (zh) * 2018-09-18 2019-02-01 北京奇艺世纪科技有限公司 一种信息处理方法及装置
CN109618213A (zh) * 2018-12-17 2019-04-12 华中科技大学 一种防止弹幕遮挡目标对象的方法
CN109862414A (zh) * 2019-03-22 2019-06-07 武汉斗鱼鱼乐网络科技有限公司 一种蒙版弹幕显示方法、装置及服务器

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105791776B (zh) * 2010-10-16 2018-12-11 佳能株式会社 服务器设备及视频数据的发送方法
CN104284057B (zh) * 2013-07-05 2016-08-10 浙江大华技术股份有限公司 一种视频处理方法及装置
CN104036490B (zh) * 2014-05-13 2017-03-29 重庆大学 适用于移动通信网络传输中的前景分割方法
US10311251B2 (en) * 2015-03-30 2019-06-04 Adheraj Singh System and method for masking and communicating modified multimedia content
CN105788610B (zh) * 2016-02-29 2018-08-10 广州酷狗计算机科技有限公司 音频处理方法及装置
CN107181976B (zh) * 2017-04-28 2021-01-29 华为技术有限公司 一种弹幕显示方法及电子设备
CN107147941A (zh) * 2017-05-27 2017-09-08 努比亚技术有限公司 视频播放的弹幕显示方法、装置及计算机可读存储介质
JP7071086B2 (ja) * 2017-10-13 2022-05-18 キヤノン株式会社 画像処理装置、画像処理方法及びコンピュータプログラム
CN108401177B (zh) * 2018-02-27 2021-04-27 上海哔哩哔哩科技有限公司 视频播放方法、服务器及视频播放系统
CN108921078A (zh) * 2018-06-27 2018-11-30 天津大学 基于视频的时空背景建模运动前景检测算法
CN109151489B (zh) * 2018-08-14 2019-05-31 广州虎牙信息科技有限公司 直播视频图像处理方法、装置、存储介质和计算机设备
CN109246408B (zh) * 2018-09-30 2020-07-10 Oppo广东移动通信有限公司 一种数据处理方法、终端、服务器和计算机存储介质
CN109862380B (zh) * 2019-01-10 2022-06-03 北京达佳互联信息技术有限公司 视频数据处理方法、装置及服务器、电子设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4707093B2 (ja) * 2005-04-21 2011-06-22 Kddi株式会社 自由視点映像生成システム
CN109302619A (zh) * 2018-09-18 2019-02-01 北京奇艺世纪科技有限公司 一种信息处理方法及装置
CN109120984A (zh) * 2018-09-30 2019-01-01 重庆小雨点小额贷款有限公司 弹幕显示方法、装置、终端及服务器
CN109618213A (zh) * 2018-12-17 2019-04-12 华中科技大学 一种防止弹幕遮挡目标对象的方法
CN109862414A (zh) * 2019-03-22 2019-06-07 武汉斗鱼鱼乐网络科技有限公司 一种蒙版弹幕显示方法、装置及服务器

Also Published As

Publication number Publication date
CN110300118A (zh) 2019-10-01

Similar Documents

Publication Publication Date Title
CN111901674B (zh) 一种视频播放控制方法及装置
US10499035B2 (en) Method and system of displaying a popping-screen
CN111432235A (zh) 直播视频生成方法、装置、计算机可读介质及电子设备
CN112791399B (zh) 云游戏画面的显示方法及装置、系统、介质、电子设备
CN104394422A (zh) 一种视频分割点获取方法及装置
CN112272327B (zh) 数据处理方法、装置、存储介质及设备
CN113965813B (zh) 直播间内的视频播放方法、系统、设备及介质
CN110300118B (zh) 流媒体处理方法、装置及存储介质
CN112543344B (zh) 直播控制方法、装置、计算机可读介质及电子设备
CN115002359B (zh) 视频处理方法、装置、电子设备及存储介质
CN112437338A (zh) 虚拟资源转移方法、装置、电子设备以及存储介质
CN111225287A (zh) 一种弹幕处理的方法及装置、电子设备、存储介质
CN108401163B (zh) 一种实现vr直播的方法、装置及ott业务系统
CN111031376B (zh) 基于微信小程序的弹幕处理方法和系统
CN110809172A (zh) 交互特效展示方法、装置及电子设备
US20240137588A1 (en) Methods and systems for utilizing live embedded tracking data within a live sports video stream
CN112169319B (zh) 应用程序的启动方法、装置、设备及存储介质
CN111935508B (zh) 信息处理和获取方法、装置、电子设备及存储介质
CN113766255B (zh) 视频流合并方法、装置、电子设备及计算机介质
KR102516831B1 (ko) 싱글 스트림을 이용하여 관심 영역 고화질 영상을 제공하는 방법, 컴퓨터 장치, 및 컴퓨터 프로그램
CN103702167A (zh) 一种实现节目预览图显示的方法及电子设备
CN109999490B (zh) 一种降低联网云应用延迟的方法及系统
CN107707930B (zh) 视频处理方法、装置及系统
JP6623905B2 (ja) サーバ装置、情報処理方法およびプログラム
KR102615377B1 (ko) 방송 체험 서비스의 제공 방법

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