SlideShare a Scribd company logo
1 of 8
Camera, Camcorder framework
         Overview
       (GingerBread)




                              박철희
                         1
Multimedia Overview




                      2
Camera Overview

 Application                                 Camera



  Application           Camera                                               Surface
  Framework
                                JNI(java native interface)
       Binder                                  postbuffer
       Client          Camera.cpp                                            Surface



       Binder
       Server            Camera         mSurface      mSurface
                         Service         buffer        Overlay                             Surface
Native                                                                                      flinger
Framework
                                                                                                        YUV buffer
                         Camera
                       ServiceClient
                                               mmap()                                                    RGB565
                                                                                                          buffer


                         Camera                                  Overlay                     Gralloc
                          HAL                                    module                      module

                V4L2
  Kernel
                         Camera                                   Frame
                                           Kernel                                        LCD                  LCD
                                                                 buffer or
                          Driver           buffer                                      Controller            pannel
                                                                 Overlay

                                                                                                    3
Camcorder Overview

Application                                           Camcorder



 Application                                Media
                   Camera                  Recorder
 Framework
                         JNI                        JNI
 Binder                                                                                            Surface
 Client          Camera.cpp
                                                Media                             Audio
                                               Recorder                          Recorder

 Binder
 Server             Camera                     Media
                    Service                PlayerService                            Audio          Surface
                                                                                    flinger         flinger

                                                StagefrightRecorder
                   Camera                                             Audio
                                    Video
                 ServiceClient      encorder                          encorder



                                                                                    Audio      Overlay,Gralloc
                    Camera                         OMX Codec                        HAL           module
                     HAL


 Kernel
              Camera                                                                               Frame
                                 Kernel                  H/W
                                                                                    /dev/mic      buffer or
               Driver            buffer                 Codec
                                                                                                  Overlay

                                                                                                  4
