Nguyên tắc về chứng nhận chuyển đổi âm thanh

Chuẩn bị cho bài đánh giá cấp chứng chỉ

  • Chuẩn bị thiết bị thử nghiệm.
    • Bạn sẽ cần 5 thiết bị Android.
      • Các thiết bị này phải bao gồm:
        • Tối thiểu một Android T (13) và một Android V (15).
        • Ít nhất một điện thoại Samsung và một điện thoại Pixel.
        • Ví dụ:
          • 1 OnePlus (Android 10).
          • 3 Samsung (Android 11, 12, 13).
          • 1 Pixel (Android 15).
    • Một thiết bị không có nút chuyển Âm thanh:
      • Mọi iPhone, máy tính, máy tính xách tay có Bluetooth (BT) hoặc điện thoại Android có nút chuyển Âm thanh bị tắt.
        • Bạn có thể tắt tính năng Chuyển đổi âm thanh trong phần cài đặt thông tin chi tiết về thiết bị Bluetooth.
      • Trường hợp kiểm thử đa điểm (MP) 2.8 cần có một thiết bị không có tính năng Chuyển đổi âm thanh ngoài 5 điện thoại thử nghiệm.
  • Tham gia Nhóm kiểm tra việc chuyển đổi âm thanh với các tài khoản kiểm thử của bạn để hiển thị thông báo gỡ lỗi trên điện thoại thử nghiệm.

    • Việc này cũng giúp Google thu thập dữ liệu thử nghiệm thông qua Google Analytics.

Cổ điển với A2DP+HFP

  • Đảm bảo tất cả thiết bị Android đều đã cài đặt GmsCore phiên bản 23.xx.xx trở lên.

BLE bằng Âm thanh năng lượng thấp

  • Ít nhất hai trong số các điện thoại tham chiếu phải hỗ trợ LE Audio.
    • Ví dụ: một điện thoại Samsung và một điện thoại Pixel hỗ trợ LE Audio.
  • Đảm bảo tất cả thiết bị Android đều đã cài đặt GmsCore phiên bản 24.33.xx trở lên.

Tiêu chí chứng nhận

  • Tỷ lệ chuyển đổi mục tiêu thành công phải vượt quá 95% trong tất cả các trường hợp kiểm thử.
  • Trong các thử nghiệm yêu cầu chuyển đổi, kết nối hồ sơ và trạng thái đang bật của nút chuyển phải hoàn tất trong vòng 3 giây sau khi kích hoạt sự kiện âm thanh trong ít nhất 75% trường hợp.

Cổ điển với A2DP+HFP

Quy trình tự kiểm tra phải được thực hiện theo các cách kết hợp sau:

  • Điện thoại A=Android S (12) + Điện thoại B=Android T (13)
  • Điện thoại A=Android T (13) + Điện thoại B=Android S (12)

BLE bằng Âm thanh năng lượng thấp

Bạn phải thực hiện Tự kiểm thử theo các tổ hợp sau:

  • Điện thoại A: BT Classic, Điện thoại B: BT Classic
  • Điện thoại A: Âm thanh năng lượng thấp, Điện thoại B: Bluetooth phiên bản cũ
  • Điện thoại A: BT Cổ điển, Điện thoại B: LE Audio

Nếu muốn, những Nhà cung cấp hỗ trợ kết nối Âm thanh năng lượng thấp kép nên kiểm tra:

  • Điện thoại A: Âm thanh năng lượng thấp, Điện thoại B: Âm thanh năng lượng thấp

Hướng dẫn kiểm thử

Chuẩn bị thiết bị được kiểm thử (DUT)

  • Xác minh rằng thiết bị Bluetooth chưa từng được ghép nối với bất kỳ điện thoại nào đã đăng nhập vào Tài khoản Google kiểm thử.
    • Nếu thiết bị đã được ghép nối với Tài khoản Google kiểm thử, hãy làm như sau để xoá hoạt động ghép nối:
      • Trong các thiết bị đã ghép nối:
        • Chuyển đến phần cài đặt Bluetooth.
        • Chọn "Xoá thiết bị".
        • Bật và tắt Chế độ trên máy bay.
    • Đảm bảo bạn đã BẬT chế độ "Tự động lưu thiết bị".
      • Nút chuyển này ở trạng thái TẮT theo mặc định.
      • Bạn có thể tìm thấy tuỳ chọn này trong phần Cài đặt > Google > Thiết bị > Thiết bị đã lưu (một tuỳ chọn cho mỗi DUT).
    • Đặt thiết bị Bluetooth ở Chế độ ghép nối.
    • Ghép nối thiết bị Bluetooth ban đầu (A).
    • Ghép nối các thiết bị Bluetooth tiếp theo với các thiết bị khác (B, C, D, v.v.).

