openal 基础知识2
三枚举扩展包(enumeration extension,“ALC_ENUMERATION_EXT”)
开发者可以通过这个extension得到一个字符串列表,区分不同的渲染/捕捉设备。OpenALrouter负责查看用户系统的有效设备。Enumerationextension返回的字符串都可以用于alcOpenDevice创建一个device。
通常设备枚举是平台相关的,对于具有确定功能的游戏控制平台来说,不需要多个渲染设备,通常不会实现此机制。
在PC上,标准enumerationextension不区分每个OpenAL的隐含输出路径。当用户有多个声音设备,或在WindowsVista上(声音系统为扬声器、S/PDIF等定义了不同的”endpoint”),它不会返回所有的可能输出路径。如果你需要完全控制输出路径,请用”EnumerateAll” extension。
1. 检测enumerationextension
alcIsExtensionPresent(NULL, “ALC_ENUMERATION_EXT”) == AL_TRUE可以检测是否可用。
2. 获取device名字
开发者可以获得一个(用NULL分割,用两个连续的NULL结尾)表示的device名字字符串,和一个默认device名称字符串。
alcGetString(NULL, ALC_DEVICE_SPECIFIER)可获得所有device名称列表。
alcGetString(NULL, ALC_DEFAULT_DEVICE_SPECIFIER)可获得默认device名称。
3. 检查当前device名称
alcGetString(pMyDevice, ALC_DEVICE_SPECIFIER)可以获得指定device的名字。
pMyDevice =alcOpenDevice(NULL);
actualDeviceName =alcGetString (pMyDevice, ALC_DEVICE_SPECIFIER);
openal 基础知识2的更多相关文章
- openal 基础知识4
二函数 1. buffer函数 void alGenBuffers(ALsizei n /* buffer数*/, ALuint * buffers /* buffer ID数组*/); void a ...
- openal 基础知识3
四创新科技extension (Creative Labs'Extensions) 创新科技为OpenAL添加了多个extensions,许多都利用了他们声卡的特性. “Enumerate All”e ...
- openal 基础知识
原文地址:http://blog.csdn.net/woker/article/details/8687380 一简介 OpenAL抽象出三种基本对象:buffers(缓冲区).sources(源). ...
- .NET面试题系列[1] - .NET框架基础知识(1)
很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...
- RabbitMQ基础知识
RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- selenium自动化基础知识
什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
随机推荐
- modelsim与debussy联调环境的搭建
为了方便查看波形,找来了一款软件——debussy,它的一个优点是任你查看设计内信号,只需一个波形文件,如FSDB文件.而不用像modelsim那样想看某些信号,添加了之后还要重新编译仿真,浪费了很多 ...
- 【Android】3.6 地图基本控制方法
分类:C#.Android.VS2015.百度地图应用: 创建日期:2016-02-04 一.简介 文件名:Demo05MapControl.cs 简介:介绍平移和缩放地图,双指操作地图,监听地图点击 ...
- RotateWorldTest对层动作
//创建类的对象,并返回相应类的指针 /** * define a create function for a specific type, such as CCLayer * @__TYPE__ c ...
- Oracle数据库操作类及连接方法
创建DataBaseAccess引用库下面包括DBConnectionString.cs,DBType.cs ,SysName.cs 三个类 DBConnectionString: using Sys ...
- python3和2的区别
1.print函数 python2中的print语句,被python3中的print()函数取代.print 'hello world'运行结果: python2中同时输出多个对象时,会创建一个元组, ...
- js 三元表达式
JavaScript三元运算符的多种使用技巧 发现代码慢慢写多了的时候会不自觉的将if else 用 三元来替代,仅仅是未了让代码更简洁精辟,当然也有人说用三元可以让你有高潮的感觉.最近在写js 的时 ...
- jackson2.8.4java对象序列化成json字符串格式化时间
public class User {private int id; private Date birthday; private double money; private String name; ...
- rhel7的xfs与Oracle database
在rhel7下,安装oracle database时,能够选择xfs文件,例如以下: Requirements for Installing Oracle Database 12.1on RHEL7 ...
- 【Unity笔记】常用的优化小技巧
一.当通过GetComponent获取一个组件时,不在Update中每帧进行查找,可在Start中查找一次并用一个私有变量去保存这个组件. public class Test : MonoBehavi ...
- 【WPF/C#】测试下载文件(图片)
需求:界面上有一个按钮,点击后联网下载一张PNG图片,保存到本地指定路径. 重要参考: http://stackoverflow.com/questions/24797485/how-to-downl ...