플랫폼 간 오디오 API 제안


20

현재 게임에 사운드를 추가하려고합니다. 나는 보았 를 OpenAL 과 SDL을,하지만 난 거기 밖으로 다른 무엇인지 알고 싶습니다. 게임 개발에 적합한 교차 플랫폼 오디오 API를 추천 할 수 있습니까?


1
"좋은"은 주관적입니다. 특정 요구 사항이있는 경우 도움이되므로 답변이 특정 요구에 조금 더 적합 할 수 있습니다.
Tetrad

답변:


13

스택 오버플로 질문 : "게임용 크로스 플랫폼 사운드 API?"

수락 된 답변에 동의합니다.

저는 SFML 라이브러리의 열렬한 팬입니다. 추가 그래픽 및 네트워크 기능을 제공하지만이 질문과 관련이있는 것은 깔끔한 오디오 패키지가 있다는 것입니다.

오디오 기능은 다음과 같습니다.

  • 가능할 때마다 하드웨어 가속을 사용합니다
  • ogg, wav, flac, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k와 같은 표준 사운드 형식을로드하고 저장할 수 있습니다 , rf64
  • 메모리의 파일에서 직접 모든 오디오 리소스를로드 할 수 있습니다
  • 3D 사운드 공간화
  • 오디오 캡처를위한 간편한 인터페이스
  • 리소스 수명이나 스토리지에 대해 걱정할 필요가 없도록 메모리를 효율적으로 관리
  • 큰 파일의 스트리밍을 지원합니다. 모든 소스 (네트워크, ...)에 대한 사용자 정의 스트리밍 클래스를 작성할 수도 있습니다.
  • 다중 채널 형식 지원 (모노, 스테레오, 4.0, 5.1, 6.1, 7.1)

웹 사이트 : http://www.sfml-dev.org/


의견을 보내 주셔서 감사합니다. 이 유형의 기존 질문은 게임 개발에서 검색했지만 스택 오버플로는 아닙니다.
reverbb

분명히 다른 SE 사이트의 게시물을 참조하여 투표를 할 수 없으므로이 답변을 승인하는 것이 아마도 질문에 대한 최상의 결과 일 것입니다.

3
그리고 관계없이 반드시 닫을 필요는 없습니다. 예를 들어, 일부 사람들은 SO 질문에 언급되지 않은 Tetrad의 FMOD 선택을 지원할 수 있습니다. 나는 게임 개발 청중이 SO 청중의 정확한 사본이 아니기 때문에 그것을 정확하게 복제하는 것을 제안하는 것이 아니라 그것을 바탕으로 질문을 제기했다. :)
Ricket

동의하지 않습니다. 닫히고 SO 질문으로 리디렉션해야합니다. 그렇지 않으면 미래의 답변을 두 곳으로 나눕니다. 그리고 이것은 똑같은 질문입니다-이것은 "게임 개발을위한 크로스 플랫폼 오디오 API 제안"이고, 다른 하나는 "게임을위한 크로스 플랫폼 사운드 API입니까?"

2
여기에 게임 개발자의 답변이 제공됩니다 (이 경우에는 동일 함). 아무도이 사이트를 방문하여 Stack Overflow 답변을 얻지 못했습니다. 특히 게임 개발자 커뮤니티 지원에 관심이있는 전문가의 의견을 원했습니다. 그것들이 동일하다면, 항상 그런 것은 아니며, 이것이이 사이트가 유용한 이유의 일부이기 때문입니다. 자세한 설명 은 meta.gamedev.stackexchange.com/questions/3/… 를 참조하십시오 .
Christopher Horenstein

10

요즘 게임에서 사운드 구현을위한 사실상의 API는 FMOD 입니다.

비상업적 용도로는 무료이며 "캐주얼"(읽기 : 인디) 개발에는 비교적 저렴합니다.

단순한 "이 사운드 재생"요구 사항에는 다소 과잉이지만 모든 종류의 플랫폼에서 잘 테스트 된 거대한 기능 세트를 제공합니다.


2
Re : "단순한"이 사운드 재생 "요구 사항에는 다소 과잉입니다. 개발자가"이 사운드 재생 "을 넘어서야 할 때가 된 것 같습니다! 2D 스프라이트 만 허용하는 그래픽 API를 찾는 사람은 거의 없으며 오디오에서 더 많은 것을 요구해야한다고 생각합니다.
Kylotan

1
안타깝게도 FMOD는 매우 버그가 많으며 개발자는 문제에 느리게 대응합니다. 간단한 "이 소리 재생"의 경우에는 문제가 없지만 실제로 사용하기 시작하면 결함이 실제로 드러납니다.
dash-tom-bang

또한 크로스 플랫폼이라고 할 때 실제로 의미합니다. 내가 아는 유일한 것은 더 많은 곳에서 실행됩니다.
coderanger

나는 여러 iPhone 프로젝트에서 FMod를 사용했으며 저수준 API를 고수하는 한 특히 버그가 없었습니다. 물론 FMod 디자이너는 다른 짐승입니다. 나는 또한 포럼이 꽤 좋고 직원들이 매우지지한다는 것을 알았습니다. FMod의 콘솔 버전이 PC / Mac / iPhone보다 덜 안정적이고 훨씬 비싸다고 들었지만 그 경험이 없습니다.
martinpi

9

OpenAL

저는 크로스 플랫폼 오디오 라이브러리로 OpenAL을 정말 좋아합니다. API는 약간 낮은 수준이지만 더 멋진 엔진 친화적 인 인터페이스로 쉽게 랩핑 할 수 있습니다. iPhone, Android, MacOSX, Windows 및 Linux에 대한 일류 지원을 제공하는 진정한 크로스 플랫폼입니다.

Djinn Engine 사운드 코드를 살펴보십시오 . 두 파일 사이에 300 줄 (설명 계산 등)이 있으며 작동 가능한 사운드 시스템이 있습니다.

오디오 중심 게임을 만든 적이 없으므로 극단적 인 제어가 필요한 경우 OpenAL이 계산에 맞지 않을 수 있습니다.


5

FMOD가 옵션이 아닌 경우 Audiere 는 훌륭한 오픈 소스 대안입니다. 오랜 시간 동안 업데이트되지 않았지만 크로스 플랫폼이며 사용하기 쉽고 우수한 기능 세트가 있습니다.


4

FMOD 외에도 Audiokinetic Wwise가 있으며 , 이는 게임 업계에서 전문적인 크로스 플랫폼 사운드 디자인 도구 및 API로 점점 더 많이 사용되고 있습니다. 컨벌루션 리버브를 포함한 다양한 효과, 복잡한 사운드 로직 시스템, 사운드 레이어링, 프로파일 링, 대화 형 음악 도구 등 다양한 선택이 가능합니다. 디코딩 알고리즘을 다양하게 선택할 수 있으며 비상업적 프로젝트에도 무료입니다.



0

다른 것들에 대해 궁금한 점이 있지만 아직 여기 에 마일 에 대한 언급이 없습니다 . 나는 그것을 직접 사용하지는 않았지만 (수년 전에 게임에서 사용 했지만)이 게임 은 그것을 사용합니다.


0

libsoundio 는 저수준이지만 크로스 플랫폼이며 견고성에 중점을 둡니다. 게임과 시스템의 오디오 백엔드 사이의 최소 계층입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.