Compartir a través de


Bluetooth HFP omite el streaming de audio

En este artículo se explica la operación y la teoría de la transmisión de audio en bypass con el perfil manos libres (HFP) Bluetooth.

En el modo de omisión, la ruta de control de audio Bluetooth fluye a través de una conexión de hardware distinta que la interfaz HCI, como I2S, al controlador Bluetooth. Esta otra conexión de hardware suele ser I2S, pero puede ser cualquier interfaz determinada por el controlador de host Bluetooth. Esta conexión se conoce como una conexión de "derivación" o "banda lateral".

Aunque la E/S de audio se produce a través de la conexión bypass, el flujo de audio SCO (orientado a la conexión sincrónica) inalámbrica todavía se administra a través del HCI. Windows 8 proporciona un controlador Bluetooth Hands-Free Profile (HFP) para simplificar la administración de la conexión SCO y otros aspectos del perfil de Hands-Free. Sin embargo, un controlador de audio personalizado controla la E/S de datos de audio entre Windows y la conexión de bypass.

El controlador HFP y el controlador de control personalizado para los datos de E/S de audio tienen roles independientes, lo que requiere una comunicación eficaz entre ellos. Esta comunicación se controla mediante un conjunto de IOCTLs pasados desde el controlador de audio personalizado al controlador HFP de Windows.

Por lo general, la conexión de bypass está siempre presente. El servicio Plug and Play (PnP) enumera el hardware que incluye esta conexión y carga el controlador de audio necesario. Sin embargo, el sistema de audio puede que tenga o no auriculares HFP emparejados, y la conexión de omisión solo es útil si al menos unos auriculares HFP están emparejados.

Para cada dispositivo HFP emparejado, el controlador HFP de Windows registra y habilita una interfaz de dispositivo en la clase de interfaz GUID_DEVINTERFACE_BLUETOOTH_HFP_SCO_HCIBYPASS. Las condiciones siguientes se aplican a los dispositivos HFP:

  • Cuando Windows activa el controlador HFP (normalmente durante el arranque), el controlador HFP se registra y habilita una interfaz para cada dispositivo HFP emparejado.
  • Cuando un dispositivo HFP se empareja por primera vez con Windows que ya se está ejecutando, el controlador HFP se registra y habilita una interfaz para el dispositivo.
  • Si hay n dispositivos HFP emparejados, el controlador HFP de Windows registra n instancias de la interfaz del dispositivo.
  • Cuando se quita un dispositivo HFP emparejado, el controlador HFP de Windows deshabilita la interfaz del dispositivo.
  • Cuando Windows detiene el controlador HFP (normalmente durante el apagado o el reinicio), el controlador HFP deshabilita la interfaz de cada dispositivo HFP emparejado.
  • El controlador de audio debe controlar varias llegadas y eliminaciones de interfaces en cualquier momento, no solo durante el inicio o apagado.

Administración de recursos de I2S y SCO

En esta sección se describen las suposiciones realizadas en el diseño de la compatibilidad con el streaming de audio mediante derivación de Bluetooth.

Actualmente, Windows supone que solo hay un controlador de host Bluetooth. Además, la compatibilidad con la omisión sincrónica (SCO) del perfil de Hands-Free (HFP) supone que solo hay una conexión de omisión y cualquier canal abierto a través de la interfaz del controlador de dispositivo HFP está asociado a esa única conexión.

Los controladores de audio deben arbitrar este canal y la conexión de paso única para un único consumidor por orden de llegada. La manera más sencilla de lograr esto es que el controlador permita que solo un filtro realice la transición de sus pines al estado ACQUIRE.

Consulte también

Los temas siguientes proporcionan más información sobre el ciclo de vida de conexión y algunas características de diseño de un dispositivo HFP y su controlador de audio: