목차

대상 플랫폼:

Android 관련 정보

이 페이지는 Android에서 Wwise SDK를 사용할 때 필요한 정보를 담고 있습니다.

플랫폼 요구 사항

  • You can simply install the standard Android SDK Tools, as well as the standard Android NDK. Wwise is using SDK Tools 26.1.1, and NDK r17c.
Note.gif

참고:

  • Android 기반 샘플 플러그인을 제작하기 위해서는 ndk-build를 사용해야 합니다.
  • makefile은 Android NDK 툴체인에 의존적이며, NDK_ROOT 환경 변수에 의해 지정됩니다.

원하는 플랫폼과 환경 설정으로 BuildAllAndroid.cmd 스크립트를 이용해 Android 라이브러리를 만들 수 있습니다 (예를 들어 BuildAllAndroid.cmd armeabi-v7a debug와 같은 식). 그러면 적합한 매개 변수로 ndk-build가 호출됩니다. 이 스크립트는 세 가지 환경 설정(debug, profile, release)과 네 가지 아키텍처(v7a, x86, v8a-64, x86_64)를 지원합니다.

'빠른 오디오 경로' (낮은 레이턴시) 사용

최근 OS 버전에는 구글에서 '빠른 오디오 경로'를 제공하고 있습니다. 일정 조건이 맞을 경우, 이를 이용해 내부 처리 과정을 건너뛰어 OS와 하드웨어 프로세스의 레이턴시를 현저히 줄일 수 있습니다. 더 자세한 설명은 Android의 레이턴시 제어하기 를 참고하세요.

SoundBank 배포와 불러오기

Android에서 SoundBank를 배포하고 불러오는 방법에는 세 가지가 있습니다.

  1. Android 응용프로그램 패키지(APK)의 일부로서 SoundBank 배포
    장치에 애플리케이션을 배포하기이 앞서 Android NDK 프로젝트의 'assets' 하위 폴더에 해당 SoundBank가 들어있어야 하며, APK를 이용해 정상적으로 패키징돼있어야 합니다 (또는 다른 툴을 이용해서 이와 같은 작업을 해줘야 함). APK로부터 뱅크 파일을 읽어오기 위해서는 표준 APK 아카이브의 'assets' 디렉터리에 상대 경로로 뱅크에 지정해줘야 합니다. 이를 위해 CAkDefaultIOHookBlocking::SetBasePath() 를 호출하세요. 자동으로 처리되지는 않습니다.
  2. Andoird Application Split Binary(다른 이름: OBB)의 일부로서 SoundBank를 배포하세요. OBB로부터 SoundBank를 읽어오기 위해서는 뱅크가 OBB 내에서 메인 APK와 동일한 상대 경로에 있어야 합니다.
  3. Android 장치 파일 시스템에 직접 SoundBank를 배포하기 SoundBank는 장치의 파일 시스템 어디에서든 배포할 수 있습니다. CAkDefaultIOHookBlocking::AddBasePath()로 원하는 만큼 디렉터리를 여러 개 추가할 수 있습니다.

$<Wwise>/SDK/samples/SoundEngine/Android 에 있는 Low-Level I/O의 기본 구현은 APK, OBB, POSIX 파일에 접근할 수 있습니다. APK와 OBB 리더를 초기화하려면 JavaVM과 NativeActivity로 CAkDefaultIOHookBlocking::InitAndroidIO 함수를 호출해야 합니다.

Note.gif
참고: 기본 Low-Level I/O를 작동시키기 위해서는 OBB 아카이브가 암호화되지 않아야합니다. 그렇지 않으면 직적 I/O를 작성해야만 합니다.
Note.gif
참고: OBB 읽기에는 libzip가 사용되니, Libzip 의 저작권 부분을 확인하세요. 라이선스에 수락하지 않을 경우, 컴파일 플래그에서 'REMOVE_LIBZIP' 심볼을 정의해 LibZip 사용을 비활성화시킬 수 있습니다. 이 경우, I/O 연결을 직접 작성해 OBB를 읽어오거나 사용 전에 OBB 압축을 풀어줘야 합니다.

I/O 시스템은 주어진 경로의 파일들을 역순으로, 즉 새로 추가된 항목을 먼저 검색하고 API 콘텐츠를 마지막으로 검색합니다. 이렇게 하면 DLC 콘텐츠가 APK 콘텐츠를 대체합니다.

Low-Level I/O 하위 모듈 구현에 대한 정보는 Low-Level I/O 를 참고하세요.

Android 라이브러리 종류

프리컴파일된 Wwise SDK 라이브러리는 다음과 같습니다.

  • armeabi-v7a with NEON
  • x86 with SSE
  • arm64-v8a with NEON
  • x86_64 with SSE