用于经模糊处理的媒体的编码优化的制作方法

文档序号:18302715发布日期:2019-07-31 10:23阅读:192来源:国知局
用于经模糊处理的媒体的编码优化的制作方法

现代通信系统具有一系列的能力,包括对具有不同服务的各种通信模态进行集成。例如,即时消息、语音/视频通信、数据/应用共享、白板和其他形式的通信可以与订户的存在和可用性信息进行组合。这样的系统可以向订户提供增强型能力,例如向呼叫者提供用于各种状态类别、备用联系人、日历信息和类似特征的指令。此外,使用户能够共享和协作以创建和修改各种类型的文档和内容的协作系统可以与提供不同种类的通信和协作能力的多模式通信系统进行集成。这样的集成系统有时被称为统一通信和协作(uc&c)系统。

虽然uc&c系统提供了增加的通信灵活性,但它们也呈现出很多实施挑战。例如,用户可能希望将屏幕内容共享给参与uc&c通信的不同设备。然而,用户也可能希望保护某些屏幕内容不被共享。实现同时的屏幕共享和内容保护呈现出很多实施挑战。



技术实现要素:

提供本概述以便用简化的形式介绍对将在以下的详细描述中进一步描述的构思的选择。本概述并不是旨在标识要求保护的主题的关键特征或本质特征,也不是旨在用于帮助确定要求保护的主题的范围。

描述了用于经模糊处理的媒体的编码优化的技术。通常,将媒体的一部分指定为对于媒体共享体验是受共享保护的。根据各种实施方式,使用密钥图像对媒体的该部分进行模糊处理,以防止媒体的该部分能够被媒体共享体验中的一个或多个参与者清楚地查看。可以将特定参与者指定为具有共享特权,使得该特定参与者可以访问密钥图像并且可以使用密钥图像对经模糊处理的媒体进行去模糊处理。根据各种实施方式,基于媒体共享体验中包括的经模糊处理的媒体的一个或多个属性来优化对媒体共享体验的编码。

附图说明

参照附图描述具体实施方式。在这些附图中,附图标记的最左侧数字标识该附图标记第一次出现时的附图。说明书和附图中的不同实例中对于相同附图标记的使用可以指示类似或相同的项目。在附图标记中后面跟有不同字母的相同数字可以指代特定项目的不同实例。

图1是可操作用于采用本文所讨论的技术的示例性实施方式中的环境的图示。

图2描绘了根据一个或多个实施例的用于在屏幕共享体验期间保护媒体的示例性实施场景。

图3描绘了根据一个或多个实施例的用于在屏幕共享体验期间使得共享保护媒体能够被特权用户访问的示例性实施场景。

图4描绘了根据一个或多个实施例的用于对屏幕共享体验进行编码的编码块优化的示例性实施场景。

图5描绘了根据一个或多个实施例的用于对屏幕共享体验进行编码的编码块优化的示例性实施场景。

图6是描述了根据一个或多个实施例的用于优化对经模糊处理的媒体的编码的方法中的步骤的流程图。

图7是描述了根据一个或多个实施例的用于对视频数据的多个不同区域进行模糊处理的方法中的步骤的流程图。

图8是描述了根据一个或多个实施例的用于优化编码块的方法中的步骤的流程图。

图9是描述了根据一个或多个实施例的用于对包括经模糊处理的视频数据的编码视频数据进行解码的方法中的步骤的流程图。

图10示出了如参照图1所描述的被配置为实现本文所描述的技术的实施例的示例性系统和计算设备。

具体实施方式

描述了用于经模糊处理的媒体的编码优化的技术。在至少一些实施方式中,媒体共享体验涉及用户与其他用户共享其显示屏的一部分作为通信会话的一部分。如本文所使用的,媒体指代诸如视频、音频、文本内容、图像等的各种类型的内容。例如,通信会话指代不同通信端点之间的通信媒体的实时交换。通信会话的示例包括互联网协议语音(volp)呼叫、视频呼叫、文本消息传送、文件传输、内容共享和/或其组合。在至少一种实施方式中,通信会话表示统一通信和协作(uc&c)会话。

根据各种实施方式,作为媒体共享体验的一部分与其他设备共享其屏幕的用户希望保护屏幕的一部分不被共享。例如,他们的屏幕的一部分可能是显示敏感的和/或用户不希望共享的个人信息。因此,用户调用共享保护功能以使用户能够标识其屏幕中的不与其他设备共享的部分。例如,用户可以围绕其屏幕中的他们希望共享保护的一部分来绘制保护区域。下面描述将显示的特定部分指定为受共享保护的其他方式。因此,来自用户屏幕的所识别部分的媒体(“受保护媒体”)被模糊处理,而其他部分作为屏幕共享体验的一部分被清楚地共享。

根据各种实施方式,使用密钥图像作为模糊密钥对受保护媒体进行模糊处理。例如,受保护媒体和密钥图像用作异或(xor)操作的输入,以生成经模糊处理的视频数据。通常,密钥图像表示诸如数字照片、数字绘图、扫描图像等的数字图像。与使用随机密钥的典型数据模糊相比,使用图像作为模糊密钥提供了增强的编码和解码性能,这是因为图像的图像数据在像素相互关系方面是相互相关的。也就是说,对诸如随机模糊密钥之类的随机数据的编码(压缩)是资源密集的,这是因为随机数据难以压缩。然而,具有一些可预测的相互关系的数据(例如,图像数据)更容易被压缩。因此,使用图像密钥来对媒体进行模糊处理减少了用于对经模糊处理的媒体进行编码的资源使用。

根据一种或多种实施方式,用户可以被指定为具有共享特权,使得该用户被允许查看被指定为受共享保护并因此被模糊处理的媒体。例如,将其显示屏的一部分指定为受共享保护的共享用户可以将屏幕共享体验中的参与者识别为具有共享特权。因此,与特权参与者相关联的设备能够访问密钥图像,使得该设备可以对来自屏幕的受共享保护部分的经模糊处理的媒体进行去模糊处理,并清楚地显示经去模糊处理的媒体。然而,屏幕共享体验中的其他非特权参与者不能访问密钥图像,并因此不能对受保护媒体进行去模糊处理和查看。用此方式,用户可以保护某些屏幕内容免于一般共享,同时指定允许查看该内容的一组特权用户。

根据一种或多种实施方式,用于经模糊处理的媒体的编码优化包括:对用于编码和解码经模糊处理的媒体的编码块结构进行优化。通常,编码块结构指代用于对媒体进行划分以进行编码的编码块的大小和布置(例如,位置)。如下面进一步详细描述的,优化编码块结构可以减少对经模糊处理的内容进行编码、以及对经模糊处理的内容进行解码和去模糊处理所需要的计算资源。

因此,本文描述的用于经模糊处理的媒体的编码优化的技术增强了用户在媒体共享体验期间保护敏感媒体和数据的能力,从而提高了敏感用户数据的数据安全性,并防止敏感用户媒体的非期望的暴露。所描述的技术还通过优化用于编码媒体的媒体编码,来改善媒体共享体验期间的计算设备性能。

