Điều khiển thiết bị đeo
Các chế độ điều khiển thiết bị đeo trên tính năng Ghép nối nhanh nhằm cung cấp các chế độ kiểm soát quyền truy cập tốt hơn cho các tính năng quan trọng của thiết bị đeo trên Android. Để đạt được điều này, chúng tôi đã thêm một nhóm tin nhắn mới có các chế độ điều khiển của Hearable bên trong Luồng tin nhắn.
Tên nhóm tin nhắn | Giá trị |
---|---|
Điều khiển thiết bị đeo | 0x08 |
Chủ động kiểm soát tiếng ồn
Tính năng chủ động kiểm soát tiếng ồn đang trở thành một tính năng nổi bật của tai nghe cao cấp. Ở phía Trình tìm kiếm, tính năng Ghép nối nhanh sẽ có giao diện người dùng và logic để thiết lập, nhận và lưu trạng thái, đồng thời trạng thái sẽ được lưu trữ ở phía Nhà cung cấp. Nhà cung cấp bắt buộc phải gửi Session Nonce (Số chỉ dùng một lần của phiên) khi luồng sự kiện được kết nối. Để đạt được điều này, các mã thông báo bên dưới được xác định:
Tên mã thông báo | Giá trị | Người gửi | Trình phản hồi | MAC | ACK |
---|---|---|---|---|---|
Lấy trạng thái ANC | 0x11 | Seeker | Nhà cung cấp | Không | Không |
Đặt trạng thái ANC | 0x12 | Seeker | Nhà cung cấp | Có | Có |
Thông báo trạng thái ANC | 0x13 | Nhà cung cấp | Seeker | Không | Không |
Khi Trình tìm kiếm kết nối với Trình cung cấp hoặc khi Trình cung cấp nhận được thông báo "Nhận trạng thái ANC", Trình cung cấp có thể Thông báo trạng thái ANC để cho Trình tìm kiếm biết khả năng ANC và trạng thái được lưu trữ của ANC. Thông báo như sau:
Byte | Loại dữ liệu | Mô tả | Giá trị |
---|---|---|---|
0 | uint8 | Điều khiển thiết bị đeo | 0x08 |
1 | uint8 | Thông báo trạng thái ANC | 0x13 |
2 – 3 | uint16 | Độ dài dữ liệu bổ sung | 0x04 |
4 – 7 | Dữ liệu điều khiển ANC | thay đổi |
Dữ liệu điều khiển ANC
Byte | Loại dữ liệu | Mô tả | Giá trị |
---|---|---|---|
0 | uint8 | Mã phiên bản | varies,0x02 cho phiên bản này |
1 | Cờ | Nút bật/tắt trên giao diện người dùng Mỗi chế độ được bật (1) hoặc tắt (0) theo giá trị của bit cờ, như sau: Bit 0 (MSB): trong suốt Bit 1: Dành riêng (Đặt bit thành 0) Bit 2: tắt Bit 3: Dành riêng (Đặt bit thành 0) Bit 4: ANC |
thay đổi |
2 | Cờ | Nút bật/tắt có thể đặt Bạn cũng có thể đặt bất kỳ hoặc tất cả các bit bật/tắt giao diện người dùng ở trên tại đây để cho biết những bit nào hiện đang được bật. |
thay đổi |
3 | Cờ | Trạng thái hiện tại Chỉ có thể đặt một bit và giá trị của byte này phải khác 0. |
thay đổi |
Trình tìm kiếm sẽ hiển thị giao diện người dùng bật/tắt theo dữ liệu điều khiển ANC.
Ví dụ 1: Nhà cung cấp hỗ trợ ANC 3 chiều: trong suốt – tắt – ANC và tai nghe đang ở trên đầu, tất cả chế độ hiện có thể thiết lập và trạng thái hiện tại là tắt:
Byte | Loại dữ liệu | Mô tả | Giá trị |
---|---|---|---|
0 | uint8 | Mã phiên bản | 0x01 |
1 | Cờ | Nút bật/tắt trên giao diện người dùng | 0b10101000 |
2 | Cờ | Nút bật/tắt có thể đặt | 0b10101000 |
3 | Cờ | Trạng thái hiện tại | 0b00100000 |
Ví dụ 2: Nhà cung cấp hỗ trợ ANC 3 chiều: trong suốt – tắt – ANC, hiện tại chỉ có một tai nghe đang đeo hoặc không có tai nghe nào đang đeo, vì vậy không thể đặt chế độ nào và trạng thái hiện tại là tắt:
Byte | Loại dữ liệu | Mô tả | Giá trị |
---|---|---|---|
0 | uint8 | Mã phiên bản | 0x01 |
1 | Cờ | Nút bật/tắt giao diện người dùng | 0b10101000 |
2 | Cờ | Nút bật/tắt có thể đặt | 0b00000000 |
3 | Cờ | Trạng thái hiện tại | 0b00100000 |
Nếu người dùng chuyển nút bật/tắt, Trình tìm kiếm sẽ đặt trạng thái hiện tại thành Nhà cung cấp như sau:
Byte | Loại dữ liệu | Mô tả | Giá trị |
---|---|---|---|
0 | uint8 | Điều khiển thiết bị đeo | 0x08 |
1 | uint8 | Đặt trạng thái ANC | 0x12 |
2 – 3 | uint16 | Độ dài dữ liệu bổ sung | biến, 0x04 hoặc 0x14 |
4 | uint8 | Mã phiên bản của Seeker | varies, 0x01 hoặc 0x02 |
5 | Cờ | Chế độ có thể đặt ANC (nút bật/tắt trên giao diện người dùng) | thay đổi |
6 | Cờ | Chế độ Bật ANC (Chế độ bật/tắt có thể đặt) | thay đổi |
7 | Cờ | Chỉ mục chế độ ANC mới (Trạng thái mới) | thay đổi |
8 – 23 | Đã đặt trước | thay đổi |
Byte 4 – 7 thực sự là dữ liệu điều khiển ANC được gửi từ bên Trình tìm. Nếu bạn đặt giá trị chiều dài bổ sung thành 0x14, thì các byte được đặt trước 8-23 sẽ xuất hiện và khi nhận được các byte này, nhà cung cấp sẽ bỏ qua các byte này. Nếu giá trị chiều dài bổ sung được đặt thành 0x04, thì sẽ không có byte nào được đặt trước.
Khi nhận được thông báo "Đặt trạng thái ANC", Trình cung cấp phải Xác nhận và Thông báo trạng thái ANC cho tất cả Trình tìm kiếm đã kết nối. Nếu người dùng thay đổi chế độ cài đặt thông qua cử chỉ trên tai nghe hoặc ứng dụng đồng hành, thì Nhà cung cấp cũng phải gửi thông báo đến tất cả Trình tìm kiếm đã kết nối.