直播视频集锦的生成方法、装置、服务器及存储介质与流程

文档序号:17844889发布日期:2019-06-11 21:37阅读:306来源:国知局
直播视频集锦的生成方法、装置、服务器及存储介质与流程

本发明实施例涉及视频处理领域,特别涉及一种直播视频集锦的生成方法、装置、服务器及存储介质。



背景技术:

在线视频直播就是利用网络资源进行的现场直播服务,通过现场的视频拍摄同步上传到网络上,用户可以同一时间在网络上看到第一时间的现场咨询。这种网络的现场直播服务广泛地应用于实时开展的新闻发布会、展会、产品发布、产品推介、销售现场展示、网络演唱会、公司酒会、商务会议、庆典仪式、节目演出、体育比赛、游戏比赛、证券分析、远程教育等网络直播服务。

在直播视频播放过程中,观众通常对直播视频中的精彩片段产生强烈的兴趣,为了让观众可以反复观看直播视频中的精彩片段,通常在直播结束后由人工进行线下剪辑,再以点播的方式进行发布,以供观众查找并观看。

发明人发现相关技术中至少存在如下问题:在直播结束后再进行线下剪辑,使得用户只能在直播结束后进行点播,影响用户的观看体验。而且生成剪辑视频需要投入大量的人力资源,效率低下,无法满足目前蓬勃发展的直播行业的需求。



技术实现要素:

本发明实施方式的目的在于提供一种直播视频集锦的生成方法、装置、服务器及存储介质,使得用户在观看直播过程中同时可以观看到直播视频集锦,并且实现自动剪辑直播视频集锦,提高剪辑效率。

为解决上述技术问题,本发明的实施方式提供了一种直播视频集锦的生成方法,包括:识别直播视频的直播画面并判断直播画面中是否存在目标图像元素;若直播画面中存在目标图像元素,则将直播画面所在的一段直播视频作为精彩片段保存;在满足合成条件时,根据合成条件将精彩片段合并至直播视频中,获得集锦合成视频;将输出的直播视频切换至集锦合成视频。

本发明的实施方式还提供了一种直播视频集锦的生成装置,包括:第一识别模块,存储模块,第二识别模块,合成模块,输出模块;第一识别模块用于识别直播视频的直播画面并判断直播画面中是否存在目标图像元素;存储模块用于在识别直播画面中存在目标图像元素时,将直播画面所在的一段直播视频作为精彩片段保存;第二识别模块用于识别是否满足合成条件;合成模块用于在满足合成条件时,根据合成条件将所述精彩片段合并至直播视频中,获得集锦合成视频;输出模块用于将输出的直播视频切换至集锦合成视频。

本发明的实施方式还提供了一种服务器,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的直播视频集锦的生成方法。

本发明的实施方式还提供了一种存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述直播视频集锦的生成方法。

本发明实施方式相对于现有技术而言,在直播过程中,服务器识别直播画面中是否存在目标图像元素,在识别到目标图像元素时,则代表该直播画面中具有精彩瞬间画面的特征,可以判定该直播画面所在的直播片段为精彩片段;在服务器识别到满足合成条件时,将识别并保存的精彩片段合成至直播视频中,获得直播视频集锦,并将合成的直播视频集锦输出,使用户在观看直播的过程中同时观看到直播视频播放过的精彩片段,提高集锦视频播放的时效性。并且在剪辑过程中无需人工识别精彩片段,节省了大量的人力资源并且解决了人工剪辑效率低下。

另外,将精彩片段合并至直播视频中,获得集锦合成视频,具体包括:将精彩片段解码,并将直播视频解码;将解码后的精彩片段与解码后的直播视频合并,获得合成数据;将合成数据重新编码,获得集锦合成视频。在保存精彩片段时保存编码状态的视频数据,以编码状态的数据便于存储;在需要将精彩片段与直播视频合并时,将精彩片段解码,并在合并之后重新编码,即保证了精彩片段与直播视频的合并,又可以对数据进行压缩,压缩后的数据所占存储空间较少,方便集锦合成视频的传输,提高了集锦合成视频的传输效率。

另外,合成数据包括:视频合成数据和音频合成数据,将解码后的精彩片段与解码后的直播视频合并,具体包括:将解码后的精彩片段的各视频帧与解码后的直播视频的各视频帧以预设模式合并,获得视频合成数据;将解码后的精彩片段的音频流与解码后的直播视频的音频流以混音的形式合并,获得音频合成数据。这样做用户可以在观看直播视频的时候听到精彩片段的音频,并看到精彩片段的画面,使用户可以获取播放的视频的全部信息。

另外,在判断直播画面中是否存在目标图像元素之前,还包括:实时缓存直播视频的直播视频数据包;将直播画面所在的一段直播视频作为精彩片段保存,具体包括:将当前缓存的直播视频数据包作为精彩片段保存。这样做可以节省保存精彩片段所占用的存储空间。

