在本地视频中播放弹幕的方法及系统与流程

文档序号:11961308阅读:1567来源:国知局
在本地视频中播放弹幕的方法及系统与流程

本申请涉及视频处理技术领域,具体地说,涉及一种在本地视频中播放弹幕的方法及系统。



背景技术:

弹幕,在播放视频画面中以字幕形式显示评论的现象称为弹幕。用户可以通过弹幕的形式边看视频边与其它用户进行弹幕讨论沟通。现有的视频弹幕都是通过在线播放或直播的形式,在线播放视频或直播的过程中从各个用户端收集弹幕后在视频对应的时间段上进行展现。

现有技术中视频资源的使用,无论是在线资源还是直播资源,都是来自各家视频公司自有的视频媒体库,所以对于用户是否在观看同一个视频的唯一性判断有很多的维度,判断方法简单,进而对于用户发送弹幕的上传收集,以及对在观看同一视频的用户下发所有用户的弹幕信息,同样也容易实现。

然而本地资源与在先视频资源或直播视频资源大大不同,本地资源都为用户自己从网上下载的资源,鱼龙混杂,同一部资源可能会有上千种视频名字,现有的弹幕播放方法只能支持在线视频的弹幕播放形式,对于本地的视频播放不能实现弹幕播放。因此,如何判断哪些用户在观看同一个视频资源显得尤为困难,难以进行匹配与分析,因而使得如何在本地视频中播放弹幕成为亟待解决的技术问题。



技术实现要素:

有鉴于此,本申请所要解决的技术问题是提供了一种在本地视频中播放弹幕的方法及系统,能够通过截取本地视频文件的头文件MD5值,并根据该MD5值从鱼龙混杂的本地视频资源中查找出观看同一部影片的所有用户,将用户的弹幕文件进行存储及下发,实现在本地视频资源中播放弹幕的效果。

为了解决上述技术问题,本申请有如下技术方案:

一种在本地视频中播放弹幕的方法,其特征在于,包括:

截取本地视频文件的头文件,将所述头文件进行压缩并生成对应的头文件MD5值,将所述头文件MD5值作为所述本地视频文件的唯一识别标识;

识别并收集具有所述头文件MD5值的本地视频文件,形成视频库;

收集所有在本地观看了所述视频库中的任一本地视频文件的用户,建立同片用户集合;

收集所述同片用户集合中各用户通过弹幕发送区域向所述本地视频文件发送的弹幕信息;

将所述本地视频文件的头文件MD5值和观看过所述视频库中任一本地视频文件的用户发送的所述弹幕信息捆绑上传至弹幕信息处理模块;

对捆绑后的所述头文件MD5值和所述弹幕信息进行解析,获取到解绑后的所述头文件MD5值和与所述头文件MD5值对应的所述弹幕信息,并将所述头文件MD5值和所述弹幕信息存储至弹幕信息发送模块中;

将存储的所述弹幕信息发送至所述视频库中的所有本地视频文件中进行展示。

优选地,其中:

进一步包括:

计算所述弹幕信息在所述本地视频文件播放过程中所对应的播放时刻,使得所述弹幕信息与视频播放内容相匹配。

优选地,其中:

所述计算所述弹幕信息在所述本地视频文件播放过程中所对应的播放时刻,进一步为:

记录同片用户集合中各用户通过弹幕发送区域向所述本地视频文件发送的各所述弹幕信息在所述本地视频文件播放过程中分别对应的视频帧的帧值;

在所述视频库中各所述本地视频文件的播放过程中,当所述本地视频文件播放到所述弹幕信息对应的视频帧的帧值时,将与所述帧值对应的弹幕信息发送至各所述本地视频文件进行展示。

优选地,其中:

将存储的所述弹幕信息进发送至所述视频库中的所有本地视频文件中进行展示,进一步为:

将存储的所述弹幕信息发送至所述视频库中的所有本地视频文件中,并将所述弹幕信息按照所对应的播放时刻进行展示。

优选地,其中:

进一步包括:

在向所述视频库中的所有本地视频文件发送所述弹幕信息前,将包括不文明的弹幕信息在内的特定弹幕信息进行过滤处理。

一种在本地视频中播放弹幕的系统,其特征在于,包括:头文件处理模块、同一视频识别模块、同片用户收集模块、弹幕信息收集模块、弹幕信息处理模块和弹幕信息发送模块,

所述头文件处理模块,用于截取本地视频文件的头文件,将所述头文件进行压缩并生成对应的头文件MD5值,将所述头文件MD5值作为所述本地视频文件的唯一识别标识;

所述同一视频识别模块,用于识别并收集具有所述头文件MD5值的本地视频文件,形成视频库;

