2. 제안 배경
• Android screen capture의 제약
• Framebuffer(fb0)는 사용자 application에서 접근이 불가능
• Android 보안상의 이유로 접근을 하려면 rooting이 필요
• 매우 느린 API들
• View.getDrawingCache() 매우 느림
• 일반 view based application에서 사용
• GL.glReadPixels() 또한 매우 느림
• 게임은 주로 OpenGL ES를 사용
• Android의 iOS 대비 약점
• 5.0 이전까지는 Dalvik VM기반에서 동작(iOS에 비해 느림)
• iOS는 SharedMemory로 FBO(Framebuffer Object)를 직접 읽기 가능
3. 제안 방향
• Android의 단점 극복
• NDK 사용
• EGL extension 사용
• Texture 중복 복사 제거
4. 제안의 장단점
• 장점
• FBO 데이터의 직접 접근 가능
• Multi-threading 가능
• 단점
• NDK 사용 이슈
• ARM library 필요
• EGL 호환성 이슈
5. 제안 스펙
• 기능
• Grabber 모듈
• Android 게임화면을 capture하여 encoder에
비디오 데이터를 전송
• 기기
• 넥서스5
• OS
• Android 4.4
• 성능
• 40 frames per second
(grabber가 인코더에 전달하는 기준)
• 데이터 포맷: 비디오(H.264), 오디오(AAC)
• 해상도 720p(1280x720 px)
• 기타
• 본 모듈에 상용 라이브러리 및 오픈 소스 사용
시 협의 필요