用于处理多媒体流以验证访问权限的方法和设备与流程

文档序号:15235651发布日期:2018-08-21 20:33阅读:252来源:国知局

本发明涉及一种用于处理多媒体流的方法,特别是用于验证对所述多媒体流的内容的访问权限,以及用于处理多媒体流的关联的设备。

它落入处理多媒体流的领域内,特别是对抗受访问权限管制的多媒体内容的非法广播。



背景技术:

具有无线通信能力的设备的最近发展以及使用关联的通信网络来传输大量数据的能力使得可以推广对多媒体内容的访问。

因此,通过以标记语言格式化的页面、以由客户端设备可下载的多媒体流的形式,服务器使得非常大量的多媒体内容成为可用的。为了获得和显示这样的页面,客户端设备针对以标记语言格式化的数据使用通常称为“web浏览器”的数据浏览器。下载的多媒体流可以运送电影、系列节目或纪录片的内容,预先录制的类型或首轮内容,例如运动或艺术活动。在所有情况下,该内容都受到保护,即其使用受制于访问权限的拥有,访问权限的获得特别是可以确保权利持有者获得报酬。

未经授权的广播公司可以使得这样的多媒体流成为可用的,在这种情况下,它们的访问不受应归于权利持有者的许可费的管制。在这种情况下,参考非法广播和盗版多媒体内容。

经由因特网分发的多媒体流的数量使得不可能考虑使用人力操作者的任何手动分析以有效地检测非法广播。

因此需要自动化多媒体流的处理以便检测非法的内容广播。

存在用于纹身(tattooing)或标记数字数据的技术,特别是对图像数据或视频数据流进行纹身,使得可以向这些流中插入关于对这些流的访问权限的信息,该信息对人眼而言也是不可感知的,但能够由适当的处理软件解码。这样的技术可用于分析多媒体流并检测盗版的多媒体流,只要它们能够恢复和记录有疑问的多媒体流即可。

然而,恢复和记录由非法服务器提供的多媒体流在若干方面存在问题。附加地,即使是合法内容的提供者,在他们不知情的情况下,也可能广播盗版内容,因为盗版内容的访问权并未得到遵守。

一方面,实际上,在很多情况下,指示下载的多媒体流的来源的网址或url(统一资源定位符)被隐瞒或隐藏,即使得难以从系统中提取,以便使任何直接访问都很难。

另一方面,专有视频流读取软件有时是必要的,并且视频流可以是采用需要由这样的软件完成特定解码的编码格式而提供的。

最后,通常在将由浏览器显示的相同的多媒体流中广播除封装受访问权限管制的内容的主视频流之外的若干个视频流,特别是叠加显示在主视频流上的包含广告、标志或其它内容的附加视频流。在这种情况下,需要从传送的多媒体流中提取主视频流。

存在用于分析图形显示界面以及模拟用户行为的合适的方法,以便执行使得可以选择显示的主视频流的一系列动作,但是这些方法是复杂的,需要预先学习并且使得不能够在主视频流与附加视频流之间进行区分。



技术实现要素:

本发明旨在解决现有技术的缺点。

为此,本发明提出了一种用于处理多媒体流的方法,特别是用于验证对所述多媒体流的内容的访问权限,多媒体流由连接到通信网络的服务器设备提供,并且是通过使用与用于读取多媒体流的软件协作的用于浏览和显示以标记语言格式化的数据的软件,由客户端设备经由以标记语言格式化的数据而可下载的,多媒体流包括能够以像素的形式在客户端设备的显示屏幕的显示区域中显示的至少一个视频流。

该方法包括以下步骤:

-确定显示区域,该显示区域由所述浏览和显示软件分配给用于读取多媒体流的软件,以便显示从所述多媒体流中提取的视频流;以及

-记录至少一个数字图像,该至少一个数字图像是由在给定时间确定的显示区域中要显示的像素的值形成的。

