다음을 통해 공유


_BRB_SCO_OPEN_CHANNEL 구조체(bthddi.h)

_BRB_SCO_OPEN_CHANNEL 구조는 원격 디바이스에 열려는 SCO 채널 또는 원격 디바이스에서 시작된 들어오는 SCO 연결 요청을 수락하거나 거부하는 프로필 드라이버의 응답을 설명합니다.

구문

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;
};

멤버

Hdr

현재 BRB에 대한 정보를 포함하는 BRB_HEADER 구조체입니다.

BtAddress

SCO 채널을 열 원격 디바이스의 Bluetooth 주소입니다.

TransmitBandwidth

SCO 채널에 할당할 전송 대역폭(초당 바이트)입니다.

ReceiveBandwidth

SCO 채널에 할당할 수신 대역폭(초당 바이트)입니다.

MaxLatency

동기 간격 합계의 상한과 (e)SCO 창의 크기를 나타내는 값(밀리초)입니다. 가능한 값은 다음 표에 나와 있습니다.

설명
0x0003 0x0000 다음에 사용하도록 예약됩니다.
0xFFFE 0x0004 채널에 대해 가능한 MaxLatency 값의 범위입니다.
0xFFFF 채널에 기본 설정 MaxLatency 설정이 없습니다.

PacketType

SCO 연결에서 지원하는 데이터 패킷의 형식을 나타내는 플래그 또는 플래그 조합입니다. 이러한 SCO 패킷 유형은 Bluetooth SIG에 의해 정의됩니다. 이러한 플래그에 대한 자세한 내용은 Bluetooth 사양을 참조하세요. 가능한 값은 다음과 같습니다.

SCO_HV1

SCO_HV2

SCO_HV3

SCO_EV3

SCO_EV4

SCO_EV5

ContentFormat

채널의 오디오 음성 설정입니다. 다음 정의를 사용하여 이 멤버를 인코딩합니다.

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

다음에 사용하도록 예약됩니다. 사용하지 마십시오.

RetransmissionEffort

ASCO_RETRANSMISSION_EFFORT 채널에 대한 재전송 정책을 결정하는 열거형 값입니다.

ChannelFlags

채널 열기에 대한 요구 사항을 지정하는 플래그입니다. 유효한 플래그 값은 다음 표에 나열되어 있습니다.

플래그 설명
SCO_CF_LINK_AUTHENTICATED 링크를 인증해야 합니다.
SCO_CF_LINK_ENCRYPTED 링크를 암호화해야 합니다. 이 플래그를 설정하면 SCO_CF_LINK_AUTHENTICATED 플래그도 설정됩니다.
SCO_CF_LINK_SUPPRESS_PIN 프로필 드라이버는 사용자에게 PIN을 묻는 메시지가 표시되지 않음을 기본 설정으로 나타냅니다.

CallbackFlags

콜백 멤버에 할당된 함수를 클라이언트로 보내야 하는 시기를 지정하는 플래그입니다. 현재 유효한 플래그는 하나만 있습니다.

플래그 설명
SCO_CALLBACK_DISCONNECT 원격 디바이스의 연결이 끊어지면 프로필 드라이버에 알림을 보내야 합니다.

Callback

프로필 드라이버에서 구현하는 SCO 콜백 함수 로, Bluetooth 드라이버 스택이 를 호출하여 프로필 드라이버에 SCO 연결 변경 내용을 알려야 합니다.

CallbackContext

콜백 멤버에 지정된 콜백 함수에 전달할 컨텍스트입니다. 프로필 드라이버는 이 값을 정의합니다.

ReferenceObject

참조 수를 유지할 ObReferenceObjectObDereferenceObject 에 전달할 개체에 대한 포인터입니다.

ChannelHandle

열린 채널 요청이 성공적으로 완료된 경우 SCO 채널을 식별하는 핸들입니다.

Response

로컬 서버가 들어오는 SCO 연결을 수락하거나 거부할지 여부를 나타내는 플래그입니다. 이 멤버는 BRB_SCO_OPEN_CHANNEL_RESPONSE 요청을 빌드하고 보낼 때만 사용됩니다. 유효한 플래그 값은 다음 표에 나와 있습니다.

플래그 설명
SCO_CONNECT_RSP_RESPONSE_SUCCESS 로컬 서버는 SCO 연결 요청을 수락합니다.
SCO_CONNECT_RSP_RESPONSE_NO_RESOURCES 로컬 서버는 리소스 부족으로 인해 SCO 연결 요청을 거부합니다.
SCO_CONNECT_RSP_RESPONSE_SECURITY_BLOCK 요청이 보안 요구 사항을 충족하지 않으므로 로컬 서버는 SCO 연결 요청을 거부합니다.
SCO_CONNECT_RSP_RESPONSE_BAD_BD_ADDR 로컬 서버는 지정된 Bluetooth 디바이스 주소의 연결을 허용하지 않으므로 SCO 연결 요청을 거부합니다.

설명

SCO 채널을 열려면 프로필 드라이버가 BRB_SCO_OPEN_CHANNEL 요청을 빌드하고 보내야 합니다.

요청 전에 원격 디바이스에 대한 비동기 연결 없는 링크가 없는 경우 Bluetooth 드라이버 스택은 SCO 채널을 만들기 전에 하나를 만듭니다.

원격 디바이스에서 시작한 들어오는 SCO 연결 요청을 수락하거나 거부하려면 프로필 드라이버가 를 빌드하고 보내야 합니다. BRB_SCO_OPEN_CHANNEL_RESPONSE 요청.

Bluetooth 드라이버 스택이 프로필 드라이버의 SCO 콜백 함수를 호출하고 콜백 함수의 표시 매개 변수에 ScoIndicationRemoteConnect를 전달할 때 프로필 드라이버가 BRB_SCO_OPEN_CHANNEL_RESPONSE 요청을 빌드하고 보내야 합니다.

프로필 드라이버는 이 구조체의 Response 멤버에 적절한 값을 저장하여 연결을 수락할지 여부를 지정합니다. 이 컨텍스트에서 로컬 시스템은 서버입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 버전:windows Vista 이상에서 _Supported.
머리글 bthddi.h(Bthddi.h 포함)

추가 정보

BRB_HEADER

BRB_SCO_OPEN_CHANNEL

BRB_SCO_OPEN_CHANNEL_RESPONSE

ObDereferenceObject

ObReferenceObject

SCO 콜백 함수

SCO_RETRANSMISSION_EFFORT