Maponga Studios๋ฅผ ์ํด ๊ตฌ์ถ๋ ์๋ํฌ์๋ ์คํธ๋ฆฌ๋ฐ ์ธํ๋ผ โ ์์ฐ ๋ฐ ์ฑ๋ ๊ด๋ฆฌ๋ฅผ ์ํ React ์น ์ฑ, SSO๊ฐ ์ ์ฉ๋ ์๋งค Encoder ์ฑ, NestJS ๋ฐฑ์๋, ๊ทธ๋ฆฌ๊ณ SCTE-35 ๊ด๊ณ ์ฝ์ ์ ํตํ ์ํด๋ฆญ FAST ์ฑ๋ ๋ฐฐํฌ๋ฅผ ์ํด MediaLive, MediaPackage, MediaTailor, MediaConvert๋ฅผ ์ค์ผ์คํธ๋ ์ด์ ํ๋ ๋ ๊ฐ์ AWS Lambda ํจ์๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.

React ํ๋ก ํธ์๋, NestJS ๋ฐฑ์๋ API, ๊ทธ๋ฆฌ๊ณ ๋ ๊ฐ์ AWS Lambda ํจ์๋ฅผ ์์ฐ๋ฅด๋ ํ์คํ ๋ฏธ๋์ด ๊ด๋ฆฌ ํ๋ซํผ์ ๊ฐ๋ฐํ์ต๋๋ค.
AWS MediaLive, MediaPackage, MediaTailor๋ฅผ ์ค์ผ์คํธ๋ ์ด์ ํ์ฌ ์ํด๋ฆญ ๋ผ์ด๋ธ ์ ํ ์ฑ๋ ํ๋ก๋น์ ๋์ ์ํ FAST ์ฑ๋ Lambda๋ฅผ ๊ตฌ์ถํ์ต๋๋ค.
๋๋๊ทธ ์ค ๋๋กญ ํ๋ก๊ทธ๋จ ์ฌ๋กฏ ๊ด๋ฆฌ ๋ฐ ๊ด๊ณ ๋ง์ปค ๊ตฌ์ฑ์ ์ง์ํ๋ ์บ๋ฆฐ๋ ๊ธฐ๋ฐ ์ฑ๋ ์ค์ผ์ค๋ง(FullCalendar)์ ๊ตฌํํ์ต๋๋ค.
๋ผ์ด๋ธ ์ฌ์ ์ค MediaTailor ์๋ฒ ์ธก ๊ด๊ณ ์ฝ์ (SSAI)์ ๊ฐ๋ฅํ๊ฒ ํ๋ SCTE-35 ์คํ๋ผ์ด์ค ์ธ์ํธ ๋ง์ปค ์ฃผ์ ๊ธฐ๋ฅ์ ๋ง๋ค์์ต๋๋ค.
S3 ์ ๋ก๋ ์ AWS MediaConvert๋ฅผ ํธ๋ฆฌ๊ฑฐํ์ฌ ๊ตฌ์ฑ ๊ฐ๋ฅํ ํ๋กํ๋ก๋ถํฐ ํํธ๋๋ณ ์ถ๋ ฅ์ ์์ฑํ๋ ๋น๋์ค ์ธ์ฝ๋ฉ Lambda๋ฅผ ๊ฐ๋ฐํ์ต๋๋ค.
11GB๊น์ง์ ํ์ผ์ ์ง์ํ๋ฉฐ 3๋จ๊ณ ์ ๋ก๋, ํ์ธ, ์ต์ข ํ ์ํฌํ๋ก์ฐ๋ฅผ ๊ฐ์ถ presigned S3 ๋ฉํฐํํธ ์ ๋ก๋ ์์คํ ์ ๊ตฌ์ถํ์ต๋๋ค.
Argon2 ํด์ฑ์ ์ฌ์ฉํ ์ฟ ํค ๊ธฐ๋ฐ JWT ์ธ์ฆ, M-Studio์ Encoder ์ฑ ๊ฐ SSO, ์ญํ ๊ธฐ๋ฐ ์ ๊ทผ ์ ์ด๋ฅผ ๊ตฌํํ์ต๋๋ค.
๋ค๋จ๊ณ ์์ฑ ์์, CSV ๋๋ ๊ฐ์ ธ์ค๊ธฐ, HLS ๋น๋์ค ์ฌ์, ์ํผ์๋ ๊ด๋ฆฌ, ์ธ๋ค์ผ/์บก์ ๊ด๋ฆฌ๋ฅผ ํฌํจํ๋ ํฌ๊ด์ ์ธ ์์ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ง๋ค์์ต๋๋ค.
MediaLive์ $urlPath$ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ๋น๋์ค๋ณ ์ ๋ ฅ ์์ด ํจ์จ์ ์ธ ์ฝํ ์ธ ๋กํ ์ด์ ์ ์ํ ๋์ ์ ๋ ฅ ์ ํ์ ์ค๊ณํ๊ณ ํตํฉํ์ต๋๋ค.
์์ฐ, ์ฑ๋, ๋น๋์ค ๋ฉํธ๋ฆญ๊ณผ ํจ๊ป ์ฌ๋ฌด ๋ฐ ํ๋งค ๋ณด๊ณ ๋ ์ด์ด๋ฅผ ๋ณด์ฌ์ฃผ๋ ApexCharts๋ฅผ ์ฌ์ฉํ ์ค์๊ฐ ๋ถ์ ๋์๋ณด๋๋ฅผ ๊ตฌ์ถํ์ต๋๋ค.
์ ์ฒด ์ฝํ ์ธ -๋ฐฉ์ก ํ์ดํ๋ผ์ธ์ ํ๋์ ์ด์์ ์นํ์ ์ธ ์ธํฐํ์ด์ค๋ก ํตํฉํ์ฌ, ์ํด๋ฆญ FAST ์ฑ๋ ๋ฐฐํฌ, ์๋ํ๋ ๋ค์ค ํํธ๋ ์ธ์ฝ๋ฉ, ์๋ฒ ์ธก ๊ด๊ณ ์ฝ์ ์ ์ ๊ณตํ๋ฉฐ โ ํํธํ๋ AWS Console ์ํฌํ๋ก์ฐ๋ฅผ ๋์ฒดํฉ๋๋ค.
MicrocosmWorks๋ ์ํด๋ฆญ ๋ผ์ด๋ธ ์ ํ ์ฑ๋ ํ๋ก๋น์ ๋์ ์ํด MediaLive, MediaPackage, MediaTailor๋ฅผ ์ค์ผ์คํธ๋ ์ด์ ํ๋ AWS Lambda ํจ์๋ฅผ ์ฌ์ฉํ์ฌ FAST ์ฑ๋ ์์คํ ์ ๊ตฌ์ถํ์ต๋๋ค. FullCalendar๋ฅผ ์ฌ์ฉํ ๋ฌ๋ ฅ ๊ธฐ๋ฐ ์ค์ผ์ค๋ง์ ๋๋๊ทธ ์ค ๋๋กญ ํ๋ก๊ทธ๋จ ์ฌ๋กฏ ๊ด๋ฆฌ๋ฅผ ์ ๊ณตํ๋ฉฐ, SCTE-35 ์คํ๋ผ์ด์ค ์ธ์ํธ ๋ง์ปค๋ ๋ผ์ด๋ธ ์ฌ์ ์ค์ MediaTailor ์๋ฒ ์ธก ๊ด๊ณ ์ฝ์ (SSAI)์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. MediaLive์ $urlPath$ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ๋์ ์ ๋ ฅ ์ ํ์ ๋น๋์ค๋ณ ์ ๋ ฅ ์์ด ์ฝํ ์ธ ๋กํ ์ด์ ์ ์ฒ๋ฆฌํฉ๋๋ค.
MicrocosmWorks๋ S3 ์ ๋ก๋ ์ MediaConvert ์ธ์ฝ๋ฉ ์์ ์ ํธ๋ฆฌ๊ฑฐํ์ฌ ๊ตฌ์ฑ ๊ฐ๋ฅํ ์ธ์ฝ๋ฉ ํ ํ๋ฆฟ์์ ํํธ๋๋ณ ์ถ๋ ฅ ํ๋กํ์ ์์ฑํ๋ AWS Lambda ํจ์๋ฅผ ๊ฐ๋ฐํ์ต๋๋ค. TCL ๋๋ Vizio์ ๊ฐ์ ๊ฐ ๋ฐฐํฌ ํํธ๋๋ ํ์ ํ์, ํด์๋ ๋ฐ ๋นํธ๋ ์ดํธ ์ฌ์์ ๋ง๋ ๋น๋์ค๋ฅผ ์์ ํฉ๋๋ค. ์ธ์ฝ๋ฉ ํ์ดํ๋ผ์ธ์ ๋ฐฐ์น ์ฒ๋ฆฌ๋ฅผ ์ฒ๋ฆฌํ๊ณ ์๋ฃ ์๋ฆผ์ ์ ์กํ๋ฏ๋ก, ์ด์์๋ ๋ค์ค ํํธ๋ ๋ฐฐํฌ๋ฅผ ์ํด ํ ๋ฒ๋ง ์ ๋ก๋ํ๋ฉด ๋ฉ๋๋ค.
MicrocosmWorks๋ 3๋จ๊ณ ์ ๋ก๋ ์ํฌํ๋ก์ฐ๋ฅผ ๊ตฌ์ถํ์ต๋๋ค: presigned multipart S3 ์ ๋ก๋ ์์, ์งํ ์ํฉ ์ถ์ ๊ธฐ๋ฅ์ด ์๋ ์ฒญํฌ ์ ๋ก๋, ๊ทธ๋ฆฌ๊ณ ํ์ผ ๋ฌด๊ฒฐ์ฑ์ ๊ฒ์ฆํ๋ ์๋ฒ ์ธก ํ์ธ ๋ฐ ์๋ฃ ๋จ๊ณ์ ๋๋ค. ์ต๋ 11 GB์ ํ์ผ์ ๋ธ๋ผ์ฐ์ ์์ presigned URL์ ์ฌ์ฉํ์ฌ S3๋ก ์ง์ ์ ๋ก๋๋๋ฉฐ, ์ ์ก์ ์ํด NestJS ๋ฐฑ์๋๋ฅผ ๊ฑฐ์น์ง ์์ต๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์๋ฒ ๋์ญํญ ๋ณ๋ชฉ ํ์์ ์ ๊ฑฐํ๊ณ ์ ๋ขฐํ ์ ์๋ ์ฐ๊ฒฐ ํ๊ฒฝ์์ ๋์ฉ๋ ๋ฏธ๋์ด ํ์ผ์ ๋ํ ์คํจ ์ ์ฌ๊ฐ๋ฅผ ์ง์ํฉ๋๋ค.
๋ค, MicrocosmWorks๋ MapongaStudio๋ฅผ ํตํฉ ์ฝํ ์ธ ๊ด๋ฆฌ ํ๋ซํผ์ผ๋ก ๊ตฌ์ถํ์ต๋๋ค. ์์ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๋ค๋จ๊ณ ์์ฑ ์์, CSV ๋๋ ๊ฐ์ ธ์ค๊ธฐ, HLS ์ฌ์ ๋ฏธ๋ฆฌ๋ณด๊ธฐ, ์ํผ์๋ ๊ด๋ฆฌ, ์ธ๋ค์ผ/์บก์ ๊ด๋ฆฌ๋ฅผ ํตํด ์ฃผ๋ฌธํ ๋น๋์ค๋ฅผ ๊ด๋ฆฌํฉ๋๋ค. ์ค์ผ์ค๋ง, ๊ด๊ณ ์ฝ์ , ๋ผ์ด๋ธ ๋ชจ๋ํฐ๋ง์ ํฌํจํ FAST ์ฑ๋ ์ด์์ ๋์ผํ ์ธํฐํ์ด์ค์์ ์ ๊ทผํ ์ ์์ผ๋ฉฐ, SSO๋ ๋ฉ์ธ M-Studio ์ฑ๊ณผ ์๋งค Encoder App์ ์ฐ๊ฒฐํฉ๋๋ค.
MicrocosmWorks๋ ApexCharts๋ฅผ ์ฌ์ฉํ์ฌ ์์ฐ ์ฑ๊ณผ, ์ฑ๋ ์์ฒญ๋ฅ , ๋น๋์ค ์ฐธ์ฌ ์งํ, ๊ทธ๋ฆฌ๊ณ ์ฌ๋ฌด ๋ฐ ํ๋งค ๋ณด๊ณ ๋ ์ด์ด๋ฅผ ๋ณด์ฌ์ฃผ๋ ์ค์๊ฐ ๋ถ์ ๋์๋ณด๋๋ฅผ ๊ตฌ์ถํ์ต๋๋ค. ์ด ๋ถ์ ๊ธฐ๋ฅ์ ์์ฒญ์ ์ ์ง์จ ๋ฐ ๊ด๊ณ ์ฑ์ฐ๊ธฐ ๋น์จ๊ณผ ๊ฐ์ FAST channel ์งํ์, ์ ๋ก๋ ๋ณผ๋ฅจ ๋ฐ ์ธ์ฝ๋ฉ ์๋ฃ์จ๊ณผ ๊ฐ์ ์์ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์งํ๋ฅผ ๋ชจ๋ ๋ค๋ฃน๋๋ค. MRSS feed ์์ฑ์ ๋ฐฐํฌ ํํธ๋ ์ ๋ฐ์ ๊ฑธ์ณ ์ฝํ ์ธ ์ ๋์ผ์ด์ ์ถ์ ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
๊ฐ์ ์์ค์ ์ ๋ฌธ์ฑ๊ณผ ํ์ ์ผ๋ก ๊ทํ์ ๋น์ ์ ์คํํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ ผ์ํด ๋ณด๊ฒ ์ต๋๋ค.