媒体文件的关联处理方法、装置、介质及电子设备与流程

文档序号:31712681发布日期:2022-10-04 20:10阅读:37来源:国知局
媒体文件的关联处理方法、装置、介质及电子设备与流程

1.本技术涉及计算机及通信技术领域,具体而言,涉及一种媒体文件的关联处理方法、装置、介质及电子设备。


背景技术:

2.在点云消费的场景中,可能有多个点云文件之间具有关联性,以数字文化遗产为例,由于文物本身所具备的文化意义和教育意义,对文物的呈现往往需要结合多种形式来进行,对应到点云媒体资源中,一个文物往往对应着多个不同的点云媒体资源。然而相关技术中难以表示出这些点云媒体资源之间的关联关系。


技术实现要素:

3.本技术的实施例提供了一种媒体文件的关联处理方法、装置、介质及电子设备,进而至少在一定程度上可以实现对媒体资源之间的关联关系的指示,进而可以满足不同应用场景的业务需求。
4.本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。
5.根据本技术实施例的一个方面,提供了一种媒体文件的关联处理方法,包括:获取媒体文件,所述媒体文件中包含有媒体资源数据和对象关联数据盒,所述对象关联数据盒中包含有多个媒体资源的信息,以及所述多个媒体资源之间的关联关系;解析所述媒体文件,得到所述媒体文件中包含的媒体资源数据和所述多个媒体资源之间的关联关系;根据所述多个媒体资源之间的关联关系,呈现所述媒体文件中包含的媒体资源数据。
6.根据本技术实施例的一个方面,提供了一种媒体文件的关联处理方法,包括:生成媒体文件,所述媒体文件中包含有媒体资源数据和对象关联数据盒,所述对象关联数据盒中包含有多个媒体资源的信息,以及所述多个媒体资源之间的关联关系;将所述媒体文件发送至数据接收方,以使所述数据接收方解析所述媒体文件,并根据解析得到的多个媒体资源之间的关联关系,呈现所述媒体文件中包含的媒体资源数据。
7.根据本技术实施例的一个方面,提供了一种媒体文件的关联处理装置,包括:获取单元,配置为获取媒体文件,所述媒体文件中包含有媒体资源数据和对象关联数据盒,所述对象关联数据盒中包含有多个媒体资源的信息,以及所述多个媒体资源之间的关联关系;解析单元,配置为解析所述媒体文件,得到所述媒体文件中包含的媒体资源数据和所述多个媒体资源之间的关联关系;处理单元,配置为根据所述多个媒体资源之间的关联关系,呈现所述媒体文件中包含的媒体资源数据。
8.在本技术的一些实施例中,基于前述方案,所述媒体文件中包含有多个媒体资源数据;所述处理单元配置为:根据所述多个媒体资源之间的关联关系,依次呈现所述多个媒体资源数据。
9.在本技术的一些实施例中,基于前述方案,所述对象关联数据盒中还包含入口媒
体标识信息,所述入口媒体标识信息用于指示第一个消费的媒体资源数据;所述处理单元配置为:根据所述入口媒体标识信息,优先呈现所述第一个消费的媒体资源数据;在呈现所述第一个消费的媒体资源数据之后,呈现所述多个媒体资源数据中除所述第一个消费的媒体资源数据之外的其它媒体资源数据。
10.在本技术的一些实施例中,基于前述方案,所述对象关联数据盒中的多个媒体资源的信息包括:所述多个媒体资源中的各个媒体资源的标识信息、用于指示所述各个媒体资源是否是第一个消费的媒体资源的入口媒体资源标识信息,以及各个媒体资源的描述信息。
11.在本技术的一些实施例中,基于前述方案,所述对象关联数据盒中还包括:所述多个媒体资源的数量;所述对象关联数据盒中的所述关联关系包括:用于标识所述多个媒体资源所属实体组的组标识。
12.在本技术的一些实施例中,基于前述方案,所述关联处理装置还包括:接收单元,配置为在获取媒体文件之前,接收数据源侧发送的dash(dynamic adaptive streaming over http,基于http的动态自适应流)信令,所述dash信令中包含有入口媒体资源标识信息和实体组的类型字段,所述实体组的类型字段为设定值,以用于指示所述实体组中的媒体资源存在关联关系,所述入口媒体资源标识信息用于指示第一个消费的媒体资源;所述获取单元配置为:根据所述dash信令获取所述媒体文件。
13.在本技术的一些实施例中,基于前述方案,所述获取单元配置为:根据所述dash信令向所述数据源侧发送数据获取请求,所述数据获取请求用于请求获取所述实体组中的全部或部分媒体资源所对应的媒体资源数据;接收所述数据源侧根据所述数据获取请求返回的所述媒体文件。
14.在本技术的一些实施例中,基于前述方案,所述获取单元配置为:若当前网络状态优于设定值,则向所述数据源侧发送数据获取请求,以请求获取所述实体组中的全部媒体资源所对应的媒体资源数据;若当前网络状态低于设定值,则向所述数据源侧发送数据获取请求,以请求获取所述实体组中的部分媒体资源所对应的媒体资源数据,所述部分媒体资源包括所述第一个消费的媒体资源。
15.在本技术的一些实施例中,基于前述方案,所述dash信令中还包含有实体组的标识信息,所述实体组的标识信息用于指示实体组的组标识。
16.在本技术的一些实施例中,基于前述方案,所述媒体文件包括点云媒体文件,所述媒体资源包括点云媒体资源。
17.根据本技术实施例的一个方面,提供了一种媒体文件的关联处理装置,包括:生成单元,配置为生成媒体文件,所述媒体文件中包含有媒体资源数据和对象关联数据盒,所述对象关联数据盒中包含有多个媒体资源的信息,以及所述多个媒体资源之间的关联关系;发送单元,配置为将所述媒体文件发送至数据接收方,以使所述数据接收方解析所述媒体文件,并根据解析得到的多个媒体资源之间的关联关系,呈现所述媒体文件中包含的媒体资源数据。
18.在本技术的一些实施例中,基于前述方案,所述生成单元还配置为:在生成媒体文件之前,生成dash信令,所述dash信令中包含有入口媒体资源标识信息和实体组的类型字段,所述实体组的类型字段为设定值,以用于指示所述实体组中的媒体资源存在关联关系,
所述入口媒体资源标识信息用于指示第一个消费的媒体资源;所述发送单元还配置为:将所述dash信令发送给所述数据接收方,并接收所述数据接收方发送的数据获取请求;所述媒体文件的关联处理装置还包括:确定单元,配置为根据所述数据获取请求确定需要传输至所述数据接收方的媒体资源数据,以根据需要传输至所述数据接收方的媒体资源数据生成所述媒体文件。
19.根据本技术实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所述的媒体文件的关联处理方法。
20.根据本技术实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的媒体文件的关联处理方法。
21.根据本技术实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的媒体文件的关联处理方法。
22.在本技术的一些实施例所提供的技术方案中,通过在媒体文件中包含对象关联数据盒,且对象关联数据盒中包含有多个媒体资源的信息,以及这多个媒体资源之间的关联关系,然后解析该媒体文件,并根据解析得到的多个媒体资源之间的关联关系,呈现媒体文件中包含的媒体资源数据,使得可以通过对象关联数据盒来指示媒体资源之间的关联关系,实现了对媒体资源之间的关联关系的指示,进而可以满足不同应用场景的业务需求。
23.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
24.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
25.图1示出了可以应用本技术实施例的技术方案的示例性系统架构的示意图;
26.图2示出视频编码装置和视频解码装置在流式传输系统中的放置方式示意图;
27.图3示出了根据本技术的一个实施例的媒体文件的关联处理方法的流程图;
28.图4示出了根据本技术的一个实施例的媒体文件的关联处理方法的流程图;
29.图5示出了根据本技术的一个实施例的媒体文件的关联处理方法的流程图;
30.图6示出了根据本技术的一个实施例的媒体文件的关联处理方法的流程图;
31.图7示出了根据本技术的一个实施例的媒体文件的关联处理方法的流程图;
32.图8示出了根据本技术的一个实施例的媒体文件的关联处理装置的框图;
33.图9示出了根据本技术的一个实施例的媒体文件的关联处理装置的框图;
34.图10示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
35.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本技术将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
36.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本技术的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本技术的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本技术的各方面。
37.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
38.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
39.需要说明的是:在本文中提及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
40.图1示出了可以应用本技术实施例的技术方案的示例性系统架构的示意图。
41.如图1所示,系统架构100包括多个终端装置,所述终端装置可通过例如网络150彼此通信。举例来说,系统架构100可以包括通过网络150互连的第一终端装置110和第二终端装置120。在图1的实施例中,第一终端装置110和第二终端装置120执行单向数据传输。
42.举例来说,第一终端装置110可对点云视频数据(例如由终端装置110采集的点云视频流)进行编码以通过网络150传输到第二终端装置120,已编码的点云视频数据以一个或多个已编码视频码流形式传输,第二终端装置120可从网络150接收已编码的点云视频数据,对已编码的点云视频数据进行解码以恢复点云视频数据,并根据恢复的点云视频数据显示视频图片。
43.在本技术的一个实施例中,系统架构100可以包括执行已编码点云视频数据的双向传输的第三终端装置130和第四终端装置140,所述双向传输比如可以发生在视频通信期间。对于双向数据传输,第三终端装置130和第四终端装置140中的每个终端装置可对点云视频数据(例如由终端装置采集的点云视频图片流)进行编码,以通过网络150传输到第三终端装置130和第四终端装置140中的另一终端装置。第三终端装置130和第四终端装置140中的每个终端装置还可接收由第三终端装置130和第四终端装置140中的另一终端装置传输的已编码点云视频数据,且可对已编码点云视频数据进行解码以恢复点云视频数据,并可根据恢复的点云视频数据在可访问的显示装置上显示点云视频图片。
44.在图1的实施例中,第一终端装置110、第二终端装置120、第三终端装置130和第四终端装置140可为服务器、个人计算机和智能电话,但本技术公开的原理可不限于此。本技术公开的实施例适用于膝上型计算机、平板电脑、媒体播放器和/或专用视频会议设备。网络150表示在第一终端装置110、第二终端装置120、第三终端装置130和第四终端装置140之
间传送已编码点云视频数据的任何数目的网络,包括例如有线和/或无线通信网络。通信网络150可在电路交换和/或分组交换信道中交换数据。该网络可包括电信网络、局域网、广域网和/或互联网。出于本技术的目的,除非在下文中有所解释,否则网络150的架构和拓扑对于本技术公开的操作来说可能是无关紧要的。
45.在本技术的一个实施例中,图2示出视频编码装置和视频解码装置在流式传输环境中的放置方式。本技术所公开主题可同等地适用于其它支持视频的应用,包括例如视频会议、数字tv(television,电视机)、在包括cd、dvd、存储棒等的数字介质上存储压缩视频等等。
46.流式传输系统可包括采集子系统213,采集子系统213可包括数码相机、点云媒体生成设备等视频源201,视频源创建未压缩的视频图片流202。在实施例中,视频图片流202包括由数码相机拍摄的样本,或者由点云媒体拍摄的或者生成的样本。相较于已编码的视频数据204(或已编码的视频码流204),视频图片流202被描绘为粗线以强调高数据量的视频图片流,视频图片流202可由电子装置220处理,电子装置220包括耦接到视频源201的视频编码装置203。视频编码装置203可包括硬件、软件或软硬件组合以实现或实施如下文更详细地描述的所公开主题的各方面。相较于视频图片流202,已编码的视频数据204(或已编码的视频码流204)被描绘为细线以强调较低数据量的已编码的视频数据204(或已编码的视频码流204),其可存储在流式传输服务器205上以供将来使用。一个或多个流式传输客户端子系统,例如图2中的客户端子系统206和客户端子系统208,可访问流式传输服务器205以检索已编码的视频数据204的副本207和副本209。客户端子系统206可包括例如电子装置230中的视频解码装置210。视频解码装置210对已编码的视频数据的传入副本207进行解码,且产生可在显示器212(例如显示屏)或另一呈现装置上呈现的输出视频图片流211。在一些流式传输系统中,可根据某些视频编码/压缩标准对已编码的视频数据204、视频数据207和视频数据209(例如视频码流)进行编码。
47.应注意,电子装置220和电子装置230可包括图中未示出的其它组件。举例来说,电子装置220可包括视频文件解码装置,且电子装置230还可包括视频文件编码装置。
48.在本技术的一个实施例中,上述实施例中的视频数据可以是点云媒体数据。点云是空间中一组无规则分布的、表达三维物体或场景的空间结构及表面属性的离散点集。点云中的每个点至少具有三维位置信息,根据应用场景的不同,还可能具有色彩、材质或其它信息。通常,点云中的每个点都具有相同数量的附加属性。点云媒体从编码方式上又可以分为vpcc(video-based point cloud compression,基于视频的点云压缩)方式压缩的点云媒体,以及gpcc(geometry-based point cloud compression,基于几何特征的点云压缩)方式压缩的点云媒体。在点云媒体的文件封装中,三维位置信息通常称为点云文件的几何分量(geometry component),属性信息称为点云文件的属性分量(attribute component),一个点云文件仅有一个几何分量,但可以存在一个或多个属性分量。
49.点云可以灵活方便地表达三维物体或场景的空间结构及表面属性,因而应用广泛,其主要应用场景可以归为两大类别:机器感知点云和人眼感知点云。机器感知点云例如自主导航系统、实时巡检系统、地理信息系统、视觉分拣机器人、抢险救灾机器人等;人眼感知点云例如数字文化遗产、自由视点广播、三维沉浸通信、三维沉浸交互等点云应用场景。
50.点云的获取主要有以下途径:计算机生成、3d激光扫描、3d摄影测量等。计算机可
以生成虚拟三维物体及场景的点云;3d扫描可以获得静态现实世界三维物体或场景的点云,每秒可以获取百万级点云;3d摄像可以获得动态现实世界三维物体或场景的点云,每秒可以获取千万级点云。此外,在医学领域,由mri(magnetic resonance imaging,磁共振成像)、ct(computed tomography,电子计算机断层扫描)、电磁定位信息,可以获得生物组织器官的点云。这些技术降低了点云数据获取成本和时间周期,提高了数据的精度,点云数据获取方式的变革,使大量点云数据的获取成为可能。伴随着大规模的点云数据不断积累,点云数据的高效存储、传输、发布、共享和标准化,成为点云应用的关键。
51.在对点云媒体进行编码后,需要对编码后的数据流进行封装并传输给客户端。相对应的,在点云媒体播放器端,需要先对获取到的点云文件进行解封装,然后再进行解码,最后呈现解码后的数据流。
52.在点云消费的场景中,可能有多个点云文件之间具有关联性,以数字文化遗产为例,由于文物本身所具备的文化意义和教育意义,对文物的呈现往往需要结合多种形式来进行,对应到点云媒体资源中,一个文物往往对应着多个不同的点云媒体资源。然而相关技术中难以表示出点云媒体资源之间的关联关系。基于此,本技术的实施例提供了如下的解决方案:
53.图3示出了根据本技术的一个实施例的媒体文件的关联处理方法的流程图,该媒体文件的关联处理方法可以由媒体播放设备来执行,该媒体播放设备可以是智能手机、平板电脑等。参照图3所示,该媒体文件的关联处理方法至少包括步骤s310至步骤s330,详细介绍如下:
54.在步骤s310中,获取媒体文件,该媒体文件中包含有媒体资源数据和对象关联数据盒,该对象关联数据盒中包含有多个媒体资源的信息,以及多个媒体资源之间的关联关系。
55.需要说明的是:媒体资源数据是媒体资源的具体内容,比如若媒体资源是介绍物品a视频,那么媒体资源数据即为物品a的介绍视频的具体内容(视频画面、介绍音频等)。在本技术的一个实施例中,媒体文件可以是点云媒体文件,那么媒体资源可以是点云媒体资源,媒体资源数据即为点云媒体资源数据。
56.可选地,媒体文件中可以包含有一个媒体资源数据,或者也可以包含多个媒体资源数据,这是根据数据接收方的请求所确定的,即数据接收方可以根据需求来请求获取一个或者多个媒体资源数据。然而,不管媒体文件中是包含了一个媒体资源数据还是包含了多个媒体资源数据,对象关联数据盒中都是包含了多个媒体资源的信息及多个媒体资源之间的关联关系。
57.在本技术的一个实施例中,对象关联数据盒中的多个媒体资源的信息可以包括:多个媒体资源中的各个媒体资源的标识信息、用于指示各个媒体资源是否是第一个消费的媒体资源的入口媒体资源标识信息,以及各个媒体资源的描述信息。可选地,各个媒体资源的标识信息比如可以是entity_id,用于指示各个媒体资源是否是第一个消费的媒体资源的入口媒体资源标识信息比如可以是entry_media_flag,各个媒体资源的描述信息比如可以是media_description。
58.在一个具体示例中,假设有3个媒体资源,第1个媒体资源用于展示金冠的外观,第2个媒体资源用于展示戴着金冠的女王,第3个媒体资源用于展示金冠的制造工艺。那么对
象关联数据盒中的多个媒体资源的信息可以表示如下:
59.{entity_id=1;entry_media_flag=1;media_description=

gold crown’};
60.{entity_id=2;entry_media_flag=0;media_description=

queen wearing gold crown’};
61.{entity_id=3;entry_media_flag=0;media_description=

gold crown manufacturing process’}。
62.其中,entry_media_flag=1表示第1个媒体资源是第一个消费的媒体资源,即是入口媒体资源。
63.在本技术的一个实施例中,对象关联数据盒中所包含的关联关系可以是:用于标识多个媒体资源所属实体组的组标识。比如可以用group_id来表示,即在该实施例中,媒体资源之间的关联关系用于表示其中的多个媒体资源属于一个实体组。可选地,对象关联数据盒中还可以包含有多个媒体资源的数量,比如可以用num_entities_in_group来表示,对于上述关于金冠的示例,num_entities_in_group=3。
64.当然,在本技术的其它实施例中,对象关联数据盒中所包含的关联关系还可以是其中的多个媒体资源在展示时的展示次序等。
65.在步骤s320中,解析媒体文件,得到媒体文件中包含的媒体资源数据和多个媒体资源之间的关联关系。
66.如上述实施例所述,解析媒体文件之后可能得到一个媒体资源数据,也可能得到多个媒体资源数据。
67.在步骤s330中,根据多个媒体资源之间的关联关系,呈现媒体文件中包含的媒体资源数据。
68.在本技术的一个实施例中,如果媒体文件中包含有多个媒体资源数据,那么在呈现时可以是根据多个媒体资源之间的关联关系,依次呈现这多个媒体资源数据。
69.可选地,如果对象关联数据盒中还包含入口媒体标识信息,该入口媒体标识信息用于指示第一个消费的媒体资源数据,那么在依次呈现这多个媒体资源数据时,可以根据入口媒体标识信息,优先呈现第一个消费的媒体资源数据,并在呈现第一个消费的媒体资源数据之后,呈现多个媒体资源数据中除第一个消费的媒体资源数据之外的其它媒体资源数据。
70.在本技术的一个实施例中,如果媒体文件中包含有一个媒体资源数据,那么在呈现时可以是直接呈现这一个媒体资源数据即可。
71.基于图3所示实施例的技术方案,如图4所示,根据本技术的一个媒体文件的关联处理方法至少包括步骤s410至步骤s440,其中的步骤s420至步骤s440的实现细节与图3所示实施例中的步骤s310至步骤s330保持一致,详细介绍如下:
72.在步骤s410中,接收数据源侧发送的dash信令,该dash信令中包含有入口媒体资源标识信息和实体组的类型字段,该实体组的类型字段为设定值,以用于指示实体组中的媒体资源存在关联关系,该入口媒体资源标识信息用于指示第一个消费的媒体资源。
73.在本技术的一个实施例中,dash信令中包含的实体组的类型字段比如可以是entitygroup@group_type,具体地,如果entitygroup@group_type=

