2010-01-29 8 views
1

OpenAL을 사용하여 코코아 터치 앱을 개발하고 있습니다.하지만 강제로 구현하면 다른 프레임 워크로 전환 할 용의가 있습니다. (실제로 3D 소재는 필요 없습니다.)OpenAL - 버퍼를 뒤로 재생 하시겠습니까?

나는 소리를 거슬러 올라가는 방법을 찾고 있었지만 Audio Unit을 사용한 (매우 복잡한) 예를 발견했습니다. 어쨌든 버퍼를 역순으로 저장하여 OpenAL을 사용하여 역방향으로 재생할 수 있습니까?

답변

2

웨이브 데이터의 각 샘플을 다시 정렬하여 사운드를 재생할 수 있습니다. 바이너리 데이터 조작만큼이나 간단합니다.

openAL은 데이터 끝에서 첫 번째 데이터까지 읽는 기능이 없지만 샘플 크기의 버퍼를 사용하여 openAL에 데이터를 대기열에 넣을 수 있습니다 (예 : 16을 사용하여 작업하는 경우). 비트 웨이브를 사용하려면 2 바이트 크기의 많은 버퍼가 있어야하며, 그다지 효율적이지 않은 openAL 하나씩 역방향 큐에 넣어야합니다.

웨이브 데이터를 먼저 전처리하는 것이 더 좋으므로 데이터가 두 개 (또는 트랙), 일반 데이터 및 역방향 데이터가 있으므로 앱 이벤트를 기반으로 어떤 데이터/트랙을 재생할 수 있습니다.

관련 문제