AVFoundation (3) [AVPlayerLayer]
·
iOS/Framework
AVPlayerLayer이란?이전 포스팅에서 우리는 AVPlayer라는 것을 학습했다. AVPlayer는 오직 미디어 데이터를 재생하고 컨트롤 할 수 있는 기능을 담당하고 있다. 즉 유저에게 시각적으로 제공되는 역할을 할 수 없다.  바로 그 역할을 도와주는 것이 AVPlayerLayer다 An object that presents the visual contents of a player object. class AVPlayerLayer : CALayer 역할1. 비디오 콘텐츠 렌더링AVPlayerLayer는 AVPlayer 객체에서 재생되는 비디오 스트림 화면에 표시하는 역할을 한다.2.비디오 크기 조절videoGravity 속성을 통해 비디오 콘텐츠 크기를 조절할 수 있다.resizeAspect , ..
AVFoundation (2) [AVPlayer, AVPlayerItem]
·
iOS/Framework
이전 AVKit 에서 우리는 미디어 데이터를 재생할 때 별도의 커스텀이 없는 UI를 사용할 때는 AVKit을 이용했다. 이번 학습에서는 커스텀 UI를 통해 미디어 데이터를 다뤄보자. AVPlayer란?정의 오디오 및 비디오 콘텐츠를 재생하는데  다양한 제어를 위한 인터페이스를 제공한다.  class AVPlayer : NSObject 역할1. 비디오 및 오디오 재생로컬 파일뿐만 아니라 네트워크 스트리밍 콘텐츠도 재생할 수 있다2. 미디어 제어재생, 일시 정지, 앞으로/뒤로 탐색 등의 기본적인 미디어 제어 기능을 제공한다.3.시간에 따른 재생 제어특정 시간으로 점프하거나 현재 재생 시간을 확인할 수 있습니다.4. 네트워크 스트리밍 지원HTTP Live Streaming (HLS)과 같은 스트리밍 프로토콜을..
AVKit
·
iOS/Framework
AVKit이란? 이전 포스팅에서 AVFoundation은 여러 미디어 데이터를 다루는데 중점을 둔 프레임워크라고 배웠다.그렇다면 그 데이터를 실제 재생하고 컨트롤하는 UI는 어디에 있을까 ?? 위에 그림을 보면 AVFoundation은 UIKit보다 아래에 있어 표준 UI를 제공해주지 않는다.그러므로 미디어 데이터를 다루는 UI를 만들기 위해서는 AVFoundation보다 아래 계층에 있어야한다. 하지만 이 경우는 상당히 low-level까지의 지식과 많은 작업량이 필요한데 이 때 애플에서는 AVkit이라는 걸 제공하게된다.  역할Create user interfaces for media playback, complete with transport controls, chapter navigation, p..
AVFoundation (1) [AVAsset]
·
iOS/Framework
부스트 캠프의 여정이 어느새 마무리 단계인 그룹미션이 어느새 다음 주로 다가왔다.이번주부터 1주일 정도 개인 공부를 할 수 있는 시간이 있어서 나는 평소에 관심있던 스트리밍쪽 기술을 공부해보려고한다.스트리밍 쪽 공부를 하기 위해 가장 기본이 되는 기술이 AVFoundation이라고 많이 추천을 해주셨다.  이번에 한번 깊이 공부해보자. AVFoundation이란?AVFoundation이란 apple 생태계에서 미디어와 관련된 모든 측면을 다룰 수 있는 매우 유연하고 확장 가능한 프레임워크이다.Work with audiovisual assets, control device cameras, process audio, and configure system audio interactions. 역할1. 미디어 재..
iOS Cache
·
iOS/UIKit
캐시캐시란 자주 사용하는 데이터나 값을 미리 복사해 놓는 임시 저장소이다.갑자기 iOS에서 이 개념이 왜 나올까 ??  부스트 캠프 과정 중 앱 개발을 할 때 항상 비용을 고려해야한다. 비용은 크게 2가지로 나눠진다비용 Money전원 Power전원 Power는 말 그대로 우리 서비스를 이용할 때 배터리 소모량이 된다. 비용 Money은 우리 서비스를 이용하면서 유저가 지불해야하는 금액적인 비용이다. 금액적인 비용은 우리 서비스내의 제품을 구매할 때도 역시 필요하지만앱이 네트워크가 필요하여 인터넷 비용도 있다.  우리가 컨트롤 할 수 있는 것은 바로 인터넷 비용이다.우리는 유저의 인터넷비용을 최대한 기술적으로 절감시켜 유저 이탈 수를 막야한다. 대표적인 예로 바로 캐시 데이터를 통해 불필요한 네트워크 통..
키보드 반응하기
·
iOS/UIKit
많은 앱에서 입력 작업을 할때 UI적으로 가장 곤혹스러운게 키보드에 따란 반응이다.이번 학습은 키보드 관련 정보는 어떻게 얻어오고 처리하는 지 간단하게 살펴보자.추후 학습 중 더 깊은 내용이 있으면 내용이 추가될 수 있다. 키보드 정보 얻기첫번 째로 우리는 키보드가 나왔는 지, 키보드 높이는 무엇인지 어디서 얻올 수 있을까 ??답은 이전에 배웠던 UIResponder 이다   그 때 배웠던 내용을 인용하면 textField를 누를 때 키보드가 나오는 것은 first responder를 통해 진행된다고 적었었다. 그렇다면 UIResponder에 keyboard 관련 내용이 있는 지 한번 공식 사이트를 봐보자 UIResponder keyboard관련 상수가 정말 많다 여기서 우리가 사용할 것은 아래 3가지다..