철이의 컴노리
  • 안녕하세요!
  • KOTLIN
  • ANDROID
    • Architecture Components
      • 프로젝트에 추가하기
      • 데이터 바인딩 라이브러리
        • 시작하기
        • 레이아웃 및 바인딩 표현식
      • 라이프 사이클 처리
      • ViewModel
    • CameraX
      • CameraX 아키텍처
      • 구성
      • 미리보기
      • 이미지 분석
      • 이미지 캡처
      • 제조 업체 확장 기능
    • View
      • 커스텀뷰의 크기 정하기
    • JNI 튜토리얼
      • 1장. 저자 소개
      • 2장. Hello JNI
      • 3장. 메서드 등록
      • 4장. int 데이터형 값 주고 받기
      • 5장. boolean 데이터형 값 주고 받기
      • 6장. double 데이터형 값 주고 받기
      • 7장. float 데이터형 값 주고 받기
      • 8장. long 데이터형 값 주고 받기
      • 9장. short 데이터형 값 주고 받기
      • 10장. char 데이터형 값 주고 받기
      • 11장. byte 데이터형 값 주고 받기
      • 12장. JNI에서 문자열 다루기 1/3
      • 13장. JNI에서 문자열 다루기 2/3
      • 14장. JNI에서 문자열 다루기 3/3
      • 15장. 레퍼런스 이해하기
      • 16장. 배열 다루기 1/4
      • 17장. 배열 다루기 2/4
      • 18장. 배열 다루기 3/4
      • 19장. 배열 다루기 4/4
      • 20장. 중간 요약
      • 21장. 자바 클래스 찾기 1/2
      • 22장. 자바 클래스 찾기 2/2
      • 23장. 정적 메서드 찾기
      • 24장. 정적필드 찾기
      • 25장. 자바 클래스 인스턴스 생성하기
      • 26장. 자바 클래스 인스턴스 메서드 찾기
      • 27장. 자바 클래스의 인스턴스 필드 찾기
      • 28장. 네이티브 쓰레드 실행하기
  • Swift
    • What' New
      • Swift 5.0
        • Result 타입
        • Raw 문자열
        • 커스텀 문자열 보간
    • Codable
      • 커스텀 타입 인코딩 및 디코딩
  • iOS
  • OpenGL
    • OpenGL Tutorial
      • 1장. 저자 소개
      • 2장. OpenGL 윈도우 프레임웍 만들기 1편
      • 3장. OpenGL 윈도우 프레임웍 만들기 2편
      • 4장. 점그리기
      • 5장. 선 그리기
      • 6장. 다각형 그리기
      • 7장. 색 표현하기
      • 8장. 3차원 폴리곤 그리기
      • 9장. 투영변환
      • 10장. 이동, 회전, 크기 변환
      • 11장. 빛, 재질 표현하기
      • 12장. 텍스춰매핑
    • OpenGL ES Tutorial for iOS
      • 1장. 저자 소개
      • 2장. 튜토리얼 소개
      • 3장. OpenGL|ES 개발 환경 만들기
      • 4장. 뷰 배경색상 변경하기
      • 5장. 투영에 대해서 1/2
      • 6장. 투영에 대해서 2/2
      • 7장. 선분 및 삼각형 그리기
      • 8장. 색상칠하기
      • 9장. 텍스춰맵핑
      • 10장. 종횡비
      • 11장. 텍스춰 UV좌표
      • 12장. 텍스춰매핑 파라미터
      • 13장. 깊이버퍼
      • 14장. 원근투영
  • ENV
    • oh-my-zsh
      • 특정 git 폴더에서 zsh 이 느려질 때
  • Ubuntu
    • UEFI USB
    • nvidia driver
    • /dev/kvm on Android Studio
    • install oracle-jdk8
  • chromium
    • javap
Powered by GitBook
On this page
  • 주요 이점
  • 쉬운 사용성
  • 여러 디바이스에서 일관성 유지
  • 새로운 카메라 경험
  • 문서
  • 추가 자료
  • 코드랩
  • 코드 예제

Was this helpful?

  1. ANDROID

CameraX

https://developer.android.com/training/camerax 를 번역한 문서입니다.

PreviousViewModelNextCameraX 아키텍처

Last updated 6 years ago

Was this helpful?

소개영상

CameraX는 Jetpack 서포트 라이브러리로 카메라 앱을 보다 쉽게 개발할 수 있도록 도와줍니다. Android 5.0(API레벨 21)과 호환되는 대부분의 Android 기기에서 작동하는 일관되고 사용하기 쉬운 API를 제공합니다.