所述同片用户收集模块,用于收集所有在本地观看了所述视频库中的任一本地视频文件的用户,建立同片用户集合;

所述弹幕信息收集模块,收集所述同片用户集合中各用户通过弹幕发送区域向所述本地视频文件发送的弹幕信息,并将所述本地视频文件的头文件MD5值和观看过所述视频库中任一本地视频文件的用户发送的所述弹幕信息捆绑上传至弹幕信息处理模块;

所述弹幕信息处理模块,对捆绑后的所述头文件MD5值和所述弹幕信息进行解析,获取到解绑后的所述头文件MD5值和与所述头文件MD5值对应的所述弹幕信息,并将所述头文件MD5值和所述弹幕信息存储至弹幕信息发送模块中;

所述弹幕信息发送模块,用于将存储的所述弹幕信息发送至所述视频库中的所有本地视频文件中进行展示。

优选地,其中:

进一步包括:弹幕信息播放时刻计算模块,

所述弹幕信息播放时刻计算模块,用于计算所述弹幕信息在所述本地视频文件播放过程中所对应的播放时刻,使得所述弹幕信息与视频播放内容相匹配。

优选地,其中:

所述弹幕信息播放时刻计算模块,进一步用于:

记录同片用户集合中各用户通过弹幕发送区域向所述本地视频文件发送的各所述弹幕信息在所述本地视频文件播放过程中分别对应的视频帧的帧值;

在所述视频库中各所述本地视频文件的播放过程中,当所述本地视频文件播放到所述弹幕信息对应的视频帧的帧值时,将与所述帧值对应的弹幕信息发送至各所述本地视频文件进行展示。

优选地,其中:

所述弹幕信息发送模块,进一步用于将存储的所述弹幕信息发送至所述视频库中的所有本地视频文件中,并将所述弹幕信息按照所对应的播放时刻进行展示。

优选地,其中:

进一步包括:弹幕信息过滤模块,

所述弹幕信息过滤模块,用于在向所述视频库中的所有本地视频文件发送所述弹幕信息前,将包括不文明的弹幕信息在内的特定弹幕信息进行过滤处理。

与现有技术相比,本申请所述的方法及系统,达到了如下效果:

第一,本发明所提供的在本地视频中播放弹幕的方法及系统,能够截取到本地视频资源的头文件并将头文件压缩生成对应的唯一的头文件MD5值,进而基于同一个头文件MD5值收集到具有该头文件MD5值的所有本地视频资源,有效解决了现有技术中难以从鱼龙混杂的成千上万种本地视频文件中识别实质上为同一视频文件的问题,从而使得在本地视频中播放弹幕的成为可能。

第二,本发明所提供的在本地视频中播放弹幕的方法及系统,在识别出基于同一头文件MD5值的本地视频文件后,形成视频库,进而能够收集到观看了视频库中任一本地视频文件的用户,建立同片用户集合。进一步地对同片用户集合中各用户发送的弹幕信息进行收集、处理、存储并发送至具有上述头文件MD5值的本地视频文件中进行展示,从而实现了在本地视频文件中播放弹幕。

第三,本发明所提供的在本地视频中播放弹幕的方法及系统,实现了在本地视频文件中播放弹幕的方案,用户在线观看弹幕视频网速不佳时,可以通过本地的CDN及P2P网络下载本地弹幕进行视频播放,以达到在线观看弹幕视频的同样效果。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本发明的所述一种在本地视频中播放弹幕的方法的流程图;

图2为本发明的所述一种在本地视频中播放弹幕的系统的结构图;

图3为本发明的所述一种在本地视频中播放弹幕的方法的实施例的流程图。

具体实施方式

如在说明书及权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接收的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。此外,“耦接”一词在此包含任何直接及间接的电性耦接手段。因此,若文中描述一第一装置耦接于一第二装置,则代表所述第一装置可直接电性耦接于所述第二装置,或通过其他装置或耦接手段间接地电性耦接至所述第二装置。说明书后续描述为实施本申请的较佳实施方式,然所述描述乃以说明本申请的一般原则为目的,并非用以限定本申请的范围。本申请的保护范围当视所附权利要求所界定者为准。

实施例1

参见图1所示为本申请所述一种在本地视频中播放弹幕的方法的具体实施例,该方法包括:

步骤101、截取本地视频文件的头文件,将所述头文件进行压缩并生成对应的头文件MD5值,将所述头文件MD5值作为所述本地视频文件的唯一识别标识;

步骤102、识别并收集具有所述头文件MD5值的本地视频文件,形成视频库;