在以下讨论中,首先描述可操作用于采用本文所描述的技术的示例性环境。接着,根据一个或多个实施例描述了一些示例性实施场景。之后,根据一个或多个实施例描述了一些示例性过程。最后,根据一个或多个实施例,描述了可操作用于采用本文所讨论的技术的示例性系统和设备。现在考虑可以采用示例性实施方式的示例性环境。

图1是可操作用于采用本文所描述的用于经模糊处理的媒体的编码优化的技术的示例性实施方式中的环境100的图示。通常,环境100包括能够经由各种不同模态实现通信的各种设备、服务和网络。例如,环境100包括连接到网络104的客户端设备102。客户端设备102可以以各种方式进行配置,例如传统计算机(例如,桌上型个人计算机、膝上型计算机等等)、移动站、娱乐设备、智能电话、可穿戴设备、上网本、游戏控制台、手持设备(例如,平板设备)等等。

网络104表示向客户端设备102提供到各种网络和/或服务(例如,互联网)的连接的网络。网络104可以经由诸如宽带电缆、数字订户线(dsl)、无线蜂窝、无线数据连接(例如,wifitm)、t载波(例如,t1)、以太网等的各种不同连接技术,向客户端设备102提供连接。在至少一些实施方式中,网络104表示不同的互连有线和无线网络。

客户端设备102包括使得各种活动和任务能够被执行的各种不同功能。例如,客户端设备102包括操作系统106、应用108、通信客户端110和通信模块112。通常,操作系统106表示用于抽象客户端设备102的各种系统组件(例如,硬件、内核级模块和服务等)的功能。例如,操作系统106可以将客户端设备102的各种组件抽象到应用108,以实现组件和应用108之间的交互。

应用108表示用于经由客户端设备102执行不同任务的功能。应用108的示例包括文字处理应用、电子表格应用、web浏览器、游戏应用等等。应用108可以本地安装在客户端设备102上以经由本地运行时环境执行,和/或可以表示到远程功能(例如,基于云的服务、web应用等等)的门户。因此,应用108可以采用各种形式,例如,本地执行的代码、到远程托管服务的门户等等。

通信客户端110表示经由客户端设备102来实现不同形式的通信的功能。通信客户端110的示例包括语音通信应用(例如,voip客户端)、视频通信应用、消息传送应用、内容共享应用、统一通信&协作(uc&c)应用以及其组合。例如,通信客户端110使得不同的通信模态能够被组合以提供各式通信场景。

通信模块112表示用于使客户端设备102能够通过有线和/或无线连接传送数据的功能。例如,通信模块112表示用于经由各种不同的有线和/或无线技术和协议进行数据通信的硬件和逻辑单元。

客户端设备102还包括显示设备114,所述显示设备114表示用于客户端设备102的视觉输出的功能。另外,显示设备114表示用于接收各种类型的输入(例如,触摸输入、笔输入等等)的功能。

环境100还包括端点设备116,所述端点设备116表示客户端设备102可以与之通信的设备和/或功能。在至少一些实施方式中,端点设备116表示诸如参照客户端设备102所讨论的终端用户设备。端点设备116包括通信客户端118,所述客户端118表示能够经由端点设备116实现不同形式的通信的功能。例如,通信客户端118表示通信客户端110的不同实例。为了便于本文讨论起见,对端点设备116和通信客户端118进行了参考,它们分别表示端点设备116和通信客户端118的实例。

在至少一些实施方式中,通信客户端110、118表示到通信服务120的接口。通常,通信服务120表示用于执行对客户端设备102和端点设备116之间的通信的管理的各种任务的服务。例如,通信服务120可以管理通信客户端110、118之间的通信会话的发起、主持和终止。

通信服务120维持跨越多个不同网络的存在,并且可以根据各种不同的架构(例如,基于云的服务、分布式服务、基于web的服务等)来实现。通信服务120的示例包括voip服务、在线会议服务、uc&c服务等等。

通信客户端110还包括共享模块122,所述共享模块122表示用于执行本文所描述的用于经模糊处理的媒体的编码优化的技术的各个方面的功能。下面详细描述共享模块122的各种属性和操作方面。共享模块122维护共享策略124,所述共享策略124表示指定用于在客户端设备102和端点设备116之间共享媒体的许可和标准的不同数据集。例如,共享策略124指定显示设备114的哪些区域可以与端点设备116共享,以及显示设备114的哪些区域不与端点设备116共享。替代地或另外地,共享策略124是特定于媒体和/或应用的。例如,共享策略124可以指定允许与端点设备116共享的某些类型的媒体,以及不允许与端点设备116共享的其他类型的媒体。此外,共享策略124可以指定允许共享特定应用108的应用窗,以及不允许共享不同应用108的应用窗。通常,可以以各种方式配置共享策略124,例如基于应用开发者指定的缺省设置、终端用户指定的设置、由信息技术(it)人员进行配置等等。

通信客户端110还维护和/或能够访问群组成员资格126,所述群组成员资格126表示客户端设备102的用户128所属的不同群组的标识符。通常,“群组”是指基于不同标准的不同用户的分组。例如,特定的群组表示属于该特定群组的用户标识符和/或设备标识符的集合。通常,可以创建和管理群组,以控制对硬件资源、软件资源、媒体(例如,内容)、文件系统(例如,目录)等的访问。群组的示例包括用户群组、电子邮件群组、目录群组等等。在至少一些实施方式中,共享策略124标识了可以与其“清楚地”共享共享保护区域的特定特权群组。通常,如本文所使用的术语“清楚地”指代以去模糊和/或非模糊的形式查看媒体的能力(例如,经由对经模糊处理的媒体的解密来实现)。例如,特定共享策略124可以指定共享保护媒体可以与特定群组共享,但不与该特定群组之外的用户(例如,不是该特定组成员的用户)共享。替代地或另外地,作为指定共享特权群组的替代或附加,共享策略124可以指定特定的共享特权用户、设备、网络域等等。

虽然将共享模块122和共享策略124描绘成在客户端设备102上实现,但应当领会的是,在一些另外的或替代的实施方式中,共享模块122和/或共享策略124的功能可以部分地或整体地经由基于网络的服务(例如,通信服务120)来实现。例如,通信服务120可以执行本文所描述的用于经模糊处理的媒体的编码优化的技术的各个方面。

客户端设备102还包括模糊处理模块130和编解码器132。模糊处理模块130表示用于对数据进行模糊处理和去模糊处理的功能,例如作为媒体共享体验的一部分,对媒体进行模糊处理。至少由于该目的,模糊处理模块130包括和/或能够访问密钥图像134,所述密钥图像134表示可以用作对数据进行模糊处理和去模糊处理的密钥的图像。通常,密钥图像134表示诸如位图、jpeg(联合图像专家组)、tiff(标记图像文件格式)等的不同格式的不同数字图像。例如,模糊处理模块130可以使用密钥图像134对共享保护媒体进行模糊处理。例如,模糊处理模块130可以对共享保护媒体进行模糊处理,使得接收该经模糊处理的媒体的端点设备116不能清楚地查看该媒体,除非端点设备116能够访问用于对媒体进行模糊处理的特定密钥图像134。

