오픈AL

OpenAL
오픈AL
OpenAL logo.svg
원저작자Loki 소프트웨어
개발자크리에이티브 테크놀로지
안정된 릴리스
1.1 (인스톨러 2.1.0.[1]0)/2009년 11월, 12년 전(2009-11)
기입처C
운영 체제15개의 운영체제
참조: 지원되는 플랫폼
유형응용 프로그램 프로그래밍 인터페이스
면허증.v1.1 이후 독자 사양, v1.1 이전 LGPL, 초기[2] 버전 BSD
웹 사이트www.openal.org Edit this on Wikidata

OpenAL(Open Audio Library)은 크로스 플랫폼 Audio Application Programming Interface(API; 오디오어플리케이션 프로그래밍 인터페이스)입니다.멀티채널 3차원 위치 오디오의 효율적인 렌더링을 위해 설계되었습니다.API 스타일과 표기법은 의도적으로 OpenGL과 유사합니다.OpenAL은 환경적인 3D 오디오 라이브러리로, 감쇠(거리에 따른 소리 저하), 도플러 효과(운동에 따른 주파수 변화) 및 재료 밀도를 시뮬레이션하여 게임에 사실감을 더할 수 있습니다.OpenAL은 원래 DirectSound나 Core Audio와 같은 독점적인 3D 오디오 API의 오픈 스탠다드 및 오픈 소스 대체를 목표로 하고 있었습니다만, 실제로는 주로 해당 독점 API를 둘러싼 래퍼로서 또는 독점적이고 벤더 고유의 포크로 다양한 플랫폼에서 구현되어 왔습니다.레퍼런스 실장은 나중에 독자 사양이 되었지만 Open과 같은 오픈 소스 실장이 있습니다.AL Soft 이용 가능.

역사

OpenAL은 2000년 Loki Software가 Windows 게임Linux[3]이식하는 비즈니스를 지원하기 위해 개발한 것입니다.Loki가 사망한 후 이 프로젝트는 무료 소프트웨어/오픈 소스 커뮤니티에 의해 한동안 유지되어 NVIDIA nForce 사운드 카드와 메인보드에 구현되었습니다.현재는 Creative Technology가 주최하고 있으며,[4] Apple, Blue Ripple Sound가 Rapture3D OpenAL Driver [5]및 개별 오픈 소스 개발자를 통해 지속적으로 지원하고 있습니다.

오픈 중AL 헌장에 따르면 OpenGL ARB를 모델로 한 "Architecture Review Board(Architecture Review Board)(ARB)"가 존재한다고 합니다. 이러한 조직은 아직 형성되지 않았으며 Open은AL 사양은 일반적으로 공개 메일링 리스트에서 이메일을 통해 처리 및 논의됩니다.

1.1 이후, Creative에 의한 실장은 독점 사양으로[citation needed] 바뀌어, 프로젝트의 Subversion 소스 코드 저장소를 통해서도 프리 라이센스의 마지막 릴리스에 액세스 할 수 있게 되었습니다.그러나 OpenAL Soft는 널리 사용되는 오픈 소스 대안입니다.

API 구조 및 기능

Open의 일반적인 기능AL은 송신원오브젝트, 오디오버퍼단일 리스너로 부호화됩니다.소스 오브젝트는 버퍼로의 포인터, 소리의 속도, 위치 및 방향 및 소리의 강도를 포함한다.청취자 객체에는 청취자의 속도, 위치 및 방향, 모든 소리에 적용되는 일반적인 이득이 포함됩니다.버퍼에는 모노럴 또는 스테레오 형식의 8비트 또는 16비트 중 하나의 PCM 형식의 오디오 데이터가 포함됩니다.렌더링 엔진은 거리 감쇠, 도플러 효과 등에 관한 모든 필요한 계산을 수행합니다.

이 모든 것이 최종 사용자에게 미치는 최종적인 결과는 적절하게 작성된 Open입니다.AL 어플리케이션, 소리는 사용자가 가상세계의 3차원 공간을 이동할 때 매우 자연스럽게 동작합니다.프로그래머의 관점에서 볼 때, 기존 OpenGL 기반 3D 그래픽 애플리케이션에서 이를 실현하기 위한 추가 작업은 거의 필요하지 않습니다.

OpenGL 사양과 달리 Open은AL 사양은 API의 두 서브섹션을 포함합니다: 실제 Open으로 구성된 코어AL 함수 호출 및 ALC(Audio Library Context) API를 사용하여 렌더링 컨텍스트, 리소스 사용 및 잠금을 크로스 플랫폼 방식으로 관리합니다.또한 OpenGL의 'GLUT'와 동일한 수준 높은 '편의성' 기능을 제공하는 'Audio Library Utility Toolkit' 라이브러리도 있습니다.