另外,在将缓存的直播视频数据包作为精彩片段保存之前,还包括:判断缓存的直播视频数据包的时长是否超过预设上限;若超过预设上限,则丢弃部分缓存的直播视频数据包。这样做可以控制精彩片段的长度,减少保存精彩片段所需的内存,丢弃部分数据还可以使精彩片段的重点更为突出,避免冗余信息占据用户精力,方便用户观看到精彩的视频片段。

另外,丢弃部分缓存的直播视频数据包的数据,具体包括:将当前缓存的直播视频数据包中的视频帧序列按照所述直播视频数据包的播放的先后顺序,从前到后依次丢弃,直至所述丢弃后的缓存的直播视频数据包的播放时长未超过预设上限。这样做可以保证精彩片段处于预设时长内,使精彩片段数据长度在预设上限之内,从而减少保存精彩片段所需的内存,由于缓存的直播视频数据包由先至后依次丢弃,可以保证精彩片段的时效性,且由于丢弃数据后的精彩片段时长较短,可以减少之后与直播视频进行合成的操作,从而提高获取集锦合成视频的效率。

另外,作为精彩片段保存的直播视频数据包,具体为:首个视频帧为关键帧的缓存的直播视频数据包。这里的关键帧指视频编码中的关键帧,使获得的精彩片段的首个视频帧为关键帧可以保证精彩片段视频解码、合成、编码、压缩以及切换动作的正常进行,避免由精彩片段合成的集锦合成视频的播放出现问题。

另外,在识别到合成时刻之前,还包括:若保存的精彩片段数量大于一个,则将多个精彩片段拼接成一个精彩集锦;将精彩片段合并至直播视频中,具体为:将精彩集锦合并至直播视频中。这样做可以使用户观看到不同时间点获取的精彩片段,给用户连续的视觉享受,提高用户的观看体验。

另外,将多个精彩片段拼接成一个精彩集锦,具体包括:将各精彩片段进行剪辑处理;将剪辑处理后的各精彩片段进行时间戳修复;将时间戳修复后的各精彩片段按时间戳顺序拼接成一个精彩集锦。这样做可以保证精彩片段的连续性,避免在播放视频时出现视频卡顿、回退等现象。

另外,将输出的直播视频切换至集锦合成视频,具体包括:根据直播视频的时间戳判断是否满足切换的时间点;在满足切换的时间点时,将输出的视频由直播视频切换至集锦合成视频。这样做可以保证用户不错过精彩直播,同时在直播用户不感兴趣的部分的时间点时,切换为集锦合成视频,以达到在准确的时间点切换视频的目的。

另外,在将输出的直播视频切换至集锦合成视频之后,还包括:判断集锦合成视频的剩余时长;在剩余时长为零时,将输出的集锦合成视频切换为直播视频。这样做可以在集锦合成视频播放完毕后切换至直播视频,集锦合成视频与直播视频在播放过程中无缝衔接,保证用户观看视频的连续性,提高用户的观看体验。

另外,在将输出的直播视频切换至集锦合成视频之后,还包括:判断集锦合成视频的剩余时长;在集锦合成视频的剩余时长为零时,判断直播视频的首个视频帧是否为关键帧;在直播视频的首个视频帧为关键帧时,将输出的集锦合成视频切换为直播视频。同时满足集锦合成视频剩余时长为零且直播视频的首个视频帧为关键帧可以保证切换后的视频可以正常播放,不会出现数据缺失、卡顿、回退等播放问题,还可以保证集锦合成视频与直播视频在播放过程中的无缝衔接,使用户可以连续的观看视频,提高用户的观看体验。

另外,识别直播画面并判断直播画面中是否存在目标图像元素,具体包括:据预先建立的图像识别模型识别直播画面并判断直播画面中是否存在目标图像元素;其中,图像识别模型根据采集的图像特征训练得到。通过预先训练的图像识别模型自动识别精彩片段,可以更加准确且快速的得到精彩片段,提高剪辑精彩片段的效率,减少人力的消耗。

另外,根据预先建立的图像识别模型识别直播画面并判断直播画面中是否存在目标图像元素,具体包括:获取直播画面中的指定区域;根据预先建立的图像识别模型,识别指定区域中是否存在目标图像元素;若指定区域中存在目标图像元素,则判定直播画面中存在目标图像元素。这样做可以减少特征值的计算量。

另外,识别指定区域中是否存在目标图像元素,具体包括:在指定区域中根据目标图像元素的尺寸截取目标区域;将目标区域的特征值输入图像识别模型,根据图像识别模型的输出结果判断目标区域中是否存在目标图像元素;若目标区域中不存在目标图像元素,则按预设策略对目标区域的位置进行偏移,并识别偏移后的目标区域中是否存在目标图像元素。这样做可以保证图像识别的精度,并且减少了特征值计算的计算量,提高了特征值的计算效率。

另外,获取直播画面中的指定区域后,还包括获取指定区域的灰度图;根据预先建立的图像识别模型,识别指定区域中是否存在目标图像元素,具体为根据预先建立的图像识别模型,识别灰度图中是否存在目标图像元素。灰度图相对于彩色图像具有更高的区分度,在保证图像识别精度的同时减少特征值的计算量。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1是根据本发明第一实施方式中的直播视频集锦的生成方法的流程图;

