Android 기술 Q&A 
Q&A 게시판에 질문을 남기신 글에 대한 답변/덧글/쪽글에 대한 Push 메일 서비스를 받고자 하시는 분들은
☞ Push 메일 서비스 공지를 필독하시기 바랍니다.
fb0에 대하여
작성자
작성일 2013-06-27 (목) 13:47
분 류 질문
ㆍ추천: 0  ㆍ조회: 6616      
IP: 119.xxx.130
이전에 교육중에 제가 질문을 드린게 있는데 올바르지 않은 것 같아 문의드립니다.

4.2 jellybean에서 fb0에 대한 frame buffer을 읽어오는데 정상적으로 읽어오지 못하는 것 같습니다.

기존의 4.0 이하에서는 정상적으로 동작하는 것을 확인한 바 있습니다.

fb0에 대한 frame buffer을 읽어오면 전부 검은색으로 되어 있습니다.

이 내용은 정상적으로 fb0을 가져오지 못하거나 또는 이제는 지원하지 않는 건지 모르겠습니다.

framework에 있는  screencap을 사용하여도 동일합니다.

기존에 문의 드렸을 때 4.2에서도 정상적으로 가져올 수 있다고 하셔서 어떻게 하셨는지 궁금합니다.

즐거운 하루 되세요.
이름아이콘 들풀
2013-06-28 03:41
screencap 이 정상작동하지 않던가요?
혹시나 해서 다시 한번 screencap으로 테스트해 봤는데 jellybean에서 잘 capture 되었습니다.
이미 screencap 코드를 보셔서 알고 있겠지만,
아래의 코드를 실행하면 항상 screenshot.update()를 통해서 screenshot pixel 정보를
얻어오도록 되어 있기는 합니다.
그리고 /dev/graphics/fb0는 정상작동 하지 않는 듯 합니다.
fb0가 정상작동하지 않는 이유는 저도 잘 모르겠습니다.
-----------------------
   ScreenshotClient screenshot;
   sp<IBinder> display = SurfaceComposerClient::getBuiltInDisplay(displayId);
   if (display != NULL && screenshot.update(display) == NO_ERROR) {
       base = screenshot.getPixels();
       w = screenshot.getWidth();
       h = screenshot.getHeight();
       f = screenshot.getFormat();
       size = screenshot.getSize();
   } else {
       const char* fbpath = "/dev/graphics/fb0";
       int fb = open(fbpath, O_RDONLY);
       if (fb >= 0) {
           struct fb_var_screeninfo vinfo;
           if (ioctl(fb, FBIOGET_VSCREENINFO, &vinfo) == 0) {
               uint32_t bytespp;
               if (vinfoToPixelFormat(vinfo, &bytespp, &f) == NO_ERROR) {
                   size_t offset = (vinfo.xoffset + vinfo.yoffset*vinfo.xres) * bytespp;
                   w = vinfo.xres;
                   h = vinfo.yres;
                   size = w*h*bytespp;
                   mapsize = offset + size;
                   mapbase = mmap(0, mapsize, PROT_READ, MAP_PRIVATE, fb, 0);
                   if (mapbase != MAP_FAILED) {
                       base = (void const *)((char const *)mapbase + offset);
                   }
               }
           }
           close(fb);
       }
   }
   
이름아이콘 위화
2013-06-28 16:03
screencap의 screenshot.update()은 정상동작 합니다. 현재 그러한 방법을 사용하고 있으나 이러한 방법은 리소스 사용이 심하더군요.. 그래서 다른 방법을 찾기 위해 검토 중에 있습니다.
fb0에서 가져오지 못하면 다른 방법은 없는 건가요?
들풀 저도 좀 더 생각해 보겠습니다.~ 방법을 알게되면 메일 보내드릴께요..~ 6/28 16:28
   
 
덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.
    N     분류     제목    글쓴이 작성일 조회