향후 추가 기능을 제공하기 위해 OpenAL은 확장 메커니즘을 사용합니다.따라서 각 벤더는 자체 확장을 OpenAL 배포에 포함할 수 있습니다.일반적으로 자체 하드웨어의 추가 기능을 공개하는 것을 목적으로 합니다.확장 기능은 ARB(Architecture Review Board) 상태로 승격할 수 있으며, 이는 하위 호환성을 위해 유지되는 표준 확장을 나타냅니다.ARB 확장 기능은 일정 기간 후에 코어 API에 추가될 가능성이 있습니다.

고도의 디지털 신호 처리와 하드웨어 액셀러레이션 사운드 효과에는 EFX(Effects Extension) 또는 Environmental Audio Extension(EAX; 환경 오디오 확장)을 사용할 수 있습니다.

제한 사항

Open의 단일 수신기 모델AL은 한 명의 인간 사용자에 맞게 제작되었으며, 인공지능이나 로봇 시뮬레이션 또는 여러 명의 인간 참가자들에게는 협업 음악 [6]공연과 같이 적합하지 않습니다.이 경우 여러 청취자 모델이 필요합니다.또한 OpenAL은 소리 전파 지연을 고려하지 않습니다(소리의 속도도플러 효과에만 사용됩니다).음원까지의 거리는 진폭 효과(감쇠)로만 변환되며 지연은 발생하지 않습니다.따라서 오픈AL은 그 기능이 별도로 [7]추가되지 않는 한 도착 계산의 시간 차이에 사용할 수 없다.

OpenAL을 최대한 활용하려면 벤더/하드웨어 고유의 구현이 필요하며 오픈 소스로 출시되는 경우는 거의 없습니다.지원되는 많은 플랫폼이 실제로 Open을 구현하고 있습니다.AL은 단순히 콜을 플랫폼의 네이티브 오디오 API로 변환하는 래퍼입니다.Windows 에서는 벤더 고유의 실장이 검출되지 않는 경우 Open을 변환하는 wrap_oal.dll 래퍼 라이브러리로 폴백됩니다.AL을 DirectSound(Generic Software) 또는 DirectSound3D(Generic Hardware)로 변환합니다.Windows Vista 이후에서 DirectSound3D를 삭제하면 최신 [8][9]버전의 Windows에서 일반적인 하드웨어 액셀러레이션이 사실상 중단됩니다.

지원되는 플랫폼

API는 다음 플랫폼운영 [10]체제에서 사용할 수 있습니다.안드로이드(OpenSL ES를 지원하), AmigaOS 3.x과 4.x,[11]바다, 블랙 베리 10,[12]블랙 베리 플레이북 BSD, iOS(Core오디오를 지원하), IRIX, 리눅스(지원하는 상륙 해안 군수 체계, 오픈 소스 소프트웨어, PortAudio과 PulseAudio), 맥 OS8, 맥 OS9와 맥 OSX(코어 오디오), MicrosoftWindows((DirectSound는, Windows멀티 미디어 API, 그리고 윈도우 멀티 미디어 장치를 지원하 MMDevice)API),. 모르프 OS, OpenBSD,[13] Solaris, QNXAROS.[14]

지원되는 게임 기기는 를 들어 GameCube, PlayStation 2, PlayStation 3, Xbox, Xbox 360, Wii 및 PlayStation Portable입니다.

적용들

게임.

다음 비디오 게임은 Open을 사용하는 것으로 알려져 있습니다.AL:

기타 응용 프로그램

  • 블렌더 – Open을 사용한 3D 모델링 및 렌더링 도구내장 게임[needs update?] 엔진용 AL
  • 3D Mark06 – 게이머 벤치마킹 도구
  • Dolphin (에뮬레이터)– GameCube 및 Wii 에뮬레이터
  • Vanda[25] Engine – OpenAL 1.1을 사용하여 2D 및 3D 사운드 시뮬레이션
  • 크로케 프로젝트[26]
  • Bino[27] - 입체 3D 비디오 및 멀티 디스플레이 비디오를 지원하는 비디오 플레이어 소프트웨어

실장

