Freigeben über


Pin-Kategorie-Eigenschaft

Microsoft Windows Driver Model (WDM)-Audiotreiber für USB-Audiogeräte, IEEE 1394-Audiogeräte und Audiogeräte auf internen Bussen stellen alle ihre Geräte als KS-Filter mit Pins dar. Ein WDM-Audiotreiber verwaltet eine KSPIN_DESCRIPTOR Struktur für jeden unterstützten Pintyp. Innerhalb dieser Struktur speichert der Treiber die KSPROPSETID_Pin Eigenschaften des Pintyps. Zu diesen Eigenschaften gehört die KSPROPERTY_PIN_CATEGORY Eigenschaft. Eine Anforderung für diese Eigenschaft ruft die KS-Pin-Kategorie-GUID aus dem Member "Category" der KSPIN_DESCRIPTOR Struktur ab. Diese GUID gibt die allgemeine Kategorie der Funktionalität an, die der Pin bereitstellt. Beispielsweise identifiziert eine spezifische PIN-Kategorie-GUID, KSNODETYPE_HEADPHONES, einen Pin als Ausgabebuchse für Kopfhörer.

Im Falle eines Wave-Audiogeräts auf einem internen Bus (z. B. PCI) enthält der PortCls-Miniporttreiber ein Array von Pindeskriptoren, von denen jeder einen Pintyp im Filter beschreibt, der das Gerät darstellt. Jeder Pindeskriptor ist eine PCPIN_DESCRIPTOR Struktur, die eine eingebettete KSPIN_DESCRIPTOR Struktur mit einer PIN-Kategorie-GUID enthält. Beim Empfang einer KSPROPERTY_PIN_CATEGORY Eigenschaftsanforderung von einem Client ruft der Porttreiber die PIN-Kategorie-GUID aus dem Pindeskriptor des Miniporttreibers für den angegebenen Pintyp ab. Weitere Informationen über Pindeskriptoren finden Sie in Pin Factories.

Ein USB-Audiogerät verfügt über eine Reihe von Terminals, über die digitale Datenströme und analoge Signale in das Gerät gelangen und verlassen können. Beim Erstellen eines KS-Filters zur Darstellung eines USB-Audiogeräts übersetzt der USBAudio-Klassensystemtreiber die Terminals auf dem Gerät in Pins auf dem Filter. Die Headerdatei Ksmedia.h definiert eine Zuordnung für jeden USB-Terminaltypbezeichner zu einer KS-Pin-Kategorie-GUID. Die folgenden sechs Tabellen zeigen die Terminaltyp-IDs und die entsprechenden PIN-Kategorie-GUIDs.

Eingabeterminaltypen

USB-Terminal-ID KS Pin-Kategorien-GUID

0x0201

KSNODETYPE-MIKROFON

0x0202

KSNODETYPE_DESKTOP_MIKROFON

0x0203

KSNODETYPE_PERSONAL_MICROPHONE

0x0204

KSNODETYPE_omnidirektionales_Mikrofon

0x0205

KSNODETYPE_MICROPHONE_ARRAY

0x0206

KSNODETYPE_PROCESSING_MICROPHONE_ARRAY

Ausgabeterminaltypen

USB-Terminal-ID KS-Pin-Kategorie-GUID

0x0301

KSNODETYPE_SPEAKER (Lautsprechertyp)

0x0302

KSNODETYPE_HEADPHONES

0x0303

KSNODETYPE_HEAD_MOUNTED_DISPLAY_AUDIO

0x0304

KSNODETYPE_DESKTOP_SPEAKER

0x0305

KSNODETYPE_ROOM_SPEAKER

0x0306

KSNODETYPE_COMMUNICATION_SPEAKER

0x0307

KSNODETYPE_NIEDRIG_FREQENZ_EFFEKTE_LAUTSPRECHER

Bidirektionale Terminaltypen

USB-Terminal-ID KS-Pin-Kategorie-GUID

0x0401

KSNODETYPE_HANDSET

0x0402

KSNODETYPE_HEADSET

0x0403

KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION

0x0404

KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE (Echo-unterdrückendes Freisprechgerät)

0x0405

KSNODETYPE_ECHOKANTELLING_FREISPRECHEN

Telefonieterminaltypen

USB-Terminal-ID KS Pin-Kategorie GUID

0x0501

KSNODETYPE_TELEFONLEITUNG

0x0502

KSNODETYPE_TELEPHONE

0x0503

KSNODETYPE_DOWN_LINE_PHONE

Externe Terminaltypen

USB-Terminal-ID KS-Pin-Kategorie-GUID

0x0601

KSNODETYPE_ANALOG_CONNECTOR

0x0602

KSNODETYPE_DIGITAL_AUDIO_INTERFACE

0x0603

KSNODETYPE_LINE_CONNECTOR

0x0604

KSNODETYPE_LEGACY_AUDIO_CONNECTOR

0x0605

