当前位置: 首页 > 图文教程 > 操作系统 > windows vista > Vista音频流四种不同的音量控制方式

windows vista
Win2008、Vista驱动兼容问题的解决
Vista SP1无法和杀毒软件兼容
Vista浏览网页时无法显示的故障
清除Vista通知区域的旧图标
Vista不能上网也不能Ping故障解决
Vista SP1封杀盗版破解、激活机制
调整Vista文件夹显示方式一致
Vista下通过蓝牙手机控制计算机
Vista系统进行优化设置的三个方面
Vista下删除EISA硬盘隐藏分区
C盘空间越来越少原因彻底查清楚
如何修改Vista与XP的窗口背景和字体颜色
优化Windows Vista进程的技巧
Vista系统的语言包(MUI)下载
Vista系统加速与优化的几招技巧
Vista系统自动清除虚拟内存页面
Vista系统的公用文件夹的操作技巧
Vista用Defrag命令整理磁盘碎片
Vista系统禁用USB端口的方法
Vista系统Rundll32 常用命令列表

windows vista 中的 Vista音频流四种不同的音量控制方式


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-20   浏览: 113 ::
收藏到网摘: n/a

  在Vista中,对于任何一个音频流都有四种不同的音量控制方式,它们是:

  1. 流音量(Stream Volume)

  2. 简单音量(Simple Volume)

  3. 通道音量(Channel Volume)

  4. 端点音量(EndPoint Volume)

  由于每种方式是一个增益级(gain stage),所以每一种都可以添加到音频输入采样中,并生成最终的音频输出流。


  图中的每个WASAPI实例表示一个音频流,这些流会在音频合成器(Mixer)中合并起来并“流向”音频驱动。流音量、简单音量、通道音量均通过向某个独立的音频流中插入一个APO实现,而端点音量则是在合成器后面添加一个APO或者用硬件音量控制来处理,这取决于用户的音频解决方案的功能。

  那么这些不同的音频控制有什么联系呢?

  首先来讲讲流音量。流音量是多通道音量,它对每个音频流起作用,可以让应用程序实现一些相对简单的3d效果(使用多通道流音量控制来模拟一个处于活动状态的球被弹起后的位置改变)。你可以让应用程序控制某个独立音频流的音量,但这种需求比较少。

  接下来是通道音量。通道音量是针对音频会话(session)的音量 ,用于控制整个会话中的所有音频流的音量(如果你还记得“大图”贴的话,其中讲到过一个会话包含了许多音频流)。通道音量之所以存在是因为有waveOutSetVolume API——由于波形音量是多通道(立体声)音量,所以我们必须在WASAPI中模拟一个。同样的,这种音量也很少被使用——通常仅当从控制面板运行系统安装任务(空间修正(room correction))时才会改变通道音量,所以这一设置会影响所有的应用程序而不仅仅针对某个特定的应用程序)。

  再来则是简单音量。简单音量是这对音频会话的音量,用于控制整个会话中的所有音频流的音量。它是一种统一的音量,会平均应用到所有的通道。这也是我们希望大部分应用程序使用的音量控制方式——因为它提供了一种简单的控制应用程序音量和静音状态的方式,这种方式对于大部分应用程序已经足够了。这种音量其实就是Vista声音混合器中显示的每个应用程序的音量滑块。

  逻辑上讲,你可以把上面三个音量一起应用(但这其实不是事实,它们其实是同时被应用的)来为每个音频流创建最终音量。

  最后我们来讲端点音量。正如我以前提到过得,端点音量表示主音量(master output)输出,它是作用于最后合成的音频流的,可以对特定的端点起到主音量控制的作用。