编解码器132表示用于对媒体进行编码和解码的功能,例如对作为媒体共享体验的一部分而生成的媒体流(例如,其包括视频、音频、文件等等)进行编码和解码。例如,编解码器132被配置为执行媒体数据的压缩和解压缩,以便减少发送作为屏幕共享体验的一部分的媒体流所需要的传输带宽。

客户端设备102还包括优化器模块136,所述优化器模块136表示用于作为媒体共享体验的一部分,优化编码和模糊处理性能的功能。如下面进一步详细描述的,优化器模块136可以优化用于对作为媒体共享体验的一部分的媒体进行编码和解码的编码块结构。

已经描述了在其中可以操作本文所描述的技术的示例性环境,现在根据一个或多个实施例,考虑用于经模糊处理的媒体的编码优化的示例性实施场景的讨论。

以下部分描述了根据一种或多种实施方式的用于经模糊处理的媒体的编码优化的一些示例性实施场景。可以在上面所讨论的环境100和/或任何其他适当的环境中实施这些实施场景。

图2描绘了根据一种或多种实施方式的用于在屏幕共享体验期间保护媒体的示例性实施场景200。场景200包括上面参照环境100所介绍的各种实体和组件。

在场景200中,客户端设备102的用户128参与和端点设备116a的用户204的通信会话202。通常,通信会话202表示客户端设备102和端点设备116a之间的不同通信媒体(例如,音频、视频、文件、媒体内容和/或其组合)的实时交换。在该特定示例中,通信会话202涉及通过网络104在客户端设备102和端点设备116a之间实时交换语音数据206和视频数据208。

作为通信会话202的一部分,用户128执行动作以与用户204共享显示设备114的桌面210的一部分。通常,桌面210表示显示设备114的一部分,在所述部分中显示应用、任务、系统操作等等的不同界面和控件。例如,用户128从通信客户端界面214a中选择共享控件212。通常,通信客户端界面211a表示通信客户端110的界面,其使得用户128能够执行各种动作并查看与通信会话202有关的状态信息。对共享控件212的选择激活共享模式216,其使得桌面210的至少一部分将与端点设备116a共享。

因此,响应于激活共享模式216的用户动作,桌面210的区域218a与端点116a共享。共享桌面210的用户动作使得区域218a的视觉表示220呈现在端点设备116a的显示器222上显示的通信客户端界面214a内。例如,视觉表示220表示区域218a的实况副本,其作为视频数据208的一部分从客户端设备102传送到端点设备116a。通常,通信客户端界面214a表示通信客户端118的gui。

应当注意,虽然区域218a被共享到端点设备116a,但是桌面210的不同区域218b并不是清楚地共享到端点设备116a。根据本文所描述的用于经模糊处理的媒体的编码优化的技术,区域218b被指定为不与端点设备116a共享的受保护区域。通常,可以以各种方式将区域218b指定为受保护区域,例如通过将区域218b识别为受保护区域的用户动作。例如,用户128从通信客户端界面214a中选择保护控件224,所述保护控件224激活使得区域218b能够被指定为受共享保护的共享保护模式。作为选择保护控件224的替代或附加,各种其他动作也可以使得媒体区域被保护,例如,在要保护的区域周围绘制矩形和/或其他形状的用户动作、应用被指定为受共享保护、将某些媒体和/或数据类型指定为受共享保护等等。

虽然在场景200中将区域218b描绘成与区域218a分开的区域,但应当领会的是,在至少一些实施方式中,区域218b可以是区域218a的子集。例如,区域218b可以表示嵌入在区域218a内的媒体。因此,作为媒体共享体验的一部分,较大的媒体集的子集可以是受共享保护的,而该较大媒体集的其他部分不是受共享保护的。

为了使得来自区域218b的媒体被保护而不被共享到端点设备116a,通信客户端110与模糊处理模块130进行对接,以使用密钥图像134a对区域218b进行模糊处理。例如,共享模块122将区域218b的区域标识符(“id”)226传递给模糊处理模块130,并且模糊处理模块130使用密钥图像134a对来自区域218b的媒体进行模糊处理以生成经模糊处理的视频数据228。通常,可以以各种方式实现区域id226,例如,规定区域218b的像素坐标、呈现区域218b内的媒体的应用108的应用标识符、在区域218b内呈现的媒体的文件标识符等等。

进一步对于场景200而言,语音数据206、视频数据208和经模糊处理的数据228由编解码器132进行编码以生成经编码的媒体230。如下面进一步详细描述的,优化器模块136通过确定将用于编码各种数据的编码块结构来优化编码。例如,编码块结构基于区域218b中包括的媒体的大小和位置。

因此,经编码的媒体230与通信会话202的数据流进行通信。然而,由于端点设备116a不能访问密钥图像134a,因此端点设备116a不能对经模糊处理的视频数据228进行去模糊处理,不能清楚地显示来自区域218b的媒体。因此,将经模糊处理的视频数据228显示为经模糊处理的图像232。例如,经模糊处理的图像232表示经解码的经模糊处理的视频数据228的视频输出。由于来自区域218b的媒体被模糊处理以生成经模糊处理的视频数据228,因此经模糊处理的图像232不能清楚地呈现媒体,从而保护该媒体不在端点设备116a处清楚地观看。

用此方式,可以将显示区域(例如,桌面)的不同区域规定为共享受限制,以使得能够共享显示区域的某些部分,并且保护其他部分不被共享。通常,可以动态地并且通信会话202在进行中的同时,将媒体指定为受共享保护。例如,在通信会话202正在进行的同时,用户128可以执行动作以使得应用并且稍后移除针对区域218b的共享保护。替代地或另外地,可以将某些媒体持久地指定为受共享保护,使得将共享保护自动地应用于多个单独的通信会话。例如,可以基于应用id、媒体类型、桌面210的特定部分等等来应用持久共享保护。

图3描绘了根据一种或多种实施方式的用于在屏幕共享体验期间,使得共享保护媒体能够被特权用户访问的示例性实施场景300。场景300包括上面参照环境100所介绍的各种实体和组件。在至少一些实施方式中,场景300表示上面所描述的场景200的继续和/或变化。

在场景300中,作为通信会话202的一部分,用户128参与和用户302的屏幕共享体验,并将区域218b指定为受共享保护。作为响应,模糊处理模块130利用密钥图像134b对来自区域218b的媒体进行模糊处理以生成经模糊处理的视频数据304。随后,编解码器132对语音数据206、视频数据208和经模糊处理的视频数据304进行编码以生成经编码的媒体306。如下面进一步详细描述的,优化器模块136通过确定要用于编码各种数据的编码块结构来优化编码。例如,编码块结构基于区域218b中包括的媒体的大小和位置。因此,将经编码的媒体306发送到用户302的端点设备116b。

在该特定场景中,端点设备116b包括和/或能够访问密钥图像134b,所述密钥图像134b被客户端设备102用于对经模糊处理的视频数据304进行模糊处理。因此,端点设备116b可以对经模糊处理的视频数据304进行去模糊处理,使得桌面210的视觉表示308(其包括来自区域218a和区域218b的媒体)能够被清楚地显示,以作为通信客户端118b的通信客户端界面214b的一部分。参与通信会话202的不能访问密钥图像134b的其他端点116可以接收经模糊处理的视频数据304,但是将不能对该经模糊处理的数据304进行去模糊处理并清楚地查看区域218b。