KSNODETYPE_SPDIF_INTERFACE

0x0606

KSNODETYPE_1394_DA_STREAM

0x0607

KSNODETYPE_1394_DV_STREAM_SOUNDTRACK

Eingebettete Funktionsterminaltypen

USB-Terminal-ID KS-Pin-Kategorie-GUID

0x0701

KNOTENTYP_LEVEL_KALIBRATION_RAUSCHQUELLE

0x0702

KSNODETYPE_EQUALIZATION_NOISE (retain untranslated if it's a specific identifier that should not be altered).

0x0703

KSNODETYPE_CD_PLAYER

0x0704

KSNODETYPE_DAT_IO_DIGITAL_AUDIO_TAPE

0x0705

KSNODETYPE_DCC_IO_DIGITAL_COMPACT_CASSETTE

0x0706

KSNODETYPE_MINIDISK

0x0707

KSNODETYPE_ANALOG_TAPE

0x0708

KSNODETYPE_PHONOGRAPH

0x0709

KSNODETYPE_VCR_AUDIO

0x070A

KSNODETYPE_VIDEO_DISC_AUDIO

0x070B

KSNODETYPE_DVD_AUDIO

0x070C

KSNODETYPE_TV_TUNER_AUDIO

0x070D

KSNODETYPE_SATELLITE_RECEIVER_AUDIO

0x070E

KSNODETYPE_CABLE_TUNER_AUDIO

0x070F

KSNODETYPE_DSS_AUDIO

0x0710

KSNODETYPE_RADIO_RECEIVER

0x0711

KSNODETYPE_RADIO_TRANSMITTER

0x0712

KSNODETYPE_MULTITRACK_RECORDER

0x0713

KSNODETYPE_SYNTHESIZER

Weitere Informationen zu USB-Terminaltyp-IDs finden Sie in der Definition der Universal Serial Bus Device Class für Terminaltypen (Version 1.0), die auf der Website des USB Implementers Forum verfügbar ist.

Alle PIN-Kategorie-GUIDs in den vorherigen Tabellen weisen Parameternamen des Formulars KSNODETYPE_XXX auf. Beachten Sie, dass KS-Knotentyp-GUIDs auch KSNODETYPE_XXX-Parameternamen aufweisen. Diese Benennungskonvention schafft ein gewisses Verwechslungspotential zwischen PIN-Kategorie-GUIDs und Knotentyp-GUIDs. Glücklicherweise identifiziert fast jeder KSNODETYPE_XXX-Parameter entweder eine Pinkategorie oder einen Knotentyp, aber nicht beide. Die einzige Ausnahme der Regel ist KSNODETYPE_SYNTHESIZER, die abhängig vom Kontext entweder eine Pinkategorie oder einen Knotentyp identifizieren kann. Eine Liste der Knotentyp-GUIDs finden Sie unter Audiotopologieknoten.

Beim Instanziieren eines USB-Audiogeräts fragt der USBAudio-Klassensystemtreiber das Gerät nach seiner internen Topologie ab, einschließlich seiner Terminals. Mit diesen Informationen erstellt der USBAudio-Treiber einen Filter, der das Gerät darstellt, und übersetzt jedes Terminal in einen entsprechenden Pin auf dem Filter. Während dieses Vorgangs übersetzt der Treiber jeden USB-Terminaltypbezeichner in die entsprechende KS-Pin-Kategorie-GUID, die eine der GUIDs in den vorherigen Tabellen ist. Der Treiber erstellt eine KSPIN_DESCRIPTOR Struktur zur Beschreibung des Pins und schreibt die PIN-Kategorie-GUID in die Struktur.

Ein PortCls-Miniporttreiber verwendet nicht unbedingt nur die Kategorie-GUIDs, die in den vorherigen sechs Tabellen angezeigt werden. Beispielsweise kann ein Treiber eine benutzerdefinierte PIN-Kategorie-GUID definieren und verwenden, um einen Pintyp zu beschreiben, dessen funktionale Kategorie außerhalb der Kategorien in den Tabellen liegt. Natürlich ist eine benutzerdefinierte PIN-Kategorie-GUID nur für Clients nützlich, die die GUID erkennen.

Das Audiosubsystem verwaltet eine Liste der PIN-Kategorie-GUIDs und der zugehörigen Anzeigenamen in der Systemregistrierung. Das Installationsprogramm für Medienklassen kopiert die GUID-Namen-Paare aus der Datei "Ks.inf", die sich im Unterordner "Inf" des Windows-Hauptordners befindet (z. B. C:\Windows\Inf\Ks.inf), in die Registrierung.

Das Betriebssystem verwendet Pinkategorien, um benutzerfreundliche Namen mit Audioendpunktgeräten zu verknüpfen. Weitere Informationen über das Zuordnen von benutzerfreundlichen Namen zu Audioendpunktgeräten finden Sie unter "Anzeigenamen für Audioendpunktgeräte".