Freigeben über


_BRB_SCO_OPEN_CHANNEL Struktur (bthddi.h)

Die _BRB_SCO_OPEN_CHANNEL-Struktur beschreibt einen SCO-Kanal, der auf einem Remotegerät geöffnet werden soll, oder eine Antwort des Profiltreibers, die eine eingehende SCO-Verbindungsanforderung akzeptiert oder abgelehnt hat, die von einem Remotegerät initiiert wurde.

Syntax

struct _BRB_SCO_OPEN_CHANNEL {
  BRB_HEADER                 Hdr;
  BTH_ADDR                   BtAddress;
  ULONG                      TransmitBandwidth;
  ULONG                      ReceiveBandwidth;
  USHORT                     MaxLatency;
  USHORT                     PacketType;
  USHORT                     ContentFormat;
  USHORT                     Reserved;
  SCO_RETRANSMISSION_EFFORT  RetransmissionEffort;
  ULONG                      ChannelFlags;
  ULONG                      CallbackFlags;
  PFNSCO_INDICATION_CALLBACK Callback;
  PVOID                      CallbackContext;
  PVOID                      ReferenceObject;
  SCO_CHANNEL_HANDLE         ChannelHandle;
  UCHAR                      Response;
};

Angehörige

Hdr

Eine BRB_HEADER Struktur, die Informationen zum aktuellen BRB enthält.

BtAddress

Die Bluetooth-Adresse des Remotegeräts, um einen SCO-Kanal zu öffnen.

TransmitBandwidth

Die Übertragungsbandbreite in Bytes pro Sekunde, die dem SCO-Kanal zugewiesen werden soll.

ReceiveBandwidth

Die Empfangsbandbreite in Bytes pro Sekunde, die dem SCO-Kanal zugewiesen werden soll.

MaxLatency

Ein Wert, der in Millisekunden die obere Grenze der Summe des synchronen Intervalls und die Größe des (e)SCO-Fensters darstellt. Mögliche Werte sind in der folgenden Tabelle aufgeführt.

Werte Beschreibung
0x0000 zum 0x0003 Reserviert für die zukünftige Verwendung.
0x0004 zum 0xFFFE Der Bereich der möglichen MaxLatency Werte für den Kanal.
0xFFFF Der Kanal hat keine bevorzugte einstellung MaxLatency.

PacketType

Ein Kennzeichen oder eine Kombination von Flags, die den Typ von Datenpaketen angeben, die von der SCO-Verbindung unterstützt werden. Diese SCO-Pakettypen werden vom Bluetooth SIG definiert. Weitere Informationen zu diesen Flags finden Sie in der Bluetooth-Spezifikation. Mögliche Werte sind:

SCO_HV1

SCO_HV2

SCO_HV3

SCO_EV3

SCO_EV4

SCO_EV5

ContentFormat

Die Audiostimmeeinstellungen für den Kanal. Verwenden Sie die folgenden Definitionen, um dieses Element zu codieren:

SCO_VS_AIR_CODING_DATA
SCO_VS_AIR_CODING_FORMAT_ALAW
SCO_VS_AIR_CODING_FORMAT_CVSD
SCO_VS_AIR_CODING_FORMAT_MASK
SCO_VS_AIR_CODING_FORMAT_MULAW
SCO_VS_IN_CODING_ALAW
SCO_VS_IN_CODING_LINEAR
SCO_VS_IN_CODING_MASK
SCO_VS_IN_CODING_MULAW
SCO_VS_IN_DATA_FORMAT_1C
SCO_VS_IN_DATA_FORMAT_2C
SCO_VS_IN_DATA_FORMAT_MASK
SCO_VS_IN_DATA_FORMAT_SM
SCO_VS_IN_DATA_FORMAT_US
SCO_VS_IN_SAMPLE_SIZE_8BIT
SCO_VS_IN_SAMPLE_SIZE_16BIT
SCO_VS_IN_SAMPLE_SIZE_MASK
SCO_VS_PCM_BIT_POS_MASK
SCO_VS_SETTING_DEFAULT

Reserved

Reserviert für die zukünftige Verwendung. Nicht verwenden.

RetransmissionEffort

Ein SCO_RETRANSMISSION_EFFORT Enumerationswert, der die Erneutübertragungsrichtlinien für den Kanal bestimmt.

ChannelFlags

Flags, die die Anforderungen für den zu öffnenden Kanal angeben. Gültige Kennzeichenwerte sind in der folgenden Tabelle aufgeführt:

