一种基于xmos的spdif和i2s信号同时输出的方法技术

技术编号:37993695 阅读:11 留言:0更新日期:2023-06-30 10:07
本发明专利技术公开了一种基于xmos的spdif和i2s信号同时输出的方法,其包括:获取音频数据;数据转换,依据需求和设定将部分或全部所述音频数据转换为SPDIF格式,转换后的数据记为第一音频数据,将所述第一音频数据发送到IOBUF;获取的I2S格式的所述音频数据记为第二音频数据,依据需求和设定将部分或全部所述第二音频数据发送到IOBUF;若所述音频数据有剩余则继续执行转换和输出,直至所有所述音频数据输出完毕为止;再次执行所述音频数据的获取或结束;所述第一音频数据和所述第二音频数据通过硬件阻塞的方式传输到IOBUF,IOBUF将获取到的所述第一音频数据和所述第二音频数据进行交织发送。实现同时输出两种格式的信号和提高硬件利用效率。件利用效率。件利用效率。

【技术实现步骤摘要】
一种基于xmos的spdif和i2s信号同时输出的方法


[0001]本专利技术涉及到音频信号输出方法
,尤其涉及到一种基于xmos的spdif和i2s信号同时输出的方法。

技术介绍

[0002]现有的数字信号处理器(DSP),特别是音频领域的处理器,常用的一般是xmos旗下的arm架构处理器。mqa是一种音频编码技术,其提供一种高效的方法,将高保真音频信号压缩到较小的文件中,同时保留所有原始音频数据的信息,以便在播放时进行还原。
[0003]在mqa技术下,一般采用xmos芯片,其中6个xmos核心分别负责:1、解码,2、进程,3、数据处理,4、时钟管理,5、通讯管理,6、数据传输;在应用时,xmos的核心还会根据场景、硬件设备特性再进行任务分配,又如6个xmos分别负责:1、解码,2、重构(主要重构高频信号,以提高分辨率和动态范围),3、混叠(重构后的信号与原始信号混叠),4、滤波,5、时钟管理,6、数据传输。
[0004]为提供给后端spdif和i2s信号的输出,以及提供io/设备控制功能,即:一个xmos核心负责spdif输出,一个xmos核心负责i2s输出,一个核心负责io/设备控制。但是在mqa框架下,xmos的6个核心本身就是不够用,而且又要提供给后端高质量的音频输出,因此,音频功能方面的处理核心占用的数量是不能减少或是尽量不应该减少的,而为实现同时输出spdif和i2s,现有的技术方案是需要占用两个核心。
[0005]因此,亟需一种能够在cpu核心资源不够的情况下,能够同时输出spdif和i2s,并且保障音频质量的处理/音频输出方法。

技术实现思路