图2是根据本发明第一实施方式中目标区域的选取过程的示意图;

图3是根据本发明第二实施方式中的直播视频集锦的生成方法的流程图;

图4是根据本发明第三实施方式中的直播视频集锦的生成方法的流程图;

图5是根据本发明第四实施方式中的直播视频集锦的生成方法的流程图;

图6是根据本发明第四实施方式中的直播视频与精彩片段相互切换方法的流程图;

图7是根据本发明第四实施方式中的服务器对直播视频的数据的处理过程示意图;

图8是根据本发明第五实施方式中的直播视频集锦的装置的结构示意图;

图9是根据本发明第六实施方式中的服务器的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。

以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。

本发明的第一实施方式涉及一种直播视频集锦的生成方法,包括:识别直播视频的直播画面并判断直播画面中是否存在目标图像元素;若直播画面中存在目标图像元素,则将直播画面所在的一段直播视频作为精彩片段保存;在识别到合成时刻时,根据合成时刻将精彩片段合并至直播视频中,获得集锦合成视频;将输出的直播视频切换至集锦合成视频。下面对本实施方式的直播视频集锦的生成方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。具体流程如图1所示。

步骤101,识别直播视频的直播画面。具体地说,在进行视频直播时,服务器接收直播视频,并将接收到的直播视频进行处理,将处理完成的直播视频输出至客户端,供客户端将直播视频播放,使用户可以观看到直播视频。在服务器处理接收到的直播视频时,将接受到的直播视频解码,解码后的直播视频数据为一串视频帧序列,可以通过定时或逐帧进行图像识别直播画面。在实际应用中,服务器可以是在流媒体服务端的流媒体服务器,流媒体服务器将连续的音频和视频信息压缩后放到网络服务器上,以供用户边下载边观看,提高了用户的观看体验。

步骤102,判断直播画面中是否存在目标图像元素。若判断结果为是,则进入步骤103,若判断结果为否,则返回步骤101。具体地说,直播画面中的目标图像元素可以为直播画面中能够代表视频内容的标识,比如,游戏直播中的精彩瞬间画面出现的“击杀”、“成功”等字样或相关图标,若出现相同或类似标识,则判定该直播画面中存在目标图像元素。在实际应用中可以通过图像识别模型进行直播画面的识别并判断直播画面中是否存在目标图像元素。通过预先训练的图像识别模型自动识别精彩片段,可以更加准确且快速的得到精彩片段,提高剪辑精彩片段的效率,减少人力的消耗。

步骤103,将直播画面所在的一段直播视频作为精彩片段保存。具体地说,在识别到直播画面中存在目标图像元素时,将直播画面所在的直播视频判定为精彩片段,可以取预设时长直播视频作为精彩片段,也可以取若干连续帧直播画面组成的直播视频作为精彩片段。

以下对通过图像识别模型识别直播画面并判断直播画面中是否存在目标图像元素进行具体说明:

预先建立图像识别模型,收集大量需要识别的视频画面中的目标图像元素,将收集的目标图像元素图片作为训练模型的正样本图片;另外,收集大量非目标图像元素作为训练模型的负样本图片,通过收集的图片训练图像识别模型。

通过模型进行图像识别的方法具体如下:

首先,对直播视频进行实时解码,得到解码帧。对每一帧指定位置和大小的区域进行像素值截取,在截取过程中仅截取直播画面的亮度分量(灰度图)而放弃色度分量,由于亮度通常具有比色度更高的区分度,故可以在保证识别精度的同时大大减少计算量。其次,对截取出来的灰度图进行大小调整,通常可以选择一个较小、但不至于丢失过多细节的尺寸(例如64x64)。进行大小调整后的灰度图可以为任意宽高比,对灰度图的基本特征没有影响,在对图像识别模型进行训练时可以将训练图像大小调整为相同尺寸,这样做可以提高图像识别精度,计算量较小且较为稳定。再次,对调整尺寸后的图像进行hog(梯度方向直方图)计算,得到其多维特征表示。最后,加载预训练好的svm(支持向量机)模型文件,并将上面计算出来的多维特征传递给该模型。得到的结果值即为当前截取区域对应的类别序号。这里的类别序号可以代表目标图像元素的种类,比如目标图像元素“五杀”对应类别序号001,目标图像元素“成功”对应类别序号002,等等。

在上述图像识别过程中,指定区域选取的位置、尺寸及数量可以是预先设置的,例如,可以在直播画面的左上角、左下角、右上角、右下角或直播画面的中间任意位置选取指定区域,也可以将整个直播画面作为一个指定区域。由于在直播视频中,目标图像元素通常固定在直播画面的某一位置,例如,游戏直播过程中通常在直播画面的左下角出现目标图像元素“五杀”等字样,为了保证目标图像元素的识别精度,并适当的减少特征值的计算量,可以针对目标图像元素通常出现的位置,也就是直播画面的左下角位置选取指定区域。

