MPV 에 NVIDIA VSR 적용하기

MPV 0.39.0부터 NVIDIA 및 Intel VSR 스케일링 지원 추가 



1. 공식 릴리스 노트에 따르면 이 기능은 d3d11va 필터를 통해 구현됨

1. 1 Windows 전용.

2. 이를 활성화하려면 mpv.conf 파일에서 vf set d3d11vpp=scale=nvidia:scale-target 을 사용하면 된다


-----------------------------------------------------------------

3. 아래는 사용 매뉴얼 번역

※※※ mpv.io에서 Reference Manual 참조함

d3d11vpp

1. Direct3D 11 video post-processing.(Direct3D 11 비디오 후처리)

2. Requires a D3D11 context and works best with hardware decoding.

(D3D11 컨텍스트가 필요하며 하드웨어 디코딩과 함께 사용하면 가장 좋습니다.)

3. Software frames are automatically uploaded to hardware for processing.

(소프트웨어 프레임은 처리를 위해 자동으로 하드웨어에 업로드됩니다.)

format

1. Convert to the selected image format, e.g., nv12, p010, etc. (default: don't change).

(선택한 이미지 형식으로 변환합니다. 예: nv12, p010 등)(기본값: 변경 안 함).

2. Format names can be queried with --vf=d3d11vpp=format=help

(-- vf=d3d11vpp=format=help 의 형식으로 query 됨)

3. Note that only a limited subset is supported, and actual support depends on your hardware.

(제한된 하위 집합만 지원되고 실제 지원은 하드웨어에 따라 달라집니다)

4. Normally, this shouldn't be changed unless some processing only works with a specific format,

in which case it can be selected here.

(일반적으로 일부 처리가 특정 형식으로만 작동하는 경우가 아니면 변경해서는 안 되며, 이 경우 여기에서 선택할 수 있습니다.)

deint=<yes|no>

1. Whether deinterlacing is enabled (default: no).

(디인터레이싱을 활성화할지 여부)(기본값: 아니요).

scale

1. Scaling factor for the video frames (default: 1.0).

(비디오 프레임의 크기 조정 요소)(기본값: 1.0).

scaling-mode=<standard,intel,nvidia>

1. Select the scaling mode to be used.

(사용할 스케일링 모드를 선택합니다.)

2. Note that this only enables the appropriate processing extensions;

(이는 적절한 처리 확장만 활성화한다는 점에 유의하세요.)

3. whether it actually works or not depends on your hardware and the settings in your GPU driver's control panel (default: standard).

(실제로 작동하는지 여부는 하드웨어와 GPU 드라이버 제어판의 설정(기본값: 표준)에 따라 달라집니다.)

standard

1. Default scaling mode as decided by d3d11vpp implementation.

(기본 스케일링 모드는 d3d11vpp 구현에 따라 결정됩니다.)

intel

Intel Video Super Resolution.

인텔 비디오 슈퍼 해상도.

nvidia

NVIDIA RTX Super Resolution.

NVIDIA RTX 초고해상도.

interlaced-only=<yes|no>

1. If yes, only deinterlace frames marked as interlaced (default: no).

(그렇다면 , 인터레이스로 표시된 프레임만 디인터레이스합니다(기본값: 아니요).)

mode=<blend | bob|adaptive | mocomp | ivctc | none>

1. Tries to select a video processor with the given processing capability.

(주어진 처리 능력을 가진 비디오 프로세서를 선택하려고 합니다.)

2. If a video processor supports multiple capabilities, it is not clear which algorithm is actually selected.

(비디오 프로세서가 여러 기능을 지원하는 경우 실제로 어떤 알고리즘이 선택되었는지 명확하지 않습니다)

3. none always falls back.

(none은 항상 폴백합니다.)

4. On most if not all hardware, this option will probably do nothing, because a video processor usually supports all modes or none.

( 모든 하드웨어가 아니더라도 대부분 하드웨어에서 이 옵션은 아마도 아무 일도 하지 않을 것입니다. 비디오 프로세서는 일반적으로 모든 모드를 지원하거나 아무것도 지원하지 않기 때문입니다.)


NVIDIA RTX 사용 예시

vo=gpu-next

hwdec=d3d11va

gpu-api=d3d11

scale=ewa_lanczos4sharpest

vf=d3d11vpp=scale=2:scaling-mode=nvidia


아니면 모두 생략하고 nvidia-super-resolution.lua 로 사용하면 끝

https://github.com/ofseed/mpv/blob/main/scripts/nvidia-super-resolution.lua



댓글 쓰기

다음 이전