Delen via


VidPN-objecten en -interfaces

De VidPN-beheerder (Video Present Network) gebruikt een VidPN-object om informatie over koppelingen tussen videobronnen, videopresentatiedoelen en weergavemodi te onderhouden. Zie het onderwerp Introduction to Video Present Networks voor meer informatie.

VidPN-object

Een VidPN-object bevat de volgende subobjecten.

  • Topologie

  • Bronmodus ingesteld

  • Doelmodus ingesteld

  • Bronmodusset bewaken

  • Frequentiebereikset bewaken

  • Descriptorset bewaken

  • Path

  • Bron

  • Target

  • Bronmodus

  • Doelmodus

  • Bronmodus monitoren

In het volgende diagram ziet u een VidPN-object en de bijbehorende subobjecten.

Diagram met een VidPN-object en de verschillende subobjecten, waaronder topologie, modussets en paden.

In het voorgaande diagram ziet u of een bepaalde koppeling een-op-een, een-op-veel, veel-op-een- of veel-op-veel is. In het diagram ziet u bijvoorbeeld dat een bron tot meer dan één pad kan behoren, maar een doel kan tot slechts één pad behoren.

De blauwe objecten in het diagram worden geopend via ingangen en interfaces en de grijze objecten worden geopend via structuurpointers. Een interface in deze context is een structuur die functieaanwijzers bevat. De DXGK_VIDPNTOPOLOGY_INTERFACE structuur bevat bijvoorbeeld aanwijzers naar functies (geïmplementeerd door de VidPN-manager) die het display miniportstuurprogramma aanroept om een topologieobject te inspecteren en te wijzigen. Wanneer het stuurprogramma voor de minipoortweergave een van deze functies aanroept, moet het een ingang aan een topologieobject leveren. De volgende tabel bevat de gegevenstypen ingang, interface en aanwijzer die worden gebruikt voor toegang tot een VidPN-object en de bijbehorende subobjecten.