Kennzeichnung Beschreibung
SCO_CF_LINK_AUTHENTICATED Der Link muss authentifiziert werden.
SCO_CF_LINK_ENCRYPTED Der Link muss verschlüsselt werden. Durch Festlegen dieses Kennzeichens wird auch das SCO_CF_LINK_AUTHENTICATED Flag festgelegt.
SCO_CF_LINK_SUPPRESS_PIN Der Profiltreiber gibt seine Einstellung an, dass Benutzer nicht zur Eingabe einer PIN aufgefordert werden.

CallbackFlags

Ein Flag, das angibt, wann die dem Callback Member zugewiesene Funktion an den Client gesendet werden soll. Derzeit gibt es nur ein gültiges Kennzeichen:

Kennzeichnung Beschreibung
SCO_CALLBACK_DISCONNECT Der Profiltreiber sollte benachrichtigt werden, wenn das Remotegerät getrennt wird.

Callback

Die SCO Callback Function vom Profiltreiber implementiert, dass der Bluetooth-Treiberstapel aufgerufen werden soll, um den Profiltreiber über Änderungen an der SCO-Verbindung zu benachrichtigen.

CallbackContext

Der Kontext, der an die rückruffunktion übergeben werden soll, die im Callback Member angegeben ist. Der Profiltreiber definiert diesen Wert.

ReferenceObject

Ein Zeiger auf ein Objekt, das an ObReferenceObject übergeben werden soll, und ObDereferenceObject-, für die eine Referenzanzahl beibehalten werden soll.

ChannelHandle

Ein Handle zum Identifizieren des SCO-Kanals, wenn die offene Kanalanforderung erfolgreich abgeschlossen wird.

Response

Ein Flag, das angibt, ob der lokale Server eine eingehende SCO-Verbindung akzeptiert oder ablehnt. Dieses Element wird nur verwendet, wenn eine BRB_SCO_OPEN_CHANNEL_RESPONSE Anforderung erstellt und gesendet wird. Gültige Kennzeichenwerte werden in der folgenden Tabelle aufgeführt.

Flagge Beschreibung
SCO_CONNECT_RSP_RESPONSE_SUCCESS Der lokale Server akzeptiert die SCO-Verbindungsanforderung.
SCO_CONNECT_RSP_RESPONSE_NO_RESOURCES Der lokale Server lehnt die SCO-Verbindungsanforderung aufgrund fehlender Ressourcen ab.
SCO_CONNECT_RSP_RESPONSE_SECURITY_BLOCK Der lokale Server lehnt die SCO-Verbindungsanforderung ab, da die Anforderung keine Sicherheitsanforderungen erfüllt.
SCO_CONNECT_RSP_RESPONSE_BAD_BD_ADDR Der lokale Server lehnt die SCO-Verbindungsanforderung ab, da sie keine Verbindungen von der angegebenen Bluetooth-Geräteadresse akzeptiert.

Bemerkungen

Um einen SCO-Kanal zu öffnen, sollten Profiltreiber eine BRB_SCO_OPEN_CHANNEL Anforderung erstellen und senden.

Wenn die asynchrone verbindungslose Verbindung mit dem Remotegerät vor der Anforderung nicht vorhanden ist, erstellt der Bluetooth-Treiberstapel einen, bevor er den SCO-Kanal erstellt.

Um eine eingehende SCO-Verbindungsanforderung zu akzeptieren oder abzulehnen, die von einem Remotegerät initiiert wurde, sollten Profiltreiber Erstellen und Senden BRB_SCO_OPEN_CHANNEL_RESPONSE Anforderung.

Ein Profiltreiber sollte eine BRB_SCO_OPEN_CHANNEL_RESPONSE Anforderung erstellen und senden, wenn der Bluetooth-Treiberstapel die SCO Callback Function des Profiltreibers aufruft und ScoIndicationRemoteConnect- im parameter Indication der Rückruffunktion übergibt.

Der Profiltreiber gibt an, ob die Verbindung akzeptiert werden soll, indem ein entsprechender Wert im Response Member dieser Struktur gespeichert wird. In diesem Zusammenhang ist das lokale System der Server.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Versionen:_Supported in Windows Vista und höher.
Header- bthddi.h (include Bthddi.h)

Siehe auch

BRB_HEADER

BRB_SCO_OPEN_CHANNEL

BRB_SCO_OPEN_CHANNEL_RESPONSE

ObDereferenceObject

ObReferenceObject-

SCO-Rückruffunktion

SCO_RETRANSMISSION_EFFORT