步骤103、收集所有在本地观看了所述视频库中的任一本地视频文件的用户,建立同片用户集合;

由于视频库中的所有视频文件拥有相同的MD5值,且MD5值是本地视频文件的唯一识别标识,所以视频库中的所有视频文件其实是同一视频文件,只是名称不同而已,所以只要观看了视频库中的任一本地视频文件,就认为这些用户其实看的是同一个本地视频文件,这些用户形成同片用户集合。

步骤104、收集所述同片用户集合中各用户通过弹幕发送区域向所述本地视频文件发送的弹幕信息;

步骤105、将所述本地视频文件的头文件MD5值和观看过所述视频库中任一本地视频文件的用户发送的所述弹幕信息捆绑上传至弹幕信息处理模块;

步骤106、对捆绑后的所述头文件MD5值和所述弹幕信息进行解析,获取到解绑后的所述头文件MD5值和与所述头文件MD5值对应的所述弹幕信息,并将所述头文件MD5值和所述弹幕信息存储至弹幕信息发送模块中;

步骤107、将存储的所述弹幕信息发送至所述视频库中的所有本地视频文件中进行展示。

本申请所提供的上述在本地视频中播放弹幕的方法,能够截取到本地视频资源的头文件并将头文件压缩生成对应的唯一的头文件MD5值,进而基于同一个头文件MD5值收集到具有该头文件MD5值的所有本地视频资源。在识别出基于同一头文件MD5值的本地视频文件后,形成视频库,进而能够收集到观看了视频库中任一本地视频文件的用户,建立同片用户集合。进一步地对同片用户集合中各用户发送的弹幕信息进行收集、处理、存储并发送至视频库中的所有本地视频文件进行展示,从而实现了在本地视频文件中播放弹幕。

本申请的本地视频中播放弹幕的方法,进一步包括:计算所述弹幕信息在所述本地视频文件播放过程中所对应的播放时刻,使得所述弹幕信息与视频播放内容相匹配。

上述计算计算所述弹幕信息在所述本地视频文件播放过程中所对应的播放时刻,进一步为:

记录同片用户集合中各用户通过弹幕发送区域向所述本地视频文件发送的各所述弹幕信息在所述本地视频文件播放过程中分别对应的视频帧的帧值;

在所述视频库中各所述本地视频文件的播放过程中,当所述本地视频文件播放到所述弹幕信息对应的视频帧的帧值时,将与所述帧值对应的弹幕信息发送至各所述本地视频文件进行展示。

由于视频是通过一帧一帧的图像合成的,25-30帧即为一秒画面,本申请是通过播放核心获取视频的帧值,帧值是随着播放时间而递增的,不会有重复,所以在发送本地弹幕信息时,在记录当前发送的弹幕信息(颜色、字体、字号、模式)之外,将发送时所处的帧值一同发送给弹幕信息处理模块作为记录;待下次其他用户播放到此帧值(相当于一秒)时,在这个帧值(相当于一秒)发送弹幕信息,保证弹幕信息与播放内容相匹配。用帧值的好处是,在播放进度的时间戳有问题时,通过帧值还能准确的找到视频的同一播放点。

将弹幕信息与视频播放内容进行匹配,在播放到某一段视频内容时,弹出对应的弹幕信息,有利于反应观看该段视频时其他用户的弹幕信息内容,更有利于交流。

上述步骤107,将存储的所述弹幕信息进发送至所述视频库中的所有本地视频文件中进行展示,进一步为:

将存储的所述弹幕信息发送至所述视频库中的所有本地视频文件中,并将所述弹幕信息按照所对应的播放时刻进行展示。如此方式,用户就能够在观看本地视频的某一段内容时看到该段视频内容对应的弹幕,达到了在线观看弹幕视频的同样效果。

本申请的本地视频中播放弹幕的方法,进一步包括:设置各所述弹幕信息在所述本地视频文件播放过程中所对应的播放位置,使得所述弹幕信息在设置的播放位置进行展示。通过本申请的上述方法,能够将弹幕信息在本地视频的指定位置进行展示,该指定位置可以是视频渲染过程中的任何位置,只要不影响用户正常观看视频内容即可。

本申请中的弹幕信息至少可包括:弹幕内容和弹幕样式。上述弹幕内容和弹幕样式可以是用户通过发送区域编辑发送的原始弹幕内容和样式,从而真实反应了用户观看本地视频文件的想法。

当然,本申请所提供的在本地视频中播放弹幕的方法还进一步包括:在向包含所述头文件MD5值的本地视频文件中发送所述弹幕信息前,将特定的弹幕信息进行过滤处理。例如,可对不文明的弹幕信息进行过滤,过滤的方法可采用关键字过滤,使得包含已设定的关键字的弹幕不在本地视频文件中显示,以提高本地视频中播放的弹幕信息文明度。