Phạm vi

  • Tất cả tai nghe đều chạy các chương trình kiểm thử từ nhiều thẻ trong Mẫu tự kiểm thử nút chuyển âm thanh.
  • Các tai nghe chỉ hỗ trợ chế độ SinglePoint (SP) sẽ chạy như sau:
    • Thẻ Generic_test.
  • Tai nghe hỗ trợ chế độ MP sẽ chạy như sau:
    • Thẻ Generic_test.
    • Thẻ Multipoint_only.
  • Tai nghe MP có thể chuyển đổi sang chế độ SP có thể chạy như sau:
    • Thẻ Generic_test (Kiểm thử chung) với MP tắt.
    • Thẻ Generic_test (kiểm thử chung) với MP đang bật.
    • Thẻ Multipoint_only đang bật tính năng MP.

Hoàn tất quy trình tự nghỉ ngơi và báo cáo tự kiểm tra

Cổ điển với A2DP+HFP

  • Thiết bị B sẽ là DUT chính.
    • Nhập thông tin chi tiết về Thiết bị B vào các trường "Điện thoại" và "Hệ điều hành" ở đầu mẫu.

Ví dụ về trường hợp kiểm thử:

  • Điện thoại thử nghiệm:

    • Thiết bị 1: Samsung (Android 13)
    • Thiết bị 2: Pixel (Android 12 hoặc 13) và các thiết bị khác.
  • Các thử nghiệm đã thực thi:

    • Chạy 1. Thiết bị A=Samsung S10+ (12), Thiết bị B=Pixel 7 pro (13) cột D: Điện thoại=Pixel 7 pro, hệ điều hành=Android 13
    • Chạy 2. Thiết bị A=Pixel 7 pro (13), Thiết bị B=Pixel 6(12) cột E: Điện thoại=Pixel 6, Hệ điều hành=Android 12

Ví dụ về một kiểm thử đã hoàn tất trong mẫu tự kiểm thử:

Hình ảnh này cho thấy kết quả của một thử nghiệm mẫu

BLE với LE Audio

  1. Thiết bị A=Android V (15) + Thiết bị B=Android T (13)
  2. Thiết bị A=Android T (13) + Thiết bị B=Android V (15)
  3. Thiết bị A=Android T (13) + Thiết bị B=Android S (12)
  4. Thiết bị A=Android T (15) + Thiết bị B=Android V (15)
  5. Thiết bị B sẽ là DUT chính.
    • Nhập thông tin chi tiết về Thiết bị B vào các trường "Điện thoại" và "Hệ điều hành" ở đầu mẫu.

Ví dụ về trường hợp kiểm thử:

  • Điện thoại thử nghiệm:

    • Thiết bị 1: Samsung (Android 13)
    • Thiết bị 2: Pixel (Android 15) và các thiết bị khác.
  • Các kiểm thử đã thực thi:

    • [LEA+BT]: Thiết bị A= Pixel 8 (15), Thiết bị B=Pixel 7 Pro (13) cột D: Điện thoại=Pixel 7 Pro, Hệ điều hành=Android 13
    • [BT+LEA]: Thiết bị A=Pixel 7 (13), Thiết bị B=Pixel 8 (Android 15) cột E: Điện thoại=Pixel 8, OS=Android 15
    • [BT+BT]: Thiết bị A=Pixel 7 pro (13), Thiết bị B=Samsung S10+ (12) cột E: Điện thoại=Samsung S10+, Hệ điều hành=Android 12
    • [LEA+LEA]: Thiết bị A=Pixel 8 (15), Thiết bị B=Pixel 8(15) cột E: Điện thoại=Pixel 8, hệ điều hành=Android 15

Ví dụ về một bài kiểm thử đã hoàn tất trong mẫu tự kiểm thử:

Hình ảnh này cho thấy kết quả của một thử nghiệm mẫu

Sự kiện âm thanh:

  • Sau đây là 4 loại sự kiện âm thanh được kiểm thử và ứng dụng kiểm thử được đề xuất:

    1. Lệnh gọi:
      1. Ứng dụng điện thoại tích hợp.
    2. VoIP: Mọi ứng dụng VoIP đều hoạt động, chẳng hạn như:
      1. Ứng dụng kiểm thử nút chuyển đổi âm thanh.
      2. FB Messenger.
      3. Đường kẻ.
      4. WhatsApp.
      5. Google Meet.
      6. Google Meet.
    3. Nội dung nghe nhìn: Mọi trình phát âm thanh đều hoạt động, chẳng hạn như:
      1. Ứng dụng kiểm tra chức năng chuyển đổi âm thanh.
      2. YouTube Music.
      3. Apple Music.
      4. Spotify.
      5. Google Podcasts).
    4. Trò chơi:
      1. Ứng dụng kiểm thử nút chuyển đổi âm thanh.

