영상 편집에 대한 관심을 바탕으로, 이 분야의 작업 방식에 대해 호기심을 느끼게 되었습니다. 이러한 관심을 실현하기 위해, 필터 적용, 영상 속도 조절 등의 기능을 포함하는 영상 편집 툴을 직접 개발해보는 프로젝트를 시작하게 되었습니다. 이번 프로젝트의 목표는 모바일을 통해 누구나 쉽게 영상을 편집할 수 있는 도구를 개발하는 것입니다.
역할
iOS 앱개발을 담당했습니다.
iOS
다양한 필터를 적용할 수 있는 기능 구현
여러가지 툴을 사용해서 영상을 수정하는 기능
내보내기 기능
스크롤을 사용해서 툴의 정도 설정 기능
다국어 지원
문제 상황과 해결점
MVP를 활용해 코드 길이 줄이기
노티피케이션 관련 코드 리팩토링
AVPlayerItem의 상태 변화 감지 부재
회고
이번 프로젝트를 진행하면서 제가 세운 목표는 비디오 편집기를 제작하는 것이었습니다. 저는 사용자가 직접 필터를 적용하고 만들 수 있는 기능을 구현하는 것을 통해 Core Image의 작동 원리를 깊이 이해하고, CIContext를 활용하여 비디오를 일반 비디오 파일로 변환하는 과정을 경험하고자 했습니다. 프로젝트를 통해 Core Image, Core Graphics, Core Animation과 같은 핵심 프레임워크를 직접 사용해보면서 이미지 처리 및 비디오 편집에 필요한 기술을 탐구할 수 있었습니다. 특히, 필터를 직접 만들어보며 관련 기술에 대한 이해를 더욱 넓힐 수 있었습니다. 또한, UIKit을 활용해 StackView를 이용한 레이아웃을 구성함으로써 효율적인 레이아웃 설계 방법에 대해 깊이 이해할 수 있었습니다. 마지막으로, 다국어 지원을 추가하면서 Localizable을 경험해보고, 앱 내 속도 조정, 노출 기울기 조절 등 다양한 기능을 구현하면서 비디오 편집에 필요한 전반적인 지식을 쌓을 수 있었습니다. 추후에는 필터와 기능만 있는 것이 아닌 컷편집 기능을 구현해보고자 하는 욕심이 생겼습니다.