안녕하세요 자르반입니다.
이번 주 부터 드디어 테크세미나를 시작합니다!
첫 테크세미나는 제가 시작을 하는데요😎
주제는 WebRTC 입니다.
간단한 주제 선정 이유는 작년에 해커톤을 하면서 처음으로 WebRTC라는 기술을 접하게 됐고
그 당시, 제가 공부했던 것(?)들을 풀면 좋을 것 같아서 준비했습니다.
처음 블로그에 글을 작성하는 것이다보니 부족한 부분많아 수정할 부분이 있으면 적극 피드백 부탁드립니다!
WebRTC를 알기 전, 우리가 자주 보는 실시간 스트리밍 서비스란 무엇일까요?!
개인용 컴퓨터 보급, 3D 게임, AR/VR, AI의 발전, 100년전에는 상상 속에서만 가능했던 일들이 지금 이 시대에는 눈 앞에 펼쳐지고 있다. 이 처럼 시간이 지나면서 많은 기술들이 발전되고 있고 지금 이 시간에도 기술은 발명되고 있다.
오늘 이 시간에는 그 중에서도 엔터분야에서 주목받는 기술인 실시간 스트리밍 서비스에 대해 이야기 해보려고 한다.
실시간 스트리밍 서비스란?
그렇다면, 우리가 실시간 스트리밍 서비스를 이용할 때 가장 중요한 것이 무엇일까?
실시간 스트리밍 서비스를 많이 이용해봤다면 우리는 이에 우연히 경험했을 것이다.
축구를 보는데 내 화면에서는 골 넣기 10초 전인데 옆집에서는 "골"이라고 외쳐 골이야? 어리둥절하게 만드는 상황.
아프리카 tv에서 bj가 롤 같은 게임 1vs1 한 명을 구하는데 딜레이가 더 적은사람이 들어가는 것 등.
이처럼, 실시간 스트리밍 서비스에서 중요한 것은 바로 지연시간(Latency)이다.
위의 표는, Latency에 따른 실시간 스트리밍 서비스에 관한 표이다.
이렇게 스트리밍 서비스의 역할에 따라 최소한으로 필요한 Latency가 다르다.
왜 앞서 축구예시처럼 각 매체별 Latency가 다른 것일까?
사실 라이브 스트리밍 서비스는 방송 송출부터 사용자의 직접적인 전달까지 복잡한 파이프라인을 거쳐간다. 특정 한가지 이유로 지연시간이 늘어나는 것이 아니라 여러가지 이유가 복합적으로 섞이면서 원인을 알 수 없다. 그리고 파이프라인 단계를 어떻게 설정하는지에 따라 많은 영향을 준다.
그렇다면, Latency를 낮추기 위해서는 어떻게 해야할까?
실시간 스트리밍 서비스의 Latency는 다음과 같은 Trade off 관계가 있다.
Latency vs Scalability vs Quality
위 표에서 보이는 것과 같이
Scale이 커질 수록 Latency가 줄어들고, 고 해상도일 수록 Latency가 줄어드는 것을 볼 수 있다.
따라, 앞서 말했던 것 처럼 실시간 스트리밍 서비스의 성격에 따라 Latency를 조절해야 한다.
다음시간에는 Latency 이미지에 있는 실시간 스트리밍 중, Reat Time에 가까운 WebRTC기술에 대해 제대로 알아보겠습니다.
[Reference]