CameraX는 camera2의 기능을 활용하지만 라이프 사이클을 식별하는 보다 간단한 유즈케이스 기반 접근 방식을 사용합니다. 또한 디바이스 호환성 문제를 해결하므로 디바이스 별 코드를 작성할 필요가 없습니다. 이러한 점은 앱에 카메라 기능을 추가할 때 작성해야 하는 코드의 양을 줄여줍니다.

마지막으로, CameraX를 사용하면 개발자는 단 두 줄의 코드로 디바이스에 설치된 기본 카메라 앱과 동일한 카메라 경험과 기능을 사용할 수 있습니다. 는 옵셔널한 애드온으로 Portrait, HDR, Night, Beauty와 같은 효과를 개발하는 앱에 추가할 수 있습니다. 단, 가 해당 기능을 지원을 해야 합니다.

코드랩

참고 CameraX 라이브러리는 알파 단계로 API가 아직 완성되지 않았습니다. 프로덕션에서는 사용하지 않기를 권장합니다. API가 정식 릴리즈 되기까지 소스 단계에서든 바이너리 단계에서든 호환되지 않을 수 있기 때문에 프로덕션에서는 알파 단계인 라이브러리 사용을 피해야 합니다.

주요 이점

CameraX는 다음과 같은 방법으로 개발자 경험을 향상시킵니다.

쉬운 사용성

CameraX는 디바이스마다 다른 점을 관리하는데 시간을 낭비하지 않습니다. 대신 유즈케이스를 도입하여 필요한 작업에만 집중합니다. 몇 가지 기본적인 유즈케이스가 있습니다.

  • : 디스플레이에서 이미지 얻기

  • : MLKit과 같은 알고리즘에 데이터를 전달하기 위한 버퍼에 대한 완전한 접근.

  • : 고품질 이미지 저장

이러한 유즈케이스는 Android 5.0(API레벨 21) 이상을 실행하는 모든 디바이스에서 작동하므로 대부분의 디바이스에서 동일한 코드를 사용할 수 있습니다.

여러 디바이스에서 일관성 유지

여러 앱에서 카메라 동작을 일관되게 관리하는 것은 어렵습니다. 종횡비, 방향, 회전, 미리보기 크기 및 고해상도 이미지 크기 등 많은 점을 고려해야 합니다. CameraX는 이러한 고려사항을 해결하여 쉽게 사용할 수 있습니다.

Google은 Android 5.0(API레벨 21) 이후 여러 디바이스 및 운영체제에서 다양한 카메라 동작을 테스트하는 자동화된 CameraX 테스트 연구소에 투자하고 있습니다. 이러한 테스트는 지속적으로 실행되어 광범위한 문제를 확인하고 해결합니다.

우리의 목표는 시간이 지남에 따라 테스트 부담을 크게 줄이는 것입니다.

새로운 카메라 경험

문서

추가 자료

CameraX에 대한 자세한 내용은 아래의 추가 자료를 참고 합니다.

코드랩

코드 예제

CameraX에는 이라고 하는 애드온이 있습니다. 애드온을 사용하면 디바이스와 함께 제공되는 기본 카메라 앱과 동일한 기능을 코드 두 줄로 사용할 수 있습니다.

사용 가능한 첫 번째 기능 세트에는 Portrait, HDR, Night 그리고 Beauty가 있습니다. 이러한 기능을 에서만 사용할 수 있습니다.

확장
지원하는 디바이스
CameraX 아키텍처
구성 옵션
미리보기 구현
이미지 분석
이미지 캡처
제조 업체 확장 기능
CameraX 시작하기
CameraX 공식 예제 앱
https://www.youtube.com/watch?v=QYkTXJ2TuiA
CameraX Extensions
디바이스
https://codelabs.developers.google.com/codelabs/camerax-getting-started
미리보기
이미지 분석
이미지 캡처
그림1. CameraX는 Android 5.0(API레벨 21) 이상을 타켓으로 하여 대부분의 Android 디바이스를 지원합니다.
그림2. 자동화 된 CameraX 테스트 랩은 많은 디바이스 타입 및 제조업체에서 일관된 API 경험을 보장합니다.
그림3. CameraX는 인물 사진을 찍을 때 사용하면 좋은 Portrait 같은 새로운 인앱 경험을 제공합니다. 그림3은 화웨이 Mate 20 Pro에서 CameraX를 사용하여 찍은 사진입니다.