具体地说,指定区域选取的尺寸通常大于目标图像元素的尺寸,在对指定区域进行识别时,可以在指定区域内截取与目标图像元素的尺寸相同的目标区域,并识别目标区域中是否存在目标图像元素,若不存在目标图像元素,则按照预设策略对目标区域的位置进行偏移,预设策略可以是将截取的区域以任意方向偏移一个像素的距离,也可以是将截取的区域以任意方向偏移指定间隔的距离。目标区域的选取方式如下,例如,目标图像元素尺寸为50像素*50像素,获取的指定区域尺寸为80像素*80像素,在指定区域中截取尺寸为50像素*50像素图像作为目标区域,如图2左一所示在指定区域(底色为白色的方形区域)中截取一个尺寸为50像素*50像素的目标区域(阴影区域),根据图像识别模型判断目标区域中是否存在目标图像元素。例如,将目标区域的特征值输入图像识别模型,根据图像识别模型的输出结果判断目标区域中是否存在目标图像元素。若目标区域中不存在目标图像元素,则将所截取的区域以任意方向平移指定间隔的距离,如图2中间图像所示截取第二个50像素*50像素的目标区域(阴影区域),同理以上述规律以任意方向依次平移指定距离,直至截取的目标区域中存在目标图像元素,或者,完成整个指定区域的搜索。以指定间隔进行截取的目标区域数量大大减少,但是计算精度也会有些许影响,所以在实际应用中可以采取快速算法进行范围搜索,比如,在以十个像素为间隔截取目标区域后,计算各目标区域与目标图像元素的匹配度,选择匹配度较高的目标区域,并将匹配度较高的目标区域作为下一轮精确搜索的起点,基于选取的起点进行小范围细化搜索,选取匹配度更高的位置,例如,对于匹配度较高的目标区域,可以在第二轮截取过程中,指定间隔从第一轮截取中的十个像素调整为五个像素,这样做使第二轮的截取结果更为精确,从而可以提高定位到目标图像元素出现的精确位置的概率。

步骤104,根据合成条件将精彩片段合并至直播视频,获得集锦合成视频。具体地说,合成条件为用户希望回放精彩片段的时刻,可以在游戏或比赛结束时、或者中场休息时,例如,可以为游戏直播第一局结束,第二局刚开始的时刻,合成时刻的直播视频正在播放的内容通常为用户不关注的内容,在合成时刻将精彩片段合并至直播视频,合成后的集锦合成视频中存在精彩片段,使用户在观看不关注的内容的过程中同时接收到精彩片段,既接收到精彩内容的回放,又避免了直播视频的枯燥,提高了用户观看直播视频的观看体验。合成条件也可以为精彩片段的数量达到预设数量,这样做可以控制精彩片段的时长,并且在精彩片段数量达到预设数量时,将精彩片段合并至直播视频,通过播放集锦合成视频,可以及时的将精彩片段提供给用户观看,保证精彩片段播放的时效性。

在实际应用中,合成条件是否满足也可以利用图像识别模型对画面的识别进行判断。通过大量的可以作为合成时刻的图像训练图像识别模型,这些训练所用的图像通常为带有用户不关注内容的图像元素,比如代表游戏或比赛结束或中场休息的图像元素,这样训练出的图像识别模型可以通过对当前播放的直播视频的识别判定是否满足合成条件,根据合成条件可以确定合成时刻,即确定将精彩片段与直播视频进行合成的时机,通过图像识别模型判定合成时机,可以提高确定合成时机的效率,减少人力的消耗。并且在一定程度上保证合成的时刻所播放的直播视频的内容为用户相对不关注的内容,避免影响用户对直播视频的观看。

步骤105,将输出的直播视频切换至集锦合成视频。具体地说,服务器输出视频至客户端以供客户端将视频内容呈现给用户,在服务器输出直播视频时,客户端播放的视频即为直播视频,在服务器输出集锦合成视频时,那么客户端将播放集锦合成视频,用户就可以观看到精彩片段的回放。

在将输出的直播视频切换至集锦合成视频之后,还可以判断是否满足切换条件,在满足切换条件时,将输出的集锦合成视频切换至所述直播视频。切换条件可以为,判断集锦合成视频剩余时长,若集锦合成视频播放完毕,则将输出的集锦合成视频切换成直播视频,使用户继续观看直播视频。在将输出的集锦合成视频切换为直播视频时,切换的直播视频的首个视频帧为关键帧,直播视频数据以视频帧序列为单位,每个视频帧序列由一个关键帧和多个非关键帧组成,在关键帧进行切换可以保证切换后的视频可以正常播放,不会出现数据缺失,无法识别视频数据等问题。