通常,端点设备116b能够以各种方式访问密钥图像134b。例如,可以将密钥图像134b与参与通信会话202的邀请一起传送到端点设备116b,例如将密钥图像134b嵌入到和/或附加到该邀请中。再举一个示例,可以将密钥图像134b与邀请分开地传送到端点设备116b,例如,作为电子邮件、即时消息、文本消息的一部分等等。

在一种示例性实施方式中,凭借用户302是有权访问密钥图像134b的特权群组的成员,端点设备116b可以访问密钥图像134b。例如,公共群组中的成员资格使其用户有权访问密钥图像134b,而该群组之外的未被特别指定为具有共享特权的用户无权访问密钥图像134b。在至少一些实施方式中,凭借用户302和用户128二者都是同一群组的成员,密钥图像134b可用于端点116b。例如,该群组的群组特权授权其成员访问密钥图像134b。。

图4描绘了根据一种或多种实施方式的用于对屏幕共享体验进行编码的编码块优化的示例性实施场景400。通常,可以将场景400执行成上面所描述的场景200、300的一部分。

场景400的上部描绘了显示桌面210的显示设备114。此外,共享模式216是活动的,例如在上面的场景中所描述的。例如,作为屏幕共享体验的一部分,桌面210的一些部分与一个或多个端点设备116共享。如上所述,区域218a被共享,并且区域218b被指定为受共享保护,使得来自区域218b的媒体不与其他设备清楚地共享,除非其他设备被指定为具有共享特权。例如,来自区域218a的媒体被包括在视频数据208中,并且来自区域218b的媒体被包括在经模糊处理的数据304中。

此外,在场景400的上部还描绘了块网格402,其在视觉上描绘成桌面210上的虚线。通常,块网格402表示将桌面210媒体划分为编码块,以便在传输到不同的设备之前进行编码。块网格402可以包括各种类型的编码块,例如宏块、变换块、预测块等等。例如,将桌面210的媒体划分为块网格402的各个编码块,使得每个编码块被单独地编码以生成经编码的视频数据,以便作为屏幕共享体验的一部分进行传输。可以采用使用编码块的各种编码技术,例如h.261、h.264、h.265等。

在场景400的上部,来自共享保护区域218b的媒体被包括在块网格402的12个不同编码块中。转到场景400的下部,优化器模块136执行块优化404过程来优化块网格402的编码块,以编码共享保护区域218b(即,经模糊处理的数据304)。为了执行块优化404,改变桌面210上的块网格402的位置以生成经优化的网格406,这减少了包括来自受保护区域218b的媒体的编码块的数量。例如,将块网格402的位置相对于桌面210向上、向下、向右和/或向左改变,以减少包括经模糊处理的媒体304的编码块的数量。

因此,如图所示,经优化的网格406具有9个不同的编码块,其包括来自共享保护区域218b的媒体,这小于原始块网格402的媒体的数量。在该特定场景中,各个编码块的大小没有改变,只是位置发生改变。然而,在一些另外的或替代的场景中,可以改变编码块的位置和/或大小以优化对媒体的编码。

继续场景400,编解码器132执行编码过程408,所述编码过程408基于经优化的网格406对桌面210进行编码以生成经编码的视频数据410。经编码的视频数据410包括具有编码形式的视频数据208和经模糊处理的数据304。通常,将来自经优化的网格406的各个编码块的媒体用作编码408的输入,以生成经编码的视频数据410。例如,将桌面210的媒体划分为用于使用经优化的网格406的编码块进行编码的帧。

应当注意,经编码的视频数据410与编码信息412相关联。通常,编码信息412包括关于经编码的视频数据410如何被编码的各种信息,例如编码协议(如,h.265、h.265等等)、编码率等。在该特定实施方式中,编码信息412指定经优化的网格406相对于桌面210的原始预编码媒体的位置信息。例如,该位置信息包括针对经优化的网格406的各个编码块并且相对于桌面210的像素的来自桌面210的像素坐标边界。因此,接收经编码的视频数据410和编码信息412的编解码器可以使用编码信息412对经编码的视频数据410进行解码以便显示。编码信息412可以以各种方式与经编码的视频数据410的一部分相关联和/或包括在其中。例如,可以包括编码信息作为序列参数集(sps)和/或图片参数集(pps)的一部分,所述sps和/或pps被包括为经编码的视频数据510的一部分(例如,在其开始处)。

根据各种实施方式,减少包括经模糊处理的数据304的编码块的数量简化了编码408和随后的解码过程,因此减少了执行编码/解码所需要的计算资源。例如,因为经模糊处理的数据304与未经模糊处理的(例如,清楚的)视频数据相比更复杂,因此对经模糊处理的数据304的编码和解码通常使用更多的计算资源(例如,处理器和存储器资源)。因此,通过减少包括经模糊处理的数据的编码块的数量,减少了桌面210的编码媒体的整体复杂度。此外,简化了接收设备处的去模糊处理,这是因为将需要对较少的解码块进行去模糊处理来清楚地查看来自区域28b的媒体。

图5描绘了根据一种或多种实施方式的用于对屏幕共享体验进行编码的编码块优化的示例性实施场景500。通常,可以将场景500执行成上面所描述的场景200、300的一部分。例如,可以作为上面所描述的场景400的替代或附加执行场景500。

场景500的上部描绘了显示桌面210的显示设备114,并且共享模式216是活动的。此外,在场景500的上部还描绘了块网格502,其在视觉上被描绘成桌面210上的虚线。例如,块网格502表示上面详细描述的块网格402的变型。块网格502覆盖桌面210的区域218a、218b。

在场景500的上部,来自共享保护区域218b的媒体被包括在块网格502的36个不同编码块中。继续至场景500的下部,优化器模块504执行块优化504过程来优化块网格502的编码块,以对共享保护区域218b(即,经模糊处理的数据304)进行编码。为了执行块优化504,块网格502的各个编码块的大小被增加以生成经优化的网格506。在一种可选的实施方式中,除了增加块网格502的编码块的大小之外,还可以改变桌面210上的编码块的位置,以生成经优化的网格506。上面参照场景400描述了用于改变块网格的位置的示例性实施方式。

如图所示,经优化的网格506减少了包括来自受保护区域218b的媒体的编码块的数量。因此,经优化的网格506包括12个不同的编码块,其包括来自共享保护区域218b的媒体,这小于原始块网格502的媒体的数量。

继续场景500,编解码器132执行编码过程508,所述编码过程508基于经优化的网格506对桌面210进行编码以生成经编码的视频数据510。经编码的视频数据510包括具有编码形式的视频数据208和经模糊处理的数据304。通常,将来自经优化的网格506的各个编码块的媒体用作编码508的输入,以生成经编码的视频数据510。例如,将桌面210的媒体划分为用于基于经优化的网格506的编码块进行编码的帧。