实施例2

参见图2所示为本申请所述一种在本地视频中播放弹幕的系统的具体实施例,该系统包括:头文件处理模块10、同一视频识别模块20、同片用户收集模块30、弹幕信息收集模块40、弹幕信息处理模块50和弹幕信息发送模块60,

所述头文件处理模块10,用于截取本地视频文件的头文件,将所述头文件进行压缩并生成对应的头文件MD5值,将所述头文件MD5值作为所述本地视频文件的唯一识别标识;

所述同一视频识别模块20,用于识别并收集具有所述头文件MD5值的本地视频文件,形成视频库;

所述同片用户收集模块30,用于收集所有在本地观看了所述视频库中的任一本地视频文件的用户,建立同片用户集合;

所述弹幕信息收集模块40,收集所述同片用户集合中各用户通过弹幕发送区域向所述本地视频文件发送的弹幕信息,并将所述本地视频文件的头文件MD5值和观看过所述视频库中任一本地视频文件的用户发送的所述弹幕信息捆绑上传至弹幕信息处理模块;

所述弹幕信息处理模块50,用于对捆绑后的所述头文件MD5值和所述弹幕信息进行解析,获取到解绑后的所述头文件MD5值和与所述头文件MD5值对应的所述弹幕信息,并将所述头文件MD5值和所述弹幕信息存储至弹幕信息发送模块中;

所述弹幕信息发送模块60,用于将存储的所述弹幕信息发送至所述视频库中的所有本地视频文件中进行展示。

本申请所提供的上述在本地视频中播放弹幕的系统中,头文件处理模块10能够截取到本地视频资源的头文件并将头文件压缩生成对应的唯一的头文件MD5值,同一视频识别模块20能够基于同一个头文件MD5值收集到具有该头文件MD5值的所有本地视频资源。同一视频识别模块20在识别出基于同一头文件MD5值的本地视频文件后,形成视频库,进而使得同片用户收集模块30能够收集到观看了视频库中任一本地视频文件的用户,建立同片用户集合。进一步地,弹幕信息收集模块40对同片用户集合中各用户发送的弹幕信息进行收集,弹幕信息处理模块50对捆绑后的头文件MD5值和弹幕信息进行处理,最终由弹幕信息发送模块60将弹幕信息发送至视频库中的所有本地视频文件中进行展示,从而实现了在本地视频文件中播放弹幕。

本申请中的在本地视频中播放弹幕的系统,进一步包括:弹幕信息播放时刻计算模块,

所述弹幕信息播放时刻计算模块,用于计算所述弹幕信息在所述本地视频文件播放过程中所对应的播放时刻,使得所述弹幕信息与视频播放内容相匹配。

进一步地,上述弹幕信息播放时刻计算模块用于:

记录同片用户集合中各用户通过弹幕发送区域向所述本地视频文件发送的各所述弹幕信息在所述本地视频文件播放过程中分别对应的视频帧的帧值;

在所述视频库中各所述本地视频文件的播放过程中,当所述本地视频文件播放到所述弹幕信息对应的视频帧的帧值时,将与所述帧值对应的弹幕信息发送至各所述本地视频文件进行展示。

将弹幕信息与视频播放内容进行匹配,在播放到某一段视频内容时,弹出对应的弹幕信息,有利于反应观看该段视频时其他用户的弹幕信息内容,更有利于交流。

上述弹幕信息发送模块60,进一步用于将将存储的所述弹幕信息发送至所述视频库中的所有本地视频文件中,并将所述弹幕信息按照所对应的播放时刻进行展示。如此方式,用户就能够在观看本地视频的某一段内容时看到该段视频内容对应的弹幕,达到了在线观看弹幕视频的同样效果。

本申请中的在本地视频中播放弹幕的系统,进一步包括:弹幕信息播放位置设置模块,

该弹幕信息播放位置设置模块,用于设置各所述弹幕信息在所述本地视频文件播放过程中所对应的播放位置,使得所述弹幕信息在设置的播放位置进行展示。如此方式,用户就能够在观看本地视频的某一段内容时看到该段视频内容对应的弹幕,达到了在线观看弹幕视频的同样效果。

本申请中的弹幕信息至少可包括:弹幕内容和弹幕样式。上述弹幕内容和弹幕样式可以是用户通过发送区域编辑发送的原始弹幕内容和样式,从而真实反应了用户观看本地视频文件的想法。

