๊ฒฝํ—˜

์†ก์ถœ ์„œ๋ฒ„์™€ ์œ ํŠœ๋ธŒ ์ŠคํŠธ๋ฆฌ๋ฐ

ballde 2023. 4. 11. 10:05

๐Ÿ’ก ์†ก์ถœ ์„œ๋ฒ„ ๋งŒ๋“œ๋Š” ๊ณผ์ •์—์„œ์˜ ๊ฒฝํ—˜

์‹œ์ž‘ ๊ณ„๊ธฐ


low latency hls, webRTC ์ ์šฉ์„ ๊ณ ๋ ค + ์œ ํŠœ๋ธŒ ๋™์‹œ ์†ก์ถœ์„ ์œ„ํ•ด์„œ ์†ก์ถœ์„œ๋ฒ„๋ฅผ ๋งŒ๋“ค๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์ „ ์ง€์‹


Livestreaming protocol ์ค‘์—์„œ RTMP, HLS๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

RTMP(real time message protocol)

๋น„๋””์˜ค๋‚˜ ์˜ค๋””์˜ค๋“ฑ์„ ์ธํ„ฐ๋„ท ์ƒ์—์„œ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ŠคํŠธ๋ฆฌ๋ฐ ๋ฐ์ดํ„ฐ ์ „์†ก ๊ทœ๊ฒฉ

HLS(http live streaming)

HTTP ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜๋Š” ์‹ค์‹œ๊ฐ„ ์ŠคํŠธ๋ฆฌ๋ฐ ๋ฐฉ์‹์œผ๋กœ ์ŠคํŠธ๋ฆฌ๋ฐ ๋ฐ์ดํ„ฐ๋ฅผ m3u8์˜ ํ™•์žฅ์ž๋ฅผ ๊ฐ€์ง„ ์žฌ์ƒ๋ชฉ๋ก ํŒŒ์ผ๊ณผ ์ž˜๊ฒŒ ์ชผ๊ฐ  ๋‹ค์ˆ˜์˜ tsํŒŒ์ผ์„ http์„ ํ†ตํ•ด ์ „์†กํ•˜๋Š” ๋ฐฉ์‹

์†ก์ถœ ์„œ๋ฒ„


๊ตฌ์กฐ

rtmp๋Š” ์†ก์ˆ˜์‹  ๋‘˜ ๋‹ค ์ด์šฉํ•  ์ˆ˜ ์žˆ์œผ๋‚˜, ์†ก์ถœ ์‹œ์—๋งŒ ์ด์šฉํ•˜๊ณ  ์žˆ๊ณ  ์‹œ์ฒญ์€ hls๋กœ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์œ„์˜ ๊ทธ๋ฆผ์—์„œ ๊ตฌ๋ฆ„๋ชจ์–‘์— ํ•ด๋‹นํ•˜๋Š” ๋ฏธ๋””์–ด ์„œ๋ฒ„ ๊ด€๋ จํ•ด์„œ๋Š” 2๊ฐ€์ง€ ์†”๋ฃจ์…˜์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  • antmedia
  • broadband IDC

์œ ํŠœ๋ธŒ ์ŠคํŠธ๋ฆฌ๋ฐ