经编码的视频数据510与编码信息512相关联,所述编码信息512表示关于经编码的视频数据510如何被编码的各种信息,例如编码协议(例如,h.264、h.265等等)、编码率等。在该特定实施方式中,编码信息512指定用于经优化的网格506的编码块的块大小。可以以任何适当的方式来指定块大小,例如,针对各个编码块的w像素×h像素。

在另外的或替代的实施方式中,编码信息512可以包括经优化的网格506相对于桌面210的原始预编码媒体的位置信息。例如,该位置信息包括针对经优化的网格506的各个编码块并且相对于桌面210的像素的来自桌面210的像素坐标边界。

因此,接收经编码的视频数据510和编码信息512的编解码器可以使用编码信息512对经编码的视频数据510进行解码以便显示。编码信息512可以以各种方式与经编码的视频数据510的一部分相关联和/或包括在其中。例如,可以包括编码信息作为sps和/或pps的一部分,所述sps和/或pps被包括为编码的视频数据510的一部分(例如,在其开始处)。

为了说明起见,介绍了在上述场景中描绘的不同编码块大小,但应当理解,可以根据所要求保护的实施方式使用各种不同的块大小和布置。此外,根据本文所讨论的实施方式,示例性块网格连同相关联的媒体通常是不可见的(即,不显示的),其被描绘只是为了说明被编码和解码的媒体的数据表示。

因此,这些示例性场景演示了:用于经模糊处理的媒体的编码优化的技术使得媒体能够作为媒体共享体验的一部分受共享保护,并且使得屏幕共享体验中的某些参与者能够清楚地查看共享保护媒体。此外,可以对包括经模糊处理的媒体的媒体的编码进行优化。

已经讨论了一些示例性实施场景,现在考虑根据一个或多个实施例的一些示例性过程的讨论。

以下讨论描述了根据一个或多个实施例的用于经模糊处理的媒体的编码优化的一些示例性过程。可以在图1的环境100、图10的系统1000和/或任何其他适当的环境中采用这些示例性过程。例如,这些过程表示用于实现上面所描述的实施场景的示例性过程。在至少一些实施方式中,针对各种过程描述的步骤是自动实现的,并且独立于用户交互。根据各种实施方式,这些过程可以在本地(例如,在客户端设备102处)执行和/或在诸如通信服务120之类的基于网络的服务处执行。

图6是描述了根据一种或多种实施方式的一种方法中的步骤的流程图。该方法描述了根据一种或多种实施方式的用于优化对经模糊处理的媒体的编码的示例性过程。在至少一些实施方式中,该方法可以至少部分地在客户端设备102处(例如,由通信客户端110)和/或由通信服务120来执行。

步骤600查明作为一组参与者之间的媒体共享体验的一部分,来自显示区域的第一区域的媒体将被共享,而来自显示区域的第二区域的媒体将受共享保护。例如,媒体共享体验是涉及一组参与者的实时通信会话的一部分。

通常,可以以各种方式将来自第二区域的媒体指定为受共享保护。例如,用户可以提供指定第二区域和/或来自第二区域的媒体为受共享保护的输入。替代地或另外地,可以将呈现来自第二区域的媒体的应用指定为受共享保护。可以采用各种其他技术将显示区域的媒体和/或特定区域指定为受共享保护。

步骤602利用密钥图像使得来自第二区域的媒体被模糊处理,以生成经模糊处理的视频数据。密钥图像通常表示诸如照片、数字绘图、扫描图像等的数字图像。可以以各种方式对来自第二区域的媒体进行模糊处理,例如,使用适当的模糊处理、加扰和/或加密协议。在至少一种实施方式中,通过使用来自第二区域的媒体和密钥图像作为输入执行异或(xor)操作来实现模糊处理,以生成经模糊处理的视频数据。替代地或另外地,模糊处理可以包括使用密钥图像作为加密密钥,对来自第二区域的媒体进行加密。

步骤604优化用于媒体共享体验的编码块结构,以生成经优化的编码块结构。例如,该优化是基于以下各项中的一项或多项:第二区域的大小、或第二区域相对于显示区域的位置。如上所述,该优化减少了包括经模糊处理的视频数据的编码块的数量。

步骤606根据经优化的编码块结构对来自第一区域的媒体和经模糊处理的视频数据进行编码,以生成经编码的视频数据。例如,使用经优化的块结构将媒体和经模糊处理的视频数据划分成块(例如,帧),然后使用诸如h.264、h.265等的任何适当的编码协议对这些块进行编码。通常,所述编码生成可以以各种方式共享的经编码的视频流。

步骤608使得经编码的视频数据与这组参与者中的一个或多个参与者共享。可以以各种方式共享经编码的视频数据,例如通过将数据流式传输到这组参与组,将数据存储在参与者可访问的存储位置处等等。例如,作为实时通信会话的一部分,将经编码的视频数据发送到参与者。

根据一种或多种实施方式,还与参与者共享编码信息。例如,编码信息包括指示视频数据如何被编码的信息,并且可以用于对视频数据进行解码。编码信息的示例包括用于编码视频数据的编码协议/技术、编码率、对块大小的描述和/或经优化的块结构的位置等等。

步骤610使得密钥图像被传送给这组参与者中的第一参与者,而不被传送给这组参与者中的第二参与者。例如,第一参与者是特权参与者,而第二参与者则不是。因此,第一参与者可以使用密钥图像对经模糊处理的视频数据进行去模糊处理,以清楚地查看来自第一区域的媒体。例如,与第一参与者相关联的端点设备可以对经编码的视频数据进行解码,并且使用密钥图像对经模糊处理的视频数据进行去模糊处理,以清楚地查看来自第二区域的媒体。

由于第二参与者不能访问密钥图像,因此第二参与者不能对来自第二区域的媒体进行去模糊处理。因此,第二参与者不能清楚地查看来自第二区域的媒体。例如,与第二参与者相关联的端点设备可以对来自第一区域的媒体进行解码并清楚地查看,但是不能对经模糊处理的视频数据进行去模糊处理并清楚地查看来自第二区域的媒体。因此,来自第二区域的媒体被保护免于与第二参与者清楚地共享。

虽然参考共享保护媒体的单个区域讨论了本文描述的场景和过程,但是应当领会,可以采用用于经模糊处理的媒体的编码优化的技术来共享保护来自显示区域的多个不同区域的媒体。例如,考虑下面的示例性过程。

图7是描述了根据一种或多种实施方式的一种方法中的步骤的流程图。该方法描述了根据一种或多种实施方式的用于对视频数据的多个不同区域进行模糊处理的示例性过程。在至少一些实施方式中,该方法可以结合上面参照图6描述的方法来执行。

步骤700查明作为一组参与者之间的媒体共享体验的一部分,来自显示区域的第一区域的媒体和来自显示区域的第二区域的媒体将被共享保护。例如,用户将来自第一区域的媒体和来自第二区域的媒体标识为受共享保护。上面描述了将媒体标识为受共享保护的不同方式。

步骤702利用第一密钥图像对来自第一区域的媒体进行模糊处理,以生成第一经模糊处理的视频数据,并且利用第二密钥图像对来自第二区域的媒体进行模糊处理,以生成第二经模糊处理的视频数据。例如,第一密钥图像和第二密钥图像分别表示用于对来自第一区域的媒体和来自第二区域的媒体进行模糊处理的不同数字图像。

