반응형

2. 4K

가. H.264

4K 역시 1080P와 동일하게 FFmpeg 가이드에 언급된 x264의 CRF를 기준으로 처리하기로 했다.

기준으로 삼은 x264의 CRF는 역시 이전과 동일하게 17, 23, 25.

마찬가지로 열심히 반복해서 확인해보니 x264는 4K 소스에 대해 각각 49.77, 46.23, 45.09의 PSNR이 도출됐다.

 

다시 말하면, 4K 영상에 대해서 Q 값은 PSNR이 49 이상이면 거의 무손실[각주:1], 46 정도면 충분히 양호하며 45 이상이면 사용할만한 품질로 이해할 수 있다는 것.

 

세로축이 PSNR(dB), 가로축이 kbps. 그래프가 위로/왼쪽으로 갈 수록 품질이 좋음. 파란 쪽이 slow preset 결과

 

엔비디아의 솔루션인 nvenc로 인코딩한 결과는 아래와 같다.

H.264 역시 x264에 비해 유사한 품질에 대해 대략 20% 정도 큰 파일을 생성해준다.

그리고, 여기서도 preset에 무관하게 결과 파일은 동일하다.

 

 

인텔 qsv는 4K 해상도에서는 위태로운 결과를 보여준다.

품질의 안정성이 보장되지 않는 것이다.

각 프레임의 품질은 나쁘지 않지만, 중간에 프레임 드랍이 많아서 결과물은 사용이 곤란한 수준이다.

 

 

위의 결과는 i8700이며, i3770(3세대 i7)에서는 지원되지 않아 사용할 수가 없다.

 

이 테스트를 통해 H.264에 대해서는 대략 다음과 같은 변환 기준값을 도출했다.

물론, 이 값들은 언제나 이렇게 동작하는 건 아니고, 소스에 따라선 다른 결과를 보일 수도 있다.

 

구분 고화질 보통 최소값
x264 Q=17
Bitrate: 24,934kbps
압축률: 1/155
Q=23
Bitrate: 10,210kbps
압축률: 1/378
Q=25
Bitrate: 7,684kbps
압축률: 1/502
nvenc Q=20
Bitrate: 23,210kbps
압축률: 1/166
Q=25
Bitrate: 12,486kbps
압축률: 1/309
Q=27
Bitrate: 9,156kbps
압축률: 1/421
qsv Q=16
Bitrate: 27,153kbps
압축률: 1/142
Q=23
Bitrate: 8,744kbps
압축률: 1/441
측정 불가

 

나. HEVC

역시 이번에도 기준을 잡는 것은 x265.

같은 소스에 대해 아래와 같은 결과를 확인할 수 있었다.

목표했던 품질을 달성하기 위한 Q 값은 각각 18, 24, 26으로 잡기로 했다.

 

 

이 결과를 x264와 비교하면 아래와 같다.

물론 인코딩에 소요되는 시간은 훨씬 길지만[각주:2], 동일 화질 기준으로 약 65% 정도의 파일 크기를 보여준다.

 

 

nvenc로 인코딩한 결과는 다음과 같다.

nvenc는 역시 이번에도 x265에 비해 용량 대비 화질이 좀 떨어지는 편이다.

 

다음은 인텔 qsv.

결과는 qsv로 H.264 인코딩 할 때보다 심각하다.

 

1. H.264 때 보다 프레임 드랍이 더 심함
2. 인코딩 중에 종종 시스템이 다운됨


즉, 4K로 HEVC 인코딩을 할 때는 qsv는 사용하지 않는 것을 권장한다.

 

아무런 의미가 없는 품질 값들…

 

qsv를 이용한 인코딩에서 slow와 medium preset의 결과만 따로 뽑아보면 아래와 같다.

1080의 HEVC와는 다르게 어떤 환경을 쓰면 된다는 판단이 불가능할 수준이다.

 

 

HEVC에 대해서는 대략 다음과 같은 변환 기준값을 도출했다.

물론, 이 값들 역시 소스에 따라 다른 결과를 보일 수도 있다.

 

구분 고화질 보통 최소값
x265 Q=18
Bitrate: 15,994kbps
압축률: 1/241
Q=24
Bitrate: 6,715kbps
압축률: 1/574
Q=26
Bitrate: 5,007kbps
압축률: 1/770
nvenc Q=20
Bitrate: 23,416kbps
압축률: 1/165
Q=26
Bitrate: 10,381kbps
압축률: 1/372
Q=28
Bitrate: 7,183kbps
압축률: 1/537
qsv 측정 불가 Q=20
Bitrate: 9,264kbps
압축률: 1/416
측정 불가

 

4K 영상에 대한 소결론은 다음과 같다.

 

1. H.264

   - 인텔 qsv는 프레임 드랍이 발생해서 비추천
   - nvenc는 qsv에 비해 용량이 20% 가량 커지기는 하지만 전체적인 성능과 안정성은 우수함
   - HW 인코딩은 preset에 무관하게 완전히 동일한 결과물을 생성함

2. HEVC

   - x265는 x264에 비해 동일 화질 기준으로 파일 크기가 65% 정도를 달성함
   - qsv, nvenc 모두 H.264의 SW 구현인 x264 정도의 압축률을 보임
   - nvenc는 preset에 무관하게 동일한 결과물을 생성
   - 인텔 qsv는 프레임 드랍이 항상 발생하며, 시스템 자체가 종종 다운됨

 

3. 결론

이 테스트 결과를 통해 권장하는 Q 값은 다음의 표와 같다.

이 값들은 앞서 시행한 테스트에서 공통적으로 산출된 값들을 기준으로 하였으며, 비슷한 값들에 대해선 좀 더 나은 화질을 선택했다.

이 값들은 추후 iTrans의 업데이트에도 반영할 예정.

 

가. H.264

구분 고화질 보통 최소값
x264 Q=17 Q=23 Q=25
nvenc Q=20 Q=25 Q=27
qsv Q=17 Q=23 Q=25

 

나. HEVC

구분 고화질 보통 최소값
x265 Q=18 Q=24 Q=28
nvenc Q=20 Q=25 Q=28
qsv Q=14 Q=20 Q=24

 

 

  1. CRF=17에선 사실 50에 가까운 수준인데, 이 경우 파일이 너무 커짐 [본문으로]
  2. 경우에 따라 다르지만 대략 2-3배의 시간이 소요됨 [본문으로]
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band