: Work with audiovisual assets, control device cameras, process audio and configure system audio interactions
AVFoundation은 Apple의 프레임워크로서 오디오 및 비디오 미디어 처리와 관련된 작업을 수행할 수 있게 해줍니다.
-> AVKit이 UI구현을 위한 인터페이스 제공
: An object that models timed audiovisual media
AVAsset은 AVFoundation 프레임워크에서 사용되는 클래스로, 오디오 및 비디오 콘텐츠를 나타냅니다. 이 클래스를 사용하여 애플리케이션에서 오디오 및 비디오 자산을 로드하고 재생할 수 있습니다.
AVAsset은 입력된 미디어 트랙을 모델링하는 하나 이상의 AVAssetTrack 인스턴스에 대한 컨테이너 객체
: An objejct that provides the interface to control the player's transport behavior
미디어 Asset의 재생 및 타이밍을 관리하는 컨트롤러 객체로 AVPlayerQuikTime동영상, MP3 오디오 파일 등의 로컬 및 원격 파일 기반 미디어 및 HLS를 사용해 제공되는 미디어까지 재생할 때 사용
AVPlayer 자체는 비시각적인 객체
화면에 표시하기 위해서는 AVKit/AVPlayerLayer와 같은 방식을 사용
: An object that models the timing and presentation state of an asset during playback
시간과 그에 따른 현재 미디어 상태 정보를 가지고 있는 객체
AVAsset은 그 자체로 미디어가 가진 모든 정보가 포함
AVPlayerItem은 시간 경과에 따른 현재 정보를 담음
: An object that records audio data to a file
오디오 데이터를 파일에 녹음하는 객체
기능
- 시스템 입력 장치를 통해 오디오 녹음
- 중지하거나 지정된 시간이 될 때까지 녹음
- 녹음 일시 정지 및 재개
- 녹음 수준 측정 데이터에 액세스
: An object that plays audio data from a file or buffer
파일이나 버퍼에서 오디오를 재생하는 객체
기능
- 파일이나 버퍼에서 원하는 기간의 오디오 재생
- 재생되는 오디오의 볼륨, 패닝, 속도 및 반복 동작 등을 제어
- 재생 수준 측정 데이터에 액세스
- 여러 플레이어의 재생을 동기화하여 여러 사운드를 동시 재생