조회 수 2463 추천 수 0 댓글 4
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

5.1 버전이 나온 지 하루가 좀 지났는데 이제야 이 주제를 얘기한다는 게 좀 죄송해지긴 합니다만, 엔비디아 비디오 코덱 SDK가 버전 10.0부터 API가 달라져서 FFmpeg의 하드웨어 디코딩과 프리셋 등 몇몇 옵션에 변경이 생겼습니다.

 

참고: https://docs.nvidia.com/video-technologies/video-codec-sdk/ffmpeg-with-nvidia-gpu/index.html

 

[하드웨어 디코딩 쪽]

-hwaccel cuvid 옵션은 deprecated

대신 -hwaccel cuda -hwaccel_output_format cuda 옵션을 사용하도록 권고

실제 10.0이 적용된 FFmpeg로 테스트해본 결과 -hwaccel_output_format cuda 옵션을 하드웨어 디코더(-c:v h264_cuvid 등)와 함께 사용하면 되고 -hwaccel cuda 옵션은 필요 없음을 확인

 

[프리셋]

P1(퍼포먼스) ~ P7(퀄리티) 추가 (P4가 미디엄으로 디폴트)

 

 

하드웨어 디코딩 쪽은 현재의 샤나인코더로서도 별 상관은 없을 것 같지만, 프리셋 메뉴는 개선이 필요할 것 같습니다.

 

그리고 NVENC에서 cq(constant quality) 매개변수를 지원하는 만큼 현재 퀀타이저와 비트레이트만 있는 RC 선택 옵션에 퀄리티도 추가하고 cq 값을 선택할 수 있도록 개선이 필요하지 않을까 생각됩니다. 물론 이때 적용되는 RC 설정은 vbr_hq가 되어야겠죠.

실제 10.0이 적용된 FFmpeg로 테스트해본 결과 p1~p7 프리셋은 x264/x265에서의 프리셋(ultrafast ~ placebo)과 비슷한 방식으로 사용하면 됨

vbr_hqcbr_hq 같은 예전 2패스 RC 모드는 에러 발생(Preset P1 to P7 not supported with older 2 Pass RC Modes(CBR_HQ, VBR_HQ) and cbr low delay.)

 

...라고 하고 다시 확인해보니 샤나인코더 내장 FFmpeg은 10.0이 아직 적용되지 않은 상태인 것 같군요.

새로 추가된 프리셋들이 이번 버전인 5.1에는 아직 포함되지 않은 것 같습니다.

 

하지만 그래도 vbr_hqcq로 퀄리티 모드 인코딩은 가능해 보이니 NVENC 쪽 빠른 설정에 해당 옵션들을 반영해 주실 수 있는지 궁금합니다.

TAG •
Facebook Twitter Pinterest Kakao
  • ?
    HEVC 2020.09.20 04:28

    요즘은 저도 거의 nvenc로 인코딩 해서 지원되면 좋겠네요. ㅎㅎ

  • ?
    Rina 2020.09.20 12:13

    다음 버전 배포할 때 추가할게요~^^ 정보 감사합니다~

  • ?
    JKyle 2020.09.20 23:32

    추가 참고자료입니다.

     

    NVIDIA Video Codec SDK 10.0에서 도입된 Presets 2.0에 대한 프리젠테이션 파일입니다. (18, 19 페이지)

    http://developer.download.nvidia.com/video/gputechconf/gtc/2020/presentations/s21337-nvidia-video-technologies-video-codec-and-optical-flow-sdk.pdf

     

    핵심적인 내용은, 기본의 복잡했던 매개변수 설정을 새로 도입된 프리셋 설정만으로 대체해도 된다는 내용일 듯합니다.

     

    FFmpeg에서는 정확히 언제부터 적용됐는지는 확실치 않지만 대략 7월말쯤부터 가능하지 않았나 싶습니다. 요즘 나오는 실행 파일들은 모두 적용돼 있는 걸 확인했습니다.

  • ?
    Rina 2020.09.21 12:31
    네 참고하겠습니다~