本发明实施方式相对于现有技术而言,在直播过程中,服务器识别直播画面中是否存在目标图像元素,在识别到就目标图像元素时,则代表该直播画面中具有精彩瞬间画面的特征,可以判定该直播画面所在的直播片段为精彩片段;在服务器识别到合成指令时,将识别并保存的精彩片段合成至直播视频中,获得直播视频集锦,并将合成的直播视频集锦输出,使用户在观看直播的过程中同时观看到直播视频播放过的精彩片段,提高集锦视频播放的时效性。并且在剪辑过程中无需人工识别精彩片段,节省了大量的人力资源并且解决了人工剪辑效率低下。

本发明的第二实施方式涉及一种直播视频集锦的生成方法。第二实施方式对第一实施方式做了进一步细化,细化之处在于:在本发明第二实施方式中将精彩片段解码,并将直播视频解码;将解码后的精彩片段与解码后的直播视频合并,获得合成数据;将合成数据重新编码,获得集锦合成视频。具体流程图如图2所示。

步骤201,识别直播视频的直播画面。

步骤202,判断直播画面中是否存在目标图像元素。若判断结果为是,则进入步骤203,若判断结果为否,则返回步骤201。

步骤203,将直播画面所在的一段直播视频作为精彩片段保存。

步骤201至203与第一实施方式中步骤101至103一致,在此不再赘述。

步骤204,在满足合成条件时,将精彩片段与直播视频解码。具体地说,使用编码方式对应的解码方式将数码还原成它所代表的内容,解码后的视频数据分为音频数据和视频数据,视频数据为一串视频帧序列,每个视频帧序列可以代表一个画面或一个动作。解码后便于对视频中的画面进行处理。

步骤205,将解码后的精彩片段与解码后的直播视频合并,获得合成数据。具体地说,解码后的精彩片段可以分为音频数据和视频数据,同理直播视频解码后也可以分为音频数据和视频数据,将精彩片段的音频数据与直播视频的音频数据相合并,将精彩片段的视频数据与直播视频的视频数据相合并,合并后的音频数据及视频数据统称为合成数据。

在对音频数据进行合成时,可以将解码后的精彩片段的音频流与解码后的直播视频的音频流以混音的形式合并,获得音频合成数据。具体地说,获取直播视频的音频数据,并进行音量调整;获取精彩片段的音频数据,并进行音量调整;将调整后的两个音频数据进行混音,形成合成后的音频流,这样做可以使用户同时听到直播视频和精彩片段的音频,使用户可以获取播放的视频的全部信息。混音后的音频数据可以以不同声道播放不同的音频数据,也可以将一个音频数据作为主音频,而另一音频数据充当背景,具体混音方式在此不做限制。

在对视频数据进行合并时,可以将解码后的精彩片段的各视频帧与解码后的直播视频的的各视频帧以预设模式合并,获得视频合成数据;其中,预设模式可以为:覆盖模式或并列模式。具体地说,可以将直播视频的各视频帧进行缩小操作,作为客户端播放视频的小窗口,将精彩片段的各视频帧作为客户端播放视频的背景,将缩小后的直播视频的各视频帧覆盖在精彩片段的各视频帧的某个位置上,如精彩片段的各视频帧的左上角或右下角等。这样做可以在用户观看精彩片段视频的同时,不会错过直播视频播放的直播信息。值得一提的是,视频画面的合成也可以采用不同的大小模式,比如,将精彩片段的各视频帧缩小后覆盖在直播视频的各视频帧上,将精彩片段以小窗口的形式播放;还可以将直播视频与精彩片段以相同大小的窗口并排显示播放等,在此不一一赘述。

步骤206,将合成数据重新编码,获得集锦合成视频。具体地说,用预先设定的编码方式对合成数据进行编码,这样做可以方便集锦合成视频的传输,避免传输过程中数据丢失,在编码后还可以将编码后的数据压缩,减少传输过程所占用的内存空间,提高数据传输的效率。

步骤207,将输出的直播视频切换至集锦合成视频。该步骤与第一实施方式中步骤105一致,在此不再赘述。

在本实施方式中,通过解码操作后,将精彩片段与直播视频进行合并,保证合并后视频的稳定性;将精彩片段与直播视频的视频数据合并的同时,将精彩片段与直播视频的音频数据合并,可以使用户同时听到直播视频和精彩片段的音频,使用户可以获取播放的视频的全部信息,提高用户的观看体验。将精彩片段与直播视频的合成数据重新编码并压缩,节省了集锦合成视频的存储空间。

本发明的第三实施方式涉及一种直播视频集锦的生成方法。第三实施方式对第二实施方式进行了改进,改进之处在于:在本发明第三实施方式中在直播过程中将直播视频数据包缓存,并在识别目标图像元素时,将缓存的直播视频数据包作为精彩片段保存。具体流程图如图3所示。

步骤301,识别直播视频的直播画面。

步骤302,判断直播画面中是否存在目标图像元素。若判断结果为是,则进入步骤303,若判断结果为否,则返回步骤301。

步骤301、302与第二实施方式中步骤201、202一致,在此不再赘述。

