HEVC(NVENC) 화질 향상 프리셋

by JKyle posted Jun 19, 2018
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

NVENC가 가능한 엔비디아 그래픽 카드를 이용해서 하드웨어 인코딩을 하면 경우에 따라 수백 배까지 속도가 획기적으로 향상됩니다. 대신 화질은 동일한 비트레이트의 소프트웨어 인코딩 동영상에 비해 떨어지는 것이 사실이죠.

 

이 프리셋은 NVENC의 속도를 어느 정도 희생하는 대신 화질을 향상시키고자 하는 목표로 만들어진 것입니다. 그렇게 하기 위해 샤나에서 제공하는 기본 rate control 옵션인 '-shanarcmode'를 없애고 보다 상세하게 rate control을 할 수 있도록 인코딩 설정 옵션과 설정값을 추가했습니다.

 

이 프리셋은 NVENC에서 지원하는 H264, HEVC 두 가지 코덱 중 HEVC 코덱에 관한 것입니다.

 

NVENC(HEVC) Slow VBR 1800k HE-AAC 44.1 64k.xml

 

이 프리셋의 오디오 설정은 편의상 44.1 kHz 샘플링 레이트에 64 kbps의 비트레이트를 가지는 스테레오 HE-AAC 코덱의 오디오로 인코딩되도록 설정했습니다.

 

몇몇 중요한 옵션과 설정값에 대한 설명은 아래와 같습니다. (필터 매개변수에 대한 설명은 생략)

 

=============================================================================

 

 -f mp4

 -c:v hevc_nvenc -profile:v main -level auto

 -preset slow

       // hevc_nvenc의 프리셋은 slow(hq 2 passes), medium(hq 1 pass), fast(hp 1 pass),

       // hp(high performance), hq(high quality), bd(blueray disk),

       // ll(low latency), llhq(low latency hq), llhp(low latency hp)

       // 등이 있는데 slow가 가장 높은 퀄리티

 -b:v 1800k

       // 비디오 비트레이트 1800 kbps. 원본과 원하는 화질에 따라 높이거나 줄일 것

 -rc vbr_hq

       // rate control을 varible bitrate high quality 모드로.

       // 이외에 constqp(constant quantization parameter), vbr(variable bitrate), cbr(constant bitrate),

       // cbr_ld_hq(constant bitrate low delay high quality), cbr_hq(constant bitrate high quality)

       // 등의 모드가 있음.

 -rc-lookahead 20

       // rate control을 위해 미리 가져올 frame 수를 20으로 설정

       // 정수값으로, 기본값은 0. 시스템 최대 정수까지 설정 가능

       // 10에서 20 사이의 값을 추천

 -spatial_aq 1

       // 프레임 내(spatial=intra-frame)의 비트레이트 배분을 위해 aq(adaptive quantization)를 true로 설정

       // 기본값은 0으로 false.

 -aq-strength 10

       // 퀀타이저 값의 변동(aq) 정도(variation strength)를 10으로 설정

       // 1~15의 정수값, 기본값은 8

       // 값이 클수록 변동 정도가 크며 덜 복잡한 부분에 대해 좀더 비트를 할당 (psnr 값은 하락)

 -weighted_pred 1

       // weighted prediction을 true로 설정. (기본값은 false로 정수 0)

       // 일부 동영상의 경우 인코딩 에러가 날 수 있음. 그때는 이 옵션을 지울 것.

 

 -c:a libfdk_aac -b:a 64k -ac 2 -fdkprofile he  // 오디오 설정에 관한 부분

 -tag:v hvc1  // Apple TV, QuickTime과 호환하는 코덱 ID 설정

 -sn -map_metadata -1 -map_chapters -1 -metadata creation_time=now

       // 자막 없음, 메타데이터 복사 안 함, 챕터 정보 없음, 인코딩 시간을 파일 생성 시간으로

 -metadata:s:v:0 language=kor

       // 비디오의 언어를 한국어로. 영어는 eng, 일본어는 jpn, 중국어는 chi

 -metadata:s:a:0 language=kor

       // 오디오의 언어를 한국어로

 

=============================================================================

 

<주의 사항>

 

1.

설정값을 변경하기 위해 [빠른 설정] 창을 이용해서 [설정 적용]을 한 후 최종 확인을 위해 F8을 눌러 [매개 변수] 창을 열어보면 ' -shanarcmode const' 또는 ' -shanarcmode variable'과 같이 샤나에서 지정한 rate control 모드가 들어가 있는 것을 볼 수 있습니다. 커스텀 설정한 rate control을 적용하기 위해서는 ' -shanarcmode const' 또는 ' -shanarcmode variable' 부분을 지워야 합니다.

 

2.

일부 동영상(key frame 간격이 매우 좁은 동영상 등)의 경우 인코딩 에러가 날 수 있는데, 그때는 ' -weighted_pred 1' 옵션을 지우십시오.

 

이 글을 추천한 사람
흑풍운랑 wjohnas
TAG •