HLS 비디오 제공

이 항목에서는 Apple에서 구현한 HTTP 기반 미디어 스트리밍 프로토콜인 HTTP 라이브 스트리밍 (HLS) 에 대해 학습합니다.

개요

HLS 프로토콜은 비디오를 작은 파일 다운로드 시퀀스로 나누고, 각 다운로드는 HTTP를 사용하여 비디오의 짧은 청크 하나를 로드합니다. 스트림이 재생될 때 클라이언트는 다양한 데이터 전송률로 인코딩된 동일한 자료를 포함하는 여러 다른 대체 스트림 중에서 선택할 수 있으므로 스트리밍 세션이 사용 가능한 데이터 전송률에 맞게 조정될 수 있습니다. 스트리밍 세션이 시작될 때 사용 가능한 다양한 하위 스트림에 대한 메타데이터가 포함된 확장 재생 목록을 다운로드합니다.

서문

HLS는 iOS 및 Android에 대한 기본 지원 덕분에 모바일 장치에서 비디오를 스트리밍하기 위한 사실상의 표준이 되었습니다. HLS를 사용하여 비디오를 전송하면 다음과 같은 여러 가지 이점이 있습니다.

  • (클라이언트 기반) 적응 비트레이트 선택 지원
  • 표준 HTTP 포트를 통해 제공
  • 간단한 텍스트 기반 매니페스트 형식
  • 독점 스트리밍 서버가 필요하지 않음

HLS 생성

비디오 클라우드는 H.264 (MP4) 및 H.263 (FLV) 과 함께 비디오 인코딩 옵션으로 HLS를 지원합니다. 인제스트 프로파일은Dynamic Ingest API또는 업로드 모듈을 사용하여 비디오를 업로드할 때 생성되는 변환 수와 유형을 결정합니다. 업로드 시 사용되는 인제스트 프로파일에 따라 HLS 변환이 해당 프로파일의 일부로 자동으로 생성될 수 있습니다. 인제스트 프로파일 및 각 프로파일로 작성된 변환 유형에 대한 자세한 내용은표준 인제스트 프로파일을참조하십시오.

동적 인제스트는 사용자 지정 인제스트 프로필을 지원하지만 지금은 사용자 지정 프로필을 만들 수 없습니다. 맞춤 프로필이 필요한 경우 브라이트코브 솔루션 엔지니어 또는 계정 관리자에게 문의하십시오.

하나 이상의 HLS 변환을 포함하는 인제스트 프로파일을 선택하거나 만든 후에는 비디오를 업로드할 때마다Dynamic Ingest API또는 업로드 모듈을 사용하든 관계없이 비디오에 HLS 변환이 포함됩니다.가 프로파일의 일부로 지정되었습니다.

HLS 재생

브라이트코브 플레이어에는 기본적으로 HLS 재생 엔진이 포함되어 있습니다. 플레이어에 제공하는 비디오에 HLS 변환이 포함되어 있으면 기본 재생 순서는 HLS, HTML5, 플래시이기 때문에 MP4를 시도하기 전에 재생됩니다. 브라우저가 기본적으로 HLS를 지원하는 경우 해당 기능 (예: 데스크톱 또는 iOS의 Safari) 을 사용합니다. 브라우저가 HLS를 지원하지 않지만 브라우저에 Flash가 설치된 경우 Flash 폴백이 로드됩니다. 플레이어의 기술 순서를 변경하여 이 동작을 변경할 수 있습니다. 자세한 내용은재생 기술 안내서를참조하십시오.

Video Cloud는 HLS 암호화를 제공하여 HTTP를 통해 암호화된 비디오를 전송하여 iOS를 실행하는 기기에서 재생할 수 있습니다. 자세한 내용은HLS 암호화로 비디오 보호를참조하십시오.

브라이트코브 플레이어는 사용 가능한 대역폭과 인코딩을 고려하여 가능한 최고 품질의 시청 환경을 보장합니다. 이것이 항상 사용 가능한 최고 비트 전송률 변환을 사용하는 것을 의미하지는 않습니다. 플레이어가 300px x 150px 인 경우 4K 스트림을 다운로드하는 데 대역폭이 낭비됩니다. 기본적으로 플레이어는 가장 최근에 감지된 세그먼트 대역폭보다 작은 가장 높은 비트레이트 변형을 로드하려고 시도합니다. 현재 플레이어 크기보다 큰 치수가 여러 개 있는 경우 현재 플레이어 크기보다 큰 크기만 전환됩니다.