当然,本申请所提供的在本地视频中播放弹幕的系统还进一步包括:弹幕信息过滤模块,所述弹幕信息过滤模块,用于在向包含所述头文件MD5值的本地视频文件中发送所述弹幕信息前,将特定的弹幕信息进行过滤处理。例如,可对不文明的弹幕信息进行过滤,过滤的方法可采用关键字过滤,使得包含已设定的关键字的弹幕不在本地视频文件中显示,以提高本地视频中播放的弹幕信息文明度。

实施例3

以下提供一种本发明在本地视频中播放弹幕的方法的应用实施例,具体包括:

步骤201、截取本地视频文件的头文件,将所述头文件进行压缩成zip包,并生成对应的头文件MD5值,将所述头文件MD5值作为所述本地视频文件的唯一识别标识;

本申请现将本地视频文件的头文件进行截取,因为头文件为本地视频文件的特殊结构,被破坏的几率小,即使将本地视频文件的文件名修改成各式各样,其头文件也将保持不变,故将头文件定为判断是否用户在本地播放同一视频文件的依据。为了方便校验,本申请在将头文件截取后,压缩为zip包,并生成MD5值,作为标识。由于头文件唯一,将其压缩生成的MD5值也唯一,所以MD5值可作为本地视频文件的唯一识别标识。有了本地视频唯一性的判断之后,就可方便进行收集有多少用户在本地观看了同样视频头文件的视频。

步骤202、识别并收集具有所述头文件MD5值的本地视频文件,形成视频库;

步骤203、收集所有在本地观看了所述视频库中的任一本地视频文件的用户,建立同片用户集合;

步骤204、收集所述同片用户集合中各用户通过弹幕发送区域发送的弹幕信息;

步骤205、将特定的弹幕信息进行过滤处理;

步骤206、计算所述弹幕信息在所述本地视频文件播放过程中所对应的播放时刻;

步骤207、设置各所述弹幕信息在所述本地视频文件播放过程中所对应的播放位置;

步骤208、将所述本地视频文件的头文件MD5值、观看过该本地视频的用户发送的所述弹幕信息、弹幕信息播放时间以及弹幕信息播放位置捆绑上传;

步骤209、对捆绑后的所述头文件MD5值和所述弹幕信息进行解绑并存储至弹幕信息发送模块中;

步骤210、将存储的所述弹幕信息发送至所述视频库中的所有本地视频文件中,并将所述弹幕信息按照所对应的播放时刻以及对应的播放位置进行展示。

上述的弹幕信息形成了本地弹幕,本地弹幕为同片用户集合中的用户建立了交流圈子,增加社交功能。例:用户在观看本地影片时,通过弹幕发送区域,编辑想发的弹幕,点击发送,本申请所提供的在本地视频中播放弹幕的方法和系统,将该视频的“头文件”MD5值,以及发送内容、样式,捆绑上传至服务端,服务端进行格式转换,并将此MD5值作为一个key,存储在服务器中;MD5作为key的作用是,收集同MD5值的弹幕信息进行存储,同时下发给同MD5值的本地视频所有已储存的弹幕信息。这样就形成了本地弹幕从上传到下发的一个流程,从而实现本地发送和收看弹幕了。

通过以上各实施例可知,本申请存在的有益效果是:

第一,本发明所提供的在本地视频中播放弹幕的方法及系统,能够截取到本地视频资源的头文件并将头文件压缩生成对应的唯一的头文件MD5值,进而基于同一个头文件MD5值收集到具有该头文件MD5值的所有本地视频资源,有效解决了现有技术中难以从鱼龙混杂的成千上万种本地视频文件中识别实质上为同一视频文件的问题,从而使得在本地视频中播放弹幕的成为可能。

第二,本发明所提供的在本地视频中播放弹幕的方法及系统,在识别出基于同一头文件MD5值的本地视频文件后,形成视频库,进而能够收集到观看了视频库中任一本地视频文件的用户,建立同片用户集合。进一步地对同片用户集合中各用户发送的弹幕信息进行收集、处理、存储并发送至具有上述头文件MD5值的本地视频文件中进行展示,从而实现了在本地视频文件中播放弹幕。

第三,本发明所提供的在本地视频中播放弹幕的方法及系统,实现了在本地视频文件中播放弹幕的方案,用户在线观看弹幕视频网速不佳时,可以通过本地的CDN及P2P网络下载本地弹幕进行视频播放,以达到在线观看弹幕视频的同样效果。

本领域内的技术人员应明白,本申请的实施例可提供为方法、装置、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

上述说明示出并描述了本申请的若干优选实施例,但如前所述,应当理解本申请并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本申请的精神和范围,则都应在本申请所附权利要求的保护范围内。

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