나는 이번 프로젝트에서 영상 업로드/스트리밍 구현을 맡았고, 구현 중 생긴 간단한(?) 트러블 슈팅에 대해 소개하려고 한다.

현재 서버 아키텍처는 다음과 같다.

Media Convert의 작업은 vidoe 파일이 들어왔을 때, HLS로 (720 x 480), (1280 x 720) 으로 2가지의 화질을 제공하고 있다. 또한 썸네일 이미지는 0초로 고정시켜 반환했다.
현재까지는 영상도 잘 재생되고, 썸네일 이미지도 잘 만들어지길래 정상적으로 작동 되는 줄 알았다.
여기서 프론트 페이지의 캡처본을 바탕으로 문제를 설명해보겠다.

첫 눈에 보기에도 영상 비율이 잘못된 것을 확인할 수 있다.
그래서 MediaConvert 에서 비디오의 출력 비율과 썸네일의 출력 비율을 조정하는게 없을까 공식 문서를 찾아보았다.
https://docs.aws.amazon.com/ko_kr/mediaconvert/latest/ug/video-scaling.html

5가지의 스케일링 방법을 제공하는데,

그 중에서 FIT_NO_UPSCALE 확장 없는 맞춤 방법을 선택했다.

Mediaconvert - job templete 의 인코딩 설정에서 쉽게 바꿔줄 수 있고,
나는 AWS Lambda 를 사용해서 작업을 만들어 주고 있었기에 "ScalingBehavior": "FIT_NO_UPSCALE", 옵션을 각각 추가해주면 해결 가능했다.


가로가 긴 영상 또한 위 아래로 검정색 래터박스로 구분하고, 제대로 보여줄 수 있었다.
영상적 보여주는데 필요한 추가적인 필요사항에 대한 트러블슈팅이 있다면 해당 글에 추가로 작성하도록 하겠다.