« Xbox 360 架构 (index)

Xbox 360 架构

Chapter 5: 音频


目录

  1. Xbox 360的音频硬件解码器
    1. 多媒体编解码器的兴起
    2. WMA的再次推广
  2. 一窥XMA解码器

随着中央处理器(CPU)发展为多核心的多面手,专用音频硬件的必要性逐渐减弱。 最终,微软决定Xbox 360的音频处理将由CPU负责,因此,音频处理管线完全通过软件来完成。 操作系统提供了游戏通过官方软件开发工具包(SDK)访问的例程。 这带来了新的优势,因为CPU的通用处理能力不仅限于一组固定的音频功能。

一年后,PlayStation 3也将采用相同的做法,从而在视频游戏行业中确立了这一趋势。

Xbox 360的音频硬件解码器

相反,在Xbox 360的情况下,我们看到了一个显著的例外:微软在主板上集成了一个硬件音频解码器。 这个解码器位于南桥芯片内部(在'I/O'部分有更详细的解释),并且它专门设计来支持一种称为Xbox Media Audio (XMA)的编解码器。 XMA是微软专有的Windows Media Audio (WMA)格式的一个变体,你可能已经熟悉它了。 那么,为什么这个编解码器如此重要,以至于微软在已经面临预算削减的游戏机上额外投入了硬件资源呢?

多媒体编解码器的兴起

Image
1999年发布的Windows Media Player 6 成为了微软对抗其竞争对手,如QuickTime、Winamp等的重要工具。

在21世纪初(甚至是上世纪90年代末),随着互联网的普及和价格亲民的多媒体产品(如加速卡、支持SIMD的CPU和快速网络带宽)的出现,许多曾经主要专注于生产软件的公司开始涉足多媒体服务领域。

用户现在希望电脑能做更多的事情,比如观看全动态电影,在处理电子表格时听音频CD,以及翻录(甚至混合)音频CD,仅举几例。 当然,我们现在认为所有这些都是理所当然的,但这些"能力"在历史上的某个时刻必须被实现。 最初,它们是通过第三方软件提供的(例如 Nero和Winamp),后来随操作系统捆绑(例如Windows XP及其集成的CD刻录功能; 以及捆绑了iTunes的Mac OS X 10.1)。

现在,深入探讨音乐领域及其不断发展的分享系统,我们会发现MP3已成为音乐传输的主流编解码器。这引发了市场对能够解码MP3(更准确地说,是MPEG-1)的媒体播放器的巨大需求。 那么,微软是如何应对这一趋势的呢? 他们选择开发一种_新的_编解码器来替代MP3,这种新格式被称为Windows Media Audio,简称"WMA"。

WMA的再次推广

Image
Windows Media Player 11于2006年发布。 它拥有更精美的用户界面和更多的专有编解码器!

然而,对于微软来说,不幸的是,WMA的普及程度并没有达到MP3的水平,这可能是微软的许可政策所致。 更糟糕的是,微软通过发布不兼容旧版本的更新和提供不同层级的版本,使得WMA用户群体变得分散。 尽管如此,微软仍然通过其他途径努力推广WMA,例如,通过DirectX的音频播放库"DirectShow"。

现在,不难发现这两者之间的联系。 初代Xbox被设计为一个与DirectX兼容的游戏机,尽管对此可能有不同看法,但这个口号同样适用于Xbox 360。 因此,WMA在这款游戏机上的延续也就不足为奇了。

然而,微软并没有直接采用现有的WMA格式。 相反,他们对其进行了优化,使其对已经采用索尼ATRAC3的游戏工作室更具吸引力。 具体来说,微软选择了高端的WMA层级——"WMA Pro",并增加了更多适合Xbox 360带宽容量的压缩级别。 最后,他们将这种格式重命名为Xbox Media Audio,简称"XMA"。

为了进一步完善,微软增加了专门的电路,用于在解压缩任务期间减轻CPU的负担,从而让CPU能够专注于游戏的其他方面。

一窥XMA解码器

就功能而言,XMA解码器能够解码多达5.1声道的音频,支持48 kHz的采样率和16位的分辨率。 这些规格都在意料之中,没有太多惊喜。

Image
音频管道概述.

XMA解码器的工作流程如下:

  1. 首先,它从主内存中读取XMA编码的数据。
  2. 然后,对这些数据进行解码。
  3. 接着,输出PCM数据,使其准备好在主内存中的任意位置进行流式传输。
  4. 最后,CPU可以对这些数据进行效果处理,或者将其发送到音频DAC以供聆听。

所有这些操作都通过微软的库来实现抽象化,这些库负责管理数据的流式传输、缓存优化以及内存中的移动。 开发者可以使用多个API,每个API提供不同程度的抽象层。 然而,即便是最低层的API也无法直接访问XMA解码器,因为它仍然是一个专有且未文档化的电路块。


Previous: 4. 图形

Next: 6. I/O


Rodrigo Copetti © 2026 RSS Feed

切换至现代版

主页 · 文章 · 支持 · 关于作者 · 关于此网站