步骤303,判断缓存的直播视频数据包的播放时长是否超过预设上限,若判断结果为是,则进入步骤304;若判断结果为否,则进入步骤307。具体地说,在直播过程中,实时缓存直播视频的直播视频数据包,同时判断直播视频的直播画面是否存在目标图像元素,在识别到目标图像元素时,判断目前缓存的直播视频数据包的播放时长是否超过预设上限,根据缓存数据的时间戳,计算出缓存数据的时长,判断计算的缓存数据的时长是否超过预设上限,若超过预设上限,则丢弃部分缓存的直播视频数据包的数据,若未超过预设上限,则说明该缓存的直播视频数据包符合精彩片段视频的长度要求,将缓存的直播视频数据包保存为精彩片段。

步骤304,丢弃缓存的直播视频数据包中最早的视频帧序列。具体地说,将缓存的直播视频数据包的数据按照视频帧序列先后顺序依次丢弃,这样做可以保证精彩片段的时效性,保证精彩片段为用户印象最为深刻的片段。

步骤305,判断缓存的直播视频数据包中数据的首个视频帧是否为关键帧,若判断结果为是,则返回步骤303;若判断结果为否,则进入步骤306。具体地说,缓存的直播视频数据包的首个视频帧为关键帧,可以保证保存的精彩片段的首个视频帧为关键帧,使获得的精彩片段的首个视频帧为关键帧可以保证精彩片段视频解码、合成、编码以及切换动作的正常进行,避免操作错误导致由精彩片段合成的集锦合成视频的播放出现问题。

步骤306,将直播视频数据包中的首个视频帧丢弃。具体地说,在直播视频数据包中的数据的首个视频帧为非关键帧时,将非关键帧丢弃,从而保证直播视频数据包以关键帧作为首个视频帧。

步骤307,将缓存的直播视频数据包作为精彩片段保存。

步骤308,在满足合成条件时,将精彩片段与直播视频解码。

步骤309,将解码后的精彩片段与解码后的直播视频合并,获得合成数据。

步骤310,将合成数据重新编码,获得集锦合成视频。

步骤311,将输出的直播视频切换至集锦合成视频。

步骤307至311与第二实施方式中步骤204至207一致,在此不再赘述。

在本实施方式中,控制精彩片段的长度,减少保存精彩片段所需的内存,并且可以减少视频进行合成的操作,从而提高获取集锦合成视频的效率。另外,在缓存的直播视频数据包的时长超过预设上限时,以视频帧序列为单位由前至后依次丢弃缓存数据,并保证缓存的直播视频数据的首个视频帧为关键帧,可以保证精彩片段可以顺利进行合成,并且保证视频的正常播放,避免播放的集锦合成视频的内容缺失。

本发明的第四实施方式涉及一种直播视频集锦的生成方法。第四实施方式对第三实施方式进行了改进,改进之处在于:在本发明第四实施方式中将多个精彩片段拼接成一个精彩集锦,并对精彩集锦进行剪辑。具体流程图如图4所示。

步骤401,识别直播视频的直播画面。

步骤402,判断直播画面中是否存在目标图像元素。若判断结果为是,则进入步骤403,若判断结果为否,则返回步骤401。

步骤403,判断缓存的直播视频数据包的播放时长是否超过预设上限,若判断结果为是,则进入步骤404;若判断结果为否,则进入步骤407。

步骤404,丢弃缓存的直播视频数据包中最早的视频帧序列。

步骤405,判断缓存的直播视频数据包中数据的首个视频帧是否为关键帧,若判断结果为是,则返回步骤403;若判断结果为否,则进入步骤406。

步骤406,将直播视频数据包中的首个视频帧丢弃。

步骤407,将缓存的直播视频数据包作为精彩片段保存。

步骤401至407与第三实施方式中步骤301至307一致,在此不再赘述。

步骤408,判断是否满足合成条件,若判断结果为是,则进入步骤409,若判断结果为否,则返回步骤401。具体地说,通过预先训练的图像识别模型识别合成时刻,该合成条件可以为观众对目前直播内容不关注的时刻,比如,游戏直播时第一局刚结束,在进入第二局的过程中。用户通常沉浸在上一局游戏的内容中,对第二局的开场不甚关注。在识别到合成时刻之前,直播视频可能存在一个或多个精彩片段,识别到的多个精彩片段在时间上可能非连续,所以这些精彩片段在与直播视频进行合并时,需要预先对多个精彩片段进行处理,以使用户观看到连续的视频,不会出现卡顿、回退等播放问题。

步骤409,在存在多个精彩片段时,将多个精彩片段拼接成一个精彩集锦。具体地说,在对多个精彩片段拼接之前,可以对每一个精彩片段进行剪辑处理,比如,对精彩片段的每一视频帧画面进行裁剪,除去不重要的画面部分以突出精彩内容;还可以在画面中加入其它画面点缀元素,如:动画效果,旁白文字等,使精彩画面更加生动有趣。在对精彩片段剪辑后还需要根据精彩片段视频数据的时间戳对精彩片段进行调整,可以通过播放倍速的调节减少精彩片段的播放时长,从而使精彩片段的内容更加紧凑。

