Introducing Oboe for Building Audio Apps on Android

Oboe 시작하기 요즘 많은 앱들이 음향을 사용해 성공적인 사용자 경험을 제공하고 있습니다 디제잉, 가라오케나 음악 관련 게임이든 음향은 표현과, 오락 그리고 창의력을 위한 강력한 도구로 자리매김했습니다 저는 오늘 새로운 C++ 라이브러리인 Oboe를 여러분에게 소개하고자 합니다 안드로이드 상에서 흥미롭고 쌍방향 호환이 가능한 음향 서비스 제작이 얼마나 쉬운지를 보실게 될 겁니다 쌍방향 음향이란 무슨 말일까요? 이 키보드를 예를 들어 보겠습니다 키를 누르면 즉시 소리가 납니다 이런 점이 이 키보드의 반응이 빠르다는 느낌을 전달합니다 즉각적인 음향 피드백을 받으니까요 악기를 연주할 때 이런 기능들이 우리에게 즐거운 경험을 전달합니다 하지만 키를 눌렀지만 한참 후에야 소리가 나온다고 상상해 볼까요? 이런 지체로 인한 경험이 키보드는 어려운 악기라는 인상을 안겨줄 겁니다 동일한 이유가 앱이나 게임 등에 적용될 수 있는데요 리듬 게임과 가라오케 디제잉 또는 스크래치 앱, 가상현실, 신시사이저, 드럼등 상상할 수 있는 모든 악기가 포함될 수 있습니다 이러한 모든 앱들은 공통된 요구 사항이 있습니다 성공적인 사용자 경험을 제공하는 저 지체율 음향 서비스입니다 바로 Oboe를 제작한 이유이기도 하죠 모든 안드로이드 기기에서 가장 낮은 음향 지체성을 제공하는 C++ 라이브러리로서 API 16 이상에서 작동합니다 99%의 안드로이드 기기에서 호환 가능하다는 의미입니다 장치 내부에서, AAudio를 이용해 API 27 이상의 모든 API에서 발생하는 OpenSL ES에 대비할 수 있습니다 이와 같이, Oboe는 사용하기 편리한 단일 API를 제공함으로써 더 새로운 기능의 사용과 더불어 AAudio에서 더 향상된 결과를 도출해 낼 수도 있고 모든 기기에서 백 워드 호환성 기능도 제공합니다 Oboe를 시작하기 전에 GitHub로부터 복사본을 저장해야 합니다 여러분의 로컬 컴퓨터의 자료를 복사하는 단계입니다 Oboe는 CMake의 하위 프로젝트로 만들어졌습니다 여러분의 프로젝트 CMAke 환경을 먼저 업데이트해야 합니다 만약 여러분이 CMake 환경 설정 초기 값을 설정하지 않은 상태라면 C++ 지원을 앱에 추가해야 합니다 아래의 링크를 통해서 첫 번째, 당신의 프로젝트에 Oboe 소스 코드의 위치를 지정해 주세요 이 경로로 복사본이 저장이 됩니다 그 다음, 이 경로를 서브디렉터리로 추가하신 다음 open 헤더를 추가하세요 마지막으로, Oboe를 종속 라이브러리로 추가하십시오 안드로이드 스튜디오의 라이브러리는 Build로 이동해 C++프로젝트 링크를 새로 고침 하시면 확인하실 수 있습니다 거의 다 끝났습니다, 여러분의 코드 속에 Oboe 헤더만 추가하시면 Oboe 개체를 사용할 수 있습니다 그리고 모든 개체들은 Oboe 네임스페이스 안에 있기 때문에 혹시 사용 중에 다른 네임스페이스와 충돌할 가능성은 없습니다 이제 여러분은 Oboe API를 사용할 준비가 다 끝났습니다 시작 안내서, 코드 샘플, 코드 랩을 아래의 링크를 통해서 GitHub에 가셔서 이용하십시오 사용하시다가 생기는 문제나 질문은 저희 GitHub 게시판에 올려주세요 최선을 다해서 해결하겠습니다 Oboe에 대한 관심이 있으시거나 어떻게 하면 지연이 되지 않는 오디오 스트리밍을 구축할 수 있는지 또 어떻게 하면 오디오 콜백을 최우선 순위로 받을 수 있는지 다음 영상 편에서 Oboe를 사용해 음악을 만들어 보며 알아보겠습니다 오늘은 여기까지 하죠 안녕히 계십시오 그리고 직접 제작해보세요