서문
HEVC의 장점
H.265라고도 하는 고효율 비디오 코딩 ( HEVC ) 은 널리 사용되는고급 비디오 코딩 (AVC/H.264) 의 후속 제품으로 설계된 비디오 압축표준입니다. AVC와 비교하여 HEVC는 동일한 수준의 비디오 품질에서 약 20% 더 나은 데이터 압축을 제공하며, 동일한 비트 전송률에서 상당히 향상된 비디오 품질을 제공합니다.
이 향상된 압축 기능은 대역폭 사용량을 줄이고, 낮은 비트 전송률에서 더 높은 비디오 품질을 제공하며, 첫 번째 프레임 소요 시간 (TTFF) 을 줄여 최종 시청자 만족도를 높여줍니다.
단점
가장 큰 단점은 새로운 기술이기 때문에 HEVC 비디오가 아직 클라이언트 (장치+OS+브라우저/앱 의미) 에 의해 널리 지원되지 않는다는 것입니다. 또한 일부 클라이언트는 재생 중에 HEVC와 AVC 세그먼트 사이를 전환 할 수 있지만 다른 클라이언트는 그렇지 않습니다.
또한 HEVC 비디오는 H.264보다 트랜스코딩하는 데 약 2-4배 더 오래 걸립니다.
가용성
HEVC 지원은유료 애드온비디오 클라우드용. HEVC 지원에 관심이 있는 경우 고객 성공 관리자에게 문의하십시오.
브라이트코브의 HEVC 솔루션
시청자가이를 지원하지 않는 기술을 사용하도록 허용하면서 HEVC의 이점을 제공하기 위해 Brightcove는 이전의 비 HEVC 클라이언트를 지원하고 대역폭 사용을 최적화하는 포괄적 인 솔루션을 개발했습니다. 이 솔루션에는 여러 부분이 있습니다.
- 트랜스코딩 중 HEVC 및 AVC 인코딩 변환 생성 (점진적 다운로드를 위한 MP4 생성 옵션 포함)
- HEVC 및 AVC 변환에 대한 참조를 모두 포함하는 매니페스트 생성:
- HLS: 혼합 변형 스트림 (비트레이트 순)
- DASH: HEVC 및 H.264를 위한 별도의 적응 세트와 전환 가능으로 선언하는 추가 속성
- 뷰어 클라이언트 유형에 따른 필터링 로직:
- 요청 장치가 기존의 비 HEVC 지원 장치 인 경우 매니페스트에서 HEVC 스트림을 제거합니다.
- HEVC 지원 비전환 장치로 향하는 매니페스트에서 H.264 스트림을 제거합니다.
- 장치가 두 코덱을 모두 디코딩하고 둘 사이를 전환 할 수있는 경우 HEVC 및 H.264 스트림의 최적 하위 집합을 남깁니다.
지원되는 클라이언트
현재 HEVC는 브라이트코브 웹 또는 네이티브 디바이스 플레이어를 사용하는 다음 클라이언트에서 종단 간 지원됩니다.
브라이트코브 웹 플레이어 | |
---|---|
OS | 브라우저 |
MacOS 10.13 이상 | Safari |
iOS 11 이상 | Safari |
Apple TV | 에어플레이를 통해 |
윈도 10 | Edge (플러그인이있는 레거시 버전 ) |
브라이트코브 네이티브 디바이스 SDK 플레이어 | |
---|---|
SDK | OS |
iOS SDK | iOS 11 이상 |
tvOS SDK | 틀: tvOS |
안드로이드 SDK | 안드로이드 API 레벨 21 (롤리팝 버전 5.0) 이상[1-1] |
참고
- [1-1] 자세한 내용은안드로이드용 네이티브 SDK를 사용한 HEVC 셀렉션을 참조하십시오.
HEVC 수집 프로필
계정에 HEVC가 활성화된 경우 HEVC 렌디션을 재생하려면 업로드 모듈 또는 동적 인제스트 API를 사용하여 비디오를 인제스트할 때 HEVC 인제스트 프로필 (컨텍스트 인식 인코딩 또는 동적 전송) 중 하나를 선택하기만 하면 됩니다.
이러한 프로필의 전체 JSON 세부 정보는아래에 나와있습니다. CAE (Context Aware Encoding) 프로필을 사용하여 소스에 대한 최상의 변환 세트를 만들고 스토리지를 최적화하는 것이 좋습니다. CAE에서는 소스를 검사하는 데 처리 시간이 다소 오래 걸리므로 게시 가능한 렌디션을 최대한 빨리 가져오는 것이 우선이라면 Fast Publish옵션을 사용하여 사용자 지정 인제스트 프로필을 만들 수 있습니다.
빠른 게시 옵션이나 다른 이유로 사용자 지정 HEVC 프로필을 만들어야 하는 경우 Studio 관리자 페이지의고급 편집기또는 Ingest Profiles API를 사용해야 한다는 점에 유의하세요 . HEVC 변환은 Studio의 단순 편집기에 표시되지 않습니다. 아래에서 사용 가능한 다이내믹 딜리버리 렌디션을 찾을 수있습니다.
또한 HEVC의 표준 변환은 너비가 1920px 이하입니다. 그러나 UHD 변환 (4K 이상)은 지원합니다. UHD 변환이 필요한 경우 Brightcove 지원에 요청을 제출하여 하나 이상의 생성을 요청할 수 있습니다.
사용자 정의 CAE 프로파일
표준 CAE 인제스트 프로필에는 혼합 HEVC/H.264 변환이 포함되지 않습니다. 그러나 그렇게하는 사용자 지정 테마를 만들 수 있습니다. 현재 HEVC에 대한 이러한 사용자 지정 CAE 프로필을 만들려면 In제스트 프로파일 API를 사용해야 합니다.
필수 필드 ( dynamic_origin
> 아래dynamic_profile_options
) 는 다음과 같습니다.
video_codecs
- 변환을 만들 코덱 배열입니다. 현재 지원되는 유일한 코덱 값은
h264
및hevc
video_codec_options
-
video_codecs에 지정된 각 코덱의 출력 옵션입니다. 의
video_codec_options
속성은 포함된 코덱 (현재 h264 또는 hevc) 의 이름을 가진 객체입니다. 이러한 각 개체에 대해 허용되는 속성은 다음과 같습니다.min_renditions
필수max_bitrate
max_first_rendition_bitrate
min_resolution
max_resolution
max_first_rendition_resolution
샘플
다음은 혼합된 변환이 포함된 샘플 CAE 프로필입니다.
{
"name": "multi-platform-extended-dynamic-hevc-mixed-codec",
"display_name": "Multiplatform Extended HEVC (CAE) mixed-codec",
"description": "Deliver high quality content for a wide range content types and screen sizes including mobile, desktop and large screens.",
"account_id": 1486906377,
"digital_master": {
"rendition": "passthrough",
"distribute": false
},
"renditions": [],
"packages": [],
"dynamic_origin": {
"renditions": [
"default/audio64",
"default/audio128",
],
"images": [
{
"label": "thumbnail",
"height": 90,
"width": 160
},
{
"label": "poster",
"height": 720,
"width": 1280
}
],
"dynamic_profile_options": {
"max_renditions": 10,
"min_renditions": 2,
"max_bitrate": 12000,
"max_first_rendition_bitrate": 1000,
"max_first_rendition_resolution": {
"width": 1280,
"height": 720
},
"video_codecs": [
"h264",
"hevc"
],
"video_codec_options": {
"h264": {
"min_renditions": 2,
"max_resolution": {
"width": 1280,
"height": 720
}
},
"hevc": {
"min_renditions": 2,
"max_resolution": {
"width": 1920,
"height": 1080
}
}
}
}
}
}
제한 사항
HEVC 지원에 대한 현재 제한 사항은 다음과 같습니다. 이러한 제한은 개선에 따라 변경될 수 있습니다.
- 표준 CAE 수집 프로필에는 현재 HEVC 변환이 포함되어 있습니다. HEVC 지원 장치에만 비디오를 제공 할 것이라는 것을 알고있는 경우에만 사용해야합니다. HEVC 및 H.264 변환을 모두 포함하도록 사용자 지정 프로필을 만들 수 있습니다. 위의사용자 지정 CAE 프로필섹션을 참조하십시오.
- HDR 및 10 비트 비디오는 지원되지 않습니다.
- 미디어 UI는 현재 모든 변환을 표시하고 각 변환 옆에 코덱 정보를 표시하지 않습니다.
부록 1: HEVC 수집 프로필
다음은 JSON에서 HEVC 프로파일의 전체 속성입니다.
- 다중 플랫폼 확장 HEVC (CAE)
- MP4를 사용하는 다중 플랫폼 확장 HEVC (CAE)
- 다중 플랫폼 확장 정적 H.264 + HEVC
- MP4를 사용하는 다중 플랫폼 확장 정적 H.264 + HEVC
- MP4를 사용하는 다중 플랫폼 확장 HEVC
CAE (컨텍스트 인식 인코딩) 프로파일
다중 플랫폼 확장 HEVC (CAE)
{
"version": 1,
"name": "multi-platform-extended-dynamic-hevc",
"display_name": "Multiplatform Extended HEVC (CAE)",
"description": "Deliver high quality content for a wide range content types and screen sizes including mobile, desktop and large screens.",
"account_id": -1,
"brightcove_standard": true,
"date_created": 1581706195164,
"date_last_modified": 1581706195164,
"digital_master": {
"rendition": "passthrough",
"distribute": false
},
"renditions": [
],
"packages": [
],
"dynamic_origin": {
"renditions": [
"default/audio64",
"default/audio128"
],
"images": [
{
"label": "thumbnail",
"height": 90,
"width": 160
},
{
"label": "poster",
"height": 720,
"width": 1280
}
],
"dynamic_profile_options": {
"min_renditions": 2,
"max_renditions": 8,
"min_resolution": {
"width": 320,
"height": 180
},
"max_resolution": {
"width": 1920,
"height": 1080
},
"max_frame_rate": 30,
"max_bitrate": 4200,
"max_first_rendition_bitrate": 250,
"video_codec": "hevc",
"fixed_frame_rate": true,
"bitrate_cap_to_bitrate_ratio": 1.5,
"buffer_size_to_bitrate_ratio": 2,
"bitrate_cap_offset": 0,
"buffer_size_offset": 0,
"sample_aspect_ratio": "1:1"
},
"hevc": true
},
"id": "5e470e014b23617ad079c486"
}
MP4를 사용하는 다중 플랫폼 확장 HEVC (CAE)
{
"version": 1,
"name": "multi-platform-extended-dynamic-hevc-with-mp4",
"display_name": "Multiplatform Extended HEVC (CAE) with MP4",
"description": "Deliver high quality content for a wide range content types and screen sizes including mobile, desktop, large screens, and syndication.",
"account_id": -1,
"brightcove_standard": true,
"date_created": 1581706195164,
"date_last_modified": 1581706195164,
"digital_master": {
"rendition": "passthrough",
"distribute": false
},
"renditions": [
],
"packages": [
],
"dynamic_origin": {
"renditions": [
"default/audio64",
"default/audio128",
"default/progressive2000"
],
"images": [
{
"label": "thumbnail",
"height": 90,
"width": 160
},
{
"label": "poster",
"height": 720,
"width": 1280
}
],
"dynamic_profile_options": {
"min_renditions": 2,
"max_renditions": 8,
"min_resolution": {
"width": 320,
"height": 180
},
"max_resolution": {
"width": 1920,
"height": 1080
},
"max_frame_rate": 30,
"max_bitrate": 3200,
"max_first_rendition_bitrate": 200,
"video_codec": "hevc",
"fixed_frame_rate": true,
"bitrate_cap_to_bitrate_ratio": 1.5,
"buffer_size_to_bitrate_ratio": 2,
"bitrate_cap_offset": 0,
"buffer_size_offset": 0,
"sample_aspect_ratio": "1:1"
},
"hevc": true
},
"id": "5e470e0c4c881c16fffdb88d"
}
동적 전달 프로필
다중 플랫폼 확장 정적 H.264 + HEVC
{
"version": 1,
"name": "multi-platform-extended-static-mixed-codec",
"display_name": "Multiplatform Extended Static H.264 + HEVC",
"description": "Deliver high quality content for a wide range content types and screen sizes including mobile, desktop and large screens.",
"account_id": -1,
"brightcove_standard": true,
"date_created": 1581706195164,
"date_last_modified": 1581706195164,
"digital_master": {
"rendition": "passthrough",
"distribute": false
},
"renditions": [
],
"packages": [
],
"dynamic_origin": {
"renditions": [
"default/video450",
"default/video700",
"default/video900",
"default/video1200",
"default/video2000",
"default/video2500",
"default/video3500",
"default/video3800",
"default/video300hevc",
"default/video550hevc",
"default/video1000hevc",
"default/video1300hevc",
"default/video1600hevc",
"default/video2850hevc",
"default/audio64",
"default/audio128"
],
"images": [
{
"label": "thumbnail",
"height": 90,
"width": 160
},
{
"label": "poster",
"height": 720,
"width": 1280
}
],
"hevc": true
},
"id": "5e46e57f305eb2517f27a543"
}
MP4를 사용하는 다중 플랫폼 확장 정적 H.264 + HEVC
{
"version": 1,
"name": "multi-platform-extended-static-mixed-codec-with-mp4",
"display_name": "Multiplatform Extended Static H.264 + HEVC with MP4",
"description": "Deliver high quality content for a wide range content types and screen sizes including mobile, desktop and large screens, and syndication.",
"account_id": -1,
"brightcove_standard": true,
"date_created": 1581706195164,
"date_last_modified": 1581706195164,
"digital_master": {
"rendition": "passthrough",
"distribute": false
},
"renditions": [
],
"packages": [
],
"dynamic_origin": {
"renditions": [
"default/video450",
"default/video700",
"default/video900",
"default/video1200",
"default/video2000",
"default/video2500",
"default/video3500",
"default/video3800",
"default/video300hevc",
"default/video550hevc",
"default/video1000hevc",
"default/video1300hevc",
"default/video1600hevc",
"default/video2850hevc",
"default/progressive2000",
"default/audio64",
"default/audio128"
],
"images": [
{
"label": "thumbnail",
"height": 90,
"width": 160
},
{
"label": "poster",
"height": 720,
"width": 1280
}
],
"hevc": true
},
"id": "5e46e59b135b6662f386559d"
}
MP4를 사용하는 다중 플랫폼 확장 HEVC
{
"version": 1,
"name": "multi-platform-extended-static-hevc-with-mp4",
"display_name": "Multiplatform Extended HEVC with MP4",
"description": "Deliver high quality content for a wide range content types and screen sizes including mobile, desktop, large screens, and syndication.",
"account_id": -1,
"brightcove_standard": true,
"date_created": 1581706195164,
"date_last_modified": 1581706195164,
"digital_master": {
"rendition": "passthrough",
"distribute": false
},
"renditions": [
],
"packages": [
],
"dynamic_origin": {
"renditions": [
"default/video300hevc",
"default/video550hevc",
"default/video1000hevc",
"default/video1300hevc",
"default/video1600hevc",
"default/video2850hevc",
"default/progressive2000",
"default/audio64",
"default/audio128"
],
"images": [
{
"label": "thumbnail",
"height": 90,
"width": 160
},
{
"label": "poster",
"height": 720,
"width": 1280
}
],
"hevc": true
},
"id": "5e46e57e708a441e00a7ba1a"
}
부록 2: HEVC 동적 전달 변환
다음은 JSON에서 HEVC 변환의 전체 속성입니다.
기본 HEVC 300
{
"id": "default/video300hevc",
"version": 0,
"name": "Default HEVC 300",
"kind": "video",
"account_id": "default",
"created_at": "2020-02-20T17:57:49.622898302Z",
"updated_at": "2020-02-20T17:57:49.622898302Z",
"encoding_settings": {
"aspect_mode": "preserve",
"decoder_bitrate_cap": 450,
"decoder_buffer_size": 600,
"fixed_keyframe_interval": true,
"fragment_duration": 2000,
"height": 270,
"keyframe_rate": 1,
"segment_seconds": 2,
"speed": 3,
"video_bframes": 3,
"video_bitrate": 300,
"video_codec": "hevc",
"video_codec_profile": "main",
"video_reference_frames": 6,
"width": 480
}
}
기본 HEVC 550
{
"id": "default/video550hevc",
"version": 0,
"name": "Default HEVC 550",
"kind": "video",
"account_id": "default",
"created_at": "2020-02-20T17:58:08.602132077Z",
"updated_at": "2020-02-20T17:58:08.602132077Z",
"encoding_settings": {
"aspect_mode": "preserve",
"decoder_bitrate_cap": 825,
"decoder_buffer_size": 1100,
"fixed_keyframe_interval": true,
"fragment_duration": 2000,
"height": 360,
"keyframe_rate": 1,
"segment_seconds": 2,
"speed": 3,
"video_bframes": 3,
"video_bitrate": 550,
"video_codec": "hevc",
"video_codec_profile": "main",
"video_reference_frames": 6,
"width": 640
}
}
기본 HEVC 1000
{
"id": "default/video1000hevc",
"version": 0,
"name": "Default HEVC 1000",
"kind": "video",
"account_id": "default",
"created_at": "2020-02-20T17:58:24.768036423Z",
"updated_at": "2020-02-20T17:58:24.768036423Z",
"encoding_settings": {
"aspect_mode": "preserve",
"decoder_bitrate_cap": 1500,
"decoder_buffer_size": 2000,
"fixed_keyframe_interval": true,
"fragment_duration": 2000,
"height": 432,
"keyframe_rate": 1,
"segment_seconds": 2,
"speed": 3,
"video_bframes": 3,
"video_bitrate": 1000,
"video_codec": "hevc",
"video_codec_profile": "main",
"video_reference_frames": 6,
"width": 768
}
}
기본 HEVC 1300
{
"id": "default/video1300hevc",
"version": 0,
"name": "Default HEVC 1300",
"kind": "video",
"account_id": "default",
"created_at": "2020-02-20T17:58:51.222403657Z",
"updated_at": "2020-02-20T17:58:51.222403657Z",
"encoding_settings": {
"aspect_mode": "preserve",
"decoder_bitrate_cap": 1950,
"decoder_buffer_size": 2600,
"fixed_keyframe_interval": true,
"fragment_duration": 2000,
"height": 576,
"keyframe_rate": 1,
"segment_seconds": 2,
"speed": 3,
"video_bframes": 3,
"video_bitrate": 1300,
"video_codec": "hevc",
"video_codec_profile": "main",
"video_reference_frames": 6,
"width": 1024
}
}
기본 HEVC 1600
{
"id": "default/video1600hevc",
"version": 0,
"name": "Default HEVC 1600",
"kind": "video",
"account_id": "default",
"created_at": "2020-02-20T18:00:00.347383018Z",
"updated_at": "2020-02-20T18:00:00.347383018Z",
"encoding_settings": {
"aspect_mode": "preserve",
"decoder_bitrate_cap": 2400,
"decoder_buffer_size": 3200,
"fixed_keyframe_interval": true,
"fragment_duration": 2000,
"height": 720,
"keyframe_rate": 1,
"segment_seconds": 2,
"speed": 3,
"video_bframes": 3,
"video_bitrate": 1600,
"video_codec": "hevc",
"video_codec_profile": "main",
"video_reference_frames": 6,
"width": 1280
}
}
기본 HEVC 2850
{
"id": "default/video2850hevc",
"version": 0,
"name": "Default HEVC 2850",
"kind": "video",
"account_id": "default",
"created_at": "2020-02-20T18:00:42.036123319Z",
"updated_at": "2020-02-20T18:00:42.036123319Z",
"encoding_settings": {
"aspect_mode": "preserve",
"decoder_bitrate_cap": 4275,
"decoder_buffer_size": 5700,
"fixed_keyframe_interval": true,
"fragment_duration": 2000,
"height": 1080,
"keyframe_rate": 1,
"segment_seconds": 2,
"speed": 3,
"video_bframes": 3,
"video_bitrate": 2850,
"video_codec": "hevc",
"video_codec_profile": "main",
"video_reference_frames": 6,
"width": 1920
}
}