有利地,本发明使得可以记录一个或若干个数字图像,该一个或若干个数字图像对应于从浏览器中下载的多媒体流中提取的视频流,该浏览器与用于读取多媒体流的软件协作,而不需要对用于读取所使用的多媒体流的软件的任何先验知识。

根据本发明的用于处理多媒体流的方法可具有以下特征中一个或多个:

记录是以预定的时间频率而完成的,使得可以记录所述视频流的多个数字图像。

用于确定显示区域的步骤基于由所述浏览和显示软件提供的编程接口,实现对在浏览和显示软件与用于读取多媒体流的软件之间交换的命令的分析。

该方法包括用于截取用以创建或初始化所述用于读取多媒体流的软件的可执行实例的命令的步骤。

其进一步包括用于如下的步骤:通过分析由浏览和显示软件以及用于读取多媒体流的软件发送的用以分配显示区域的命令来从第一模式和第二模式中确定显示模式。

当显示模式是第一显示模式时,该方法包括截取用以更新显示区域的命令,并且在所述截取用以更新确定的显示区域的命令之后,完成对在确定的显示区域中要显示的像素的值的记录。

多媒体流包括至少两个视频流,该两个视频流包括主视频流和至少一个附加视频流,每个视频流具有关联的显示区域,并且确定步骤包括针对每个视频流确定关联的显示区域,以及在确定的显示区域中将主显示区域标识为与主显示区域关联的显示区域。

主显示区域的标识包括至少一个用于如下的步骤:计算与每个确定的显示区域关联的分数以及将其关联的分数是最高分数或最低分数的显示区域选择为主显示区域。

计算与每个显示区域关联的分数取决于包括以下操作的组中的至少一个操作:计算由每个显示区域占据的表面面积;计算至少部分地叠加在每个显示区域上的显示区域的数量;计算每个显示区域的至少第一尺寸与第二尺寸之间的比率。

记录的像素值形成数字图像,并且该方法包括用于分析记录的数字图像的步骤,使得可以确定属于主视频流的数字图像和属于附加视频流的数字图像。

根据另一方面,本发明提出了一种用于处理多媒体流的设备,特别是用于验证对所述多媒体流的内容的访问权限,处理设备包括中央处理单元,数据存储单元,处理设备包括或被连接到显示屏幕,多媒体流由连接到通信网络的服务器设备提供,并且是通过使用与用于读取多媒体流的软件协作的用于浏览和显示以标记语言格式化的数据的软件,由处理设备经由以标记语言格式化的数据而可下载的,多媒体流包括能够以像素形式在所述显示屏幕的显示区域中显示的至少一个视频流。

该设备包括该适合用于以下的模块:

-确定显示区域,该显示区域由所述浏览和显示软件分配给用于读取多媒体流的软件,以便显示从所述多媒体流中提取的视频流;

-记录至少一个数字图像,该至少一个数字图像是由在给定时间确定的显示区域中要显示的像素的值形成的。

根据另一方面,本发明提出一种计算机程序,其包括指令,用于在由可编程设备的处理器执行程序时,执行如上简述的用于处理多媒体流的方法的步骤。

【附图说明】

参照附图,从下面供参考并且非限制性地提供的本发明的描述,本发明的其它特征和优点将显现出来,其中:

-图1示意性示出根据本发明的一个实施例的执行用于处理多媒体流的方法的系统;

-图2示出包括旨在显示视频流的多个显示区域的示例显示器;

-图3是根据本发明一个实施例的由用于处理多媒体流的方法执行的主要步骤的框图;

-图4是根据本发明的一实施例的被执行以确定用于标识分配的每个显示区域的参数的主要步骤的框图;以及

-图5是根据本发明的一实施例的被执行以确定与主视频流关联的显示区域的主要步骤的框图。

【具体实施方式】

图1示意性图示经由通信网络(例如因特网)来执行客户端-服务器通信的系统1。