步骤704与这组参与者中的第一参与者共享第一密钥图像,并且与这组参与者中的第二参与者共享第二密钥图像。例如,第一密钥图像不与第二参与者共享,并且第二密钥图像不与第一参与者共享。因此,第一参与者(例如,第一参与者的端点设备)可以使用第一密钥图像对第一经模糊处理的视频数据进行去模糊处理,以便清楚地查看来自显示区域的第一区域的媒体。然而,第一参与者不能访问第二密钥图像,因此不能对第二经模糊处理的视频数据进行去模糊处理并清楚地查看来自第二区域的媒体。

此外,第二参与者(例如,第二参与者的端点设备)可以使用第二密钥图像对第二经模糊处理的视频数据进行去模糊处理,以便清楚地查看来自显示区域的第二区域的媒体。然而,第二参与者不能访问第一密钥图像,因此不能对第一经模糊处理的视频数据进行去模糊处理并清楚地查看来自第一区域的媒体。因此,可以利用不同的密钥图像选择性地对媒体的不同部分进行模糊处理,并且可以将不同的密钥图像提供给不同的参与者,以使得共享保护媒体被不同的参与者和/或参与者集合可选择性地查看。

在至少一些实施方式中,本文所讨论的编码块结构优化可以用于媒体的多个经模糊处理的部分,以使包括来自媒体的多个经模糊处理的部分的经模糊处理的媒体的编码块数量最小化。

图8是描述了根据一种或多种实施方式的一种方法中的步骤的流程图。该方法描述了根据一种或多种实施方式的用于优化编码块的示例性过程。在至少一些实施方式中,该方法可以结合上面参照图6和图7所描述的方法来执行。

步骤800确定要对包括未经模糊处理的视频数据和经模糊处理的视频数据的视频数据区域进行编码。例如,优化器模块136确定要对显示区域中显示的媒体进行编码,并且该媒体包括未经模糊处理的媒体和经模糊处理的媒体。

步骤802基于以下各项中的一项或多项,生成用于对视频数据的区域进行编码的经优化的编码块结构:经模糊处理的视频数据相对于未经模糊处理的视频数据的位置或大小。例如,优化器模块136确定经模糊处理的视频数据的区域的大小,例如,n像素×n’像素。优化器模块136还确定经模糊处理的视频数据相对于视频数据的区域的位置。例如,可以根据规定经模糊处理的视频数据的边界的像素坐标(x,y)来确定该位置。随后,优化器模块136基于经模糊处理的视频数据的大小和位置中的一者或二者,来确定用于对视频数据的区域进行编码的经优化的编码块布置。通常,与不考虑经模糊处理的视频数据的大小和/或位置的编码块结构相比,经优化的编码块结构减少了包括经模糊处理的视频数据的编码块的数量。减少包括经模糊处理的数据的编码块的数量减少了对经编码的视频数据进行解码和去模糊处理所需要的资源(例如,处理器和存储器资源),这是因为将需要对较少的经模糊处理的视频数据块进行解码和去模糊处理。

图9是描述了根据一种或多种实施方式的一种方法中的步骤的流程图。该方法描述了根据一种或多种实施方式的用于对包括经模糊处理的视频数据的编码视频数据进行解码的示例性过程。

步骤900接收包括经模糊处理的视频数据和未经模糊处理的视频数据的共享媒体的经编码的视频数据。例如,该经编码的视频数据作为实时通信会话的一部分而被接收。在至少一些实施方式中,在端点设备处从远程设备接收经编码的视频数据,所述远程设备生成共享媒体,并对共享媒体进行编码以生成经编码的视频数据。

步骤902确定用于经编码的视频数据的编码块结构。例如,在与经编码的视频数据包括在一起的编码信息中标识编码块结构。例如,编码信息表示非编码数据,其指定关于经编码的视频数据如何被编码的各种信息,例如用于对共享媒体进行编码以生成经编码的视频数据的编码协议。通常,可以以各种方式指定编码块结构,例如参考编码块的块大小和块坐标(例如,像素坐标)(如果是视频数据的话)。

步骤904基于编码块结构对经编码的视频数据进行解码,以生成经模糊处理的视频数据的解码块和未经模糊处理的视频数据的解码块。例如,编码块结构识别经编码的视频数据的不同离散块。因此,可以对每个块进行解码以生成经模糊处理的视频数据的解码块和未经模糊处理的视频数据的解码块。

步骤906使用密钥图像对经模糊处理的视频数据的解码块进行去模糊处理,以生成经去模糊处理的视频数据。例如,使用密钥图像作为用于对经模糊处理的视频数据进行去模糊处理的去模糊密钥。

步骤908使得经去模糊处理的视频数据和未经模糊处理的视频数据被显示。例如,可以将经去模糊处理的视频数据和未经模糊处理的视频数据一起显示以呈现集成的视频图像。在至少一些实施方式中,作为媒体共享体验的一部分,该集成的视频图像包括共享媒体。例如,媒体共享体验表示用于呈现在远程设备的显示屏上显示的媒体的屏幕共享体验。

根据本文所讨论的实施方式,上面所描述的过程可以在媒体共享体验期间动态地多次执行,以对媒体的共享保护区域进行模糊处理,并基于媒体的经模糊处理的区域的属性来优化编码块结构。

因此,本文所讨论的技术提供了各种各样的场景和实施方式,以用于在媒体共享体验期间保护某些媒体免于被清楚地访问,并基于受保护媒体的属性来优化编码。这通过允许用户将某些媒体指定为受共享保护来增强用户隐私,并通过优化编码以考虑经模糊处理的媒体的区域的属性来减少计算资源消耗。

已经讨论了一些示例性过程,现在考虑根据一个或多个实施例的示例性系统和设备的讨论。

图10示出了包括示例性计算设备1022的通常在1020处的示例性系统,所述计算设备1022表示可以实现本文所描述的各种技术的一个或多个计算系统和/或设备。例如,上面参照所图1讨论的客户端设备102、端点设备116和/或通信服务120可以被体现为计算设备1022。例如,计算设备1022可以是服务提供商的服务器、与客户端相关联的设备(例如,客户端设备)、片上系统和/或任何其他适当的计算设备或计算系统。

如图所示的示例性计算设备1022包括处理系统1024、一个或多个计算机可读介质1026、以及一个或多个输入/输出(i/o)接口1028,它们彼此通信地耦合。虽然没有示出,但计算设备1022还可以包括用于将各种组件彼此耦合的系统总线或其他数据和命令传输系统。系统总线可以包括不同总线结构中的任何一个或组合,例如存储器总线或存储器控制器、外围总线、通用串行总线、和/或使用各种总线架构中的任何总线架构的处理器或本地总线。还可以预期各种各样的其他示例,例如,控制线和数据线。

