AVFoundation 스터디 로드맵 - kirseia/study GitHub Wiki
- 이미지, 영상, 오디오 쪽에 대한 기본 지식을 습득
- AVFoudation 관련 개발을 할 때 이런게 있었다 생각할 수 있는 정도...?
- https://developer.apple.com/documentation/avfoundation
- https://developer.apple.com/library/content/documentation/AudioVideo/Conceptual/AVFoundationPG/Articles/00_Introduction.html#//apple_ref/doc/uid/TP40010188
-
Codec, Container ?
코덱이 뭔지, 컨테이너가 뭔지만 알면 될 듯. mp4, avi 는 컨테이너. mp3나 h264 는 코덱.- http://montoo.tistory.com/50
- https://m.blog.naver.com/PostView.nhn?blogId=laizenti&logNo=220381857107&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F
- https://m.blog.naver.com/PostView.nhn?blogId=dbfan24&logNo=10128720329&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F
- 컨테이너 분석도구 - https://mediaarea.net/en/MediaInfo
-
프레임? 키프레임? i frame, p frame? 프레임 레이트?
-
손실 압축, 비손실 압축?
- PNG vs JPG
- http://s00m15.tistory.com/22
-
색공간 (YUV, RGB)
-
https://developer.apple.com/documentation/avfoundation/media_assets_playback_and_editing/about_the_asset_model
- Asset 이란 무엇인지?
- https://developer.apple.com/documentation/avfoundation/media_assets_playback_and_editing
- 구현해보기
- 기본 플레이어를 만들어보자
- 재생 / 멈춤 해보기
- Seeking 해보기
- 배속 재생해보기
- Mute 해보기
- AVPlayer 의 상태를 확인해보기 ( https://developer.apple.com/documentation/avfoundation/media_assets_playback_and_editing/responding_to_playback_state_changes )
- https://developer.apple.com/documentation/avfoundation/system_audio_interaction
-
https://developer.apple.com/documentation/avfoundation/avaudiosession
- AVAudioSession 이란 무엇인가?
- Audio Category 란 무엇인가?
- 구현해보기
- mute 상태에서 스피커로 소리가 나게 하려면?
- 배경 음악과 영상이 동시에 재생되게 하려면?
- 백그라운드 상태에서 소리가 나게 하려면? / 백그라운드 진입 시 재생을 멈추게 하려면? / 백그라운드 다녀왔을 때 재생을 계속되게 하려면?
- 이어폰으로 영상/음악 재생 중 이어폰 제거하면 재생이 멈추는데 이를 코드로 어떻게 캐치 할 수 있을까?
- 다시 재생 하려면 어떻게 할까?
-
- AVMutableComposition
- AVMutableVideoComposition
- AVVideoCompositor
-
https://developer.apple.com/library/archive/technotes/tn2447/_index.html
-
http://dev-zhuang.github.io/blog/2014/06/30/ming-bai-avfoundation/ https://developer.apple.com/library/content/samplecode/AVCustomEdit/Introduction/Intro.html#//apple_ref/doc/uid/DTS40013411-Intro-DontLinkElementID_2 https://developer.apple.com/library/content/samplecode/AVCustomEdit/Introduction/Intro.html#//apple_ref/doc/uid/DTS40013411-Intro-DontLinkElementID_2
- AVAudioMix
-
구현해보기
- 영상의 일부 구간만 재생하려면?
- 영상의 일부 구간만 2배속으로 재생하려면?
- 영상에 필터를 적용해서 프리뷰 하려면?
- 영상과 영상 사이에 Transition 적용은?
- 영상의 소리를 다른 음악으로 대체 하려면?
{ height=30% } { height=50% }
-
https://developer.apple.com/documentation/avfoundation/media_assets_playback_and_editing/asset_file_import_and_export
- AVAssetReader
- AVAssetWriter
- AVAssetExportSession
- 구현해보기
- AVAssetReader 를 이용해 플레이어를 만들어본다면?
- AVAssetReader 를 이용해 만든 플레이어에 필터를 적용한다면?
- AVAssetReader 를 이용해 만든 플레이어에 Transition 구현은?
-
https://developer.apple.com/documentation/avfoundation/cameras_and_media_capture
- AVCaptureDevice
- AVCaptureSession
- 구현해보기
- 사진찍으려면?
- 동영상 찍으려면?
- 녹음 하려면?
- 영상 촬영한 것을 실시간으로 필터를 적용해서 프리뷰 하려면?
- 영상 촬영한 것을 필터 적용하고 파일로 저장하려면?
-
Speach
-
Vision Library
- https://developer.apple.com/documentation/vision
- 얼굴 인식, 이미지 분석, Barcode, QR code, Text Detection, Horizon Detection ...
-
MLCore