oapc’,则可以说明该实体组中的媒体资源存在关联关系。dash信令中包含的入口媒体资源标识信息比如可以是
entitygroup@entry_media_id,具体地,如果entitygroup@entry_media_id=1,则可以说明第一个消费的媒体资源的标识为1。
74.可选地,dash信令中还可以包含有实体组的标识信息,该实体组的标识信息用于指示实体组的组标识。比如该实体组的标识信息可以是entitygroup@group_id。
75.在步骤s420中,根据dash信令获取媒体文件,该媒体文件中包含有媒体资源数据和对象关联数据盒,该对象关联数据盒中包含有多个媒体资源的信息,以及多个媒体资源之间的关联关系。
76.在本技术的一个实施例中,根据dash信令获取媒体文件的过程可以是:根据dash信令向数据源侧发送数据获取请求,该数据获取请求用于请求获取实体组中的全部或部分媒体资源所对应的媒体资源数据,然后接收数据源侧根据数据获取请求返回的媒体文件。
77.可选地,请求获取实体组中的全部媒体资源或者部分媒体资源可以是根据网络状态确定的,或者也可以是根据实际的业务需求来确定的。
78.如果是根据网络状态确定的,那么若当前网络状态优于设定值(网络状态优于设定值,则说明当前网络状态较优),则向数据源侧发送数据获取请求,以请求获取实体组中的全部媒体资源所对应的媒体资源数据;若当前网络状态低于设定值(网络状态低于设定值,则说明当前网络状态较差),则向数据源侧发送数据获取请求,以请求获取实体组中的部分媒体资源所对应的媒体资源数据,部分媒体资源包括第一个消费的媒体资源。
79.需要说明的是,由于第一个消费的媒体资源是入口媒体资源,因为如果请求部分媒体资源,需要至少包含该入口媒体资源。即便是根据实际的业务需求来确定请求的媒体资源,那么如果只需要请求部分媒体资源,也仍然需要至少包含该入口媒体资源。
80.此外,步骤s420中的其它细节与前述步骤s310类似,不再赘述。
81.在步骤s430中,解析媒体文件,得到媒体文件中包含的媒体资源数据和多个媒体资源之间的关联关系。
82.在步骤s440中,根据多个媒体资源之间的关联关系,呈现媒体文件中包含的媒体资源数据。
83.需要说明的是:步骤s440中的其它细节与前述步骤s330类似,不再赘述。
84.图3和图4是从媒体资源的接收方来阐述本技术实施例的技术方案,以下结合图5从数据源侧来对本技术实施例的实现细节做进一步说明:
85.图5示出了根据本技术的一个实施例的媒体文件的关联处理方法的流程图,该媒体文件的关联处理方法可以由媒体生成设备来执行,该媒体生成设备可以是智能手机、平板电脑等。参照图5所示,该媒体文件的关联处理方法至少包括步骤s510至步骤s520,详细介绍如下:
86.在步骤s510中,生成媒体文件,该媒体文件中包含有媒体资源数据和对象关联数据盒,该对象关联数据盒中包含有多个媒体资源的信息,以及多个媒体资源之间的关联关系。
87.需要说明的是:媒体资源数据是媒体资源的具体内容,比如若媒体资源是介绍物品a视频,那么媒体资源数据即为物品a的介绍视频的具体内容(视频画面、介绍音频等)。在本技术的一个实施例中,媒体文件可以是点云媒体文件,那么媒体资源可以是点云媒体资源,媒体资源数据即为点云媒体资源数据。
88.可选地,媒体文件中可以包含有一个媒体资源数据,或者也可以包含多个媒体资源数据,这是根据数据接收方的请求所确定的,即数据接收方可以根据需求来请求获取一个或者多个媒体资源数据。然而,不管媒体文件中是包含了一个媒体资源数据还是包含了多个媒体资源数据,对象关联数据盒中都是包含了多个媒体资源的信息及多个媒体资源之间的关联关系。
89.在本技术的一个实施例中,对象关联数据盒中的多个媒体资源的信息可以包括:多个媒体资源中的各个媒体资源的标识信息、用于指示各个媒体资源是否是第一个消费的媒体资源的入口媒体资源标识信息,以及各个媒体资源的描述信息。可选地,各个媒体资源的标识信息比如可以是entity_id,用于指示各个媒体资源是否是第一个消费的媒体资源的入口媒体资源标识信息比如可以是entry_media_flag,各个媒体资源的描述信息比如可以是media_description。
90.在一个具体示例中,假设有3个媒体资源,第1个媒体资源用于展示金冠的外观,第2个媒体资源用于展示戴着金冠的女王,第3个媒体资源用于展示金冠的制造工艺。那么对象关联数据盒中的多个媒体资源的信息可以表示如下:
91.{entity_id=1;entry_media_flag=1;media_description=

gold crown’};
92.{entity_id=2;entry_media_flag=0;media_description=

queen wearing gold crown’};
93.{entity_id=3;entry_media_flag=0;media_description=

gold crown manufacturing process’}。
94.其中,entry_media_flag=1表示第1个媒体资源是第一个消费的媒体资源,即是入口媒体资源。
95.在本技术的一个实施例中,对象关联数据盒中所包含的关联关系可以是:用于标识多个媒体资源所属实体组的组标识。比如可以用group_id来表示,即在该实施例中,媒体资源之间的关联关系用于表示其中的多个媒体资源属于一个实体组。可选地,对象关联数据盒中还可以包含有多个媒体资源的数量,比如可以用num_entities_in_group来表示,对于上述关于金冠的示例,num_entities_in_group=3。
96.当然,在本技术的其它实施例中,对象关联数据盒中所包含的关联关系还可以是其中的多个媒体资源在展示时的展示次序等。
97.在步骤s520中,将媒体文件发送至数据接收方,以使数据接收方解析媒体文件,并根据解析得到的多个媒体资源之间的关联关系,呈现媒体文件中包含的媒体资源数据。
98.在本技术的一个实施例中,数据接收方呈现媒体文件中包含的媒体资源数据的过程可以参照前述实施例的技术方案,不再赘述。
99.基于图5所示实施例的技术方案,如图6所示,根据本技术的一个媒体文件的关联处理方法至少包括步骤s610至步骤s650,其中的步骤s640至步骤s650的实现细节与图5所示实施例中的步骤s510至步骤s520保持一致,详细介绍如下:
100.在步骤s610中,生成dash信令,该dash信令中包含有入口媒体资源标识信息和实体组的类型字段,该实体组的类型字段为设定值,以用于指示实体组中的媒体资源存在关联关系,该入口媒体资源标识信息用于指示第一个消费的媒体资源。
101.在本技术的一个实施例中,dash信令中包含的实体组的类型字段比如可以是
entitygroup@group_type,具体地,如果entitygroup@group_type=

