一种三维声编解码元数据的方法与流程

allin2025-07-16  216


本发明涉及三维声解码的,具体而言,涉及一种三维声编解码元数据的方法。


背景技术:

1、现有技术中的多媒体流的传输方式为:将音频、视频以及多媒体文件按照指定格式生成多个压缩包,并按照流的方式进行传输,接收到多媒体流的用户,不必等待整个多媒体流传输完毕,就能够在多媒体流传输的过程中,解压并播放音频、视频、以及多媒体文件,实现了多媒体数据的实时传输。

2、现有技术一般采用directshow或ffmpeg进行音视频编解码,directshow是微软公司推出的基于com(component object model,组件对象模型)的流媒体处理的开发包,提供一种windows平台上的流媒体开发框架,可用于windows平台上的音视频编解码处理,而ffmpeg是开源爱好者开发的一个项目,集成了各种音频和视频的编解码,以及各种文件格式的转换,一般采用c语言和汇编语言进行开发,可以跨平台。

3、然而现有的三维声编解码元数据的方法中,把元数据的信息结构定义在了编解码器中,使编解码器与元数据之间耦合了,也不利于元数据的扩展应用,以下列出现有技术缺陷点:

4、1.现有三维声编解码方法中,将编解码器与元数据耦合,不利于扩展;

5、2.现有三维声编解码方法中,固定了解析部分,无法使元数据压缩传输;

6、3.现有三维声编解码方法中,无法区分不同的元数据类型。


技术实现思路

1、本发明要解决的技术问题是解除三维声编解码器与元数据之间的耦合关系,实现元数据的独立解析,便于扩展元数据类型和渲染类型,为克服以上现有技术(或相关技术)的缺陷,本发明提供一种三维声编解码元数据的方法。

2、本发明提供一种三维声编解码元数据的方法,预先将三维声编解码器与元数据解析器解耦,并将所述三维声编解码器与所述元数据解析器建立通信连接,所述三维声编解码元数据的方法包括以下步骤:

3、步骤s1,控制所述三维声编解码器获取元数据和音频数据,并对所述音频数据解码后输出,以及对所述元数据进行解析得到对应的rendertype信息、datatype信息、datalength信息并结合所述元数据解码后输出;

4、步骤s2,控制所述元数据解析器接收所述音频数据、所述元数据、所述rendertype信息、所述datatype信息和所述datalength信息,以及对所述rendertype信息、所述datatype信息和所述datalength信息进行解析得到对应的渲染类型、元数据类型、元数据长度并与所述音频数据和所述元数据关联后存储。

5、本发明一种三维声编解码元数据的方法与现有技术相比,具有以下优点:

6、本发明中,将三维声编解码器与元数据解析器进行解耦处理,通过三维声编解码器实现单独的数据编解码功能,通过元数据解析器实现单独的元数据解析功能,解除三维声编解码器与元数据之间的耦合关系并实现元数据的独立解析;且本发明中通过三维声编解码器先解析得到rendertype信息、datatype信息、datalength信息,再通过元数据解析器进行解析得到渲染类型、元数据类型、元数据长度,将信息的初步解析功能和类型的进一步解析功能相剥离,便于进行元数据类型和渲染类型的扩展。

7、在一种可能的实施方式中,所述步骤s1中,对所述元数据解析得到的所述rendertype信息包括空类型、基于声道的音频类型、基于矩阵的音频类型、基于对象的音频类型、基于场景的音频类型和基于双耳的音频类型。

8、在一种可能的实施方式中,所述步骤s2中,解析得到的所述渲染类型的类型定义包括render_type_null、render_type_directspeadkers、render_type_matrix、render_type_objects、render_type_hoa和render_type_binaural,其中,render_type_null的类型值为0、声道类型为null且类型说明为所述空类型,render_type_directspeadkers的类型值为1、声道类型为directspeakers且类型说明为所述基于声道的音频类型,render_type_matrix的类型值为2、声道类型为matrix且类型说明为所述基于矩阵的音频类型,render_type_objects的类型值为3、声道类型为objects且类型说明为所述基于对象的音频类型,render_type_hoa的类型值为4、声道类型为hoa且类型说明为所述基于场景的音频类型,render_type_binaural的类型值为5、声道类型为binaural且类型说明为所述基于双耳的音频类型。

9、在一种可能的实施方式中,所述步骤s1中的所述rendertype信息还包括自定义类型,所述步骤s2中解析得到的所述渲染类型的类型定义还包括render_type_custom,render_type_custom的类型值为6-65535且声道类型为user custom,以在所述rendertype信息表征自定义类型时解析得到。

10、与现有技术相比,采用上述技术方案能够实现对于渲染类型的自定义功能,甚至可以自定义新的元数据信息,得到用户要求的自定义内容。

11、在一种可能的实施方式中,所述步骤s1中,对所述元数据进行解析得到的所述datatype信息包括未设置类型、xml标准模式、xml简写模式、xml扩展模式、json标准模式、json简写模式、json扩展模式和protobuf标准模式。