在对每个精彩片段处理之后,将多个精彩片段拼接成一个精彩集锦,通过每个精彩片段的时间戳可以判定多个精彩片段播放的时间顺序,按照时间戳表示的时间顺序进行拼接,可以使不同片段能够衔接的更加流畅,比如第一个精彩片段由直播视频第3分10秒至第3分25秒剪辑而成,第二个精彩片段由直播视频第5分15秒至第5分40秒剪辑而成,将以上两个精彩片段拼接,即可得到一段时长为40秒的精彩集锦,精彩集锦的前15秒为第一个精彩片段,精彩集锦的后25秒为第二个精彩片段,这样做可以在第一个精彩片段播放结束后立即播放第二个精彩片段,提高视频衔接的流畅度,保证多个精彩片段的连续播放。

步骤410,将精彩集锦与直播视频解码。

步骤411,将解码后的精彩集锦与解码后的直播视频合并,获得合成数据。

步骤412,将合成数据重新编码,获得集锦合成视频。

步骤413,将输出的直播视频切换至集锦合成视频。

步骤410至413与第三实施方式中步骤308至311一致,在此不再赘述。

在本实施方式中,将各精彩片段进行剪辑处理;将剪辑处理后的各精彩片段进行时间戳修复;将时间戳修复后的各集锦片段按时间戳顺序拼接成一个精彩集锦。这样做可以保证多个精彩片段的连续播放,提高多个精彩片段衔接的流畅度。

在实际应用中为保证视频播放的连续性,需要进行直播视频与集锦合成视频之间的切换,具体流程如图6所示。

步骤601,输出直播视频。

步骤602,判断是否满足切换时间点,若判断结果为是,则进入步骤603,否则返回步骤601。具体地说,在直播视频输出时可以预先将需要直播的视频在流媒体服务器中进行缓存,比如,在缓存队列中缓存长度为100帧的直播视频队列后,将缓存队列中的第一帧输出给客户端,假设在直播视频的第101帧开始进行合成,即当前集锦合成视频的首个视频帧的时间戳与直播视频缓存队列中第100帧的时间戳相同,那么在将输出的直播视频切换为集锦合成视频时,为了保证视频播放的连续性,将集锦合成视频的切换时间点设置为直播视频的第100帧的时间戳。若在合成完成时,流媒体服务器向客户端输出的直播视频为第80帧,这时还未满足切换时间点(即未达到第100帧的时间戳),则继续播放直播视频,直到满足切换时间点,将当前输出的直播视频切换为集锦合成视频。

步骤603,在首个视频帧为关键帧时,切换为集锦合成视频。

步骤604,判断集锦合成视频剩余时间是否为零,若判断结果为是,则进入步骤605,若判断结果为否,则进入步骤606。具体地说,若集锦合成视频的剩余时长不为零时,说明集锦合成视频并未播放完毕,需要继续播放集锦合成视频,在剩余时长为零时,为了保证播放视频的连续性,则需要进行视频的切换,防止视频播放出现空白。

步骤605,在首个视频帧为关键帧时,切换为直播视频。

步骤606,继续输出集锦合成视频,直至集锦合成视频的剩余时长为零。

下面以游戏直播为例,具体说明集锦合成视频的获取过程,对直播视频数据的处理过程如图7所示。

游戏直播的视频直播数据通过服务器输出至客户端,客户端为用户提供观看游戏直播的窗口,本发明是针对服务器对视频数据的处理,使处理后的数据可以直接供客户端播放给用户观看。在服务器接收到游戏直播的音视频数据时,将接收到的音视频数据包放入缓存队列,并且对接收的游戏音视频进行解码,并对解码后的视频画面通过第一图像识别模型进行图像识别,在识别到目标图像元素时,说明此刻播放的直播视频为用户关注的内容,例如,游戏直播中击杀成功或出现精彩走位等,将这些内容出现的画面作为精彩片段保存,在保存精彩片段时可以根据时间戳判断缓存队列中的缓存数据(放入缓存队列的音视频数据包)的时长是否超过预设上限,在超过预设上限时,丢弃部分缓存队列中的缓存数据,使缓存数据的时长在预设上限之内,保存游戏直播的缓存数据作为精彩片段。在保存多个精彩片段时,将多个精彩片段剪辑,并拼接成一个精彩集锦。

在合成时刻需要播放所获得的精彩片段或精彩集锦,在识别到合成时刻时,将精彩片段或精彩集锦解码,同时将合成时刻之后的直播视频解码,将解码后的直播视频与精彩片段(精彩集锦)合并为集锦合成视频,集锦合成视频中即包含精彩片段,又包含直播视频。在服务器输出的直播视频达到合成时刻时,将输出的直播视频切换为集锦合成视频,使用户在观看直播的过程中同时观看到直播视频播放过的精彩片段。另外,若用户需要重点关注精彩片段时,可以选择将精彩片段作为播放视频的背景,将直播视频作为小窗口显示;同样,在用户关注直播视频时,将直播视频作为背景,将精彩片段作为小窗口显示;也可以将两个视频内容并排显示,具体显示方式依据具体情况而定,在此不做限制。