[0006]为解决现有技术中存在的一种或多种问题,本专利技术提供了一种基于xmos的spdif和i2s信号同时输出的方法。本专利技术为解决上述问题采用的技术方案是:一种基于xmos的spdif和i2s信号同时输出的方法,其包括:使用一个处理器核心同时发送两种不同格式的数字音频信号,所述数字音频信号包括:SPDIF和I2S音频信号;
[0007]所述方法包括:S010,获取音频数据,所述音频数据为传输到左或右声道的音频数据;
[0008]S020,数据转换,依据需求和设定将部分或全部所述音频数据转换为SPDIF格式,转换后的数据记为第一音频数据,将所述第一音频数据发送到IOBUF;
[0009]S030,获取的I2S格式的所述音频数据记为第二音频数据,依据需求和设定将部分或全部所述第二音频数据发送到IOBUF;
[0010]S040,若所述音频数据有剩余,则剩余的所述音频数据记为余量音频数据,依据需求和设定将部分或全部所述余量音频数据转换为SPDIF格式,然后将此阶段得到的所述第一音频数据发送到IOBUF,往复循环直至所有所述音频数据传输完毕为止;
[0011]S041,若所述音频数据有剩余,则依据需求和设定将部分或全部所述第二音频数
据发送到IOBUF,往复循环直至所有所述音频数据传输完毕为止;
[0012]S050,再次执行所述音频数据的获取或结束;
[0013]所述第一音频数据和所述第二音频数据通过硬件阻塞的方式传输到IOBUF,IOBUF将获取到的所述第一音频数据和所述第二音频数据进行交织发送。
[0014]本专利技术取得的有益价值是:本专利技术通过上述方法,使用一个处理器核心进行数字音频信号的传输,利用硬件阻塞的方式将两种格式的数据传输到IOBUF,再通过IOBUF对I2S和SPDIF音频数据进行交织发送,进而实现I2S和SPDIF音频数据的同时输出。这种同时输出I2S和SPDIF音频数据的方式,相对现有的方式能够节省出一个处理器核心的资源,将节省出的硬件资源用于处理其他数据,这样不仅提高了硬件资源的利用效率,也提高了处理器整体的处理效率。以上极大地提高了本专利技术的实用价值。
附图说明
[0015]图1为本专利技术的示意框图。
具体实施方式
[0016]为使本专利技术的上述目的、特征和优点能够更加浅显易懂,下面结合附图对本专利技术的具体实施方式做详细的说明。在下面的描述中阐述了很多具体细节以便于充分理解本专利技术。但是本专利技术能够以很多不同于此描述的其他方式来实施,本领域技术人员可以在不违背本专利技术内涵的情况下做类似改进,因此本专利技术不受下面公开的具体实施例限制。
[0017]如图1所示,本专利技术公开了一种基于xmos的spdif和i2s信号同时输出的方法,其包括:可使用一个处理器核心用于IO/设备控制,使用另一个处理器核心同时发送两种不同格式的数字音频信号,所述数字音频信号包括:SPDIF和I2S音频信号;
[0018]所述方法包括:S010,获取音频数据,所述音频数据为传输到左或右声道的音频数据;
[0019]S020,数据转换,依据需求和设定将部分或全部所述音频数据转换为SPDIF格式,转换后的数据记为第一音频数据,将所述第一音频数据发送到IOBUF;
[0020]S030,获取的I2S格式的所述音频数据记为第二音频数据,依据需求和设定将部分或全部所述第二音频数据发送到IOBUF;
[0021]S040,若所述音频数据有剩余,则剩余的所述音频数据记为余量音频数据,依据需求和设定将部分或全部所述余量音频数据转换为SPDIF格式,然后将此阶段得到的所述第一音频数据发送到IOBUF,往复循环直至所有所述音频数据传输完毕为止;
[0022]S041,若所述音频数据有剩余,则依据需求和设定将部分或全部所述第二音频数据发送到IOBUF,往复循环直至所有所述音频数据传输完毕为止;
[0023]S050,再次执行所述音频数据的获取或结束;
[0024]所述第一音频数据和所述第二音频数据通过硬件阻塞的方式传输到IOBUF,IOBUF将获取到的所述第一音频数据和所述第二音频数据进行交织发送。
[0025]IOBUF是input/output buffer的缩写,指的是输入输出缓冲区,IOBUF实现交织发送的方式一般是:通过在应用程序中使用异步IO或非阻塞IO机制来实现的。本申请中的IOBUF的大小和数量依据实际需求而定,即依据输入的初始音频数据和需要输出的音频数
据而定。
[0026]结合图1所示,I2S和SPDIF数据是通过硬件阻塞的方式交织传输到IOBUF内的,然后IOBUF对两种数据进行交织存储和交织输出。结合S030,获取的I2S数据可为所述音频数据的原始格式,也可以像S020一样,将所述音频数据转换为I2S格式,如将PCM/DSD转换为I2S格式,再执行S030。若S010获得的所述音频数据为I2S格式,则在S030中即可不进行转换,反之需要进行转换。
[0027]在S020

S041中,依据需求和设定指的是,根据IOBUF的大小和数量来设定每次转换和输入到IOBUF内的I2S/SPDIF数据,即输入的所述音频数据在合适的大小范围下可以直接转换和输入,在不合适的大小范围本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于xmos的spdif和i2s信号同时输出的方法,其特征在于,使用一个处理器核心同时发送两种不同格式的数字音频信号,所述数字音频信号包括:SPDIF和I2S音频信号;所述方法包括:S010,获取音频数据,所述音频数据为传输到左或右声道的音频数据;S020,数据转换,依据需求和设定将部分或全部所述音频数据转换为SPDIF格式,转换后的数据记为第一音频数据,将所述第一音频数据发送到IOBUF;S030,获取的I2S格式的所述音频数据记为第二音频数据,依据需求和设定将部分或全部所述第二音频数据发送到IOBUF;S040,若所述音频...

【专利技术属性】
技术研发人员:温上凯
申请(专利权)人:东莞凯韵科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1