处理系统1024表示使用硬件执行一个或多个操作的功能。因此,将处理系统1024示出为包括可以被配置为处理器、功能块等等的硬件元件1010。这可以包括利用硬件实现成专用集成电路或者使用一个或多个半导体形成的其他逻辑器件。硬件元件1010不受形成它们的材料或者其中采用的处理机制的限制。例如,处理器可以包括半导体和/或晶体管(例如,电子集成电路(ic))。在这样的上下文中,处理器可执行指令可以是电子可执行指令。

计算机可读介质1026被示出为包括存储器/存贮设备1012。存储器/存贮设备1012表示与一个或多个计算机可读介质相关联的存储器/存储容量。存储器/存贮设备1012可以包括易失性介质(例如,随机存取存储器(ram))和/或非易失性介质(例如,只读存储器(rom)、闪存、光盘、磁盘等等)。存储器/存贮设备1012可以包括固定介质(例如,ram、rom、固定硬盘驱动器等等)以及可移动介质(例如,闪存、可移动硬盘驱动器、光盘等等)。可以以各种其他方式来配置计算机可读介质1026,如下面进一步描述的。

输入/输出接口1028表示允许用户向计算设备1022输入命令和信息,并且还允许使用各种输入/输出设备将信息呈现给用户和/或其他组件或设备的功能。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风(例如,用于语音识别和/或语音输入)、扫描仪、触摸功能(例如,被配置为检测物理触的电容或其他传感器)、相机(例如,其可以采用可见波长或诸如红外频率之类的不可见波长来检测不涉及作为手势的触摸的运动)等等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备等等。因此,可以以下面进一步描述的支持用户交互的各种方式来配置计算设备1022。

本文可以在软件、硬件元件或程序模块的一般上下文中描述各种技术。通常,这样的模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元素、组件、数据结构等等。如本文所使用的术语“模块”、“功能单元”、“实体”和“组件”通常表示软件、固件、硬件或者其组合。本文所描述的技术的特征是与平台无关的,这意味着可以在具有各种处理器的各种各样的商业计算平台上实现这些技术。

所描述的模块和技术的实施方式可以存储在某种形式的计算机可读介质上或通过某种形式的计算机可读介质进行发送。计算机可读介质包括可以由计算设备1022访问的各种介质。举例而言但非做出限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。

“计算机可读存储介质”可以指代与仅仅信号传输、载波波形或信号本身相比,能够持久地存储信息的介质和/或设备。计算机可读存储介质本身不包括信号。计算机可读存储介质包括诸如易失性和非易失性、可移动和不可移动介质和/或存储设备之类的硬件,其以适于存储诸如计算机可读指令、数据结构、程序模块、逻辑单元/电路或其他数据之类的信息的方法或技术来实现。计算机可读存储介质的示例可以包括但不限于:ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字通用光盘(dvd)或其他光学存储器、硬盘、盒式磁带、磁带、磁盘存储器或其他磁存储设备、或其他存储设备、有形介质、或者适于存储期望的信息并且可由计算机访问的制品。

“计算机可读信号介质”可以指代信号承载介质,其被配置为例如经由网络将指令发送到计算设备1022的硬件。信号介质通常可以体现计算机可读指令、数据结构、程序模块、或经调制的数据信号中的其他数据(例如,载波波形、数据信号或其他传输机制)。信号介质还包括任何信息递送介质。术语“经调制的数据信号”意指其一个或多个特性以用于对信号中的信息进行编码的方式来设置或改变的信号。举例而言但非做出限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质、以及诸如声波、射频(rf)、红外线和其他无线介质之类的无线介质。

如先前所描述的,硬件元件1010和计算机可读介质1026表示以硬件形式实现的指令、模块、可编程设备逻辑单元和/或固定设备逻辑单元,在一些实施例中,其可以用于实现本文所描述的技术的至少一些方面。硬件元件可以包括集成电路或片上系统的组件、专用集成电路(asic)、现场可编程门阵列(fpga)、复杂可编程逻辑器件(cpld)以及在硅或其他硬件设备中的其他实施方式。在此上下文中,硬件元件可以充当处理设备以及硬件设备,所述处理设备执行由该硬件元件体现的指令、模块和/或逻辑所规定的程序任务,所述硬件设备用于存储要执行的指令(例如,先前描述的计算机可读存储介质)。

还可以采用前述的组合来实现本文所描述的各种技术和模块。因此,软件、硬件或程序模块和其他程序模块可以被实现为在某种形式的计算机可读存储介质上体现和/或由一个或多个硬件元件1010实现的一个或多个指令和/或逻辑单元。计算设备1022可以被配置为实现与软件和/或硬件模块相对应的特定指令和/或功能。因此,可以由计算设备1022作为软件执行的模块的实施方式可以至少部分地以硬件来实现,例如通过使用处理系统的计算机可读存储介质和/或硬件元件1010。指令和/或功能可以由一个或多个制品(例如,一个或多个计算设备1022和/或处理系统1024)执行/操作,以实现本文所描述的技术、模块和示例。

如图10中进一步所示,当在个人计算机(pc)、电视设备和/或移动设备上运行应用时,示例系统1020使得能够实现无处不在的环境以获得无缝的用户体验。服务和应用在所有三种环境中基本相似地运行,以便在正在使用应用、玩视频游戏、观看视频等等的情况下从一个设备转换到下一个设备时获得共同的用户体验。

在示例性系统1020中,多个设备通过中央计算设备互连。该中央计算设备可以是所述多个设备的本地设备,或者也可以远离所述多个设备。在一个实施例中,中央计算设备可以是一个或多个服务器计算机的云,其通过网络、互联网或其他数据通信链路来连接到所述多个设备。

在一个实施例中,这种互连架构使得能够跨多个设备来递送功能,以向所述多个设备的用户提供共同且无缝的体验。所述多个设备中的每一个设备可以具有不同的物理要求和能力,并且中央计算设备使用平台来实现向设备递送体验,所述体验既针对该设备进行定制又对所有设备是共同的。在一个实施例中,创建一种类别的目标设备,并针对通用设备类别来定制体验。可以通过物理特征、使用类型或设备的其他共同特征来规定一种类别的设备。

在各种实施方式中,计算设备1022可以采用各种不同的配置,例如针对计算机1014、移动设备1016和电视1018的使用。这些配置中的每一者包括可以具有通常不同的构造和能力的设备,因此可以根据不同的设备类别中的一个或多个类别来配置计算设备1022。例如,可以将计算设备1022实现为计算机1014类别的设备,其包括个人计算机、桌上型计算机、多屏幕计算机、膝上型计算机、上网本等等。

还可以将计算设备1022实现为包括移动设备的移动1016类别的设备,例如移动电话、便携式音乐播放器、便携式游戏设备、平板电脑、可穿戴设备、多屏幕计算机等等。还可以将计算设备1022实现为电视1018类别的设备,其包括具有或连接到休闲观看环境中的通常更大屏幕的设备。这些设备包括电视机、机顶盒、游戏控制台等等。

本文所描述的技术可以由计算设备1022的这些各种配置支持,并且其不限于本文所描述的技术的特定示例。例如,参考共享模块102、模糊处理模块130和/或通信服务120所讨论的功能可以全部地或部分地通过使用分布式系统来实现,例如经由平台1022通过“云”1020来实现,如下所述。

