버전
menu_open
대상 플랫폼:
Wwise SDK 2023.1.3
iOS/tvOS/visionOS 관련 정보

이 챕터는 iOS/tvOS/visionOS 플랫폼에서 Wwise SDK를 사용할 때 필요한 정보를 담고 있습니다.

주의: tvOS and visionOS SoundBanks must use iOS for their base platform.
참고: 특별히 지정하지 않는 이상, 이 페이지와 하위 페이지에서 말하는 'iOS'는 iOS, tvOS, visionOS 플랫폼을 혼용하여 설명하고 있습니다.

SDK Binary Folder Structure for iOS Platforms

The libraries and other binaries provided in the Wwise SDK for the iOS-based platforms are built against a variety of Xcode toolchains, with different folders for each version. The folder naming convention is $(PLATFORM)_Xcode$(XCODE_VERSION_MAJOR), where $(PLATFORM) is the platform name (iOS, tvOS, visionOS) and $(XCODE_VERSION_MAJOR) is a built-in variable provided by Xcode in the following format: XX00. For example, for a tvOS build using Xcode version 15.2, $(XCODE_VERSION_MAJOR) is 1500, so the folder name is tvOS_Xcode1500.

For a given iOS-based platform, all minor versions of Xcode are compatible if the major version matches. For example, an application built against Xcode 15.2 is compatible with Wwise libraries built against Xcode 15.0 (1500). Binaries from different iOS-based platforms are not compatible.

참고: Audiokinetic does not provide precompiled libraries for every Xcode release. Starting with Xcode 14, binaries compatible with stable releases of every major Xcode version are provided. Support for previous Xcode major versions will be removed when Apple's App Store stops accepting submissions for it.

블루투스 버벅거림과 고갈 현상 (먹통이 되는 현상)

블루투스 스피커와 헤드폰을 사용하면 오디오에 많은 레이턴시가 발생하게 됩니다. OS 자체의 공중 커뮤니케이션 겹침 현상과 블루투스 압축 때문입니다. 때문에, 리듬 게임과 같이 레이턴시에 민감한 게임은 블루투스 장치가 연결되면 게임 플레이 성능이 저하될 수밖에 없습니다.

Wwise는 높은 레이턴시모드로 자동 전환해 블루투스 장치가 연결됐을 때의 버벅거림 현상을 방지합니다. 그리고 장치 연결이 끊어지면 초기화에서 AkPlatformInitSettings.uNumRefillsInVoice 로 지정된 바에 따라 일반 레이턴시로 돌아갑니다.

참고: 블루투스 장치를 'Play and Record(재생 및 녹음)' 오디오 세션(audio session)으로 사용하면 OS가 모든 오디오를 8 kHZ로 하향 샘플링합니다. 이 동작은 블루투스 드라이버 자체와 연관돼 있습니다.

iOS 오디오 세션

iOS에서 수신 전화나 영상 통화(FaceTime), 시리(Siri), 일정 알림, 시스템 알림 소리와 같은 다양한 이벤트가 발생할 때마다 앱 오디오가 재생되지 않을 수 있습니다. Apple의 오디오 세션은 오디오 하드웨어로의 접근 충돌에 대응할 수 있는 방법입니다. 이 때 자신의 애플리케이션에 적합한 오디오 세션을 선택하는 게 중요합니다. 다행히도 오디오 세션을 이용한 상세한 구현의 대부분을 Wwise iOS SDK로 처리할 수 있으며, SDK 클라이언트 앱에 큰 수고를 들일 필요 없이 원하는 대로 잘 호환하는 효율적인 오디오 앱을 만들 수 있습니다. 다음에 나오는 내용은 iOS 오디오 세션의 개념과 이와 관련된 Wwise 구현 정책에 대해 설명합니다.

Apple Spatial Audio를 이용한 3D 오디오 지원

Wwise 3D audio is supported on iOS/tvOS/visionOS. 이는 Apple의 Spatial Audio 기술(Wwise Spatial Audio와 혼동에 유의)을 사용하여 구현되었으며 헤드폰 출력용으로 설계되었습니다. Wwise 3D 오디오는 공간화된 베드, 패스 스루 믹스 및 다양한ㄴ 시스템 오디오 오브젝트를 지원합니다.

3D 오디오를 지원하는 다른 플랫폼들과 달리 Apple 플랫폼에는 상호작용 오디오 애플리케이션에 적용되는 운영 체제의 Spatial Audio에 대한 사용자 기본 설정이 없습니다. 따라서 Wwise의 3D 오디오 작업은 다음 요구 사항이 충족될 때 항상 활성화됩니다.

  1. Wwise 프로젝트에서 Audio Device 속성인 Allow 3D Audio (오디오 허용)이 활성화되어 있는 경우.
  2. 출력 장치에 채널이 두 개인 경우.
  3. AkOutputSettings::ePanningRule 이 AkPanningRule_Headphones 로 설정돼있는 경우. This is the default on iOS and visionOS, but not tvOS.

사용자가 게임 내 설정을 통해 3D Audio를 사용할지 여부를 선택하고 이 설정에 따라 두 Audio Device 공유 세트(ShareSet) 간에 전환할 수 있도록 허용하는 것이 좋습니다.

초기화 시 3D 오디오가 활성화되면 Audio Device의 Main Mix Configuration for Binauralization (바이노럴화를 위한 메인 믹스 구성) 속성이 달리 지정하지 않는 한 메인 믹스가 5차 Ambisonic으로 구성됩니다.

Audio Device의 Allow System Audio Objects (시스템 오디오 객체 허용) 속성이 활성화된 경우 싱크에서 지원하는 시스템 오디오 오브젝트 수는 AkPlatformInitSettings::uNumSpatialAudioPointSources 에 의해 결정됩니다.

개인 정보 매니페스트의 NSPrivacyAccessedAPITypes

Apple은 서드 파티 애플리케이션 및 SDK가 개인정보 매니페스트(PrivacyInfo.xcprivacy)의 NSPrivacyAccessedAPITypes 항목에 특정 개인정보 보호 API를 사용하는 이유를 제공하도록 요구하고 있습니다.

일부 Wwise 라이브러리나 소스 코드 샘플은 구현의 일부로서 개인 정보 보호에 민감한 API를 사용합니다. 애플리케이션의 개인정보 매니페스트에서 다음의 사용을 선언하세요.

  • fstat: POSIX AkDefaultIOHookDeferred 샘플의 일부로 사용됨. 이 샘플은 사전에 빌드된 Wwise SDK 라이브러리의 일부로 사용되지 않습니다. 그러나 Wwise Unity 통합에서는 사용합니다.

Privacy Manifest(개인 정보 매니페스트)와 NSPrivacyAccessedAPITypes에 대한 더 자세한 정보는 Apple 개발자 문서를 확인하세요: Describing use of required reason API .

iOS 릴리즈 노트


이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요