JOAL学习笔记 第四课 进一步了解ALC

JOAL学习笔记

 

先是例行的连续代码页,由于本节并没有提供实例,所以提供一个简单的测试程序。

import com.jogamp.openal.ALC;
import com.jogamp.openal.ALCcontext;
import com.jogamp.openal.ALCdevice;
import com.jogamp.openal.ALFactory;

public class AlcTest {
	public static void main(String[] args) {
		ALC alc = ALFactory.getALC();
		//String deviceName = "DirectSound";
		String deviceName = null;
		ALCdevice device = alc.alcOpenDevice(deviceName);
		ALCcontext context = alc.alcCreateContext(device, null);
		alc.alcMakeContextCurrent(context);
		
		
		System.out.println(alc.alcGetString(device, ALC.ALC_DEFAULT_DEVICE_SPECIFIER));
		System.out.println(alc.alcGetString(device, ALC.ALC_DEVICE_SPECIFIER));
		System.out.println(alc.alcGetString(device, ALC.ALC_EXTENSIONS));
		
		alc.alcMakeContextCurrent(null);
		alc.alcDestroyContext(context);
		alc.alcCloseDevice(device);
	}
}


之后是一些值得注意的问题

 

笔者调试的结果与教程有些出入。

不知道是不是由于前一阵折腾ASIO驱动弄的,使用DirectSound3D会找不到设备。使用null后运行结果如下:

OpenAL Soft
OpenAL Soft
ALC_ENUMERATE_ALL_EXT ALC_ENUMERATION_EXT ALC_EXT_CAPTURE ALC_EXT_DEDICATED ALC_EXT_disconnect ALC_EXT_EFX ALC_EXT_thread_local_context ALC_SOFT_loopback

可以看到,Alc拓展列表中有非常多的表项,毕竟文章是很久之前的了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值