camera api 3.0を触ってみた
DESCRIPTION
Android L Developer Previewで公開されたCamera API 3.0を触ってみました。TRANSCRIPT
![Page 1: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/1.jpg)
2014/07/30 1
Camera API 3.0 を触ってみた
![Page 2: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/2.jpg)
2014/07/30 22013/04/20 2
自己紹介• 名前:大槻 正樹• TwitterID:@nekomeshi312 こんなアイコンです→
• 仕事:某メーカ所属 ・・・毎日製品にならないような変な物作って遊んでいます。 ・・・仕事は Android とは特に関係のない Sunday Programmer です。 ・・・こんなアプリ作ってます
![Page 3: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/3.jpg)
2014/07/30 3
L Developer Preview で新しい Camera API が公開されました
android.hardware.camera2
![Page 4: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/4.jpg)
2014/07/30 4
何が新しい?
![Page 5: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/5.jpg)
2014/07/30 5
android.hardware.camera2• フル解像度で 30fps での連写 (Burst mode) のサポート
(JPEG は不可 )• フレーム間の撮影設定変更のサポート• RAW 画像撮影のサポート• Zero Shutter Lag, Movie Snapshot のサポート• その他カメラの細かな設定のサポート
![Page 6: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/6.jpg)
2014/07/30 6
とにかく使ってみましょう
![Page 7: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/7.jpg)
2014/07/30 7
android.hardware.camera2• フル解像度で 30fps での連写 (Burst mode) のサポート
(JPEG は不可 )• フレーム間の撮影設定変更のサポート• RAW 画像撮影のサポート• Zero Shutter Lag, Movie Snapshot のサポート• その他カメラの細かな設定のサポート
![Page 8: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/8.jpg)
2014/07/30 8
android.hardware.camera2• フル解像度で 30fps での連写 (Burst mode) のサポート
(JPEG は不可 )• フレーム間の撮影設定変更のサポート• RAW 画像撮影のサポート• Zero Shutter Lag, Movie Snapshot のサポート• その他カメラの細かな設定のサポート
![Page 9: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/9.jpg)
2014/07/30 9
従来の連写方法 1• Camera#setParameters()• Camera#startPreview() とっても遅い• Camera#takePicture()を繰り返す
方法2• Camera#onPreviewFrame() 解像度はせいぜい
fullHD でプレビュー画像を取得する 途中で設定を変
更不可
![Page 10: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/10.jpg)
2014/07/30 10
キャプチャ方法4通り• CameraCaptureSession#capture() ・・・一枚だけ撮影する• CameraCaptureSession#captureBurst() ・・・撮影条件を変えながら複数枚撮影する• CameraCaptureSession#setRepeatingRequest() ・・・同一条件で連続撮影する (Preview 用 )• CameraCaptureSession#setRepeatingBurst() ・・・撮影条件を変えながら連続撮影する
(用途は? )
![Page 11: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/11.jpg)
2014/07/30 11
• CameraCaptureSession#capture() ・・・一枚だけ撮影する• CameraCaptureSession#captureBurst() ・・・撮影条件を変えながら複数枚撮影する
この順番で撮影され、結果に他の撮影が挟まったりしないことが保証されている ←重要
List<CaptureRequest> requestList = new ArrayList<CaptureRequest>(); // 2段明るく撮影する設定を登録captureBuilder.set(CaptureRequest.CONTROL_AE_EXPOSURE_COMPENSATION, 6);requestList.add(captureBuilder.build()); // 標準の明るさで撮影する設定を登録captureBuilder.set(CaptureRequest.CONTROL_AE_EXPOSURE_COMPENSATION, 0);requestList.add(captureBuilder.build()); // 2段暗く撮影する設定を登録captureBuilder.set(CaptureRequest.CONTROL_AE_EXPOSURE_COMPENSATION, -6);requestList.add(captureBuilder.build()); // 登録された3種類の撮影を連続して実行session.captureBurst(requestList, captureListener, backgroundHandler);
![Page 12: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/12.jpg)
2014/07/30 12
android.hardware.camera2• フル解像度で 30fps での連写 (Burst mode) のサポート
(JPEG は不可 )• フレーム間の撮影設定変更のサポート• RAW 画像撮影のサポート• Zero Shutter Lag, Movie Snapshot のサポート• その他カメラの細かな設定のサポート
ImageFormat にRAW_SENSOR が追加Format は DNG らしい
![Page 13: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/13.jpg)
2014/07/30 13
android.hardware.camera2• フル解像度で 30fps での連写 (Burst mode) のサポート
(JPEG は不可 )• フレーム間の撮影設定変更のサポート• RAW 画像撮影のサポート• Zero Shutter Lag, Movie Snapshot のサポート• その他カメラの細かな設定のサポート
CameraDevice#createCaptureRequest (int templateType)
TEMPLATE_PREVIEWTEMPLATE_RECORDTEMPLATE_STILL_CAPTURETEMPLATE_VIDEO_SNAPSHOTTEMPLATE_ZERO_SHUTTER_LAGTEMPLATE_MANUAL
これを選んでCameraCaptureSession#capture()を呼べば良いらしいがうまくいかない
誰かおせーて orz…
![Page 14: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/14.jpg)
2014/07/30 14
android.hardware.camera2• フル解像度で 30fps での連写 (Burst mode) のサポート
(JPEG は不可 )• フレーム間の撮影設定変更のサポート• RAW 画像撮影のサポート• Zero Shutter Lag, Movie Snapshot のサポート• その他カメラの細かな設定のサポート
CameraMetadata class に定義されている例えば
NR の効き具合を変更したりとか
![Page 15: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/15.jpg)
2014/07/30 15
Camera API 3.0• 実は Kitkat でも隠し API として実装されていた
http://urx.nu/anzT
![Page 16: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/16.jpg)
Camera API 2.0 はどこいった?
2014/07/30 16
![Page 17: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/17.jpg)
幻の CameraAPI2.0
2014/07/30 17
http://urx.nu/apkH
![Page 18: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/18.jpg)
2014/07/30 18
GoogleIO2014 での紹介
http://urx.nu/anzy 30 分あたりから誰かが書いたこれのメモ: http://urx.nu/anA5
![Page 19: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/19.jpg)
2014/07/30 19
ソース今日のテストアプリのソースはこちらから
http://urx.nu/aob1
Google のサンプルアプリのソースはこちらから DL できます。
android-Camera2Basic http://urx.nu/ao4R
android-Camera2Video http://urx.nu/ao4T
![Page 20: Camera API 3.0を触ってみた](https://reader033.vdocuments.net/reader033/viewer/2022061122/5472c0dcb4af9fc80a8b5038/html5/thumbnails/20.jpg)
2014/07/30 20
FIN