Voorwerp Toegangsmethode en gegevenstype
VidPN (VidPN Interface) Toegankelijk via handvat en interface. D3DKMDT_HVIDPN, DXGK_VIDPN_INTERFACE
Topologie (VidPN-topologieinterface) Toegankelijk via handvat en interface. D3DKMDT_HVIDPNTOPOLOGY, DXGK_VIDPNTOPOLOGY_INTERFACE
Bronmodus ingesteld (VidPN Source Mode Set Interface) Toegankelijk via handle en interface. D3DKMDT_HVIDPNSOURCEMODESET, DXGK_VIDPNSOURCEMODESET_INTERFACE
Doelmodusset (Interface VidPN-doelmodusset) Toegankelijk via handle en interface. D3DKMDT_HVIDPNTARGETMODESET, DXGK_VIDPNTARGETMODESET_INTERFACE
Bewaken van bronmodusinstelling Toegankelijk via handvat en interface. D3DKMDT_HMONITORSOURCEMODESET, DXGK_MONITORSOURCEMODESET_INTERFACE
Path Toegankelijk via de structuurpointer. D3DKMDT_VIDPN_PRESENT_PATH
Bron Toegankelijk via de structuurpointer. D3DKMDT_VIDEO_PRESENT_SOURCE
Target Toegankelijk via de structuurpointer. D3DKMDT_VIDEO_PRESENT_TARGET
Bronmodus Toegankelijk via de structuurpointer. D3DKMDT_VIDPN_SOURCE_MODE
Doelmodus Toegankelijk via de structuurpointer. D3DKMDT_VIDPN_TARGET_MODE
Bronmodus monitoren Toegankelijk via de structuurpointer. D3DKMDT_MONITOR_SOURCE_MODE
Frequentiebereikset bewaken Toegankelijk via de structuurpointer. [DXGK_MONITORFREQUENCYRANGESET_INTERFACE
Descriptorset bewaken Toegankelijk via de structuurpointer. [DXGK_MONITORDESCRIPTORSET_INTERFACE

VidPN-beheerder

De VidPN-manager, een van de onderdelen van het DirectX Graphics Kernel-subsysteem, werkt samen met het display miniportstuurprogramma om VidPN's te bouwen en te onderhouden. In de volgende stappen wordt beschreven hoe het stuurprogramma voor de weergave-minipoort een ingang en een interface voor een VidPN-object verkrijgt.

  1. Tijdens de initialisatie roept het Subsysteem voor de DirectX-graphics-kernel de functie DxgkDdiStartDevice van het display miniportstuurprogramma aan. Deze aanroep voorziet het miniportstuurprogramma van een DXGKRNL_INTERFACE structuur, die aanwijzers bevat naar functies die zijn geïmplementeerd door het DirectX-graphics-kernelsubsysteem. Een van deze functies is DxgkCbQueryVidPnInterface.

  2. Op een bepaald moment heeft de VidPN-manager hulp nodig van het weergave minipoortstuurprogramma, dus verstrekt het de minipoortdriver een handle naar een VidPN-object door een van de volgende functies aan te roepen:

  3. Het stuurprogramma voor de miniportweergave geeft de handle die is verkregen in stap 2 door aan DxgkCbQueryVidPnInterface, waarmee een pointer wordt geretourneerd naar een DXGK_VIDPN_INTERFACE structuur.

Nadat het stuurprogramma voor de minipoortweergave een handle en een interface voor een VidPN-object heeft, kan het deze handles en interfaces (indien nodig) ophalen naar de primaire sub-objecten: topologie, bronmodusset, doelmodusset en monitor bronmodusset. Het stuurprogramma voor de weergave miniport kan bijvoorbeeld pfnGetTopology (een van de functies in de VidPN-interface) aanroepen om een ingang te krijgen voor een VidPN-topologieobject en een aanwijzer naar een DXGK_VIDPNTOPOLOGY_INTERFACE structuur.

De volgende functies (in de VidPN-interface) bieden ingangen en interfaces voor de primaire subobjecten van een VidPN-object.

Houd er rekening mee dat twee van de functies in de voorgaande lijst overeenkomende functies hebben die subobjecten van VidPN vrijgeven.

Nadat het minipoortstuurprogramma van de weergave een ingang en een interface voor een van de primaire subobjecten van VidPN's heeft verkregen, kan het de interfacefuncties aanroepen om descriptors van objecten op te halen die betrekking hebben op het subobject. Als er bijvoorbeeld een handle en een interface voor een topologieobject zijn gegeven, kan het display miniportstuurprogramma de volgende stappen uitvoeren om descriptors van alle paden in de topologie op te halen.

  1. Interface voor VidPN-topologie

    Roep de functie pfnAcquireFirstPathInfo van de VidPN-topologieinterface aan om een aanwijzer te verkrijgen naar een D3DKMDT_VIDPN_PRESENT_PATH structuur die het eerste pad in de topologie beschrijft.

  2. Interface voor VidPN-topologie

    Roep de functie pfnAcquireNextPathInfo herhaaldelijk aan om pointers te verkrijgen voor D3DKMDT_VIDPN_PRESENT_PATH structuren die de resterende paden in de topologie beschrijven.

Op dezelfde manier kan de weergaveminportstuurprogramma descriptors van de modi in een modusset ophalen door de functies pfnAcquireFirstModeInfo en pfnAcquireNextModeInfo aan te roepen binnen een van de volgende modussetinterfaces.

De DXGK_VIDPNSOURCEMODESET_INTERFACE-interface heeft geen functie voor het verwijderen van een modus uit een bronmodusset. Wanneer het stuurprogramma voor de minipoortweergave een bronmodusset moet bijwerken, wordt er geen bestaande modus gewijzigd door modi toe te voegen en te verwijderen. In plaats daarvan wordt er een nieuwe modusset gemaakt die de oude modusset vervangt. Een voorbeeld van een functie die de modussets moet bijwerken, is de functie DxgkDdiEnumVidPnCofuncModality van het beeldscherm miniportstuurprogramma. De stappen voor het bijwerken van een bronmodusset zijn als volgt:

  1. Roep de pfnCreateNewModeInfo van de DXGK_VIDPNSOURCEMODESET_INTERFACE-interface aan om een aanwijzer te krijgen naar een D3DKMDT_VIDPN_SOURCE_MODE structuur (toegewezen door de VidPN-manager).

    Roep pfnAddMode herhaaldelijk aan om modi toe te voegen aan de bronmodusset.

  2. Roep de functie pfnAssignSourceModeSet van de DXGK_VIDPN_INTERFACE aan om de nieuwe modus toe te wijzen die is ingesteld op een bepaalde videobron. De nieuwe bronmodusset vervangt de bronmodusset die momenteel aan die bron is toegewezen.

Het bijwerken van een doelmodusset is vergelijkbaar met het bijwerken van een bronmodusset. De DXGK_VIDPNTARGETMODESET_INTERFACE-interface heeft de volgende functies:

Er is geen interface (set van functies) voor verkrijgen van de bron en het doel die deel uitmaken van een bepaald pad. Het stuurprogramma voor de minipoortweergave kan bepalen welke bron en doel deel uitmaken van een bepaald pad door de leden VidPnSourceId en VidPnTargetId van de D3DKMDT_VIDPN_PRESENT_PATH-structuur te inspecteren die het pad vertegenwoordigen.

Zie ook

Bepalen of een VidPN wordt ondersteund op een beeldschermadapter

Cofunctionele VidPN-bron- en doelmodi opsommen

Video Netwerkterminologie presenteren

Aanvullende monitordoelmodi verkrijgen