Skip to menu

본문시작



질문하기 전에 검색하세요(Search before asking a question)


Views 1881 Votes 3 Comment 6
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print Attachment
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print Attachment

7월초에 발표된 엔비디아의 비디오 코덱 SDK 10.0에서 새로 도입된 프리셋들 ― 내부적으로는 "프리셋 2.0"이라고 명명하는 것 같습니다만 ― 이 NVENC 설정을 상당히 간편하게 해주는 이점이 있군요.

 

P1(최대 퍼포먼스) ~ P7 (최대 퀄리티)까지의 이 7개 프리셋들은 x264나 x265의 프리셋들 ― ultrafast ~ placebo ― 의 역할을 그대로 가져온 느낌입니다. 문서에 의하면, 기존에 따로 설정해줘야 했던 고급 기능들(advanced features: B 프레임 수, B 프레임 레퍼런스 모드, lookahead 설정, AQ 설정, weighted prediction 설정 등등)을 거의 전혀 설정할 필요가 없다는군요(built-in).

 

엔비디아 측에서 발표한 프레젠테이션 자료에 의하면 아래와 같습니다.

 

Nvidia_Video-Codec-SDK-10.0_PPT-slide_Presets-2.0_comparison-with-legacy-presets_20200922.jpg

 

그리고 RC(rate control) 쪽도 대폭 손을 보아서 이제는 퀀타이저(Constant QP), CBR, VBR 세 개 정도로만 정리되고 기존의 vbr_hq, cbr_hq, cbr_ld_hq 같은 종류는 추후 지원되지 않을 예정이라고 합니다 (현재는 하위호환성을 위해 유지 중). (잘 아시겠지만, 퀄리티 모드의 RC는 VBR의 변형입니다.)

 

Nvidia_Video-Codec-SDK-10.0_PPT-slide_Presets-2.0-summary_20200922.jpg

 

RC 모드도 따로 명시적으로 옵션으로 사용할 일이 없는 게,

  •  -qp  옵션으로 퀀타이저를 설정하면 퀀타이저 모드(Constant QP)로
  •  -cq  옵션으로 퀄리티를 설정하면 퀄리티 모드(변형된 VBR)로
  •  -b:v  옵션으로 비트레이트를 설정하면 VBR 모드로
  •  -b:v  와 함께  -cbr 1  옵션을 추가해주면 CBR 모드로

작동되는 것을 확인했습니다.

 

결국 실제 적용될 때는 (HEVC의 경우)

-c:v hevc_nvenc -preset p7 -cq 32

이렇게 코덱, 프리셋, 퀄리티(또는 퀀타이저 또는 비트레이트), 세 종류만 옵션으로 주면 된다는 소립니다. (프로파일은 main이 디폴트이므로 생략 가능)

 

그리고 low latency나 lossless가 필요할 경우 -tune 옵션을 추가해주면 됩니다. 예) -tune lossless

 

사용성 면에서 상당히 편리해졌습니다. 샤나인코더의 NVENC 빠른 설정 구성도 굉장히 간편하게 디자인될 수 있겠다는 생각이 들더군요. 현재의 HEVC(x265) 빠른 설정과 비슷하게 구성될 수 있지 않을까 싶습니다.

 

 

아직까지 샤나인코더에서는 NVENC 프리셋 2.0이 지원되지 않습니다(5.1 포함). FFmpeg 라이브러리가 업데이트되고, NVENC 쪽 UI 구성도 업데이트된 다음 버전을 기대해 보겠습니다. (벌써? 131.gif)

그렇게 되면 NVENC 아키텍쳐에 따라 고급 기능들 설정을 다르게 해줘야 했던 NVENC 화질 향상 프리셋 같은 건 더 이상 필요 없게 될 것 같군요.

 

 

참고로 NVENC 프리셋 2.0이 지원되는 FFmpeg 실행파일을 사용해보고 싶은 분들은 FFmpeg 공식 사이트에 소개된 윈도우 용 실행파일 다운로드 사이트들을 이용하시면 됩니다.

 

https://www.gyan.dev/ffmpeg/builds/

https://github.com/BtbN/FFmpeg-Builds/releases (GPL 버전이 기능이 더 많습니다)

 

예를 들어 비디오 스트림이 H.264인 원본을 NVENC로 HEVC 인코딩을 하고 싶을 경우 적용할 수 있는 FFmpeg 명령어 샘플은 아래와 같습니다. (하드웨어 디코딩, p7 프리셋, 퀄리티 32)

 

ffmpeg -hide_banner -vsync 0 -hwaccel_output_format cuda -c:v h264_cuvid -i INPUT -c:v hevc_nvenc -preset p7 -cq 32 -c:a aac -b:a 128k -ac 2 -tag:v hvc1 -y OUTPUT.mp4

 

(대문자는 실제 적용시 수정해야 할 부분)

 

개인적으로는 인코딩 속도와 비트레이트 대비 퀄리티가 고급 기능들을 수동 설정하던 예전에 비해 향상된 인상을 받았습니다.

 

