Share via


비디오 프레젠테이션 네트워크 소개

DirectX 그래픽 커널 하위 시스템(Dxgkrnl.sys)의 구성 요소인 VidPN(비디오 프레젠테이션 네트워크) 관리자는 디스플레이 어댑터에 연결된 모니터 및 기타 디스플레이 디바이스의 컬렉션을 관리합니다. VidPN 관리자의 책임은 다음과 같습니다.

  • 모니터의 핫 플러그 인 및 플러깅 해제에 응답합니다.

  • 연결된 모니터 집합이 변경됨에 따라 사용 가능한 디스플레이 모드 집합을 유지 관리하고 업데이트합니다.

  • 디스플레이 어댑터에서 렌더링 화면과 비디오 출력 간의 연결을 관리합니다. 예를 들어 여러 모니터에 데스크톱의 보기 및 확장을 복제합니다.

  • 노트북 컴퓨터의 덮개를 열거나 닫을 때 사용 가능한 디스플레이 장치 및 디스플레이 모드 집합을 조정합니다.

  • 노트북 컴퓨터가 도킹되거나 도킹 해제된 경우 사용 가능한 디스플레이 장치 및 디스플레이 모드 집합을 조정합니다.

비디오 메모리에서 렌더링된 콘텐츠를 스캔하고 비디오 출력에 표시하는 디스플레이 어댑 터의 하드웨어를 디스플레이 어댑터의 프레젠테이션 하위 시스템이라고 합니다. VidPN(비디오 프레젠테이션 네트워크)은 디스플레이 어댑터의 프레젠테이션 하위 시스템의 소프트웨어 모델입니다.

디스플레이 어댑터의 프레젠테이션 하위 시스템의 핵심 요소는 보기(기본 표면 체인) 및 비디오 출력입니다. VidPN 모델에서 뷰를 비디오 현재 원본이라고 하며 비디오 출력을 비디오 프레젠테이션 대상이라고 합니다.

비디오 프레젠테이션 경로는 비디오 현재 원본과 비디오 프레젠테이션 대상 간의 연결입니다. VidPN은 비디오 현재 경로 집합을 유지 관리하여 원본과 대상 간의 관계를 모델링합니다. 경로 집합을 VidPN 토폴로지라고 합니다.

비디오 프레젠테이션 대상은 디스플레이 어댑터에 연결된 모니터(또는 기타 외부 디스플레이 디바이스)가 아닙니다. 비디오 현재 대상은 비디오 출력 커넥터 자체입니다.

다음 다이어그램에서는 VidPN을 보여 줍니다.

원본, 대상 및 커넥터가 있는 VidPN(Video Present Network)을 보여 주는 다이어그램

이전 다이어그램에 설명된 VidPN에는 DVI 커넥터, HD15 커넥터 및 S-video 커넥터의 세 가지 비디오 프레젠테이션 대상이 있습니다. VidPN 토폴로지는 두 원본을 세 개의 대상에 연결하는 줄로 표시됩니다. 토폴로지는 원본 1이 DVI 대상에 연결되고 Source 2가 HD15 및 S-video 대상 모두에 연결되도록 지정합니다. 원본 2에서 렌더링된 콘텐츠는 HD15 및 S-비디오 커넥터에 연결된 디스플레이 디바이스의 복제 보기로 표시됩니다.

현재 제공된 각 비디오 원본은 소스 모드라는 특정 표면 형식 집합을 지원합니다. VidPN은 다양한 비디오 현재 원본에서 지원하는 소스 모드를 추적하기 위해 각 비디오 현재 원본에 대해 소스 모드 집합 을 유지 관리합니다. 특정 비디오 현재 원본에 대해 설정된 소스 모드는 정적이지 않습니다. 토폴로지 변경에 따라 변경되며 다른 비디오 제공 원본에 대해 선택한 모드에 따라 변경됩니다.

모델은 비디오 프레젠테이션 대상에 대해 유사하게 작동합니다. 각 비디오 프레젠테이션 대상은 대상 모드라는 특정 비디오 신호 형식 집합을 지원하며, VidPN은 각 비디오 존재 대상에 대해 대상 모드 집합 을 유지 관리합니다. 토폴로지 변경 및 다른 비디오 프레젠테이션 대상에 대해 모드가 선택됨에 따라 특정 비디오 프레젠테이션 대상에 대해 설정된 대상 모드가 변경됩니다.

디스플레이 미니포트 드라이버의 역할

디스플레이 어댑터에는 비디오 현재 원본에서 읽고 비디오 프레젠테이션 대상에 해당 비디오 신호를 배치하는 하나 이상의 비디오 출력 코덱 (예: CRTC)이 있습니다. 언제든지 비디오 출력 코덱은 최대 하나의 비디오 현재 원본에서 읽을 수 있습니다. 그러나 해당 코덱은 둘 이상의 비디오 프레젠테이션 대상(복제 보기)에 비디오 신호를 제공할 수 있습니다. VidPN 관리자는 비디오 현재 원본과 비디오 현재 대상 간의 연결과 관련이 있지만 비디오 출력 코덱의 역할에는 해당하지 않습니다. 특정 비디오 제공 소스에서 읽는 비디오 출력 코덱에 대한 결정은 전적으로 디스플레이 미니포트 드라이버의 제어를 받습니다. 예를 들어 디스플레이 어댑터에 두 개의 비디오 출력 코덱이 있고 VidPN 관리자가 디스플레이 미니포트 드라이버에 다음 다이어그램에 표시된 토폴로지를 구현하도록 요청한다고 가정합니다.

세 개의 대상에 연결된 두 개의 원본이 있는 VidPN 토폴로지를 보여 주는 다이어그램

다음 다이어그램은 디스플레이 미니포트 드라이버가 비디오 출력 코덱을 비디오 프레젠테이션 소스에 할당할 수 있는 한 가지 방법을 보여 줍니다.

원본 1의 경우 CRTC1을 HD15에 할당하고 CRTC2를 HD15에 할당하고 원본 2의 경우 S-Video를 할당하는 드라이버를 보여 주는 다이어그램

이전 다이어그램의 복제 보기(HD15, S-video)는 단일 CRTC에서 처리됩니다. 이제 CRTC1에 연결된 HD15 출력이 더 이상 필요하지 않습니다. 그런 다음 디스플레이 미니포트 드라이버는 다음 다이어그램과 같이 비디오 출력 코덱을 구성하여 복제 보기를 구현할 수 있습니다.

복제 보기에 두 개의 CRTC가 있는 비디오 출력 코덱의 대체 사용을 보여 주는 다이어그램

두 개의 CRTC를 사용하여 복제 보기를 구현하는 것은 하나의 CRTC로 구현하는 것에 비해 몇 가지 이점이 있습니다. 예를 들어 두 개의 CRTC를 사용하면 HD15 및 S-video 출력의 해상도와 새로 고침 속도가 다를 수 있습니다.

중요한 점은 VidPN 관리자가 디스플레이 어댑터의 비디오 출력 코덱이 비디오 현재 원본 및 대상에 할당되는 방법에 대해 전혀 알지 못한다는 것입니다. VidPN 관리자는 원본과 대상 간의 연결만 알고 있습니다. 비디오 출력 코덱을 포함하는 기본 복합 연결은 디스플레이 미니포트 드라이버에만 알려져 있습니다.