2013-05-02 2 views
4

필자는 이전에 OpenAL과 함께 일한 적이 없으며 몇 가지 예제 코드를 살펴 보았습니다. 그러나 프로그램에서 코드를 테스트하기 전에 입력을위한 특정 레코딩 장치를 선택하는 방법이 있는지 알고 싶습니다 (아마도 다른 마이크가있는 콤보 상자를 통해). Java Sound API에서는 이것이 가능하지 않다는 것을 알고 있습니다. 그래서 내가 AL에 대해 묻고 있습니다.OpenAL에서 직접 녹음 장치를 선택할 수 있습니까?

답변

1

예.

장치 목록을 가져옵니다. 사용자에게 하나를 선택하라는 메시지를 표시합니다. alcCaptureOpenDevice으로 설정하십시오.

ALC11 API을 참조하십시오.

뭔가 같은 :

String[] capDevices = ALC11.alcGetString(null, ALC11.ALC_CAPTURE_DEVICE_SPECIFIER).split("\0"); 
for (int i = 0; i < capDevices.length; i++) { 
    System.out.println("Capture device "+ i + ": " + capDevices[i]); 
} 
//Selection code goes here 
String chosenDevice = ...; 

ALCdevice device = ALC11.alcCaptureOpenDevice(chosenDevice, freq, format, bufferSize); 

(면책 조항 : 테스트/컴파일하지 않은 경우)