이 글을 추천한 사람
닐리리만보 태양 HEVC
TAG •
Facebook Twitter Pinterest Kakao
  • ?
    HEVC 2020.09.26 10:02

    오 반가운 소식이네요.

    NVENC도 드디어 프리셋이랑 퀄리티만 고르면 되는군요.

  • ?
    JKyle 2020.09.26 11:15

    속도도 개선됐습니다.

    제 눈으로 보기에 비슷한 화질을 인코딩하는데 대략 1x 정도(30fps 정도) 빨라지더라구요.

    샤나인코더가 빨리 업데이트되기를 기대하고 있는 중입니다. ㅎㅎ

  • ?
    태양 2020.10.01 16:01

    좋네요. 샤나도 빨리 적용되면 좋겠네요. 근데 n99431이랑 n4.3.1-19 이거는 무슨 차이인가요. 버전이 엄청 많은데 뭘 받아야될 지 모르겠네요

  • ?
    JKyle 2020.10.01 16:25

    "N-99431" 같은 형식은 자주 업데이트되는 일종의 베타 버전, "n4.3.1-19" 같은 형식은 가끔 업데이트되는 일종의 정식 버전으로 보시면 됩니다.
    근데 FFmpeg 경우 정식 버전은 별 의미가 없고 베타 버전을 대개 사용합니다.
    lgpl, gpl은 해당 라이센스를 지키는 툴들의 모음인데 gpl이 범위가 넓습니다.
    그리고 shared는 실행 파일과 라이브러리가 분리된 형태라 잘 사용 안 하고, 추가적으로 vulkan 기능이 포함된 걸 받으시는 게 일반적입니다.
    즉 BtbN 빌드의 경우 위에서 세 번째인,
    ffmpeg-N-99431-g3bf5cc9c58-win64-gpl-vulkan.zip
    파일을 받아서 사용하시면 됩니다.

  • ?
    태양 2020.10.01 17:49
    상세한 답변 감사합니다. 많은 궁금증이 풀렸네요. 추석 잘 보내세요
  • ?
    나무테라1 2020.12.27 15:45

    아주 좋은 정보 입니다.


List of Articles
No. Category Subject Author Date Views Votes
Notice 샤나인코더 통합 검색 기능 개선(샤나인코더 우측 상단에 있는 검색창을 사용해 보세요.) Rina 2021.09.30 1935 1
Notice 자유게시판에서는 자유롭게 글을 작성할 수 있지만 다음과 같은 내용은 삭제돼요 Rina 2020.03.18 4859 3
Notice 일반 [필독] 질문 전에 반드시 읽으세요!!! 2 file JKyle 2019.09.16 13115 6
Notice 일반 [알림] 질문 먹튀하지 마시기 바랍니다 => 본문 변경 금지 16 JKyle 2018.10.12 12957 13
2705 샤나인코더 5.2 H264/HEVC NVENC 하드웨어 인코딩 개선 안내 file Rina 2021.03.16 1767 4
2704 샤나인코더 5.1.0.1 배포 예정 안내 4 Rina 2020.10.08 1008 4
2703 [후원] 좋은 프로그램 만들어 주셔서 Paypal 후원했습니다. 1 너구리만세 2017.03.31 191 4
2702 일반 좋은 인코더를 알게되어 감사드립니다. ^^ 1 포챠 2021.02.22 715 3
» 정보 NVENC 설정에서 프리셋 2.0이 주는 편리함 6 file JKyle 2020.09.23 1881 3
2700 일반 몇 가지 제안 또는 희망(?) 사항 1 JKyle 2021.07.16 487 2
2699 일반 신버전 수고 많이 하셨습니다. 2 능소화 2021.03.18 965 2
2698 일반 ※자동재생 주의※ 5.1 버전 업데이트 후 ass 자막 테스트 해봤습니다 2 file LDC 2020.10.17 630 2
2697 일반 H.266/VVC 표준이 오늘 확정돼서 발표됐네요 4 JKyle 2020.07.07 1144 2
2696 질문 아님니다. 이글 보면 후회 합니다. 2 경지리 2019.11.25 964 2
2695 후원 갱신 요망합니닷 3 이진 2017.08.15 152 2
2694 ※ Book Introduction of the ShanaEncoder ※ Revision | Video Codec and Video Format (2017) 4 file 능소화 2017.04.15 13632 2
2693 정보 VMAF를 이용한 몇 가지 인코더 세팅 비교[H264(NVENC) / x264 / x265] file 정태훈 2021.12.14 405 1
2692 질문 Resize -1 적용시 하단 띠 문제 file P군 2021.11.13 312 1
2691 정보 7인치 내비용 인코딩 설정 file L330 2021.06.29 598 1
2690 정보 두 개의 동영상을 화면 분할해서 비교하는 앱 file JKyle 2021.06.04 772 1
2689 일반 사이트 게시판 검색이 잘 안 되네요 2 JKyle 2021.06.04 370 1
2688 정보 기존 프로그램 쓰다가 업데이트 하는데 설치가 안돼서 봤더니 5 file ashin 2021.06.03 761 1
2687 질문 구간자르기시 시작시간 키프레임만 맞추면 종료시간 키프레임은 안 맞춰도 된다?! 1 갈락 2021.05.27 556 1
2686 일반 드디어 포터블 버전이 나왔군요 5 JKyle 2021.04.28 1719 1
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 136 Next
/ 136