OpenAL SI
오픈AL 샘플 실장은 원래 Loki에 의한 실장으로 현재 유지보수가 되지 않습니다.
OpenAL 소프트
OpenAL Soft는 LGPL 라이선스의 크로스 플랫폼 소프트웨어 구현입니다.라이브러리는 권장되지 않는 Open에 대한 호환성 있는 업데이트/교체를 의미합니다.AL 샘플 실장 및 현재 독자 사양인 OpenAL의 무료 대체품.OpenAL Soft는 모노,[28][29] 스테레오, 4채널, 5.1, 6.1, 7.1, HRTF, UHJ 및 B-Format 출력을 지원합니다.
이온웨이브 오픈AL
이온웨이브 오픈AL은 LGPL 라이선스 오픈입니다.AL 에뮬레이션 레이어:Adalin B.V에서 제조된 Linux 및 Windows용 무료이지만 저렴한 가격의 이온웨이브 4D 오디오 라이브러리가 제공하는 하드웨어 액셀러레이션을 활용합니다.저자는 이온웨이브 오픈이AL의 실장에서는, 3D오디오의 5배속(AMD Athlon 64 X2)에서 7배속(인텔 Atom N270)을 실현합니다.AL SI 또는 오픈같은 조건의 [30]AL 소프트.이 실장에서는, EeonWave 라이브러리를 사용하는 것으로, HRTF와 최대 8개의 스피커를 서라운드 사운드로 서포트할 수 있습니다.
Rapture3D OpenAL 드라이버
Rapture3D OpenAL Driver는 Blue Ripple Sound에서 만든 무료 상용 Windows 전용 소프트웨어 구현입니다.라이브러리는 다른 구현의 고성능 드롭인 대체를 목적으로 합니다.특징:[31]
  • 32비트 부동소수점 오디오패스
  • 고품질 샘플링 속도 변환(도플러 시프트를 포함한 다양한 용도로 사용).
  • 고품질 효과와 필터.
  • 지향성 음원
  • 멀티채널 음원(Ambisonics를 사용하여 인코딩된 자산 포함) 지원
  • 소스 또는 효과의 수에 대한 유일한 제한은 CPU의 전력이며, 수백 개의 음원을 렌더링할 수 있으며, 비교적 오래된 하드웨어에 여러 가지 영향을 미칠 수 있습니다.
  • 최대 4차까지 동작하는 고차 앰비소닉(HOA) 버스.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "PCGamingWiki downloads". OpenAL. Creative Labs. Archived from the original on December 8, 2017. Retrieved December 7, 2017.
  2. ^ "OpenAL License". Archived from the original on December 30, 2012. Retrieved November 10, 2012.
  3. ^ "Press release with regards to OpenAL" (Press release).
  4. ^ "Source Browser".
  5. ^ "Gaming and VR".
  6. ^ Wozniewski, Mike; Settel, Zack; Cooperstock, Jeremy (2007). "User-specific audio rendering and steerable sound for distributed virtual environments" (PDF). Proceedings of International conference on auditory displays (ICAD). Retrieved August 5, 2012.
  7. ^ 오픈소스 FPS 게임 Alien Arena 2009 출시 #28412367
  8. ^ 열려 있는 열거Windows에서의 AL
  9. ^ OpenAL® 및 Windows Vista™
  10. ^ "OpenAL – Platforms". Retrieved May 10, 2012.
  11. ^ "Archived copy". se.aminet.net. Archived from the original on 16 March 2018. Retrieved 6 June 2022.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  12. ^ "blackberry/OpenAL 路 GitHub". Github.com. Retrieved January 14, 2013.
  13. ^ "OpenAL for OpenBSD".
  14. ^ "OpenAL/alut/ogg/vorbis [Forum – Development (General)". AROS-Exec. Retrieved June 16, 2013.
  15. ^ "Overview". 0 A.D. Game Info. Wildfire Games. Archived from the original on September 26, 2013. Retrieved December 5, 2012.
  16. ^ a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab "Games". OpenAL Wiki. Creative Labs. Archived from the original on April 10, 2013.[자체 인식 소스?]
  17. ^ a b "SCS Software forum". Archived from the original on June 5, 2019. Retrieved June 5, 2019.
  18. ^ "HPL Engine – Mod DB". Retrieved November 20, 2012.
  19. ^ "Troubleshooting: Reinstall OpenAL : Beamdog". Retrieved May 29, 2014.
  20. ^ "ioquake3 website".
  21. ^ "Blue Ripple Sound". Retrieved September 23, 2017.
  22. ^ "Blue Ripple Sound". Retrieved September 23, 2017.
  23. ^ "Modulaatio Games". Archived from the original on September 6, 2012.
  24. ^ "Compatible OpenAL Games". Blue Ripple Sound.
  25. ^ "Vanda Engine".
  26. ^ Thalmann, Florian; Gaelli, Markus (2006). "Jam Tomorrow: Collaborative Music Generation in Croquet Using OpenAL". Jam Tomorrow: Collaborative Music Generation in Croquet Using OpenAL - IEEE Conference Publication. pp. 73–78. CiteSeerX 10.1.1.67.8139. doi:10.1109/C5.2006.22. ISBN 978-0-7695-2563-1. S2CID 5577203.
  27. ^ marlam@marlam.de, Martin Lambers. "Bino: free 3D video player - About". bino3d.org.
  28. ^ "OpenAL Soft – Software 3D Audio". openal-soft.org. Retrieved January 4, 2014.
  29. ^ "OpenAL Soft Git repository". Retrieved December 26, 2013.
  30. ^ Hofman, Erik (May 9, 2012). "[Openal-devel] Announcement: AeonWave-OpenAL 1.1.7 released". Archived from the original on January 19, 2013. Retrieved December 9, 2012. Test have shown that AeonWave-OpenAL renders audio five times faster (on an AMD Athlon-64 X2 processor) and up to seven times faster (on an Intel Atom-N270 processor) than both OpenAL-Soft and OpenAL-Sample. Rendering 32 sounds on the Atom-N270 (the maximum for OpenAL-Soft) saves 1 Watt of continuous power consumption according to powertop.
  31. ^ "Developers". Blue Ripple Sound Limited. 2009. Retrieved January 24, 2011.

외부 링크