반응형

이전 글에서 간단히 썼듯이, VMAF는 넷플릭스가 개발한 비디오 품질 측정 기준이다.

기존에 PSNR/SSIM을 통해 비교해봤던 비디오 인코더들을 VMAF로 비교해보기로 했다.

 

하는 김에 기존의 비디오 소스인 [Sintel]과는 다른 소스를 사용해보기로 했다.

CG만을 사용한 비디오와 실사 영화는 아무래도 다른 특성이 나타나는 것 같기도 하고.

 

언제나 그렇듯 이러한 테스트는 변인을 통제하고 일부 인자만 바꿔서 계속 반복해 수행하는 게 기본.

이번에도 수많은 테스트를 수행했고, 각 세트마다 엑셀의 시트 하나에 다 저장했다.

 

 

H.264

언제나 그렇듯 테스트의 시작은 x264를 비롯한 H.264.

그런데 처음부터 눈에 띄는 특성들이 보인다.

 

일단 4060Ti의 H.264 인코더가 x264보다 용량 대비 품질이 높게 나온다.

 

 

그리고, 이 결과는 SSIM과 비교해보면 또 하나의 특성이 보이는데... SSIM과 VMAF가 역전될 수도 있다는 점.

SSIM은 아래 그래프처럼 서로 비슷하면서도 어떤 지점부터는 x264가 높게 나온다.

 

 

 


 

HEVC

HEVC는 우선 유료 코덱인 MainConcept FFmpeg plugin부터 돌려봤다.

기존에 사용하던 몇 가지 설정이 있었는데, 이 설정값 역시 H.264와 유사하게 SSIM과 관계가 역전되는 결과를 보여준다.

 

 

아래의 SSIM에서는 MC36 설정이 가장 우수하게 나오지만, 위에선 MC12가 최선이다.

 

 

x265, 4060Ti의 nvenc, MainConcept를 비교하니 아래와 같은 결과가 나온다.

MainConcept가 최선이다. 돈 내고 산 보람이 있다.

 

 

10bpp로 인코딩한 결과도 비슷한 경향을 보여준다.

소스가 8bpp라는 한계가 있다는 점을 생각하고 봐야 함.

 

 

지금까지 등장한 선수들을 모두 등판시키면 아래와 같다.

x264에 비해 각 인코더들의 성능 향상이 이 정도 수준에 도달했다.

VMAF는 99점을 거의 무손실로 보면 되는데, 99점에서 x264에 비해 대부분의 용량이 50% 수준이다.

 

 


 

AV1

ffmpeg에서는 AV1 인코더로 레퍼런스인 AOM AV1과 예전에 언급한 SVT-AV1을 모두 지원하고 있다.

 

이 인코더들로 인코딩한 결과는 아래와 같다.

4060Ti의 인코더는 crf를 64까지밖에 지정할 수 없는데, 그러다보니 VMAF 점수가 98 이하인 결과를 만들 수가 없다.

이러한 점을 감안하고 보면 AOM AV1이 최강이고, 4060Ti가 거의 근접한 느낌이다.

 

예전에 언급한 SVT-AV1은 상대적으로 좀 밀린다.

 

 

하지만... 변환 시간의 관점에서 보면 AOM AV1이 최선일 수가 없다.

인코딩 시간은 아래와 같은데, AOM AV1은 사실상 사용하기 힘든 인코더다.

 

더불어, SVT-AV1은 preset을 7로 지정해서 상식적인 인코딩 시간에 처리했는데, 이 값을 조정하면 결과는 바뀔 것이다.

 

 

10bpp의 결과는 아래와 같다.

8bpp와 큰 차이가 없음.

 

 

 


 

결론/총평

HEVC는 MainConcept의 유료 제품이 가장 뛰어난 성능을 보여준다.

AV1은 AOM AV1이 뛰어난 품질을 보여주지만 역시 속도 문제는 넘어야 할 벽.

 

 

위의 결과에 4060Ti의 AV1 인코더를 끼얹어보면 아래와 같다.

AV1 쪽이 용량 대비 품질이 높긴 한데, H.264→HEVC 과 같은 눈에 띄는 향상은 없다고 봐야 할 듯.

 

 

 

 

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band