본문 바로가기
줌 아키텍처

영상 회의 품질 개선의 이해

by 라인하트 2022. 4. 19.

   영상회의는 원격지에 떨어진 사람들이 비대면으로 회의를 할 수 있도록 지원합니다. 영상회의에서  품질을 이야기할 때 고려되는 트래픽은 세 가지입니다.  

 

  • 음성 (Voice)
       마이크에서 흡입한 음성을 송신 또는 수신합니다. 음성은 트래픽의 양이 항상 일정하고, 일반적으로 64 kbps 정도의 트래픽을  버스티 합니다. 3 가지 실시간 트래픽을 송수신하는 과정입니다.

  • 영상 (Video)
       카메라에 찍힌 영상을 송신 또는 수신합니다. 영상은 트래픽의 양이 일정하지 않고 버스티합니다. 영상 품질에 따라 차이가 있지만, Full HD는 약 4 Mbps, HD는 약 2.6 Mbps, 고화질 영상은 600 kbps의 트래픽을 유발합니다.

  •  콘텐츠 (Contents)
       PC의 화면을 송신 또는 수신합니다. 콘텐츠는 영상과 동일하게 트래픽의 양이 일정하지 않고 버스티합니다. 단지 영상에 비해 트래픽 양이 적고, 패킷 손실과 지연에 민감하지 않습니다. 콘텐츠는 큰 범주에서 영상으로 취급할 수 있습니다. 

 

   위의 트래픽은 원본을 그대로 전송하지 않습니다. 예를 들어, 352 X 288 픽셀 크기의 영상을 전달한다고 가정할 때, 하나의 픽셀을 256가지 색으로 표현하기 위해 8 비트가 필요하고 초당 30 프레임(fps, frame per seconds)으로 전달해야 합니다. 따라서, 352 X 288 X 8 bitsX 30 fps = 24 Mbps. 초 당 24 Mbps의 대역폭이라는 엄청난 트래픽을 유발하기 때문에 압축을 위한 코덱(CODEC)이 필요합니다. 

   코덱은 압축 (Coding) 과 압축 해제 (DECoding)의 앞 글자를 딴 말입니다. 대표적인 영상 압축 코덱은 H.264이고, 대표적인 음성 압축 코덱은 G.711과 OPUS입니다. 사람이 말하거나 하지 않거나 상관없이  일반적으로 패킷 당 20ms의 음성을 압축하여 초당 50개의 트래픽을 전달합니다. 코덱에 따라 패킷 당 30ms 또는 40ms의 음성을 압축하기도 합니다. 

 

   영상 트래픽의  압축 방식을 간단하게 정리합니다. 영상을 전달할 때 초 당 30 프레임을 모두 다 전달하지 않습니다. 완전하게 이미지를 모두 전달하는 프레임을 I 프레임 (Intraframe)이라하고, I 프레임에 기반하여 움직임을 예측하는 P 프레임 (Predictive)이 있습니다. 따라서, I 프레임을 전달한 후 I 프레임과 변화된 부분만을 전달합니다. 앞 프레임과 동일한 부분은 이미 상대방이 가지고 있으므로 전달하지 않습니다. 따라서, I 프레임을 전달할 때 트래픽의 양이 크게 상승하고, P 프레임을 전달할 때 트래픽의 양이 줄어듭니다. 

 

H.264 AVC 또는 MPEG-4 Part 10

   영상 트래픽의 대표적인 코덱은 H.264 입니다. 2003년 5월  매우 높은 데이터 압축률을 가진 영상 코덱 표준으로 발표하였습니다. ITU-T는 H.264라 명명하였고, ISO/IEC는 MPEC-4 Part 10로 명명하였습니다. 일반적으로 AVC(Advanced Video Coding)라고 부릅니다. H.264는 영상 코딩 기술을 사용 환경에 맞게 특정 기술을 모아놓은 프로파일을 이용합니다. 최초 표준에는 Baseline, Main, Extended 프로파일이 있었고, 나중에 High Profile 이 추가되었고, 현재는 21개 이상의 프로파일이 있습니다. 주요 프로파일은 다음과 같습니다. 

 

  • Baseline Profile 
    최초 표준에 포함되었으며, 모바일 방송과 같은 저전력, 저 해상도에 적합한 기술들로 이루어진 프로파일

  • Main Profile 
    압축률을 최대한 높이기 위한 기술들로 이루어진 프로파일

  • Extended Profile
    스트리밍 환경에 적합한 기술들로 이루어진 프로파일

  • High Profile
    High Profile은 확장 표준안이며, 세부적으로 다양한 프로파일이 존재합니다.  High Profile은 고선명 영상을 얻을 수 있게하고, 높은 해상도와 색상 정보를 포함하면서도 낮은 대역폭을 요구하는 것이 특징입니다. 

   H.264 AVC는 전통적인 영상회의 장비들이 많이 사용합니다.

 