12、在一种可能的实施方式中,所述步骤s2中,解析得到的所述元数据类型的类型定义包括meta_type_null、meta_type_xml、meta_type_xml_ex1、meta_type_xml_ex2、meta_type_json、meta_type_json_ex1、meta_type_json_ex2和meta_type_proto,其中,meta_type_null的类型值为0且类型说明为所述未设置类型,meta_type_xml的类型值为1且类型说明为所述xml标准模式,meta_type_xml_ex1的类型值为2且类型说明为所述xml简写模式,meta_type_xml_ex2的类型值为3且类型说明为所述xml扩展模式,meta_type_json的类型值为10且类型说明为所述json标准模式,meta_type_json_ex1的类型值为11且类型说明为所述json简写模式,meta_type_json_ex2的类型值为12且类型说明为所述json扩展模式,meta_type_proto的类型值为20且类型说明为所述protobuf标准模式。

13、在一种可能的实施方式中,所述步骤s2中,还包括:

14、判断所述元数据类型是否为未设置类型:

15、若是,则退出所述步骤s2;

16、若否,则解析所述datalength信息。

17、在一种可能的实施方式中,所述步骤s2中,还包括:

18、判断所述渲染类型是否为所述空类型:

19、若是,则退出所述步骤s2;

20、若否,则解析所述datatype信息。


技术特征:

1.一种三维声编解码元数据的方法,其特征在于,预先将三维声编解码器与元数据解析器解耦,并将所述三维声编解码器与所述元数据解析器建立通信连接,所述三维声编解码元数据的方法包括以下步骤:

2.根据权利要求1所述的三维声编解码元数据的方法,其特征在于,所述步骤s1中,对所述元数据解析得到的所述rendertype信息包括空类型、基于声道的音频类型、基于矩阵的音频类型、基于对象的音频类型、基于场景的音频类型和基于双耳的音频类型。

3.根据权利要求2所述的三维声编解码元数据的方法,其特征在于,所述步骤s2中,解析得到的所述渲染类型的类型定义包括render_type_null、render_type_directspeadkers、render_type_matrix、render_type_objects、render_type_hoa和render_type_binaural,其中,render_type_null的类型值为0、声道类型为null且类型说明为所述空类型,render_type_directspeadkers的类型值为1、声道类型为directspeakers且类型说明为所述基于声道的音频类型,render_type_matrix的类型值为2、声道类型为matrix且类型说明为所述基于矩阵的音频类型,render_type_objects的类型值为3、声道类型为objects且类型说明为所述基于对象的音频类型,render_type_hoa的类型值为4、声道类型为hoa且类型说明为所述基于场景的音频类型,render_type_binaural的类型值为5、声道类型为binaural且类型说明为所述基于双耳的音频类型。

4.根据权利要求3所述的三维声编解码元数据的方法,其特征在于,所述步骤s1中的所述rendertype信息还包括自定义类型,所述步骤s2中解析得到的所述渲染类型的类型定义还包括render_type_custom,render_type_custom的类型值为6-65535且声道类型为usercustom,以在所述rendertype信息表征自定义类型时解析得到。

5.根据权利要求1所述的三维声编解码元数据的方法,其特征在于,所述步骤s1中,对所述元数据进行解析得到的所述datatype信息包括未设置类型、xml标准模式、xml简写模式、xml扩展模式、json标准模式、json简写模式、json扩展模式和protobuf标准模式。

6.根据权利要求5所述的三维声编解码元数据的方法,其特征在于,所述步骤s2中,解析得到的所述元数据类型的类型定义包括meta_type_null、meta_type_xml、meta_type_xml_ex1、meta_type_xml_ex2、meta_type_json、meta_type_json_ex1、meta_type_json_ex2和meta_type_proto,其中,meta_type_null的类型值为0且类型说明为所述未设置类型,meta_type_xml的类型值为1且类型说明为所述xml标准模式,meta_type_xml_ex1的类型值为2且类型说明为所述xml简写模式,meta_type_xml_ex2的类型值为3且类型说明为所述xml扩展模式,meta_type_json的类型值为10且类型说明为所述json标准模式,meta_type_json_ex1的类型值为11且类型说明为所述json简写模式,meta_type_json_ex2的类型值为12且类型说明为所述json扩展模式,meta_type_proto的类型值为20且类型说明为所述protobuf标准模式。

7.根据权利要求6所述的三维声编解码元数据的方法,其特征在于,所述步骤s2中,还包括:

8.根据权利要求3所述的三维声编解码元数据的方法,其特征在于,所述步骤s2中,还包括:


技术总结
本发明提供了一种三维声编解码元数据的方法,包括:步骤S1,控制三维声编解码器获取元数据和音频数据,并对音频数据解码后输出,以及对元数据进行解析得到对应的renderType信息、dataType信息、dataLength信息并结合元数据解码后输出;步骤S2,控制元数据解析器接收音频数据、元数据、renderType信息、dataType信息和dataLength信息,以及对renderType信息、dataType信息和dataLength信息进行解析得到对应的渲染类型、元数据类型、元数据长度并与音频数据和元数据关联后存储。有益效果是本发明能够解除三维声编解码器与元数据之间的耦合关系,实现元数据的独立解析,便于扩展元数据类型和渲染类型。

技术研发人员:邓荣凯,王祥贵,何大剑
受保护的技术使用者:音王电声股份有限公司
技术研发日:
技术公布日:2024/10/31
转载请注明原文地址: https://www.8miu.com/read-23079.html

最新回复(0)