oapc’,则可以说明该实体组中的媒体资源存在关联关系。dash信令中包含的入口媒体资源标识信息比如可以是entitygroup@entry_media_id,具体地,如果entitygroup@entry_media_id=1,则可以说明第一个消费的媒体资源的标识为1。
102.可选地,dash信令中还可以包含有实体组的标识信息,该实体组的标识信息用于指示实体组的组标识。比如该实体组的标识信息可以是entitygroup@group_id。
103.在步骤s620中,将dash信令发送给数据接收方,并接收数据接收方发送的数据获取请求。
104.在步骤s630中,根据数据获取请求确定需要传输至数据接收方的媒体资源数据。
105.在本技术的一个实施例中,数据接收方发送的数据获取请求可以是用于请求获取实体组中的全部或部分媒体资源所对应的媒体资源数据。比如,数据接收方可以根据网络状态或者根据实际的业务需求来请求获取实体组中的全部媒体资源或者部分媒体资源。具体可参照前述实施例的技术方案,不再赘述。
106.在步骤s640中,根据需要传输至数据接收方的媒体资源数据生成媒体文件,该媒体文件中包含有媒体资源数据和对象关联数据盒,该对象关联数据盒中包含有多个媒体资源的信息,以及多个媒体资源之间的关联关系。
107.具体而言,可以将对象关联数据盒和需要传输至数据接收方的媒体资源数据进行压缩以生成媒体文件。需要说明的是:步骤s640中的其它细节与前述步骤s510类似,不再赘述。
108.在步骤s650中,将媒体文件发送至数据接收方,以使数据接收方解析媒体文件,并根据解析得到的多个媒体资源之间的关联关系,呈现媒体文件中包含的媒体资源数据。
109.需要说明的是:步骤s650中的其它细节与前述步骤s520类似,不再赘述。
110.以上分别从媒体资源的接收方和数据源侧阐述了本技术实施例的技术方案,以下结合图7从整体上对本技术实施例的实现细节做进一步说明:
111.如图7所示,以服务端生成点云媒体文件、客户端消费点云媒体文件为例进行说明,具体可以包括如下步骤s701至步骤s706:
112.在步骤s701中,服务端生成dash指令。
113.在本技术的一个实施例中,dash信令中可以包含有入口媒体资源标识信息,以指示作为初始消费(即第一个消费)的媒体资源。基于此,本技术实施例的技术方案对dash信令进行了扩展,具体如表1所示:
[0114][0115]
表1
[0116]
在表1中,“使用方法(use)”列中的1和n表示的个数(具体为整数),m表示mandatory(即强制性的),o表示optional(即可选的)。“数据类型(data type)”列中的omaf2和dash用于表示该类型是对应于标准所定义的数据类型;xs表示的是short int(短整型)类型。同时,adaptation sets表示dash中的视频流集合,一个adaptation sets中可以包含多个representation。representation在dash中表示媒体成分,比如某种分辨率的视频文件可以看做一个representation。
[0117]
从表1中可以看出,本技术的实施例针对dash信令定义了一个新的元素entitygroup@entry_media_id,该元素属于可选字段,其数据类型属于字符串没有空格的类型,该元素用于指示点云媒体关联组中作为初始消费实体的表示形式id。
[0118]
在一个具体示例中,假设服务端存储有博物馆展品a相关的媒体资源t1~t3,其中,t1为展品a的点云模型(如金冠的点云模型);t2为展品a使用时的普通视频画面(如戴着金冠的女王);t3为展品a制作过程的点云序列媒体(如金冠的制造工艺)。那么生成的dash信令可以如下:
[0119]
entitygroup@group_type=