在该系统1中,服务器设备2被示意性地示出为连接到通信网络4,并且还包括可以是分布式的存储系统6。存储系统6包括多媒体内容8a、8b等,在该示例中多媒体内容8a、8b等是预先记录的。

例如,在“视频点播”(vod)服务器的情境中,多媒体内容例如是包括以适当的编码格式编码的图像和声音的视频内容,例如电影、纪录片、电视剧。

替代地,服务器2例如经由除了通信网络4之外的通信网络,例如卫星通信网络,来接收来自内容广播设备10的以多媒体流形式的多媒体内容。例如,这些接收到的多媒体流对应于艺术或体育活动的实时广播,典型地是节目或体育比赛。

系统1还包括客户端设备16、18、20,这些客户端设备也连接到通信网络4。

在图1中概述了客户端设备20,其它客户端设备具有相似的结构。

在一实施例中,客户端设备20是可编程设备,例如计算机,其包括与通信网络4通信的通信单元22,通信单元22能够使用适当的通信协议(例如ip协议(互联网协议))来发送和接收数据。

客户端设备20还包括中央处理单元24,中央处理单元24包括一个或若干个处理器,其能够在设备20通电时执行计算机程序指令。设备20还包括信息存储单元26,例如寄存器,其能够存储数据和可执行代码指令,使得可以执行包括能够执行根据本发明的方法的代码指令的程序。上述设备20的各种功能块是经由通信总线28而连接的。

可编程设备20包括或被连接到显示屏幕30。可选地,可编程设备20包括用于与用户交互的接口31,例如键盘、鼠标或任何其它指向部件。在一实施例中,显示屏幕30是触敏类型的并且还形成与用户的交互界面31。

中央处理单元24包括软件模块,特别是实现数据通信协议(例如超文本传输协议(http))软件模块32,以获得由实现相同通信协议的服务器2提供的数据和/或指令,并且在屏幕30上提供从获得的数据和/或指令中提取的可视数据的呈现。

可视数据包括文本、静止图像,视频。

软件模块32是网络浏览和显示模块,通常称为web浏览器,或者简称为浏览器,其主要功能是查看万维网上可获得的信息。

浏览器使用web地址或url(统一资源定位符)并下载目标页面,web地址或url指示通常称为网页的页面的位置,包含实现http协议的服务器上的数据和/或指令的一组资源,。

这样的网页包括以标记语言格式化的数据,例如html(超文本标记语言),该语言提供要显示的文本以及格式的一般结构:标题和段落、列表、表格。可以通过使用级联样式表(css)来细化格式:边距、对齐、间距、颜色、边框等。

传统上,浏览器能够与一个或若干个用于读取多媒体流的软件程序(软件模块34)进行通信。这种软件也被称为“播放器”。更一般地,浏览器能够执行兼容的扩展软件以提供附加的功能。

浏览器与任何扩展软件之间的通信是由应用程序编程接口(api)而完成的,其定义浏览器与任何扩展软件之间的通信功能,使得可以执行功能,发送信息和发送参数值。

例如,浏览器使用被称为npapi的接口,npapi代表netscapepluginapplicationprogramminginterface。

一般而言,所有浏览器都具有关联的编程接口,其旨在允许外部软件与浏览器进行交互并提供附加功能。

在一替代实施例中,用于阅读多媒体流的软件被集成到浏览器32中,例如在html5浏览器的情况下。在这种情况下,使用内部api,操作与上述操作类似。

更进一步地,添加了软件模块36,其包括用以执行根据本发明的用于处理多媒体流的方法的代码指令,将在下面详细描述本发明的实施例。

浏览器32能够在显示屏幕30上显示旨在要被观看的内容。

为了执行这样的显示,浏览器32使用内部图形合成引擎38或外部图形合成引擎(未示出),外部图形合成引擎是在可编程设备20中实现的操作系统的合成引擎。

