多路音频、多媒体
关键词:多媒体;复用;多路音频;缓存
多媒体技术是计算机综合处理声、文、图信息的技术,具有集成性、实时性和交互性。随着社会的发展,在多媒体服务中,服务器端与客户端需要高速的计算以支持视、音频的实时编码、解码。多数情况下,pc机不能满足实时与高质量的要求。
目前的电视机、电脑等多媒体设备在播放视频时,只能将一个视频或音频作为主播放界面,存在局限性。如电视机,由于家人各自喜欢看不同的频道,经常因选择频道而产生分歧。又如mp3、mp4等,能支持多个播放器的多媒体设备都存在主次音干扰问题。为此,人们希望能在一台设备上同时播放多个视频或音频,而每个视频或音频能独立拥有多媒体效果,且互不影响。本文将探讨一种能够充分利用资源的设计。本设计采用的核心芯片是mcu。mcu提供了一个多功能可编程服务平台,采用通用编程语言,支持多种图像/语音格式、多种压缩标准和算法,被广泛应用于如数字电视、数字视频记录、视频会议和游戏平台等领域。
1 装置设计概述
1.1 方案提出
计算机技术的高速发展,使新一代计算机的资源相对充足。而在实际使用过程中,大量的系统资源并没得到充分利用,特别是超线程的p4架构,利用率不到10%,造成很大的资源浪费。数字音频是多媒体技术的重要组成部分,品种繁多的新产品也不断涌现,音频数据压缩和传输格式不断丰富和更新,给人们带来了方便和享受。但与此同时,人们也在对数字音频产品不断提出更高的要求,功能单一的产品必将被高性能、多功能以及具有良好兼容性的数字音频系统所取代。同时播放多个视频画面时能够获得互不干扰的音频输出的技术必将成为数字音频的发展趋势。本文提出一种全新的设计方案:将系统资源优化整合、充分利用,能够在电脑或电视等多媒体设备中实现多画面视频播放、多通道音频输出,各声音又不互相干扰的一种装置。
1.2 常用的多路视频、音频同时播放方案分析
(1)单声卡多声道输出方式
声卡播放音频文件原理:多个副缓冲区中的数据混合到主缓冲区中,然后再播放主缓冲区内的数据实现声音播放。声卡的主缓冲区有且只有一个,声道可有多个。采用多个声道实现多路音频输出存在以下问题:多声道不能实现声音隔离单独输出;并且制作音源的时候是通过各个声道,从多个方位,多种方式录取的,录取到的多路声音经过ac3或者dts编码后进行存储,播放时声卡把压码后的声音信息再解码出来,送到缓冲区中(也许用到了多个从缓冲区),最后通过声卡的主缓冲区播放,因为其含有以多种方式,多方位录制的信息,所以每个声音输出孔的声音都存在混音等问题,声音效果不好,不具备良好的立体感。
(2)音频与视频的双输出hdmi线+音响
市场中有采用带音频与视频的双输出hdmi线和音响来实现两个屏幕声音互不干扰(视频看电影,电脑游戏,各自有声音)的产品,它则需要两块声卡,一块用于电影,一块用于游戏,可以在程序中选择使用不同声卡。若采用一块声卡,因hdmi带的音频输出只是多了一种输出接口形式,声音是通过同一个声卡处理的,所以声音还是混合的。如果将两个程序播放声音设置成一个左声道,一个右声道,播放程序或游戏可以进行这种设置,但无法实现立体声。
(3)双头显卡多音频输出
采用双头显卡把电视与电脑连接起来,图像互不干扰的问题可以解决,但电脑只有一块声卡,打开多个有声应用程序于电脑和电视上会出现声音串扰的问题。目前有种方法是利用一块声卡把不同应用程序的声音分离出来,通过前后声道进行传输,从而实现两(多)路声音分开传输,互不干扰。但实际操作发现,前后声道输出的声音总是相同的,有些声卡自带的“音效管理员”并不支持把前后声道声音分离的功能。另一种方法是为电脑添加一块“虚拟声卡”,通过“控制面板”的“声音”设置,用不同的声卡输出不同应用程序的声音。实际操作发现这种方法有两个问题:第一,虚拟声卡软件(rigexpert)并不能独立于物理声卡发声,因此并不能起到分离声音的作用;第二,不是每一个发出声音的应用软件都提供了对声卡进行选择的设置,比如windows media player可以设置,但realplayer则不支持,所以仍会出现声音串扰的情况。
(4)分析
通常音源软件自己不能选择声音输出设备,默认的音频数据是直接到windows的mix里面的。要实现分离输出,就要考虑可以控制音频的分离输出软件。本文提出:将任意声道的
声音模拟成多声道模式,并且在各声道设置控制开关,这择就可以通过某些软件实现虚拟声道,并对各声道进行独立控制,进而可以把不同应用程序的声音分别送入不同的声道进行控制、传送,最终解决声音互相干扰的问题。
2 模块装置设计
(1)硬件说明
数字信号处理器dsp是声卡的关键部件。声卡用数字信号处理器芯片管理所有声音输入输出和midi操作。用数字信号处理器可以通过编程来完成一些特定的任务,减轻cpu的负担。它的芯片带有自己的ram和eprom,用来存放声音处理多媒体(vo)、adpcm编码/译码程序和中间运算结果。视频输入模块采用dm365架构,能支持多种格式的视频输入格式,实现高清视频输入。高清akd转换芯片采用tvp7002,tvp7002能实现r/pr,g/y,b/pb信号的数字转换,转换率高达165mhz。
(2)设计原理
同时播放多个音频文件是利用多缓冲技术,把多个副缓冲区中的数据混合到主缓冲区中,
然后再播放主缓冲区内的数据或用多线程来实现。本文设计将音频,视频数据存入缓存区的不同位置,利用多个音视频数据读取模块进行读取,并分别显示或播放,互不影响。电路结构如图l所示。
如图1所示,设计的装置包括mcu(微控制单元)以及与该mcu连接的数据存储模块、音视频解码模块和数据缓存模块。设计的主要特点是数据缓存模块连接有多个音频/视频读取模块,输出端分别与视频呈现模块和音频输出接口模块连接。mcu将要播放的数据从数据存储模块中读取并进行解码,并将解码后的数据按照不同的地址分别存入缓存模块中,缓存模块采用多路复用技术,实现集中管理,利用音频/视频读取模块读取相应位置的数据信息,分别输出显示或播放。音频输出接口模块具有多个音频输出端口,以便用户通过各自的耳麦或音频播放设备接收各自的音频数据。
(3)程序说明
mcu采用其程序总线与数据总线分开,取指令与执行指
令并行运行的方式。程序总线宽度为256bit,每一次取指操作都是取8条指令,即一个取指
包。执行时,每条指令占用一个功能单元,取指、指令分配和指令译码单元都具备每周期读取并传递8条32位指令的能力。
mcu有二个类似的可进行数据处理的数据通路a和b,其结构如图2所示,共包含下述物理资源:
①2个数据通路(a和b)。
②8个功能单元。mcu每组数据通路有四个功能单元,两组数据通路功能单元的功能基本相同。这些功能单元主要完成乘法运算和产生地址的功能。l与s是主要的算术逻辑运算单元(alu)。
③二个数据读取通路(ld1和ld2)和二个数据存储通路(st1和st2)。
④二个寄存器组交叉通路(2x和1x)。
⑤二个数据寻址通路(s/c1和s/c2)。
⑥控制寄存器组。
用户可以通过对控制寄存器组编程来选用mcu的部分功能。功能单元方面,算术逻辑运算单元s可通过搬移指令mcu访问控制寄存器,对其进行读写操作。每一个通道可以同时运行,也可以分时运行,并且是可编程和软件可控的。它执行数据传送功能存储器到存储器:执行块传送、预装数据到内部高速缓存、用0或1填充存储器某特定区域。待传送数据的参数,如起始地址、数据大小等封装并打包在一个数据包中。控制器一次读取一个数据包作为它的传送数据,并可以在不中断vuw工作的情况下,把在存储器中互不相连的数据持续地传送。存储器到io口和io口到存储器,执行io数据传输的muc控制寄存器有以下寄存器
寻址模式寄存器amr
控制状态寄存器csr。
mcu控制器支持64m b到128m b的sdram/sgram,而不需另加额外的控制电路。控制器包括了dram的刷新与读写控制、队列、优先权判别等硬件逻辑。内部的锁相环电路产生sdram/sgram所需的读写时钟。
mcu的eprom/falshrom控制器执行以下几个功能:
芯片配置和rom启动定序器。在系统启动时,读取系统启动代码和配制信息。
控制读、写、擦除falshrom。
启动过程中,进行上电诊断;测试状态时,设置不同的程序断点。
中断控制寄存器ifr、isr、icr、ier、istp、irp和nrp。
dma控制器(direct memory access):mcu中的通道控制器。
(4)本设计装置实施的效果示意图如图3所示。图中左边同时播放了a、b、c、d四个视频,输出端设置有四个音频输出口(1、2、3、4)分别对应四个视频的声音。为促使声音的不干扰传输,采用多信道利用技术,把多个声间传输分成不同的时隙,对各路通信进行分组,每组占用一个时隙,不同组分别进行数据传输互不干扰。信道利用技术中.复用器具有几个缓存器,这样就可将声音分离。用户只要通过各自的耳麦即可听取相应视频的声音,可供多人使用,节省了资源。
(5)音频信息传输采用madi(multichannel audiodigital interface)接口标准,线性量化(pcm)音
频数据madi采用异步工作方式:音频信号的时钟和数据分开传输,每个通道包含32个比特,其中24个比特分配给音频或由音频,非音频标记定义的其他数据,另有4个比特用来表示二通道接口的有效位(v)、用户数据位(u)、状态数据位(c)和奇偶校验位(p),另4个比特用于模式确认。
本设计的音频输出不仅仅只局限于有线的数据传输,其音频输出接口模块还可以包括蓝牙音频输出单元,通过无线蓝牙实现音频传输并播放。
3 结束语
本文将音/视频数据存入缓存的不同位置,利用多个音视频数据读取模块进行读取,并分别显示或播放,互不影响。目前在市场上还末到可实现类似功能的硬件。此设计的装置可应用于包括电视机、电脑以及多媒体设备等,具有较好的实用价值。
发布评论