유튜브는 이제까지 동영상을 재생할 때 지금까지 사용자 환경이 플래시를 지원하는 경우 플래시 플레이어를 우선 사양으로 지원해왔다. 하지만 이젠 플래시 대신 HTML5를 기본 설정으로 이용한다.
유튜브가 HTML5로 동영상 재생을 지원하기 시작한 건 지난 2010년이다. 당시에는 플래시가 HTML5보다 더 많은 사용자의 지지를 받고 있었다. 이는 동영상을 스트리밍할 때 시청자 쪽 통신 환경에 따라 자동으로 콘텐츠 크기를 변경하는 ABR(Adaptive BitRate)를 HTML5가 지원하지 않는다는 게 가장 큰 이유 가운데 하나였다.
하지만 유튜브 측이 개발을 계속 진행, 크롬과 인터넷 익스플로러11, 사파라8.1, 파이어폭스 등 주요 브라우저에서 유튜브 동영상을 재생할 때 HTML5를 기본 설정으로 하게 된 것.
HTML5의 핵심 기술이라고 할 수 있는 건 먼저 MSE(Media Source Extensions). MSE는 HTTP 다운로드를 이용해 동영상 스트리밍 재생을 위해 만들어진 HTML5용 자바스크립트 API다. W3C에 의해 표준화된 이 기술은 엑스박스와 플레이스테이션4 같은 콘솔 게임기나 크롬캐스트 브라우저 등에서 스트리밍 재생을 가능하게 해준다.
다음은 VP9. VP9는 구글이 개발하고 있는 무료 동영상 압축 코덱이다. HTML5는 VP9를 이용해 고해상도 동영상을 평균 대역폭 35%까지 절감할 수 있게 됐다. 이를 통해 고해상도 동영상을 쉽게 재생할 수 있게 되면서 4K 동영상과 60프레임 동영상을 더 쉽게 즐길 수 있게 됐다. 또 동영상 재생이 시작될 때까지의 속도는 기존대비 15∼80%나 빨라진다.
다음은 EME(Encrypted Media Extensions)와 CENC(Common Encryption). 플래시나 실버라이트 등은 콘텐츠 보호 기술이나 파일 포맷 등까지 세세하게 지정한 동영상을 재생하려면 전용 플러그인이 필요했다. EME는 DRM으로 보호한 콘텐츠를 웹사이트에서 플러그인 없이 재생할 수 있게 해준다. CENC는 암호화 방식과 DRM 메타 데이터 공통화를 위한 표준이다. 이들을 결합해 다양한 콘텐츠 보호 기술을 구사하면서도 HTML5를 이용해 간편하게 동영상을 재생할 수 있게 된 것이다.
또 WebRTC는 실시간 통신을 위한 API다. 특정 플러그인 없이 웹브라우저에서 구글 행아웃 같은 화상 통화를 할 수 있게 해주는 기술이다. 다음은 풀스크린(Fullscreen). 새로운 전체 화면 API를 HTML5로 이용해 유튜브에서 재생한 4K 동영상도 전체 화면으로 시청할 수 있다. 또 유튜브에서 HTML5가 동영상 재생 기본 플레이어로 설정되는 만큼 퍼가기를 할 때에도 오브젝트 태그와 플래시 API를 이용한 게 아니라 아이프레임을 이용한 걸 권장한다고 한다.
전자신문인터넷 테크홀릭팀
이원영IT칼럼니스트 techholic@etnews.com