每个内容与要显示的元素(静止图像或视频流)关联,图形合成引擎将要显示的元素与显示屏幕30上的保留的显示区域关联。

然后以保留的显示区域的一组像素的形式显示每个元素,每个像素是屏幕上的显示单元并且具有在若干个比特上编码的关联的值。要在给定时间显示的像素的值是形成要显示的图像的数字图像数据。

当要显示的元素是视频流时,以由视频流的编码格式确定的时间频率来刷新显示区域的像素的值。

显示区域具有平面几何形状,例如矩形,并且其特征在于如下的参数:该参数表征平面几何形状,其在显示屏幕上的位置以及其深度z,使得可以限定具有关联的深度的平面并且限定显示区域之间的深度层级。

例如,矩形显示区域是由沿着关联的空间坐标系的轴x和y的位置参数,长度l,宽度l以及深度z参数而定义的。空间坐标系(x,y,z)如图2所示。

因此,在图2的示例中,要显示的页面50包括具有关联的深度z0(例如等于0)的屏幕背景区域40。

利用关联的深度z1>z0来显示第二区域42,第二区域42包含期望观看的要显示的元素,其包含主视频流。

然而,上面显示了具有较小尺寸的若干附加显示区域44、46、48,例如包括如下类型的内容:广告视频流、标志或信息文本。

在图示的示例中,显示区域44、46、48具有关联的深度z2、z3、z4,其可以是相等的,但是都大于z1。

传统上,希望观看在显示区域42中显示的主视频流的用户作用于与显示区域关联的交互区域44a、46a、48a上以关闭显示区域或窗口44、46、48。

替代地,显示持续时间与要显示的页面的定义文件中的每个显示区域44、46、48关联。

根据本发明的用于处理多媒体流的方法旨在标识对应于要显示的主视频流的主显示区域,并且从标识的显示区域中的显示像素的值连续地记录主视频流的图像。

因此,有利地,根据本发明的方法不需要知道用于读取视频流的软件的操作模式或接收的视频流的编码格式。

图3是根据本发明的一实施例的用于处理多媒体流的方法的主要步骤的框图,该方法的主要步骤是由可编程设备20的处理器执行的。

该方法包括用于获取根据标记语言格式化的数据的第一步骤60,该格式化的数据例如是以从服务器下载的网页的形式,包括由浏览器可执行的显示指令以显示一个或若干个多媒体流,多媒体流特别是包含文本,图像和一个或若干个要显示的视频流。该用于获取数据的步骤是由浏览器32执行的。

步骤60之后是步骤62,用于触发由浏览器32执行所获得的用于执行显示的网页。

该步骤62之后是步骤64,用于确定被分配用于显示包含在下载的多媒体流中的主视频流的显示区域,步骤64是由软件模块36实现的,并且使用浏览器与用于阅读多媒体流的软件之间交换的命令的分析。

将要注意的是,在此考虑的情况是用于读取多媒体流的软件,但是应该理解,如果实现用于读取多媒体流的若干个不同的软件程序,则操作是相似的。

步骤64包括用于基于浏览器提供的应用编程接口(api)经由软件模块36来截取用以创建或初始化用于读取多媒体流的软件的可执行实例的命令的子步骤66。

例如,当api是npapi时,执行np_initialize()命令以初始化用于读取多媒体流的软件的可执行实例作为浏览器的扩展。接下来,经由npp_new()命令来初始化用于读取多媒体流的软件的实例。

更一般地,带有“npp_”前缀的函数指示从浏览器发送到用于读取多媒体流的软件(并且更一般地发送到附加软件)的命令,而带有“npn_”前缀的函数指示由附加软件(“add-onsoftware”)发送到浏览器的命令。

在截取了关于用于读取视频流的软件的可执行实例的创建或初始化的命令之后,用于确定用于标识被分配以显示视频流的每个显示区域的参数的子步骤68,其中用于读取多媒体流的软件将提供以要显示的像素值的形式显示的视频内容。