oapc’;entitygroup@group_id=1;
[0120]
{entitygroup.entityidlist@asid=1;entitygroup.entityidlist@rsid=1}
[0121]
{entitygroup.entityidlist@asid=1;entitygroup.entityidlist@rsid=2}
[0122]
{entitygroup.entityidlist@asid=1;entitygroup.entityidlist@rsid=3}
[0123]
entitygroup@entry_media_id=1;
[0124]
其中,entitygroup@group_type=

oapc’表示实体组内的所有实体(即媒体资源)彼此之间存在内容上的关联关系;entitygroup@group_id=1表示实体组标识为1;entitygroup@entry_media_id=1表示作为初始消费实体的媒体资源id为1。
[0125]
同时,本技术的实施例也定义了一个新的数据盒:对象关联数据盒(即objectassociationbox),具体定义如下:
[0126]
box type:

oapc’[0127]
container:groupslistbox
[0128]
mandatory:no
[0129]
quantity:zero or more
[0130]
即如果entitytogroupbox的组类型为

oapc’时,表示该实体组内的所有实体(即媒体资源)彼此之间存在内容上的关联关系,在呈现时可根据需求呈现该实体组内的一个或多个媒体资源。同时该对象关联数据盒属于非强制项,并且可以设置0个或多个。
[0131]
在本技术的一个实施例中,对象关联数据盒的语法描述如下:
[0132][0133][0134]
在上述语法描述中,定义了对象关联数据盒objectassociationbox、entitytogroupbox('oapc')、无符号整型变量group_id(即实体组标识)和num_entities_in_group(即组内实体数量);同时定义了无符号整型变量entity_id(即实体标识)和entry_media_flag,并定义了保留字段(reserved)和字符串型的媒体描述字段(media_description)。
[0135]
其中,group_id是分配给特定分组的非负整数,该非负整数不能等于任何其他entitytogroupbox的group_id值,比如groupslistbox层次结构级别(即文件、电影或轨道)的任何item_id值或任何track_id值(当groupslistbox包含在文件级别时)。
[0136]
num_entities_in_group表示实体组内的entity_id值的数量。如果在包含groupslistbox层次结构级别(即文件、电影或轨道)中存在item_id等于entity_id的项目,则将object_id解析为一个项目,或者在存在track_id等于entity_id的轨道、且groupslistbox包含在文件级别中时,将其解析为轨道。
[0137]
针对上述博物馆展品的示例,对象关联数据盒objectassociationbox表示如下:
[0138]
objectassociationbox:group_id=1;num_entities_in_group=3;
[0139]
{entity_id=1;entry_media_flag=1;media_description=

gold crown’};
[0140]
{entity_id=2;entry_media_flag=0;media_description=

queen wearing gold crown’};
[0141]
{entity_id=3;entry_media_flag=0;media_description=

gold crown manufacturing process’}。
[0142]
其中,entry_media_flag=1表示第1个媒体资源是第一个消费的媒体资源,即是入口媒体资源。
[0143]
在步骤s702中,服务端将dash信令发送给客户端。
[0144]
在步骤s703中,客户端向服务端请求点云媒体文件。
[0145]
可选地,客户端可以根据网络状况来请求点云媒体文件,比如客户端1的网络状态较差,则可以仅请求初始媒体资源对应的媒体资源数据;客户端2的网络状况较好,则可以请求实体组内的全部媒体资源对应的媒体资源数据。
[0146]
在步骤s704中,服务端封装生成点云媒体文件。
[0147]
具体而言,服务端根据客户端的请求来生成点云媒体文件,比如服务端根据客户端1的请求,生成点云媒体文件f1,f1中包含了媒体资源t1的数据和对象关联数据盒;服务端根据客户端2的请求,生成点云媒体文件f2,f2中包含了媒体资源t1至t3的数据和对象关联数据盒。
[0148]
在步骤s705中,服务端向客户端传输点云媒体文件。
[0149]
在步骤s706中,客户端解封装点云媒体文件,呈现对应的媒体资源。
[0150]
具体而言,客户端1在接收到点云媒体文件f1之后,根据实体组中的内容呈现t1媒体资源。客户端2在接收到点云媒体文件f2之后,根据实体组中的内容先呈现t1媒体资源,再根据用户的后续需求,对应呈现t2和t3媒体资源。
[0151]
可见,在本技术上述实施例的技术方案中,可以根据点云对象的内容,将内容上存在关联关系的多个媒体资源使用objectassociationbox数据盒进行关联,并根据不同媒体资源的呈现形式对应填充数据盒内的各个字段,实现了对媒体资源之间的关联关系的指示,进而可以满足不同应用场景的业务需求,比如客户端可以有目的性地请求和呈现特定的内容,从而优化了传输过程的带宽消耗并提升了用户的观看消费体验。
[0152]
以下介绍本技术的装置实施例,可以用于执行本技术上述实施例中的媒体文件的关联处理方法。对于本技术装置实施例中未披露的细节,请参照本技术上述的媒体文件的关联处理方法的实施例。
[0153]
图8示出了根据本技术的一个实施例的媒体文件的关联处理装置的框图,该媒体文件的关联处理装置可以设置在媒体播放设备内,该媒体播放设备可以是智能手机、平板电脑等。
[0154]
参照图8所示,根据本技术的一个实施例的媒体文件的关联处理装置800,包括:获取单元802、解析单元804和处理单元806。
[0155]
其中,获取单元802配置为获取媒体文件,所述媒体文件中包含有媒体资源数据和对象关联数据盒,所述对象关联数据盒中包含有多个媒体资源的信息,以及所述多个媒体资源之间的关联关系;解析单元804配置为解析所述媒体文件,得到所述媒体文件中包含的
媒体资源数据和所述多个媒体资源之间的关联关系;处理单元806配置为根据所述多个媒体资源之间的关联关系,呈现所述媒体文件中包含的媒体资源数据。
[0156]
在本技术的一些实施例中,基于前述方案,所述媒体文件中包含有多个媒体资源数据;处理单元806配置为:根据所述多个媒体资源之间的关联关系,依次呈现所述多个媒体资源数据。
[0157]
在本技术的一些实施例中,基于前述方案,所述对象关联数据盒中还包含入口媒体标识信息,所述入口媒体标识信息用于指示第一个消费的媒体资源数据;处理单元806配置为:根据所述入口媒体标识信息,优先呈现所述第一个消费的媒体资源数据;在呈现所述第一个消费的媒体资源数据之后,呈现所述多个媒体资源数据中除所述第一个消费的媒体资源数据之外的其它媒体资源数据。
[0158]
在本技术的一些实施例中,基于前述方案,所述对象关联数据盒中的多个媒体资源的信息包括:所述多个媒体资源中的各个媒体资源的标识信息、用于指示所述各个媒体资源是否是第一个消费的媒体资源的入口媒体资源标识信息,以及各个媒体资源的描述信息。
[0159]
在本技术的一些实施例中,基于前述方案,所述对象关联数据盒中还包括:所述多个媒体资源的数量;所述对象关联数据盒中的所述关联关系包括:用于标识所述多个媒体资源所属实体组的组标识。
[0160]
在本技术的一些实施例中,基于前述方案,所述关联处理装置800还包括:接收单元,配置为在获取媒体文件之前,接收数据源侧发送的dash信令,所述dash信令中包含有入口媒体资源标识信息和实体组的类型字段,所述实体组的类型字段为设定值,以用于指示所述实体组中的媒体资源存在关联关系,所述入口媒体资源标识信息用于指示第一个消费的媒体资源;所述获取单元配置为:根据所述dash信令获取所述媒体文件。
[0161]
在本技术的一些实施例中,基于前述方案,所述获取单元802配置为:根据所述dash信令向所述数据源侧发送数据获取请求,所述数据获取请求用于请求获取所述实体组中的全部或部分媒体资源所对应的媒体资源数据;接收所述数据源侧根据所述数据获取请求返回的所述媒体文件。
[0162]
在本技术的一些实施例中,基于前述方案,所述获取单元802配置为:若当前网络状态优于设定值,则向所述数据源侧发送数据获取请求,以请求获取所述实体组中的全部媒体资源所对应的媒体资源数据;若当前网络状态低于设定值,则向所述数据源侧发送数据获取请求,以请求获取所述实体组中的部分媒体资源所对应的媒体资源数据,所述部分媒体资源包括所述第一个消费的媒体资源。
[0163]
在本技术的一些实施例中,基于前述方案,所述dash信令中还包含有实体组的标识信息,所述实体组的标识信息用于指示实体组的组标识。
[0164]
在本技术的一些实施例中,基于前述方案,所述媒体文件包括点云媒体文件,所述媒体资源包括点云媒体资源。
[0165]
图9示出了根据本技术的一个实施例的媒体文件的关联处理装置的框图,该媒体文件的关联处理装置可以设置在媒体生成设备内,该媒体生成设备可以是智能手机、平板电脑等。
[0166]
参照图9所示,根据本技术的一个实施例的媒体文件的关联处理装置900,包括:生
成单元902和发送单元904。
[0167]
其中,生成单元902配置为生成媒体文件,所述媒体文件中包含有媒体资源数据和对象关联数据盒,所述对象关联数据盒中包含有多个媒体资源的信息,以及所述多个媒体资源之间的关联关系;发送单元904配置为将所述媒体文件发送至数据接收方,以使所述数据接收方解析所述媒体文件,并根据解析得到的多个媒体资源之间的关联关系,呈现所述媒体文件中包含的媒体资源数据。
[0168]
在本技术的一些实施例中,基于前述方案,生成单元902还配置为:在生成媒体文件之前,生成dash信令,所述dash信令中包含有入口媒体资源标识信息和实体组的类型字段,所述实体组的类型字段为设定值,以用于指示所述实体组中的媒体资源存在关联关系,所述入口媒体资源标识信息用于指示第一个消费的媒体资源;所述发送单元904还配置为:将所述dash信令发送给所述数据接收方,并接收所述数据接收方发送的数据获取请求;所述媒体文件的关联处理装置900还包括:确定单元,配置为根据所述数据获取请求确定需要传输至所述数据接收方的媒体资源数据,以根据需要传输至所述数据接收方的媒体资源数据生成所述媒体文件。
[0169]
图10示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
[0170]
需要说明的是,图10示出的电子设备的计算机系统1000仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
[0171]
如图10所示,计算机系统1000包括中央处理单元(central processing unit,cpu)1001,其可以根据存储在只读存储器(read-only memory,rom)1002中的程序或者从存储部分1008加载到随机访问存储器(random access memory,ram)1003中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在ram 1003中,还存储有系统操作所需的各种程序和数据。cpu 1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(input/output,i/o)接口1005也连接至总线1004。
[0172]
以下部件连接至i/o接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至i/o接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
[0173]
特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(cpu)1001执行时,执行本技术的系统中限定的各种功能。
[0174]
需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上
的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0175]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0176]
描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
[0177]
作为另一方面,本技术还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
[0178]
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0179]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本技术实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本技术实施方式的方法。
[0180]
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。
[0181]
应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1