# camera2

Published articles for camera2.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Every Camera, Every Angle on Android

DevFeed: [Every Camera, Every Angle on Android](<https://devfeed.tech/articles/every-camera-every-angle-on-android-19832.md>)

Original publisher: [Read original article](<https://tech.gc.com/every-camera-every-angle-on-android/>)

Author: GameChanger

Published: 2021-09-20T14:49:50Z

Content type: tutorial

Language: en

Sources: [GameChanger](<https://devfeed.tech/sources/gamechanger.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [API](<https://devfeed.tech/topics/api.md>), [Streaming](<https://devfeed.tech/topics/streaming.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [apis](<https://devfeed.tech/tags/apis.md>), [article](<https://devfeed.tech/tags/article.md>), [camera](<https://devfeed.tech/tags/camera.md>), [camera2](<https://devfeed.tech/tags/camera2.md>), [camerax](<https://devfeed.tech/tags/camerax.md>), [streaming](<https://devfeed.tech/tags/streaming.md>), [ultra-wide](<https://devfeed.tech/tags/ultra-wide.md>), [video](<https://devfeed.tech/tags/video.md>), [video-streaming](<https://devfeed.tech/tags/video-streaming.md>), [wide](<https://devfeed.tech/tags/wide.md>)

### AI overview

This article explains how GameChanger implemented ultrawide camera streaming on Android. It describes the differences between physical and logical camera setups and the challenges of selecting the correct camera sensor through Android's multi-camera APIs.

### Source excerpt

At GameChanger, video streaming has become a huge part of our business and thus our tech stack. But as a small company that practices shipping often, we can't ship everything feature complete from day one and thus video streaming launched with the ability to only stream from your default rear camera lens. But as we know, ultrawide lenses on phones have become common place and sure enough, customers began writing in, asking to be able to use their ultrawide cameras to stream their event. Baseball and softball fields are actually quite wide and it makes a lot of sense to be able to capture more of the field. So in time, ultrawide streaming became our priority and thus we engaged in battle with one of the most brittle Android APIs we have seen... Streaming in the olden days Well, not really in the olden days, because we are using the most up to date APIs, but before we implemented ultrawide streaming, selecting the camera we wanted to stream with was generally pretty simple: private fun CameraManager.chooseCamera(teamId: TeamId) = cameraIdList.filter { id -> val characteristics = getCameraCharacteristics(id) val capabilities = characteristics.get(CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES)!! characteristics.get(CameraCharacteristics.LENS_FACING) == CameraMetadata.LENS_FACING_BACK && capabilities.contains(CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE) } .mapNotNull { id -> val characteristics = getCameraCharacteristics(id) val cameraConfig = characteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP)!! val (width, height) = arrayOf(1280, 720) cameraConfig.getOutputSizes(MediaRecorder::class.java) .filter { it.width <= width && it.height <= height } .maxByOrNull { it.width * it.height }?.let { id to it } } .map { (id, resolution) -> CameraArgs(cameraId = id, width = resolution.width, height = resolution.height, fps = 30) } .firstOrNull() TL;DR: Basically, get the first rear camera that supports 720p. Note the cameraId--an

## Camera Kit Rewrite

DevFeed: [Camera Kit Rewrite](<https://devfeed.tech/articles/camera-kit-rewrite-19238.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/camerakit-rewrite/>)

Author: Shai Almog

Published: 2019-04-29T00:00:00Z

Content type: article

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Library](<https://devfeed.tech/topics/library.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Web](<https://devfeed.tech/topics/web.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [camera](<https://devfeed.tech/tags/camera.md>), [camera2](<https://devfeed.tech/tags/camera2.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [library](<https://devfeed.tech/tags/library.md>), [rewrite](<https://devfeed.tech/tags/rewrite.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

The article describes a rewrite of Codename One's low-level camera support. After compatibility and stability problems with Android Camera Kit, the implementation moved to Golden Eye while retaining the existing cn1lib name. The library also gained partial support for the JavaScript port and web applications, with a mostly unchanged API.

### Source excerpt

The native low level camera API on Android is a disaster. It's often cited as one of the worst API's on Android. To make matters worse there are two separate API's Camera and Camera2 (yes really). You need to use Camera2 where it's available but that means no support for older devices. To solve this we picked the Android Camera Kit library when we started building our low level camera support. This proved to be a mistake.

## Feb 2017 meetup: Taming Camera2 + How to become a well-rounded Android developer - olin

DevFeed: [Feb 2017 meetup: Taming Camera2 + How to become a well-rounded Android developer - olin](<https://devfeed.tech/articles/feb-2017-meetup-taming-camera2-how-to-become-a-well-rounded-android-developer-olin-38134.md>)

Original publisher: [Read original article](<https://touchlab.co/2017-2-feb-2017-meetup-taming-camera2-how-to-become-a-well-rounded-android-developer>)

Published: 2017-02-27T19:30:49Z

Content type: news

Language: en

Sources: [Touchlab | Enterprise Mobile Innovation & Development](<https://devfeed.tech/sources/touchlab-enterprise-mobile-innovation-development.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [camera2](<https://devfeed.tech/topics/camera2.md>), [User experience (UX)](<https://devfeed.tech/topics/ux.md>), [Streaming](<https://devfeed.tech/topics/streaming.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [camera2](<https://devfeed.tech/tags/camera2.md>), [community](<https://devfeed.tech/tags/community.md>), [developer](<https://devfeed.tech/tags/developer.md>), [meetup](<https://devfeed.tech/tags/meetup.md>)

### AI overview

This recap covers Touchlab's February 2017 developer meetup, including talks on becoming a well-rounded Android developer and using Camera2 in camera-centric social apps. The presentations discussed Android productivity, UX, sample projects, live streaming, and feature development.

### Source excerpt

The American Express headquarters may seem far to some, but it was no big deal for the 100+ developers who came out for our February meetup.

## Ringing in 2017 with Facebook - olin

DevFeed: [Ringing in 2017 with Facebook - olin](<https://devfeed.tech/articles/ringing-in-2017-with-facebook-olin-38135.md>)

Original publisher: [Read original article](<https://touchlab.co/2017-2-ringing-in-2017-with-facebook>)

Published: 2017-02-01T20:21:19Z

Content type: article

Language: en

Sources: [Touchlab | Enterprise Mobile Innovation & Development](<https://devfeed.tech/sources/touchlab-enterprise-mobile-innovation-development.md>)

Topics: [LineageOS](<https://devfeed.tech/topics/lineageos.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Material Design](<https://devfeed.tech/topics/material-design.md>), [camera2](<https://devfeed.tech/topics/camera2.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [camera2](<https://devfeed.tech/tags/camera2.md>), [code](<https://devfeed.tech/tags/code.md>), [community](<https://devfeed.tech/tags/community.md>), [material-design](<https://devfeed.tech/tags/material-design.md>), [meetup](<https://devfeed.tech/tags/meetup.md>), [recording](<https://devfeed.tech/tags/recording.md>)

### AI overview

A Touchlab meetup recap reports an official attendance of 204 members and says the recording is available on the Touchlab channel. It also shares developer tips on fingerprint authentication, offline app behavior, and Android annotations, with a preview of future talks on Camera2 and Android development.

### Source excerpt

We've always had great turnouts for our meetups, but our most recent one drew an official headcount of 204 members! Check out the recording today.