取决于使用的显示模式,如下面详细解释的那样,考虑了用于标识每个分配的显示区域的参数的确定68的各种实施例。

如果适用的话,如果若干个显示区域被标识以显示各种视频流,像在图2中图示的示例中一样,则步骤68之后是步骤70,用于确定与要显示的主视频流关联的主显示区域,其包含可能非法广播的感兴趣的内容,其它视频流是附加视频流,例如广告类型的附加视频流。

用于确定被分配用于显示主视频流的显示区域的步骤64之后是步骤72,用于记录与主视频流关联的主显示区域中显示的像素的值。

根据第一实施例,记录是以可以预定的记录时间频率而完成的。

替代地,记录是根据用以更新主显示区域的命令而完成的,用以更新主显示区域的命令是由用于截取命令的先前步骤而截取的。

因此,记录了一系列图像数据,并且随后在处理步骤74期间处理该一系列图像数据。该处理例如由分析记录的图像数据组成,以使用不可删除和不可察觉的标记或水印方法从记录的图像数据中提取标记信息,该标记信息使得可以获得关于访问对应的视频流的内容的权限的信息。

替代地,处理74由使用选择的视频编码格式来进行编码组成。

根据一替代方案,处理步骤74还实现处理操作以分析记录的图像数据,使得可以消除一部分,以便仅保留属于主视频流的图像数据,而不保留例如属于过渡屏幕或嵌入在包括主视频流的接收到的多媒体流中的广告视频的图像数据。

本领域技术人员已知的方法可用于此目的。

例如,比较连续的图像并检测并消除静止图像。

更进一步地,黑色或更一般地一致的图像也被消除,这些图像很可能对应于过渡屏幕。

最后,高场景变化频率指示广告内容;因此消除了具有高场景变化率的连续图像。

相反,低检测到的变化频率被认为是体育活动或广播频道的特征;图像因此被保留。

用于确定被分配用于显示视频流的每个显示区域的标识参数的步骤68的实现取决于实现的显示模式。

当使用npapiapi时,可以区分两种显示模式:称为“无窗口(windowless)”的第一显示模式,其中用于读取多媒体流的软件直接经由浏览器显示解码的视频流;以及称为“窗口(windowed)”的第二显示模式,其中浏览器为用于读取多媒体流的软件分配显示窗口以用于显示。

“npp-setwindow()”函数用于分配显示区域,但使用的参数取决于显示模式。

图4示意性地图示了在其中使用的图形显示环境是x环境的实施例中,取决于显示模式而执行的用以确定分配的显示区域的步骤。

在第一步骤80期间,通过检测html页面中预定参数的存在来确定使用的显示模式是第一模式(“无窗”模式)还是第二模式(“窗口”模式)。

如果显示模式是第一显示模式,则执行用于截取“npp_setwindow()”命令的步骤82,该命令使用称为“drawable”的限定显示区域的对象作为参数。

在步骤84中截取了由用于读取多媒体流的软件发送到浏览器的“npn_invalidaterect()”或“npn_invalidateregion()”命令,这些命令指示需要更新“drawable”显示区域。

接下来,在步骤86期间,截取了“npp_handleevent()”命令,该命令在参数中包括更新的“drawable”显示区域的标识参考。

步骤86之后是步骤88,用于获得显示区域的标识参考。

有利地,当实现该第一显示模式时,“npp_handleevent()”命令的截取使得可以同时确定显示区域的更新。

如果显示模式是第二显示模式,则步骤90截取“npp_setwindow()”命令并且随后是步骤92,用于获取分配给显示器的x窗口系统的窗口标识符值。这个标识符值被发送到用于读取视频流的软件,然后该软件可以直接显示它而不通知浏览器。

尽管如此,获得的窗口标识符值使得可以确定分配的显示区域。