카메라 서비스 프레임워크의 클래스

                             (a)
                                                                    (b)
                                   ICameraClient                            ICameraService

  Android.hardware`.Camera

                                   BnCameraClient                         BnCameraService


             JNI                      Camera
                                                       (1) 연결과정 바인더         CameraService
                                                       RPC

                                            BpCameraService



                                            BpCamera
                                                                              (c)            ICamera



                                                                                             BnCamera
                                                       (2) 설정및 제어 바인더 RPC



                                                                                     CameraService::Client



                                     (3) 이벤트 처리 바인더 RPC                                       CameraHardwareInterface



                                                                                             BpCameraClient


                                                                                                    5
미디어 레코드 프레임워크의 클래스


     VideoCamera
                          (a)                                                   (b)
                                  IMediaRecordClient                                     IMediaPlayerService
Aandorid.media.Media
     Recorder
                                BnMediaRrecorderClient                                   BnMediaPlayerService

                                                                     1)연결
                                    MediaRecorder                                         MediaPlayerService

                   JNI
                                        BpMediaPlayerService


                                          BpMediaRecorder
                                                                                                    2)생성



                         5)연결                          (c)
                                          4)연결
                                                                    IMediaRecorder


                                                                   BnMediaRrecorder


                                                                  MediaRecorderClient




                                                       BpMediaRecorderClient            3)생성
                                                                                                     StagefrightRecorder

                                                                                                           6
Media Recorder와 Camera의 연결


    Aandorid.hardware.camera
                                                      ICameraClient                                     ICameraService


                                                      BnCameraClient                                 BnCameraService

                                                         Camera
                                                                                   x                    CameraService


                                                           BpCameraService

                                                              BpCamera
  StagefrightRecorder




                   (1
                                                          x                x
                                                                                              ICamera
                        )
                               ICameraClient
                                                                                             BnCamera
                                                                             (3)
                               BnCameraClient                 (2                       CamereaService::Client
                                                                       )
                                  Camera

                                                                                   BpCameraClient
                                    BpCameraService

                                       BpCamera



                                                                                                                7
Media Recorder 전체구조

  VideoCame
      ra


                 IMediaRecordClient                          IMediaPlayerService                                      ICameraService

Aandorid.media
.MediaRecorder                                                                                                        BnCameraService
                 BnMediaRrecorderCli                         BnMediaPlayerServic
                        ent                                          e

                                                                                                                       CameraService
                   MediaRecorder                             MediaPlayerService




                      BpMediaPlayerServic
                              e


                        BpMediaRecorder

                                                                                                                     ICamera



                                                                                                                    BnCamera
                                            IMediaRecorder                               ICameraClient


                                                                                                                  CamereaServic
                                                                                         BnCameraClient
                                                                                                                    e::Client
                                          BnMediaRrecorder

                                                                                            Camera
                                                                                                             BpCameraClien
                                       MediaRecorderClient
                                                                                                                  t
                                                                                             BpCameraServi
                                                                                                  ce

                                                                                                              CameraHardwareInterface
                                BpMediaRecorderCli                                             BpCamera
                                       ent                         StagefrightRecorder
                                                                                                                             Kernel
                                                                                                                             driver
                                                                                                                       8

More Related Content

What's hot (9)

Valdir Adorni - Compwire / EMC2 Clariion Implementation Sample
Valdir Adorni - Compwire / EMC2 Clariion Implementation SampleValdir Adorni - Compwire / EMC2 Clariion Implementation Sample
Valdir Adorni - Compwire / EMC2 Clariion Implementation Sample
 
Gareth edwards xilinx
Gareth edwards xilinxGareth edwards xilinx
Gareth edwards xilinx
 
A slightly deeper dive into Stagefright
A slightly deeper dive into StagefrightA slightly deeper dive into Stagefright
A slightly deeper dive into Stagefright
 
Dalvik Vm & Jit
Dalvik Vm & JitDalvik Vm & Jit
Dalvik Vm & Jit
 
Aprendendo Ruby e Rails (2012)
Aprendendo Ruby e Rails (2012)Aprendendo Ruby e Rails (2012)
Aprendendo Ruby e Rails (2012)
 
Generator
GeneratorGenerator
Generator
 
Akka JUGL 2012
Akka JUGL 2012Akka JUGL 2012
Akka JUGL 2012
 
A Better Python for the JVM
A Better Python for the JVMA Better Python for the JVM
A Better Python for the JVM
 
Ffmpeg
FfmpegFfmpeg
Ffmpeg
 

Viewers also liked

C++정리 스마트포인터
C++정리 스마트포인터C++정리 스마트포인터
C++정리 스마트포인터
fefe7270
 
Surface flingerservice(서피스 상태 변경 jb)
Surface flingerservice(서피스 상태 변경 jb)Surface flingerservice(서피스 상태 변경 jb)
Surface flingerservice(서피스 상태 변경 jb)
fefe7270
 
Surface flingerservice(서피스 플링거 연결 jb)
Surface flingerservice(서피스 플링거 연결 jb)Surface flingerservice(서피스 플링거 연결 jb)
Surface flingerservice(서피스 플링거 연결 jb)
fefe7270
 
Surface flingerservice(그래픽 공유 버퍼 생성 및 등록)
Surface flingerservice(그래픽 공유 버퍼 생성 및 등록)Surface flingerservice(그래픽 공유 버퍼 생성 및 등록)
Surface flingerservice(그래픽 공유 버퍼 생성 및 등록)
fefe7270
 
Android audio system(audiopolicy_manager)
Android audio system(audiopolicy_manager)Android audio system(audiopolicy_manager)
Android audio system(audiopolicy_manager)
fefe7270
 
Android audio system(오디오 출력-트랙생성)
Android audio system(오디오 출력-트랙생성)Android audio system(오디오 출력-트랙생성)
Android audio system(오디오 출력-트랙생성)
fefe7270
 
Surface flingerservice(서피스 출력 요청 jb)
Surface flingerservice(서피스 출력 요청 jb)Surface flingerservice(서피스 출력 요청 jb)
Surface flingerservice(서피스 출력 요청 jb)
fefe7270
 
Android audio system(audioplicy_service)
Android audio system(audioplicy_service)Android audio system(audioplicy_service)
Android audio system(audioplicy_service)
fefe7270
 
Android audio system(audioflinger)
Android audio system(audioflinger)Android audio system(audioflinger)
Android audio system(audioflinger)
fefe7270
 
Android audio system(audio_hardwareinterace)
Android audio system(audio_hardwareinterace)Android audio system(audio_hardwareinterace)
Android audio system(audio_hardwareinterace)
fefe7270
 

Viewers also liked (12)

C++정리 스마트포인터
C++정리 스마트포인터C++정리 스마트포인터
C++정리 스마트포인터
 
Surface flingerservice(서피스 상태 변경 jb)
Surface flingerservice(서피스 상태 변경 jb)Surface flingerservice(서피스 상태 변경 jb)
Surface flingerservice(서피스 상태 변경 jb)
 
Surface flingerservice(서피스 플링거 연결 jb)
Surface flingerservice(서피스 플링거 연결 jb)Surface flingerservice(서피스 플링거 연결 jb)
Surface flingerservice(서피스 플링거 연결 jb)
 
Surface flingerservice(그래픽 공유 버퍼 생성 및 등록)
Surface flingerservice(그래픽 공유 버퍼 생성 및 등록)Surface flingerservice(그래픽 공유 버퍼 생성 및 등록)
Surface flingerservice(그래픽 공유 버퍼 생성 및 등록)
 
Android audio system(audiopolicy_manager)
Android audio system(audiopolicy_manager)Android audio system(audiopolicy_manager)
Android audio system(audiopolicy_manager)
 
Android Audio & OpenSL
Android Audio & OpenSLAndroid Audio & OpenSL
Android Audio & OpenSL
 
Android audio system(오디오 출력-트랙생성)
Android audio system(오디오 출력-트랙생성)Android audio system(오디오 출력-트랙생성)
Android audio system(오디오 출력-트랙생성)
 
Surface flingerservice(서피스 출력 요청 jb)
Surface flingerservice(서피스 출력 요청 jb)Surface flingerservice(서피스 출력 요청 jb)
Surface flingerservice(서피스 출력 요청 jb)
 
Android audio system(audioplicy_service)
Android audio system(audioplicy_service)Android audio system(audioplicy_service)
Android audio system(audioplicy_service)
 
Android audio system(audioflinger)
Android audio system(audioflinger)Android audio system(audioflinger)
Android audio system(audioflinger)
 
Android Audio System
Android Audio SystemAndroid Audio System
Android Audio System
 
Android audio system(audio_hardwareinterace)
Android audio system(audio_hardwareinterace)Android audio system(audio_hardwareinterace)
Android audio system(audio_hardwareinterace)
 

Similar to Camera camcorder framework overview(ginger bread)

Android. behind the scenes_programatica 2012
Android. behind the scenes_programatica 2012Android. behind the scenes_programatica 2012
Android. behind the scenes_programatica 2012
Agora Group
 
20111130 hardware-monitoring-with-the-new-ipmi-plugin-v2
20111130 hardware-monitoring-with-the-new-ipmi-plugin-v220111130 hardware-monitoring-with-the-new-ipmi-plugin-v2
20111130 hardware-monitoring-with-the-new-ipmi-plugin-v2
Werner Fischer
 
Component Based Distributed System Development
Component Based Distributed System DevelopmentComponent Based Distributed System Development
Component Based Distributed System Development
Emmanuel Fuchs
 
Are ott the new walled gardens
Are ott the new walled gardensAre ott the new walled gardens
Are ott the new walled gardens
Amir Zmora
 
Blaze Cctv Camera Solutions Blaze Automation
Blaze Cctv Camera Solutions Blaze AutomationBlaze Cctv Camera Solutions Blaze Automation
Blaze Cctv Camera Solutions Blaze Automation
Blaze Automation
 
Blaze cctv camera solutions blaze automation
Blaze cctv camera solutions blaze automation Blaze cctv camera solutions blaze automation
Blaze cctv camera solutions blaze automation
Blaze_Hyd
 
Tacademy techclinic-2012-07-11
Tacademy techclinic-2012-07-11Tacademy techclinic-2012-07-11
Tacademy techclinic-2012-07-11
영호 라
 
iWedia Product and Service Portfolio (July 12)
iWedia Product and Service Portfolio (July 12)iWedia Product and Service Portfolio (July 12)
iWedia Product and Service Portfolio (July 12)
hcreff
 
Visual and technical quality control for high definition television
Visual and technical quality control for high definition televisionVisual and technical quality control for high definition television
Visual and technical quality control for high definition television
vrt-medialab
 
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
The Linux Foundation
 
Flex Stack Rapid Prototyping System
Flex Stack Rapid Prototyping SystemFlex Stack Rapid Prototyping System
Flex Stack Rapid Prototyping System
frankp617
 

Similar to Camera camcorder framework overview(ginger bread) (20)

Android. behind the scenes_programatica 2012
Android. behind the scenes_programatica 2012Android. behind the scenes_programatica 2012
Android. behind the scenes_programatica 2012
 
20111130 hardware-monitoring-with-the-new-ipmi-plugin-v2
20111130 hardware-monitoring-with-the-new-ipmi-plugin-v220111130 hardware-monitoring-with-the-new-ipmi-plugin-v2
20111130 hardware-monitoring-with-the-new-ipmi-plugin-v2
 
Camera 2.0 in Android 4.2
Camera 2.0 in Android 4.2 Camera 2.0 in Android 4.2
Camera 2.0 in Android 4.2
 
Component Based Distributed System Development
Component Based Distributed System DevelopmentComponent Based Distributed System Development
Component Based Distributed System Development
 
Training Videovigilancia IP: Capture
Training Videovigilancia IP: CaptureTraining Videovigilancia IP: Capture
Training Videovigilancia IP: Capture
 
virtualization tutorial at ACM bangalore Compute 2009
virtualization tutorial at ACM bangalore Compute 2009virtualization tutorial at ACM bangalore Compute 2009
virtualization tutorial at ACM bangalore Compute 2009
 
Toward a practical “HPC Cloud”: Performance tuning of a virtualized HPC cluster
Toward a practical “HPC Cloud”: Performance tuning of a virtualized HPC clusterToward a practical “HPC Cloud”: Performance tuning of a virtualized HPC cluster
Toward a practical “HPC Cloud”: Performance tuning of a virtualized HPC cluster
 
Are ott the new walled gardens
Are ott the new walled gardensAre ott the new walled gardens
Are ott the new walled gardens
 
2008 EBU Training BBC Scotland Infrastructure
2008 EBU Training BBC Scotland Infrastructure2008 EBU Training BBC Scotland Infrastructure
2008 EBU Training BBC Scotland Infrastructure
 
Junliang`s Resume
Junliang`s ResumeJunliang`s Resume
Junliang`s Resume
 
Blaze Cctv Camera Solutions Blaze Automation
Blaze Cctv Camera Solutions Blaze AutomationBlaze Cctv Camera Solutions Blaze Automation
Blaze Cctv Camera Solutions Blaze Automation
 
Blaze cctv camera solutions blaze automation
Blaze cctv camera solutions blaze automation Blaze cctv camera solutions blaze automation
Blaze cctv camera solutions blaze automation
 
Tacademy techclinic-2012-07-11
Tacademy techclinic-2012-07-11Tacademy techclinic-2012-07-11
Tacademy techclinic-2012-07-11
 
POLYCOM
POLYCOMPOLYCOM
POLYCOM
 
iWedia Product and Service Portfolio (July 12)
iWedia Product and Service Portfolio (July 12)iWedia Product and Service Portfolio (July 12)
iWedia Product and Service Portfolio (July 12)
 
Visual and technical quality control for high definition television
Visual and technical quality control for high definition televisionVisual and technical quality control for high definition television
Visual and technical quality control for high definition television
 
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
 
Flex Stack Rapid Prototyping System
Flex Stack Rapid Prototyping SystemFlex Stack Rapid Prototyping System
Flex Stack Rapid Prototyping System
 
Cross platform computer vision optimization
Cross platform computer vision optimizationCross platform computer vision optimization
Cross platform computer vision optimization
 
SONY IBC2008
SONY IBC2008SONY IBC2008
SONY IBC2008
 

More from fefe7270

Surface flingerservice(서피스플링거서비스초기화 jb)
Surface flingerservice(서피스플링거서비스초기화 jb)Surface flingerservice(서피스플링거서비스초기화 jb)
Surface flingerservice(서피스플링거서비스초기화 jb)
fefe7270
 
Surface flingerservice(서피스 플링거 연결 ics)
Surface flingerservice(서피스 플링거 연결 ics)Surface flingerservice(서피스 플링거 연결 ics)
Surface flingerservice(서피스 플링거 연결 ics)
fefe7270
 
Surface flingerservice(서피스플링거서비스초기화 ics)
Surface flingerservice(서피스플링거서비스초기화 ics)Surface flingerservice(서피스플링거서비스초기화 ics)
Surface flingerservice(서피스플링거서비스초기화 ics)
fefe7270
 
Surface flingerservice(서피스 상태 변경 및 출력 요청)
Surface flingerservice(서피스 상태 변경 및 출력 요청)Surface flingerservice(서피스 상태 변경 및 출력 요청)
Surface flingerservice(서피스 상태 변경 및 출력 요청)
fefe7270
 
Surface flingerservice(서피스 플링거 연결)
Surface flingerservice(서피스 플링거 연결)Surface flingerservice(서피스 플링거 연결)
Surface flingerservice(서피스 플링거 연결)
fefe7270
 
Surface flingerservice(서피스플링거서비스초기화)
Surface flingerservice(서피스플링거서비스초기화)Surface flingerservice(서피스플링거서비스초기화)
Surface flingerservice(서피스플링거서비스초기화)
fefe7270
 
Android audio system(pcm데이터출력준비-서비스서버)
Android audio system(pcm데이터출력준비-서비스서버)Android audio system(pcm데이터출력준비-서비스서버)
Android audio system(pcm데이터출력준비-서비스서버)
fefe7270
 
Android audio system(pcm데이터출력요청-서비스클라이언트)
Android audio system(pcm데이터출력요청-서비스클라이언트)Android audio system(pcm데이터출력요청-서비스클라이언트)
Android audio system(pcm데이터출력요청-서비스클라이언트)
fefe7270
 
Android audio system(오디오 출력-트랙활성화)
Android audio system(오디오 출력-트랙활성화)Android audio system(오디오 출력-트랙활성화)
Android audio system(오디오 출력-트랙활성화)
fefe7270
 
Android audio system(오디오 플링거 서비스 초기화)
Android audio system(오디오 플링거 서비스 초기화)Android audio system(오디오 플링거 서비스 초기화)
Android audio system(오디오 플링거 서비스 초기화)
fefe7270
 

More from fefe7270 (10)

Surface flingerservice(서피스플링거서비스초기화 jb)
Surface flingerservice(서피스플링거서비스초기화 jb)Surface flingerservice(서피스플링거서비스초기화 jb)
Surface flingerservice(서피스플링거서비스초기화 jb)
 
Surface flingerservice(서피스 플링거 연결 ics)
Surface flingerservice(서피스 플링거 연결 ics)Surface flingerservice(서피스 플링거 연결 ics)
Surface flingerservice(서피스 플링거 연결 ics)
 
Surface flingerservice(서피스플링거서비스초기화 ics)
Surface flingerservice(서피스플링거서비스초기화 ics)Surface flingerservice(서피스플링거서비스초기화 ics)
Surface flingerservice(서피스플링거서비스초기화 ics)
 
Surface flingerservice(서피스 상태 변경 및 출력 요청)
Surface flingerservice(서피스 상태 변경 및 출력 요청)Surface flingerservice(서피스 상태 변경 및 출력 요청)
Surface flingerservice(서피스 상태 변경 및 출력 요청)
 
Surface flingerservice(서피스 플링거 연결)
Surface flingerservice(서피스 플링거 연결)Surface flingerservice(서피스 플링거 연결)
Surface flingerservice(서피스 플링거 연결)
 
Surface flingerservice(서피스플링거서비스초기화)
Surface flingerservice(서피스플링거서비스초기화)Surface flingerservice(서피스플링거서비스초기화)
Surface flingerservice(서피스플링거서비스초기화)
 
Android audio system(pcm데이터출력준비-서비스서버)
Android audio system(pcm데이터출력준비-서비스서버)Android audio system(pcm데이터출력준비-서비스서버)
Android audio system(pcm데이터출력준비-서비스서버)
 
Android audio system(pcm데이터출력요청-서비스클라이언트)
Android audio system(pcm데이터출력요청-서비스클라이언트)Android audio system(pcm데이터출력요청-서비스클라이언트)
Android audio system(pcm데이터출력요청-서비스클라이언트)
 
Android audio system(오디오 출력-트랙활성화)
Android audio system(오디오 출력-트랙활성화)Android audio system(오디오 출력-트랙활성화)
Android audio system(오디오 출력-트랙활성화)
 
Android audio system(오디오 플링거 서비스 초기화)
Android audio system(오디오 플링거 서비스 초기화)Android audio system(오디오 플링거 서비스 초기화)
Android audio system(오디오 플링거 서비스 초기화)
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

Camera camcorder framework overview(ginger bread)

  • 1. Camera, Camcorder framework Overview (GingerBread) 박철희 1
  • 3. Camera Overview Application Camera Application Camera Surface Framework JNI(java native interface) Binder postbuffer Client Camera.cpp Surface Binder Server Camera mSurface mSurface Service buffer Overlay Surface Native flinger Framework YUV buffer Camera ServiceClient mmap() RGB565 buffer Camera Overlay Gralloc HAL module module V4L2 Kernel Camera Frame Kernel LCD LCD buffer or Driver buffer Controller pannel Overlay 3
  • 4. Camcorder Overview Application Camcorder Application Media Camera Recorder Framework JNI JNI Binder Surface Client Camera.cpp Media Audio Recorder Recorder Binder Server Camera Media Service PlayerService Audio Surface flinger flinger StagefrightRecorder Camera Audio Video ServiceClient encorder encorder Audio Overlay,Gralloc Camera OMX Codec HAL module HAL Kernel Camera Frame Kernel H/W /dev/mic buffer or Driver buffer Codec Overlay 4
  • 5. 카메라 서비스 프레임워크의 클래스 (a) (b) ICameraClient ICameraService Android.hardware`.Camera BnCameraClient BnCameraService JNI Camera (1) 연결과정 바인더 CameraService RPC BpCameraService BpCamera (c) ICamera BnCamera (2) 설정및 제어 바인더 RPC CameraService::Client (3) 이벤트 처리 바인더 RPC CameraHardwareInterface BpCameraClient 5
  • 6. 미디어 레코드 프레임워크의 클래스 VideoCamera (a) (b) IMediaRecordClient IMediaPlayerService Aandorid.media.Media Recorder BnMediaRrecorderClient BnMediaPlayerService 1)연결 MediaRecorder MediaPlayerService JNI BpMediaPlayerService BpMediaRecorder 2)생성 5)연결 (c) 4)연결 IMediaRecorder BnMediaRrecorder MediaRecorderClient BpMediaRecorderClient 3)생성 StagefrightRecorder 6
  • 7. Media Recorder와 Camera의 연결 Aandorid.hardware.camera ICameraClient ICameraService BnCameraClient BnCameraService Camera x CameraService BpCameraService BpCamera StagefrightRecorder (1 x x ICamera ) ICameraClient BnCamera (3) BnCameraClient (2 CamereaService::Client ) Camera BpCameraClient BpCameraService BpCamera 7
  • 8. Media Recorder 전체구조 VideoCame ra IMediaRecordClient IMediaPlayerService ICameraService Aandorid.media .MediaRecorder BnCameraService BnMediaRrecorderCli BnMediaPlayerServic ent e CameraService MediaRecorder MediaPlayerService BpMediaPlayerServic e BpMediaRecorder ICamera BnCamera IMediaRecorder ICameraClient CamereaServic BnCameraClient e::Client BnMediaRrecorder Camera BpCameraClien MediaRecorderClient t BpCameraServi ce CameraHardwareInterface BpMediaRecorderCli BpCamera ent StagefrightRecorder Kernel driver 8