H.264 SVC

   영상 트래픽의 대표적인 코덱은 H.264 이고, 줌 미팅과 같은 클라우드 솔루션은 H.264 SVC를 사용합니다. SVC (Scalable Video Coding)는 H.264 영상 압축 표준의 Annex G Extension으로 2007년 7월에 최종 승인되었습니다. H.264 SVC 표준화 과정에 폴리콤 (Polycom), 비됴(Vidyo), 시스코(Cisco), 라드비젼(RADVISION) 이 참여하였습니다. SVC가 표준으로 채택되면서 5 개의 프로파일이 새롭게 추가되었습니다.  

 

  • Scalable Baseline Profile 
    주로 영상회의, 모바일과 CCTV용 어플리케이션에서 활용

  • Scalable Constrained Baseline Profile
    주로 실시간 커뮤니케이션에 활용

  • Scalable High Profile
    주로 방송 또는 스트리밍 어플리케이션에서 활용

  • Scalable Constrained High Profile
    주로 실시간 커뮤니케이션에서 활용

  • Scalable High Intra Profile
     주로 전문적인 어플리케이션에서 활용

 

   SVC는 Scaling을 통해 여러 개의 서브셋 비트스트림으로 전달합니다.   SVC는 하나 이상의 서브셋 비트스트림을 포함한 다수의 비트스트림을 보냅니다. 서브셋 비트스트림은 기존 H.264 AVC(Advanced Video Coding)와 같은 품질로 디코딩하면서 낮은 대역폭을 차지하도록 더 낮은 공간 해상도 (사진 크기), 주기해상도 (프레임 수) 또는 영상 품질 신호로 구성합니다. 

  • 주기 해상도 (Temporal Resolution)
    초당 몇 장의 사진을 보내는 가를 기준으로 프레임수를 정합니다. 프레임이 높을수록 고품질입니다.
     


  • 공간 해상도 (Spatial Resolution)
    어떤 크기의 사진을 보는 가를 나타냅니다. 해상도가 높을수록 고품질입니다. 
  • 품질 해상도 (Quality Resolution)
    사진 한장에 포함되는 픽셀의 수가 조밀할수록 고품질입니다. 

   쉽게 설명하면, SVC는 영상 단말이 기본적인 Base Layer 영상을 전송하고, Base Layer를 참조하는 고품질 영상을 Enhancement Layer로 보냅니다. 360p 영상의 Enhancement Layer는 실제 360p 나 720p 영상보다 훨씬 적은 대역폭을 점유합니다. SVC는 송신 영상 단말이 여러 개의 영상을 동시에 보내고, 수신 영상 단말이 원하는 영상을 생성합니다.  

 

   기존의 AVC는 하나의 좋은 영상을 낮은 대역폭으로 보내는 기술이지만, SVC는 저품질부터 고품질 영상까지 다수의 영상을 보내는 방식입니다. SVC는 많은 멀티미디어 어플리케이션에 필요한 기능으로 영상을 다수의 단말에 전송할 때 효과적입니다. 수신하는 단말의 종류와 성능이 다양하므로 하나의 영상으로는 방송이나 회의가 불가능하기 때문입니다. 수신 단말의 요구 성능에 따랄 다양한 영상을 전달할 수 있습니다. 예를 들어, 스마트폰은 360p도 충분하지만, 55"디스플레이를 가진 영상 단말은 720p 영상이 필요하고, 65" 디스플레이를 가진 영상 단말은 1080p 영상이 필요합니다. 

 

   또한, H.264 SVC는 영상을 트랜스코딩을 하는 MCU가 필요없습니다. SVC를 지원하는 단말이 직접 처리하기 때문에 중앙 서버는 트랜스코딩이 아닌 스위칭을 합니다. 예를 들면, 1080p, 720p 단말, 480p 단말이 서로 다자간 회의를 한다고 가정한다면, 1080p 단말은 720p 영상과 480p영상을 만들어서 전송하고, 수신 단말은 자신이 원하는 것만을 재생합니다. 기존의 MCU가 하던 역할을 영상회의 단말에서 처리하도록 함으로써 MCU가 필요 없게 되는 것입니다. 

 