然后只需利用预定的时间频率来记录在该标识的显示区域中显示的像素的值。

替代地,窗口系统被修改以截取更新通知,使得可以像对于第一显示模式一样,确定显示区域的更新并且仅在更新显示之后记录显示的像素的值。

如上所述,在大多数情况下,确定若干个显示区域,在这种情况下,执行用于确定对应于主视频流的主显示区域的步骤。

图5是根据本发明的一个实施例的被执行用以从多个显示区域中确定主显示区域的主要步骤的框图。

对于该确定,执行至少一个简单启发法(simpleheuristic),使得可以计算与每个确定的显示区域关联的最终分数,并且选择获得最佳最终分数的区域作为主显示区域。

在图5的实施例中,执行第一步骤100,用于获得确定的显示区域s1至sn的显示位置、尺寸和深度参数。

接下来,执行若干个启发法,使得可以根据这些启发法中的每个来将分数与n个显示区域中的每个进行关联。

在步骤102期间,确定区域s1至sn中的每个区域的表面面积,并且根据被占据的表面面积将递减的分数进行关联,根据该表面区域启发法,最大表面面积区域具有最佳的分数。

回到图2的示例,其中由于经由用于读取多媒体流的软件未显示屏幕背景40,所以屏幕背景40被消除,n=4个剩余的显示区域42、44、46和48被区分。

区域42具有最大的表表面积,接着是区域44、48和46。

在步骤104期间,确定对应于每个显示区域的矩形的长度/宽度比率,并将其与预定值进行比较,例如4/3或16/9,这是最常用于显示主流的比率。

然后根据所获得的比率与预定值之间的距离来对显示区域进行排列。根据这种格式的启发法,具有比率最接近预定值的区域获得最佳分数。

在步骤106期间,基于与每个显示区域si关联的深度值zi来确定叠加在每个显示区域上的区域的数量。假设地,对应于广告内容的显示区域位于主显示区域上方。

在图2的情况下,区域42具有至少部分地叠加或重叠的3个显示区域,而其它三个显示区域位于前景中。显示区域42因此根据该深度启发法接收最佳分数。

在步骤108期间,例如通过每个显示区域的中心与屏幕的总显示表面面积的中心之间的距离来确定每个区域相对于显示屏幕的居中。对于这种居中启发法而言,由于显示区域42是居中的,所以它获得最佳分数。

最后,将关于各种启发法的针对每个显示区域的分数组合成一个最终分数,并且在步骤110期间,将获得最佳最终分数的显示区域选择为对应于主视频流的显示的主显示区域。

在一实施例中,组合由以下组成:计算最终分数作为针对每个实现的启发法而获得的分数的加权和,并且最大的最终分数或最小的最终分数被选择为最佳。

替代地,选择的显示区域是根据使用的各种启发法而获得最高数量的最佳分数的区域,即区域的最终分数因此是由该区域根据使用的各种启发法而获得的最佳分数的数量,并且最大的最终分数被选择为最佳的。

根据一个实施例,实现上述启发法中的仅一个或仅一部分以确定主显示区域。

替代地,实现用于确定主显示区域的其它方法,将上述启发法与内容分析方法组合,使得例如可以检测广告视频并因此消除与这样的视频关联的确定的显示区域。

例如,可以选择已经获得最佳的最终分数的两个或三个显示区域,并且接下来在从单个图像样本到几十个图像的特定时间段内分析其内容,以辨别最佳区域。

根据一次优的实施例,首先记录所有确定的显示区域中显示的像素的值,然后完成对内容的分析以确定主视频流。该实施例是次优的,因为它需要更多的存储器和计算资源来从(多个)下载的多媒体流中确定和提取主视频流。

所提出的内容分析技术可以包括检测图像中的黑色屏幕或不变元素,诸如标识电视频道的标志,或者例如镜头变化的频率的测量,镜头变化在接近时表征广告内容。

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