iOS/Swift 문법

[Swift] AVFoundation에 대하여

Chafle 2022. 4. 7. 11:00
반응형

AVFoundation이란? 

 

video, audio에 특화된 공구함

 

captureing, processing, synthesizing, controlling, importing,exporting등 다양한 기능을 제공합니다.

 

 

1. playback and editing

미디어 재생 콘트롤과 편집 기능을 제공합니다.

미디어 파일(동영상,오디오. 사진)에 접근할 때 실제 파일들을 코딩할 때 필요한 객체로 만들어주는 기능

ex. player에게 plyaeritem을 넘겼다

 

2.media capture

사진 찍어서 저장하는 기능

 

3. audio

오디오 믹싱

 

4. speech

목소리를 택스트로 변환해주는 기능 (STT: Speech To Text)

 

 


 

custom 카메라 앱의 목적

1. CustomUI를 만들고 싶을 때 

2. 직접적인 control제공(focus, 노출 등)

3. 사진, 비디오의 결과물을 편집(워터마크, 자막 등)

4. 카메라로부터 들어오는 영상데이터를 처리하고 싶을 때 (필터, 이모지 등)

 

 

시스템 카메라 가져다 쓰는 것

UIImagePickerController


카메라의 기초 개념

 

Media Capture의 중요한 앱 구조 3가지

 

1. AVCaptureSession

2. AVCaptureDeviceInput

3. AVCaptureOutput

 

1. AVCaptureSession

카메라, 마이크 등의 input에서 들어오는 데이터를 output으로 연결시켜주는 역할

 

2. AVCaputureDeviceInput

미디어 소스를 제공하는 카메라, 마이크

 

3. AVCaptureOutput

input으로 들어오는 데이터를 디스크에 쓰든지, 프로세싱을 시키든지 output에 이용합니다.

 

AVCaptureDeviceInput->AVCaptureSession->AVCaptureOutput순으로 처리합니다.

 


애플은 기본적으로 사용자의 권한이 없으면 기능을 사용할 수 없도록 제어시켜 놨기 떄문에

개발자는 사용자의 권한을 설정할 수 있도록 해줘야합니다.

 

Info.plist를 통하여서

camera, micusage description 권한을 부여합니다.

(사용자에게 앱이 카메라,마이크 등을 사용할 것이라는 permission요청)

 

반응형