์—”ํŠธ๋ฏธ๋””์–ด ๊ณต์‹๋ฌธ์„œ์™€ ์œ ํŠœ๋ธŒ ์ŠคํŠธ๋ฆฌ๋ฐ ๊ณต์‹๋ฌธ์„œ(https://developers.google.com/youtube/v3/live/getting-started)๋ฅผ ๋ณด๊ณ  ์ ์šฉ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ ํŠœ๋ธŒ ์ŠคํŠธ๋ฆฌ๋ฐ์„ ์ ์šฉํ•˜๋Š”๋ฐ ํฐ ์–ด๋ ค์›€์€ ์—†์—ˆ์ง€๋งŒ ๋ฌธ์ œ๊ฐ€ ๋๋˜ ๋ถ€๋ถ„์„ ์ ์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ตฌ๊ธ€ ํ”„๋กœ๋•์…˜ ๋ชจ๋“œ

ํ…Œ์ŠคํŠธ ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ํ—ˆ์šฉ๋œ ์ด๋ฉ”์ผ๋งŒ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๊ณ  ์•ฑ์˜ ์‚ฌ์šฉ๋™์˜๋ฅผ ๋ฐ›์„ ๋•Œ ํ…Œ์ŠคํŠธ๋ชจ๋“œ๋ผ๊ณ  ํ‘œ์‹œ๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ํ”„๋กœ๋•์…˜ ๋ชจ๋“œ๋ฅผ ์ ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ

  • ํ”„๋กœ๋•์…˜ ๋ชจ๋“œ๋ฅผ ํ•˜๋ ค๋ฉด ์˜์ƒ์„ ์ฐ๊ณ  ์ž๋ง‰์„ ๋‹ฌ์•„์•ผํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.. (์•ฑ์ด ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉ๋˜๋Š”์ง€ ๊ณผ์ •์„ ์ฐ๊ธฐ ๋•Œ๋ฌธ์— ์˜์ƒ๊ธธ์ด๊ฐ€ 2 ~ 3๋ถ„์ •๋„ ๋‚˜์˜จ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.)
  • ํ—ˆ๊ฐ€ ๋ฐ›๋Š”๋ฐ ์˜ค๋ž˜๊ฑธ๋ฆฌ๊ณ  ์ค‘๊ฐ„์ค‘๊ฐ„์— ๋‹ตํ• ๊ฒŒ ๊ฝค ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์ •์ฑ…์ ์ธ ๋ถ€๋ถ„

๋ฐฉ์†ก ๊ณผ์ •์„ ์–˜๊ธฐํ•ด๋ณด๋ฉด

  1. ๋ฐฉ์†ก ์ƒ์„ฑ ⇒ ์œ ํŠœ๋ธŒ ๋ฐฉ์†ก ์ƒ์„ฑ
  2. ๋ฐฉ์†ก ์‹œ์ž‘ ⇒ ์ŠคํŠธ๋ฆผํ‚ค ์ƒ์„ฑ ํ›„ ๋ฐฉ์†ก ์‹œ์ž‘
  3. ๋ฐฉ์†ก ์ข…๋ฃŒ ⇒ ์ŠคํŠธ๋ฆผํ‚ค ์ œ๊ฑฐ ํ›„ ๋ฐฉ์†ก ์ข…๋ฃŒ

์ฒ˜์Œ์—๋Š” default ์ŠคํŠธ๋ฆผํ‚ค๋กœ ๊ณ„์† ํ™œ์šฉํ•˜๋ ค๊ณ  ํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ํ˜ผ์ž ๋ฐฉ์†กํ•  ๋•Œ ์ŠคํŠธ๋ฆผํ‚ค๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ•˜๋Š”๋ฐ ์ŠคํŠธ๋ฆผํ‚ค ์ค‘๋ณต ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์–ด ์„œ๋น„์Šค์— ์˜ํ–ฅ์ด ๊ฐˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐฉ์†ก ์‹œ์ž‘ํ•  ๋•Œ ๋งŒ๋“ค๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์š”์ฒญ ์ˆ˜ ์ œํ•œ ๋ฐ ์†๋„

  • ์œ ํŠœ๋ธŒ ๋™์‹œ ์†ก์ถœ์„ ํ•˜๋ฉด์„œ ์ฑ„ํŒ…๋„ ์„œ๋น„์Šค๋กœ ๊ฐ€์ ธ์˜ค๋ ค๊ณ  ์‹œ๋„๋ฅผ ํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ•˜๋ฃจ์— 1๋งŒ๊ฐœ์˜ ์ œํ•œ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ฒฐ๊ตญ ํฌ๋กค๋งํ•ด์„œ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ณ€๊ฒฝํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • ์–ด๋“œ๋ฏผ์ด ์ƒํ’ˆ๊ด€๋ จํ•ด์„œ ์„ค๋ช…ํ•  ๋•Œ ์œ ํŠœ๋ธŒ์— ์ฑ„ํŒ…์œผ๋กœ ์•Œ๋ ค์ฃผ๊ธฐ ์œ„ํ•ด์„œ API๋ฅผ ์ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋กœ์ง์ด ์ข€ ์žˆ๋‹ค๋ณด๋‹ˆ๊นŒ ์˜ค๋ž˜๊ฑธ๋ฆฐ๋‹ค๋Š” ์ƒ๊ฐ์— @EventListener๋ฅผ ํ†ตํ•ด์„œ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ๋กœ์ง์„ ์‹คํ–‰์‹œํ‚ค๊ฒŒ ํ•˜๊ณ  ๋น„๋™๊ธฐ๋กœ ์ฒ˜๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.

antMedia์™€ broadband์˜ ๋กœ์ง ์ฐจ์ด

์œ ํŠœ๋ธŒ ์ŠคํŠธ๋ฆฌ๋ฐ ๊ณต์‹๋ฌธ์„œ์™€ ์—”ํŠธ๋ฏธ๋””์–ด ๊ณต์‹๋ฌธ์„œ๋ฅผ ๋ณด๋ฉด์„œ ํฐ ๋ฌธ์ œ๋Š” ์—†์—ˆ์ง€๋งŒ ์„œ๋น„์Šค์— ์ ์šฉํ•  ๋–„ broadband IDC์™€์˜ ๋กœ์ง์ด ์ฐจ์ด๊ฐ€ ์žˆ์—ˆ๋Š”๋ฐ ์ด ๋ถ€๋ถ„์„ ์ฝ”๋“œ์— ์–ด๋–ป๊ฒŒ ์ ์šฉํ• ์ง€ ๊ณ ๋ฏผํ•˜์˜€์Šต๋‹ˆ๋‹ค.

broadband IDC

์ƒ์ ๋งˆ๋‹ค ์ด๋ฏธ ๊ณ ์œ ํ•œ ์ŠคํŠธ๋ฆผํ‚ค๊ฐ€ ์กด์žฌํ•ด์„œ ๋ชจ๋“  ๋ฐฉ์†ก์˜ ์ŠคํŠธ๋ฆผ๊ธฐ๊ฐ€ ๋™์ผ

๋ฐฉ์†ก ์ƒ์„ฑ๋กœ์ง ⇒ ๋ฐฉ์†ก ์‹œ์ž‘ ๋กœ์ง์‹œ ์‹œ์ฒญ์ฃผ์†Œ ์š”์ฒญ ๋ฐ ๋ฐฉ์†ก ์‹œ์ž‘ ⇒ ๋ฐฉ์†ก ์ข…๋ฃŒ ๋กœ์ง ์‹œ ์‹œ์ฒญ์ฃผ์†Œ ์ œ๊ฑฐ ๋ฐ ๋ฐฉ์†ก ์ข…๋ฃŒ

antMedia

๋ชจ๋“  ๋ฐฉ์†ก์˜ ์ŠคํŠธ๋ฆผํ‚ค๊ฐ€ ๋‹ค๋ฆ„

๋ฐฉ์†ก ์ƒ์„ฑ ๋กœ์ง ⇒ ๋ฐฉ์†ก ์‹œ์ž‘ ๋กœ์ง ์‹œ ์ŠคํŠธ๋ฆผํ‚ค ์ƒ์„ฑ ๋ฐ ๋ฐฉ์†ก ์‹œ์ž‘ ⇒ ๋ฐฉ์†ก ์ข…๋ฃŒ ๋กœ์ง ์‹œ ์ŠคํŠธ๋ฆผํ‚ค ์ œ๊ฑฐ ๋ฐ ๋ฐฉ์†ก ์ข…๋ฃŒ

์ด ์ฝ”๋“œ๋Š” ์ปค๋ฉ˜๋“œ ํŒจํ„ด๊ณผ ์ „๋žตํŒจํ„ด์œผ๋กœ ํ’€์–ด๋ดค์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ž‘์„ฑํ•œ ํ›„์— ๋งํฌ๋กœ ๋‹ฌ์•„๋†“๊ฒ ์Šต๋‹ˆ๋‹ค.

'๊ฒฝํ—˜' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

ํŒŒ์ผ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜  (0) 2024.05.19
redis pub / sub ์•„ํ‚คํ…์ฒ˜  (0) 2023.04.23
๋””์ž์ธ ํŒจํ„ด ์ ์šฉ  (0) 2023.04.20
์ธ๋ฑ์Šค ๊ณ ๋ฏผ  (0) 2023.03.30