云1020包括和/或代表用于资源1024的平台1022。平台1022抽象出云1020的硬件(例如,服务器)和软件资源的底层功能。资源1024可以包括:当在远离计算设备1022的服务器上执行计算机处理时能够使用的应用和/或数据。资源1024还可以包括通过互联网和/或通过订户网络(例如,蜂窝或wi-fi网络)提供的服务。

平台1022可以抽象出用于将计算设备1022与其他计算设备连接的资源和功能。平台1022还可以用于抽象出资源的缩放,以提供对经由平台1022实现的资源1024的所遇到的需求的相应级别的规模。因此,在互连的设备实施例中,对本文描述的功能的实现可以分布在整个系统1020中。例如,功能可以部分地实现在计算设备1022上,以及经由抽象出云1020的功能的平台1022来实现。

本文讨论了可以实现以执行本文所讨论的技术的多种方法。这些方法的各方面可以以硬件、固件、或软件、或其组合的方式来实现。将这些方法示出为一组步骤,其指定由一个或多个设备执行的操作,但并不必限于执行各个块的操作所示出的顺序。此外,根据一种或多种实施方式,可以将关于特定方法示出的操作与不同方法的操作进行组合和/或互换。可以经由上面参考环境1020讨论的各种实体之间的交互来实现方法的各方面。

描述了用于经模糊处理的媒体的编码优化的技术。虽然以特定于结构特征和/或方法动作的语言描述了实施例,但应当理解的是,所附权利要求书中限定的实施例并不必需限于所描述的具体特征或动作。确切的说,这些特定特征和动作是作为实现所要求保护的实施例的示例形式而公开的。

在本文的讨论中,描述了各种不同的实施例。应当领会和理解的是,本文所描述的每个实施例可以单独地使用,也可以与本文所描述的一个或多个其他实施例结合使用。本文所讨论的技术的进一步方面涉及以下实施例中的一个或多个。

一种用于优化对媒体的编码的系统,所述系统包括:至少一个处理器;以及一个或多个计算机可读存储介质,其包括存储在其上的指令,所述指令响应于被所述至少一个处理器执行,使得所述系统执行包括以下各项的操作:查明作为一组参与者之间的媒体共享体验的一部分,来自共享媒体的第一区域的媒体将被共享,而来自所述共享媒体的第二区域的媒体将受共享保护;利用密钥图像,使得来自所述第二区域的所述媒体被模糊处理,以生成经模糊处理的视频数据;基于以下各项中的一项或多项来优化用于所述媒体共享体验的编码块结构,以生成经优化的编码块结构:所述第二区域的大小、或者所述第二区域相对于所述共享媒体的位置;根据所述经优化的编码块结构对来自所述第一区域的所述媒体和所述经模糊处理的视频数据进行编码,以生成经编码的视频数据;以及使得所述经编码的视频数据与所述一组参与者中的一个或多个参与者共享。

除了上面所描述的系统中的任何一个之外,下面中的任何一个或者其组合:其中,所述查明是响应于标识所述第二区域的用户输入的;其中,所述密钥图像包括数字图片;其中,所述模糊处理包括:使用来自所述第二区域的所述媒体和所述密钥图像作为输入执行异或(xor)操作,以生成所述经模糊处理的视频数据;其中,所述优化包括:改变所述编码块结构的一个或多个编码块的位置,使得与现有的编码块结构相比,所述经优化的编码块结构具有更少的包括所述经模糊处理的媒体的编码块;其中,所述优化包括:更改所述编码块结构的一个或多个编码块的大小,使得与现有的编码块结构相比,所述经优化的编码块结构具有更少的包括所述经模糊处理的媒体的编码块;其中,所述优化包括:改变所述编码块结构的一个或多个编码块的位置和大小,使得与现有的编码块结构相比,所述经优化的编码块结构具有更少的包括所述经模糊处理的媒体的编码块;还包括生成描述所述经优化的编码块结构的编码信息,并且使得所述编码信息与所述一个或多个参与者共享;还包括将所述一组参与者中的第一参与者指定为具有共享特权,使得作为所述媒体共享体验的一部分,所述密钥图像被允许针对所述第一参与者是可访问的,从而使所述经模糊处理的视频数据能够针对所述第一参与者进行去模糊处理,并且不将所述一组参与者中的第二参与者指定为具有共享特权,使得作为所述媒体共享体验的一部分,所述密钥图像不被允许针对所述第二参与者是可访问的;其中,所述媒体共享体验包括实时通信会话,并且其中,所述操作还包括:基于来自所述共享媒体的所述第二区域的所述媒体的改变,重复所述优化;其中,所述显示区域包括客户端设备的显示设备,所述媒体共享体验包括实时通信会话,所述实时通信会话包括所述客户端设备和与所述一组参与者相关联的一个或多个其他设备,并且其中,在所述通信会话期间动态地执行所述优化和所述编码。

一种用于对编码媒体进行去模糊处理的计算机实现的方法,所述方法包括:接收包括经模糊处理的视频数据和未经模糊处理的视频数据的共享媒体的经编码的视频数据;确定用于所述经编码的视频数据的编码块结构;基于所述编码块结构对所述经编码的视频数据进行解码,以生成所述经模糊处理的视频数据的解码块和所述未经模糊处理的视频数据的解码块;使用密钥图像对经模糊处理的视频数据的所述解码块进行去模糊处理以生成经去模糊处理的视频数据;以及使得所述经去模糊处理的视频数据和所述未经模糊处理的视频数据被显示。

除了上面所描述的方法中的任何一个之外,下面中的任何一个或者其组合:其中,所述经编码的视频数据是作为两个或更多不同设备之间的实时通信会话的一部分而接收的;其中,所述确定包括:通过与所述经编码的视频数据包括在一起的编码信息来确定所述编码块结构;其中,密钥图像包括数字图像;其中,与所述经编码的视频数据分开地接收所述密钥图像。

一种用于优化对媒体的编码的计算机实现的方法,所述方法包括:查明作为一组参与者之间的媒体共享体验的一部分,共享媒体的第一媒体区域将被共享,而所述共享媒体的第二媒体区域将受共享保护,来自所述第二区域的媒体被模糊处理;基于以下各项中的一项或多项来优化用于所述媒体共享体验的编码块结构:所述第二区域的大小、或者所述第二区域相对于所述共享媒体的位置;根据经优化的编码块结构对来自所述第一区域的所述媒体和经模糊处理的视频数据进行编码,以生成经编码的视频数据;以及使得所述经编码的视频数据与所述一组参与者共享。

除了上面所描述的方法中的任何一个之外,下面中的任何一个或者其组合:其中,所述优化包括:改变所述编码块结构的一个或多个编码块的位置,使得与现有的编码块结构相比,所述经优化的编码块结构具有更少的包括经模糊处理的媒体的编码块;其中,所述优化包括:更改所述编码块结构的一个或多个编码块的大小,使得与现有的编码块结构相比,所述经优化的编码块结构具有更少的包括经模糊处理的媒体的编码块;其中,所述媒体共享体验包括实时通信会话,并且其中,在所述通信会话正在进行的同时动态地执行所述优化。

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