Slide 1

Slide 1 text

Recap multi-camera API from Android Dev Summit 2018 Chanoma, inc. Tomoaki Imai

Slide 2

Slide 2 text

https://chomp.app/ Located in Bay Area since 2016 Author of Android アプリ設計パターン⼊入⾨門

Slide 3

Slide 3 text

https://youtu.be/u38wOv2a_dA

Slide 4

Slide 4 text

What’s new in Android P? • Physical cameras are exposed to third-party app developers Pre-Pie Pie and beyond

Slide 5

Slide 5 text

What’s new? • Open multiple physical cameras in one session ‣ Developers can retrieve and replace two camera streams simultaneously

Slide 6

Slide 6 text

What’s new? • Open multiple physical camera in one session Camera1 Camera2 Pre-Pie

Slide 7

Slide 7 text

What’s new? • Open multiple physical camera in one session PhysicalCamera0 PhysicalCamera1 Pie and beyond

Slide 8

Slide 8 text

What’s new? • Open multiple physical camera in one session PhysicalCamera0 PhysicalCamera1

Slide 9

Slide 9 text

What’s new? • Open multiple physical camera in one session PhysicalCamera0 PhysicalCamera1

Slide 10

Slide 10 text

What’s new? • Open multiple physical camera in one session PhysicalCamera0 PhysicalCamera1

Slide 11

Slide 11 text

What can we do with this? • Usage ‣ Calculate depth map using 2 cameras ‣ Zoom using 2 cameras depending on focal length

Slide 12

Slide 12 text

Restriction • Physical cameras should be in the same logical group

Slide 13

Slide 13 text

Restriction • Physical cameras should be in the same logical group

Slide 14

Slide 14 text

Restriction • Physical cameras should be in the same logical group Pixel3 [0] : BACK_CAMERA [1] : LOGICAL_CAMERA(FRONT) [2] : PHYSCIAL_CAMERA_1 [3] : PHYSCIAL_CAMERA_2

Slide 15

Slide 15 text

Restriction

Slide 16

Slide 16 text

Restriction • Very few supported device as of Dec, 2018 ‣ Pixel 3 ‣ Huawei Mate 20 Series

Slide 17

Slide 17 text

How does the process change? setup camera ID start Preview open Camera

Slide 18

Slide 18 text

How does the process change? setup camera ID start Preview open Camera

Slide 19

Slide 19 text

How does the process change? setup camera ID start Preview start Camera

Slide 20

Slide 20 text

How does the process change? setup camera ID start Preview open Camera

Slide 21

Slide 21 text

Demo https://github.com/tomoima525/ MultiCameraSample

Slide 22

Slide 22 text

Future of Camera on Android • More devices to support multi-camera API https://source.android.com/compatibility/android-cdd#7_5_4_camera_api_behavior

Slide 23

Slide 23 text

Future of Camera on Android • Less fragmentation ‣ Project Treble https://android-developers.googleblog.com/2018/11/an-update-on-project- treble.html Understand the impact of Generic System Images (GSI) (Android Dev Summit '18) https://youtu.be/Y-HmCIHD63w

Slide 24

Slide 24 text

Future of Camera on Android • Less frustration? ‣ Might become a part of Jetpack?? https://youtu.be/FV3iN4PIB5U?t=2757 (46:00)

Slide 25

Slide 25 text

What should we catch up? • Understand the basic functionality of Camera ‣ WTF focus? ‣ WTF Aperture? ‣ WTF white balance?

Slide 26

Slide 26 text

What should we catch up? • Understand the basic functionality of Camera https://youtu.be/QEVm5MMBluk

Slide 27

Slide 27 text

What should we catch up? • Learn Camera2 Framework ‣ WTF CameraCaptureSession?? ‣ WTF CameraCharacteristics? ‣ WTF with Camera2 API?

Slide 28

Slide 28 text

What should we catch up? • Learn Camera2 Framework https://youtu.be/WU1tzOIpmFw https://speakerdeck.com/tomoima525/camera2-api-and-beyond

Slide 29

Slide 29 text

Wrap up • multi-camera support allows us to control multiple stream simpler • Not many devices are supported as of December 2018