Thông tin gỡ lỗi:

  • Thông báo được bật sau khi tham gia nhóm fp-sass-partner-test. Dưới đây là một số ví dụ:

    • Thông báo trạng thái mới nhất:

    Hình 1: Hình này cho thấy thông báo "thông báo trạng thái mới nhất".

    • Không có thông báo chuyển đổi:

    Hình 2: Hình này hiển thị thông báo "no Switch notification".

    • Thông báo về độ trễ của nút chuyển:

    Hình 3: Hình này cho thấy thông báo "thông báo độ trễ của nút chuyển".

Đo độ trễ

  • Có hai loại độ trễ khi chuyển đổi:
    1. Kết nối hồ sơ Bluetooth với Trình tìm kiếm đã ngắt kết nối.
      • Điều này bao gồm tất cả các trường hợp SinglePoint và một số trường hợp MP có Trình tìm mục tiêu mục tiêu (thiết bị B) bị ngắt kết nối.
    2. Tôi đang chuyển đổi Người tìm kiếm đang hoạt động được kết nối.
      • Trong đó có một số trường hợp MP mà Trình tìm kiếm mục tiêu (thiết bị B) đã được kết nối.
  • Có hai cách để truy xuất thông tin về độ trễ:
    1. Bạn có thể kết xuất tất cả độ trễ bằng lệnh adb.
      • Vui lòng tham khảo phần độ trễ kết xuất để biết thông tin chi tiết.
      • Lệnh này có thể cung cấp và ghi lại độ trễ sau khi hoàn tất ít nhất một trường hợp kiểm thử.
    2. Sử dụng ứng dụng kiểm thử nút chuyển đổi âm thanh.
      • Ứng dụng đang chạy trên Trình tìm kiếm mục tiêu sẽ hiển thị độ trễ sau khi chuyển đổi.
      • Nếu không có nút chuyển, ứng dụng sẽ hiển thị lý do "không có nút chuyển".

Ứng dụng thử nghiệm chuyển đổi âm thanh:

  • Việc sử dụng ứng dụng để kích hoạt các sự kiện âm thanh VoIP/Media/Game trong quá trình tự kiểm thử sẽ đơn giản hoá việc thiết lập kiểm thử và giảm độ trễ sự kiện của Trình tìm kiếm.
  • Cài đặt ứng dụng:
    • Sao chép tệp APK vào điện thoại thử nghiệm rồi mở điện thoại đó.
    • Ngoài ra, hãy sử dụng adb install audio_test_app.apk.
  • Nếu bạn thấy hộp thoại yêu cầu quyền truy cập thông báo, hãy làm như sau:
    1. nhấp vào "OK"
    2. Chọn "FP SASS test" (Kiểm thử FP SASS) trong danh sách ứng dụng
    3. Cho phép truy cập thông báo.

Tổng quan về ứng dụng:

Hình ảnh này là ví dụ về ứng dụng đang chạy

  • Nhà cung cấp mục tiêu

    • Khi người dùng nhấp vào nút này, danh sách thiết bị Bluetooth đã ghép nối sẽ xuất hiện. Chọn chiến dịch mà bạn muốn thử nghiệm.
    • Các nút Kết nối và Ngắt kết nối hoạt động giống như nút trong phần chi tiết thiết bị của phần cài đặt Bluetooth.
  • Trạng thái hiện tại

    • Trường này cho biết trạng thái kết nối gần đây nhất mà Trình tìm kiếm nhận được từ một Nhà cung cấp bằng cách sử dụng luồng sự kiện hoặc quảng cáo BLE.
    • Thông báo gỡ lỗi nút chuyển âm thanh cũng xuất hiện ở đây.
  • Loại trình tìm kiếm

    • Lựa chọn này dùng để chuyển đổi thiết bị giữa các luồng âm thanh.

Loại âm thanh

Cổ điển với A2DP+HFP

  • VoIP
    • Khi bạn chọn chế độ này, chế độ phát âm thanh sẽ thay đổi thành AudioManager.MODE_IN_COMMUNICATION và gọi AudioManager.startBluetoothSco, sau đó phát âm thanh bằng USAGE_VOICE_COMMUNICATION.
    • Loại luồng là STREAM_VOICE_CALL.
    • Trạng thái kết nối của trình cung cấp sẽ chuyển sang CONNECTED_HFP trong vòng 5 giây.
  • Nội dung đa phương tiện
    • Khi chọn chế độ này, âm thanh hỗ trợ AVRCP sẽ phát. Loại sử dụng âm thanh là: USAGE_MEDIA.
    • Trạng thái kết nối của nhà cung cấp sẽ chuyển sang CONNECTED_A2DP_WITH_AVRCP trong vòng 5 giây.
    • Trạng thái kết nối có thể chuyển sang CONNECTED_A2DP_ONLY trong giây lát khi bắt đầu hoặc dừng.
  • Trò chơi
    • Khi bạn chọn chế độ này, âm thanh sẽ phát âm thanh không hỗ trợ AVRCP. Loại sử dụng âm thanh là: USAGE_GAME.
    • Trạng thái kết nối của nhà cung cấp sẽ chuyển sang CONNECTED_A2DP_ONLY trong vòng 5 giây.

