_BRB_SCO_OPEN_CHANNEL structure (bthddi.h)
La structure _BRB_SCO_OPEN_CHANNEL décrit un canal SCO à ouvrir sur un appareil distant, ou une réponse du pilote de profil qui accepte ou rejette une demande de connexion SCO entrante initiée par un appareil distant.
Syntaxe
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;
};
Membres
Hdr
Structure BRB_HEADER qui contient des informations sur le BRB actuel.
BtAddress
Adresse Bluetooth de l’appareil distant sur lequel ouvrir un canal SCO.
TransmitBandwidth
Bande passante de transmission, en octets par seconde, à affecter au canal SCO.
ReceiveBandwidth
Bande passante de réception, en octets par seconde, à affecter au canal SCO.
MaxLatency
Valeur qui représente, en millisecondes, la limite supérieure de la somme de l’intervalle synchrone et de la taille de la fenêtre (e)SCO. Les valeurs possibles sont répertoriées dans le tableau suivant.
Valeurs | Description |
0x0000 à 0x0003 | Réservé pour un usage futur. |
0x0004 à 0xFFFE | Plage de valeurs MaxLatency possibles pour le canal. |
0xFFFF | Le canal n’a pas de paramètre MaxLatency préféré. |
PacketType
Indicateur ou combinaison d’indicateurs qui indiquent le type de paquets de données pris en charge par la connexion SCO. Ces types de paquets SCO sont définis par bluetooth SIG. Pour plus d’informations sur ces indicateurs, consultez la spécification Bluetooth. Les valeurs possibles incluent :
SCO_HV1
SCO_HV2
SCO_HV3
SCO_EV3
SCO_EV4
SCO_EV5
ContentFormat
Paramètres vocaux audio pour le canal. Utilisez les définitions suivantes pour encoder ce membre :
- 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
Réservé pour un usage futur. Ne pas utiliser.
RetransmissionEffort
A SCO_RETRANSMISSION_EFFORT valeur d’énumération qui détermine les stratégies de retransmission pour le canal.
ChannelFlags
Indicateurs qui spécifient la configuration requise pour l’ouverture du canal. Les valeurs d’indicateur valides sont répertoriées dans le tableau suivant :
Indicateur | Description |
SCO_CF_LINK_AUTHENTICATED | Le lien doit être authentifié. |
SCO_CF_LINK_ENCRYPTED | Le lien doit être chiffré. La définition de cet indicateur définit également l’indicateur SCO_CF_LINK_AUTHENTICATED. |
SCO_CF_LINK_SUPPRESS_PIN | Le pilote de profil indique qu’il préfère que les utilisateurs ne soient pas invités à entrer un code confidentiel. |
CallbackFlags
Indicateur qui spécifie quand la fonction affectée au membre de rappel doit être envoyée au client. Actuellement, il n’existe qu’un seul indicateur valide :
Indicateur | Description |
SCO_CALLBACK_DISCONNECT | Le pilote de profil doit être averti lorsque l’appareil distant est déconnecté. |
Callback
Fonction de rappel SCO implémentée par le pilote de profil, que la pile de pilotes Bluetooth doit appeler pour informer le pilote de profil de toute modification apportée à la connexion SCO.
CallbackContext
Contexte à passer à la fonction de rappel spécifiée dans le membre Callback . Le pilote de profil définit cette valeur.
ReferenceObject
Pointeur vers un objet à passer à ObReferenceObject et ObDereferenceObject pour lequel conserver un nombre de références.
ChannelHandle
Handle permettant d’identifier le canal SCO, si la demande de canal ouvert se termine correctement.
Response
Indicateur qui indique si le serveur local acceptera ou rejettera une connexion SCO entrante. Ce membre est utilisé uniquement lors de la génération et de l’envoi d’une demande de BRB_SCO_OPEN_CHANNEL_RESPONSE . Les valeurs d’indicateur valides sont répertoriées dans le tableau suivant.
Indicateur | Description |
---|---|
SCO_CONNECT_RSP_RESPONSE_SUCCESS | Le serveur local accepte la demande de connexion SCO. |
SCO_CONNECT_RSP_RESPONSE_NO_RESOURCES | Le serveur local rejette la demande de connexion SCO en raison d’un manque de ressources. |
SCO_CONNECT_RSP_RESPONSE_SECURITY_BLOCK | Le serveur local rejette la demande de connexion SCO, car la demande ne répond pas aux exigences de sécurité. |
SCO_CONNECT_RSP_RESPONSE_BAD_BD_ADDR | Le serveur local rejette la demande de connexion SCO, car il n’accepte pas les connexions à partir de l’adresse d’appareil Bluetooth spécifiée. |
Remarques
Pour ouvrir un canal SCO, les pilotes de profil doivent générer et envoyer une demande de BRB_SCO_OPEN_CHANNEL .
Si le lien asynchrone sans connexion vers l’appareil distant n’existe pas avant la demande, la pile de pilotes Bluetooth en crée un avant de créer le canal SCO.
Pour accepter ou rejeter une demande de connexion SCO entrante lancée par un appareil distant, les pilotes de profil doivent générer et envoyer un BRB_SCO_OPEN_CHANNEL_RESPONSE demande.
Un pilote de profil doit générer et envoyer une requête BRB_SCO_OPEN_CHANNEL_RESPONSE lorsque la pile de pilotes Bluetooth appelle la fonction de rappel SCO du pilote de profil et transmet ScoIndicationRemoteConnect dans le paramètre Indication de la fonction de rappel.
Le pilote de profil spécifie si la connexion doit être acceptée en stockant une valeur appropriée dans le membre Response de cette structure. Dans ce contexte, le système local est le serveur.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Versions :_Supported dans Windows Vista et versions ultérieures. |
En-tête | bthddi.h (inclure Bthddi.h) |