HDR -> HDR(HDR10) 인코딩 (HEVC(x265), 1080p)
https://shana.pe.kr/shanaencoder_preset/49641
===> 이 프리셋의 HEVC(NVENC) 버전입니다.
단, HEVC(NVENC)의 한계로 비디오 스트림에 들어가는 static metadata(SMPTE ST 2086)를 삽입할 수 없는 관계로 HDR10이 아닌 그냥 일반의 HDR 동영상으로 인코딩됩니다. 즉, HDR UHD TV에서 자동으로 HDR 동영상으로 인식되지 않을 수도 있습니다. TV에서 보시려면 강제로 HDR 설정을 하셔야 할 수도 있습니다.
이 프리셋은 순전히 속도 개선을 위한 버전입니다. 전반적으로 x265로 인코딩할 때보다 화질이 떨어지므로 충분한 비트레이트를 줄 것을 권장합니다.
HDR NVENC(HEVC) Slow VBR 12M HE-AAC 44.1 64k.xml
이 프리셋에서 고려한 것은 두 가지입니다.
1. Output이 사용할 정확한 색 공간 정보(primaries와 color matrix, transfer characteristics)를 주기
2. HEVC(NVENC)에 맞게 output 동영상의 픽셀 포맷을 10비트로 맞춰 주기 ('-pix_fmt p010le' 옵션과 HEVC(NVENC) 프로파일을 bit depth 10을 지원하는 'Main 10'으로 맞춰 주기)
---------------------------------------------------------------------------------------------------------
파일 형식은 MP4, 비디오 코덱은 HEVC(NVENC), 오디오는 44.1kHz, 64kbps 스테레오 HE-AAC 오디오입니다.
필터 매개변수에 대한 설명은 HDR10 인코딩과 같으므로 생략합니다.
인코딩 옵션 설정 중 HDR10과 달라지는 부분은 다음과 같습니다.
=============================================================================
-c:v hevc_nvenc -profile:v main10 -level auto -preset slow -b:v 12M
// HDR 영상의 bit depth 10을 지원하는 main10 프로파일 선택
// 비트레이트 모드로 12Mbps 설정. 원하는 대로 수정할 것
-rc vbr_hq -rc-lookahead 20 -spatial_aq 1 -aq-strength 4
// HEVC(NVENC) 화질 향상 프리셋
// https://shana.pe.kr/shanaencoder_preset/49294 참고
-pix_fmt p010le
// HDR 영상의 10 bit depth를 가지는 픽셀 포맷
// HEVC(NVENC)의 경우엔 yuv420p10le가 아닌 p010le
// 비디오 스트림에 static metadata를 삽입하는
// -x265-params를 제외한 나머지 부분은 동일
=============================================================================
이상입니다.
HDR10 프리셋과 마찬가지로 원본 동영상의 오디오가 AAC라도 먹싱 모드가 'ADTS'일 경우(파일 형식이 ts인 경우) 오디오를 스트림 복사로 설정하면 인코딩 시 에러가 나므로 그때는 오디오를 반드시 함께 인코딩해야 합니다.
HDR10 프리셋의 경우와 같이 위의 프리셋을 응용하여 4K HDR UHD 동영상(http://4kmedia.org/ 에서 받은 4K HDR UHD 동영상 샘플인 'LG New York HDR UHD 4K Demo')을 FHD(1080p) 일반 HDR 동영상으로 트랜스코딩해 본 결과입니다.
<원본(448MB, ts 형식), HDR10 프리셋의 경우와 동일>
https://drive.google.com/open?id=14W5lqskWkn6aFUmSLrZRljPd4VuVbQlS
<원본 캡쳐(2MB, jpg 형식), HDR10 프리셋의 경우와 동일>
<FHD HDR(99MB, mp4 형식)>
https://drive.google.com/open?id=1ZX5wPpLvcfTVuanViRozzbzYNmWAFrJy
<FHD HDR 캡쳐(658KB, jpg 형식)>
<FHD HDR 미디어인포>
미디어인포 파일을 보면, 전역 metadata 값들이 색정보와 bit depth 정보 등을 제대로 표시하고 있는 것을 볼 수 있습니다. 하지만 "Format_Commercial_IfAny: HDR10"의 항목이 없으므로 HDR10은 아니라는 것을 추측할 수 있습니다. (비디오 스트림에 들어가는 metadata 값들은 미디어인포로는 표시할 수 없습니다.)
그렇지만 x265와 비교해 인코딩 속도는 훨씬 빠릅니다. 속도가 5배 이상 향상되니... 만약 소프트웨어 필터인 scale 필터를 적용하지 않는다면 훨씬 속도가 빠를 것으로 예상됩니다.