在集锦合成视频播放完毕,即集锦合成视频的剩余时间为零时,服务器将输出的集锦合成视频切换为直播视频,以保证视频播放的连续性。

上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。

本发明第五实施方式涉及一种直播视频集锦的生成装置,如图8所示,包括:第一识别模块81,存储模块82,第二识别模块83,合成模块84,输出模块85;第一识别模块81用于在输出直播视频时,识别直播画面并判断直播画面中是否存在目标图像元素;存储模块82用于在第一识别模块识别到直播画面中存在目标图像元素时,将直播画面所在的一段直播视频作为精彩片段保存;第二识别模块83用于识别是否满足合成条件;合成模块84用于在满足合成条件时,根据合成条件将精彩片段合并至直播视频中,获得集锦合成视频;输出模块85用于输出直播视频,并在获得集锦合成视频后,将输出的视频由直播视频切换至集锦合成视频。

另外,直播视频集锦的生成装置还可以包括解码模块,编码模块;解码模块用于将精彩片段解码,并将直播视频解码;合成模块具体用于将解码后的精彩片段与解码后的直播视频合并,获得合成数据;编码模块用于将合成数据重新编码,获得集锦合成视频。

另外,合成数据可以包括:视频合成数据和音频合成数据;合成模块具体用于将解码后的精彩片段的各视频帧与解码后的直播视频的各视频帧以预设模式合并,获得视频合成数据;将解码后的精彩片段的音频流与解码后的直播视频的音频流以混音的形式合并,获得音频合成数据。

另外,直播视频集锦的生成装置还可以还包括缓存模块;缓存模块用于实时缓存直播视频的直播视频数据包;存储模块具体用于将当前缓存的直播视频数据包作为精彩片段保存。

另外,存储模块还用于在当前缓存的直播视频数据包的播放时长超过预设上限时,丢弃部分缓存的直播视频数据包,并将丢弃后的直播视频数据包作为精彩片段保存。

另外,存储模块在丢弃部分缓存的直播视频数据包时,具体用于将当前缓存的直播视频数据包中的视频帧序列按照直播视频数据包的播放的先后顺序,从前到后依次丢弃,直至丢弃后的缓存的直播视频数据包的播放时长未超过预设上限。

另外,存储模块存储的直播视频数据包具体为首个视频帧为关键帧的缓存的直播视频数据包。

另外,直播视频集锦的生成装置还可以还包括拼接模块;拼接模块用于在精彩片段数量大于一个时,将多个精彩片段拼接成一个精彩集锦;合并模块具体用于将精彩集锦合并至直播视频中。

另外,拼接模块还用于将各精彩片段进行剪辑处理,并将剪辑处理后的各精彩片段进行时间戳修复,将时间戳修复后的各精彩片段按时间戳顺序拼接成一个精彩集锦。

另外,输出模块具体用于根据直播视频的时间戳满足切换的时间点时,将输出的视频由直播视频切换至集锦合成视频。

另外,输出模块还用于在集锦合成视频的剩余时间为零时,将输出的集锦合成视频切换至直播视频。

另外,输出模块还用于在集锦合成视频的剩余时长为零,且判定直播视频首个视频帧为关键帧时,将输出的集锦合成视频切换为直播视频。

另外,第一识别模块具体根据预先建立的图像识别模型识别直播画面并判断直播画面中是否存在目标图像元素;其中,图像识别模型根据采集的图像特征训练得到。

另外,第一识别模块具体用于获取直播画面中的指定区域,并根据预先建立的图像识别模型,识别指定区域中是否存在目标图像元素;若指定区域中存在目标图像元素,则判定直播画面中存在目标图像元素。

另外,第一识别模块在识别指定区域中是否存在目标图像元素时,具体用于在指定区域中根据目标图像元素的尺寸截取目标区域;将目标区域的特征值输入图像识别模型,根据图像识别模型的输出结果判断目标区域中是否存在目标图像元素;若目标区域中不存在目标图像元素,则按预设策略对目标区域的位置进行偏移,并识别偏移后的目标区域中是否存在目标图像元素。

另外,第一识别模块在还用于获取指定区域的灰度图,并根据预先建立的图像识别模型,识别灰度图中是否存在目标图像元素。

本发明实施方式相对于现有技术而言,在直播过程中,用户在观看直播的过程中同时观看到直播视频播放过的精彩片段,提高集锦视频播放的时效性。并且在剪辑过程中无需人工识别精彩片段,节省了大量的人力资源并且解决了人工剪辑效率低下。

不难发现,本实施方式为与第一实施方式相对应的装置实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。

值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。

本发明第六实施方式涉及一种服务器,如图9所示,包括至少一个处理器901;以及,与至少一个处理器901通信连接的存储器902;其中,存储器902存储有可被至少一个处理器901执行的指令,指令被至少一个处理器901执行,以使至少一个处理器901能够执行上述的直播视频集锦的生成方法。

其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。

处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。

本发明第七实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。

即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1