영상 품질을 개선하기 위한 방법 (1/3) - 대역폭 확보

   영상회의 품질을 높이는 방법은 버스티한 영상 트래픽이 지연 없이 전달하는 것입니다. 영상 트래픽을 안정적으로 전송하기 위해서는 충분한 인터넷 대역폭을 확보해야 합니다.  줌 미팅이나 웨비나 토론자에게 필요한 권장 대역폭은 다음과 같습니다. 

 

  • 1:1 비디오 통화:
    • 고화질 비디오: 600kbps(업/다운)
    • 720p HD 비디오: 1.2 Mbps(업/다운)
    • 1080p HD 비디오: 3.8 Mbps/3.0 Mbps(업/다운)
  • 그룹 비디오 통화:
    • 고화질 비디오: 1.0 Mbps/600 kbps(업/다운)
    • 720p HD 비디오: 2.6 Mbps/1.8 Mbps(업/다운)
    • 1080p HD 비디오: 3.8 Mbps/3.0 Mbps(업/다운)
    • 갤러리 보기 수신: 2.0 Mbps(25개 보기), 4.0 Mbps(49개 보기)
  • 화면 공유만(비디오 썸네일 없음): 50-75 kbps
  • 비디오 썸네일이 있는 화면 공유: 50-150 kbps
  • 오디오 VoiP: 60-80 kbps
  • Zoom Phone: 60-100 kbps

 

   웹 세미나를 참석하는 참석자에게 필요한 권장 대역폭은 다음과 같습니다. 

  • 비디오를 사용하는 토론자:
    • 고화질 비디오의 경우 ~600 kbps(다운)
    • 720p HD 비디오의 경우 ~1.2-1.8 Mbps(다운)
    • 1080p HD 비디오의 경우 ~2-3 Mbps(다운)
  • 화면 공유만(비디오 썸네일 없음): 50-75 kbps(다운)
  • 비디오 썸네일이 있는 화면 공유: 50-150 kbps(다운)
  • 오디오 VoiP: 60-80 kbps(다운)

 

  예를 들어, 참석자가 7X7 화면을 본다면 50 kbps ~ 100 kbpsX 49 = 2.4 Mbps ~ 5 Mbps의 대역폭이 필요합니다.

 

    Bandwidth
Resolution Height Video Voice
90p h<120 40k-80k 60k-80k
180p 120<h<270 120k - 200k
360p 270<h<450 450k-600k
720p 450<h<850 450p:700k-800k
630p:800k-1mb
720p:1.2mb-2mb
1080p h>850 3mb (5 w/ ss)

 

   또한, 듀얼 모니터를 사용한다면, 훨씬 더 많은 대역폭이 필요합니다. 왜냐하면, 하나의 화면에 콘텐츠를 표시하고, 또 다른 디스플레이에 영상을 표시하기 때문입니다. 

 

 

   정리하면, 고속도로에 진입하는 차가 많을 때는 어떤 테크닉과 기술도 무용지물입니다. 차가 지나가는 차선을 늘려야 합니다. 대역폭 문제를 해결하지 않고 품질을 개선할 수 없습니다.

 

영상 품질을 개선하기 위한 방법 (2/3) - 줌 클라이언트 사용 

   하지만, 클라우드 기반의 영상회의는 인터넷을 사용하기 때문에 모든 구간에 대역폭이 충분한 지를 확인할 수 없습니다. 줌 클라이언트는 인터넷을 사용하더라도 안정적인 품질을 제공하기 위해 최적화 작업을 오랫동안 진행하였습니다. 아래 데이터는 2021년 1월 웨인하우스에서 발표한 테스트 자료입니다. 줌은 가장 안정적인 클라이언트입니다. 

 

Quality Evaluation Enterprise Meetings & Calling report from Wainhouse Research January 2021

 

영상 품질을 개선하기 위한 방법 (3/3) - 영상 잡음 제거 

   지속적으로 영상 품질이 좋지 않을 경우, 줌 클라이언트는 수신된 영상에서 잡음을 제거할 수 있습니다. 회의 참가자는 수신된 영상 보다 훨씬 더 나은 품질을 만들 수 있습니다. 단점은 CPU 사용률이 높기 때문에 CPU 사용량을 살펴봐야 합니다. 설정하는 방법은 다음과 같습니다. 

 

Step 1 : 비디오 설정 화면으로 이동

   줌 미팅 중에 "비디오" 아이콘을 클릭하고 "비디오 설정"을 클릭합니다. 

 

 

Step 2 : 고급 설정으로 이동

    비디오 설정 화면 맨 아래 "고급" 을 클릭합니다. 

Step 3 : '소음 제거로 비디오 품질 최적화' 선택

   아래와 같이 '소음 제거로 비디오 품질 최적화'를 선택를 선택합니다. 

 

참고자료

https://support.zoom.us/hc/ko-kr/articles/201362023#h_d278c327-e03d-4896-b19a-96a8f3c0c69c   

https://blog.zoom.us/which-meeting-calling-solutions-deliver-the-best-quality-experience/

https://support.zoom.us/hc/en-us/articles/4404223950605-Optimizing-video-quality-with-de-noise