4753 안드로이드 풀빌드 준비 과정 중 질문입니다. [3] 2008-11-24 9460
4752 개발자 등록 [3] 2008-11-24 7987
4751 Wifi Setting..... [2] 2008-11-24 10016
4750 현재 화면 을 캡쳐 할수 있는 길이 있을까요? [6] 2008-11-24 10660
4749 make sdk [2] 2008-11-25 8045
4748 수동으로 빌드할때 오류~ 질문있습니다. [4]+1 2008-11-25 10293
4747 Camera app 추가 방법 질문입니다. [5] 2008-11-25 9064
4746 screen을 flip 하는 방법 (rotation) 문의 [4] 2008-11-25 10711
4745 Re..[오웬] Camera app 추가 방법 질문입니다. [1] 2008-11-25 12063
4744 텍스트파일 읽기에 대해 질문드려요~ [3]+1 2008-11-26 9359
4743 안드로이드 마켓 질문 [5] 2008-11-26 7872
4742 make sdk error2 [2] 2008-11-26 8115
4741 binder driver 관련 [5] 2008-11-26 12133
4740 touch 잡기...어떤과정을 거쳐야 하나요?? [4] 2008-11-26 8690
4739 초보질문입니다... (gui선택버튼 관련) [2] 2008-11-27 7933
4738 ListView의 아이템이 클릭이 안되요. [1] 2008-11-27 8211
4737 Android Input device porting (keyboard,touch) [2] 2008-11-27 11417
4736 퀄컴소스에 Dalvik porting 해보신 분 계신가요? [4] 2008-11-27 8872
4735 다시 한번 질문을 드리겠습니다... [3] 2008-11-27 10133
4734 에뮬에서 웹브라우저를 통해 어플리케이션 설치하기.. [4] 2008-11-27 11039
4733 Android porting 관련 질문 [7] 2008-11-27 10716
4732 APIDemo uninstall하고 새로 install하려는데 안되요.... [4]+1 2008-11-28 10390
4731 [Tips]에뮬 홈화면을 원하는 자기사진으로 꾸미기.. [4] 2008-11-28 8182
4730 Full build시 특정 app을 제외시키는 script 같은 것이 있나요.. [2] 2008-11-28 8677
4729 Smack 관련 질문드려요~ [3] 2008-11-28 10809
4728 ApiDemo에서 MediaPlayer 질문입니다. [9]+5 2008-11-28 39347
4727 타이머에 대해 질문있어요~ [6]+1 2008-11-28 8176
4726 안드로이드 포팅 하드웨어 스펙 [4] 2008-11-28 8687
4725 G1을 어떻게 구할수 있을까요? [1] 2008-11-28 7671
4724 소스를 debug모드로 빌드 시 에러나는 문제 2008-11-28 8000
4723 슬라이드를 열었을때 View가 변하지 않게하는 방법 아시나요?.. [4] 2008-11-29 8193
4722 웹서버와 연동 질문입니다 [3] 2008-11-29 9163
4721 intent 질문입니다. ㅠ_ㅠ [2] 2008-11-29 8224
4720 R 관련 질문하나 드려도 될까요? [2] 2008-11-29 8157
4719 로컬 비디오 플레이 실행 질문~ [5] 2008-12-01 8150
4718 double buffering 관련 질문. [9] 2008-12-01 8918
4717 안드로이드 어플 + trace32 [3] 2008-12-01 8271
4716 apache xml-rpc 관련.. 2008-12-01 8013
4715 안드로이드 포팅 보드 구입 관련 질문 드려요 [4] 2008-12-01 8138
4714 에뮬테이터에 시간이 흐르지 않습니다. 왜그럴까요?.. [3] 2008-12-02 7866
4713 android application 실행 문제 [2] 2008-12-02 11771
4712 NFS로 포팅관련 질문드립니다 [1] 2008-12-02 9298
4711 Full source에서 IM만 따로 build하려면 어떻게 하나요.??.. [6] 2008-12-02 8976
4710 Re..NFS로 포팅관련 질문드립니다 [3] 2008-12-02 9059
4709 Android file system에 대한 질문입니다. [3] 2008-12-03 8828
4708 MediaPlayer 관해서....ㅠㅠ [4] 2008-12-03 10215
4707 HAL Library Porting 관련 질문! [4] 2008-12-03 8654
4706 다시 질문 입니다....ㅜㅜ 2008-12-03 8189
4705 SDK 1.0과 full source code의 관계.?? [11] 2008-12-04 9034
4704 좀 갈켜주세요..ㅠㅠ [2] 2008-12-04 7848
12345678910,,,101