BLE với LE Audio

  • VoIP

    • Khi chọn chế độ này, chế độ âm thanh sẽ thay đổi thành AudioManager.MODE_IN_COMMUNICATION và phát âm thanh bằng USAGE_VOICE_COMMUNICATION.
    • Loại luồng là STREAM_VOICE_CALL.
    • Trạng thái kết nối của nhà cung cấp sẽ chuyển sang CONNECTED_LE_AUDIO_CALL trong vòng 5 giây.
  • Nội dung nghe nhìn

    • Khi bạn chọn chế độ này, âm thanh có loại luồng là STREAM_MUSIC. Kiểu sử dụng âm thanh là: USAGE_MEDIA.
    • Trạng thái kết nối của nhà cung cấp sẽ chuyển sang CONNECTED_LE_AUDIO_MEDIA_WITH_CONTROL trong vòng 5 giây.
    • Trạng thái kết nối có thể chuyển sang CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROL trong giây lát khi bắt đầu hoặc dừng.
  • Trò chơi

    • Khi bạn chọn chế độ này, âm thanh sẽ được phát mà người dùng không có quyền kiểm soát trực tiếp. Loại hình sử dụng âm thanh là: USAGE_GAME.
    • Trạng thái kết nối của nhà cung cấp sẽ chuyển sang CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROL trong vòng 5 giây.
  • Nút Phát và Dừng

    • Nút PHÁT và DỪNG sẽ bắt đầu hoặc dừng phát âm thanh.
  • Chuyển đổi kết quả

    • Trường này hiển thị độ trễ hoạt động của Connect and Switch (Kết nối và Chuyển đổi). Thông báo này cũng cho biết lý do từ chối chuyển đổi nếu một sự kiện âm thanh đã được kích hoạt nhưng chuyển đổi không xảy ra.
    • Độ trễ được tính bằng mili giây (ms).
    • Nhìn chung, độ trễ được đo từ thời điểm bắt đầu kích hoạt nút chuyển Âm thanh cho đến khi nhận được một hồ sơ BT đã kết nối hoặc sự kiện Thông báo chuyển đổi đa điểm.
    • Các nút chuyển do nhà cung cấp kích hoạt đo độ trễ từ khi bắt đầu âm thanh.

Độ trễ kết xuất

  • Lệnh sau đây cho phép người dùng thu thập dữ liệu đo lường độ trễ khi chạy kiểm thử thủ công: adb shell dumpsys activity service com.google.android.gms/.nearby.discovery.service.DiscoveryService
    • Các phép đo độ trễ được hiển thị trong phần SwitchHistory của NearbyDeviceManager:
            NearbyDeviceManager
              Nearby Sass device count: 1
                Sass device - address:XX:XX:XX:XX:XX:XX, name:Googler's Pixel Buds, accountKey:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, modelId:6edaf7
                  SwitchHistory
                    15:30:21:166 - 15:30:25:201, latency 3035ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
                    15:34:58:568 - 15:34:58:568, latency 0ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, HFP
                    15:36:26:615 - 15:36:31:603, latency 1988ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
                    15:37:56:108 - 15:37:56:250, latency 142ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, A2DP"
  • Mọi công tắc mà GmsCore không đo lường được (ví dụ: công tắc đang hoạt động cho HFP) sẽ được ghi lại dưới dạng độ trễ 0 mili giây.

Tham chiếu các mẫu nhật ký:

Ví dụ về nhật ký trong quá trình kiểm tra độ trễ

Vấn đề đã biết:

Sau đây là các lỗi đã biết do Trình tìm kiếm gây ra:

  1. Chuyển đổi âm thanh trò chơi không chính xác.
    • Điện thoại Samsung sẽ đặt trạng thái kết nối thành CONNECTED_A2DP_WITH_AVRCP, thay vì CONNECTED_A2DP_ONLY khi chơi trò chơi.
    • Một số trò chơi (chẳng hạn như Candy Crush) có thể phát lại nhạc nền và kích hoạt một sự kiện âm thanh mới mà không cần người dùng nhập. Các điện thoại đã kết nối có thể liên tục chuyển đổi âm thanh trên mọi điện thoại mở trò chơi.