FFMPEG/FFMPEG 기초

FFMPEG에서 h264_nvenc 인코딩 옵션

JasonCloud 2023. 3. 7. 13:13
반응형

FFmpeg은 다양한 인코딩 옵션을 제공하여 동영상 파일의 인코딩을 조정할 수 있습니다. 그 중에서도 h264_nvenc 인코딩 옵션은 NVIDIA의 GPU 하드웨어 가속을 이용하여 빠른 속도로 인코딩을 할 수 있는 옵션입니다. 이번 글에서는 h264_nvenc 인코딩 옵션에 대해 자세히 알아보겠습니다.

  1. h264_nvenc 인코더 설치

h264_nvenc 인코더를 사용하려면 먼저 NVIDIA 그래픽 카드 드라이버와 NVIDIA Video Codec SDK를 설치해야 합니다. 이를 위해서는 NVIDIA 홈페이지에서 해당 드라이버와 SDK를 다운로드하여 설치해야 합니다.

  1. h264_nvenc 인코딩 옵션

h264_nvenc 인코더를 사용하기 위해 FFmpeg 명령어에 다음과 같은 옵션을 추가해야 합니다.

 

ffmpeg -y -i [INPUT] -c:v h264_nvenc [OPTIONS] [OUTPUT]

여기서 [INPUT]은 인코딩할 동영상 파일 경로, [OPTIONS]은 h264_nvenc 인코더에 대한 옵션, [OUTPUT]은 인코딩된 동영상 파일 경로입니다.

h264_nvenc 인코딩 옵션은 다음과 같습니다.

  • preset: 인코딩 속도와 화질을 조절할 수 있는 프리셋을 지정합니다. 기본값은 medium입니다. 다음은 프리셋 종류와 대표 속도/화질입니다.
    • slow: 높은 화질, 느린 속도
    • medium: 중간 화질, 중간 속도
    • fast: 낮은 화질, 빠른 속도
     
  • b:v: 비디오 비트레이트를 지정합니다. 기본값은 2000k입니다.
  • rc:v: 비디오 비트레이트 제어 방식을 지정합니다. 기본값은 vbr입니다.
    • vbr: 가변 비트레이트로 인코딩합니다.
    • cbr: 고정 비트레이트로 인코딩합니다.
    • cqp: 고정 퀄리티로 인코딩합니다.
  • qmin:v, qmax:v: 비디오 퀄리티 최소값과 최대값을 지정합니다. 기본값은 0과 51입니다.
  • g:v: 그룹 간격을 지정합니다. 기본값은 250입니다.
  • profile:v: H.264 프로파일을 지정합니다. 기본값은 high입니다.
  • level:v: H.264 레벨을 지정합니다. 기본값은 auto입니다.
  • rc-lookahead:v: 프레임 예측을 위한 프레임
  • lookahead 옵션을 지정합니다. 기본값은 32입니다.
  • bufsize:v: 비디오 버퍼 사이즈를 지정합니다. 기본값은 4000k입니다.
  • maxrate:v: 최대 비트레이트를 지정합니다.
  • qp:v: 고정 퀄리티 퀀터를 지정합니다.
  • rc:rate_control: 비디오 비트레이트 제어 방식을 지정합니다. 기본값은 vbr입니다.
  • rc:v:rate_control_parameters: 비디오 비트레이트 제어 방식의 추가 파라미터를 지정합니다.
  • gpu:v: NVIDIA 그래픽 카드 인덱스를 지정합니다. 기본값은 0입니다.

h264_nvenc 인코딩 옵션은 NVIDIA 그래픽 카드의 하드웨어 가속을 이용하여 빠른 속도로 인코딩을 할 수 있는 옵션입니다. 이를 이용하여 동영상 파일을 빠르고 효율적으로 인코딩할 수 있습니다. 다만, NVIDIA 그래픽 카드와 Video Codec SDK가 설치되어 있어야 사용할 수 있다는 점에 유의해야 합니다.

 

 

반응형