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 có:
        • Ít nhất một Android T (13) và một Android V (15).
        • Ít nhất một thiết bị Samsung và một thiết bị 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ó tính năng Chuyển đổi â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 qua phần thông tin thiết bị Bluetooth cài đặt.
      • Ngoài 5 điện thoại thử nghiệm, Trường hợp kiểm thử đa điểm (MP) 2.8 cần một thiết bị không có nút chuyển Âm thanh.
  • Tham gia nhóm kiểm thử nút chuyển Âm thanh bằng tài khoản thử nghiệm 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 2 trong số các điện thoại tham chiếu phải hỗ trợ Âm thanh năng lượng thấp.
    • 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ó phiên bản GmsCore 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 kiểm thử yêu cầu nút chuyển, việc kết nối hồ sơ và chuyển đổi trạng thái hoạt động phải hoàn thành 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

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: 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: BT Classic
  • Điện thoại A: BT Cổ điển, Điện thoại B: LE Audio

Các Nhà cung cấp hỗ trợ kết nối Âm thanh năng lượng thấp kép (không bắt buộc) nên kiểm thử:

  • Điện thoại A: Âm thanh LE, Điện thoại B: Âm thanh LE

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

Chuẩn bị thiết bị đang được thử nghiệm (DUT)

  • Xác minh rằng thiết bị BT trước đây chưa đượ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 thử nghiệm.
    • Nếu thiết bị đã được ghép nối với Tài khoản Google thử nghiệm, hãy làm như sau để xoá chế độ 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ể thấy lựa chọn này trong phần Cài đặt > Google > Thiết bị > Đã lưu thiết bị (một thiết bị 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ả các tai nghe đều chạy thử nghiệm từ các thẻ khác nhau trong Mẫu tự kiểm tra 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 chạy như sau:
    • Thẻ Generic_test.
    • Thẻ Multipoint_only.
  • Tai nghe MP có thể chuyển sang chế độ SP sẽ chạy những ứng dụng sau:
    • Thẻ Generic_test (Kiểm thử chung) với MP tắt.
    • Thẻ Generic_test (Kiểm thử chung) đang bật MP.
    • Thẻ Multipoint_only (Chỉ đa điểm) đang bật 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 kiểm thử đã 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 bài kiểm thử mẫu

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

  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 "Điện thoại" và "OS" ở đầ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 thử nghiệm đã 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), Cột B=Pixel 8 (Android 15) E: Điện thoại=Pixel 8, hệ điều hành=Android 15
    • [BT+BT]: Thiết bị A=Pixel 7 pro (13), cột Thiết bị B=Samsung S10+ (12) 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 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 bài kiểm thử mẫu

Sự kiện âm thanh:

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

    1. Gọi:
      1. Ứng dụng điện thoại tích hợp sẵn.
    2. VoIP: Mọi ứng dụng VoIP đề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. FB Messenger.
      3. Dòng.
      4. WhatsApp.
      5. Google Meet.
      6. Google Meet.
    3. Nội dung nghe nhìn: Mọi trình phát âm thanh đều sẽ 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 fp-sass-partner-test. Dưới đây là một số ví dụ:

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

    Hình 1: Cột này hiển thị "thông báo về 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 cho thấy thông báo "không có thông báo chuyển đổi".

    • Thông báo độ trễ khi chuyển đổi:

    Hình 3: Ảnh này hiển thị "thông báo độ trễ khi chuyển đổi" .

Đo độ trễ

  • Có hai loại độ trễ của nút chuyển:
    1. Kết nối hồ sơ Bluetooth với Trình tìm kiếm đã ngắt kết nối.
      • Bao gồm mọi trường hợp SinglePoint và một số trường hợp MP có mục tiêu Người tìm kiếm (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.
      • Điều này bao gồm một số trường hợp MP mà Người tìm kiếm mục tiêu (thiết bị B) là đã 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 chạy trên Trình tìm kiếm mục tiêu sẽ hiển thị độ trễ sau chuyển đổi.
      • Nếu không có công tắc, ứng dụng sẽ hiển thị thông báo "không có công tắc" lý do.

Ứng dụng kiểm thử nút chuyển đổi âm thanh:

  • Sử dụng ứng dụng để kích hoạt các sự kiện VoIP/Media/Game âm thanh trong quá trình tự kiểm tra sẽ đơn giản hoá quy trình thiết lập thử nghiệm và giảm độ trễ sự kiện của Người 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 vào thông báo:
    1. nhấp vào "OK"
    2. Chọn "Kiểm tra SASS FP" 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à một 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 hoạt động mà bạn muốn kiểm tra.
    • 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

    • Tuỳ 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
    • Việc chọn chế độ này sẽ thay đổi chế độ âm thanh 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 ứng dụng cung cấp sẽ chuyển sang CONNECTED_HFP trong vòng 5 giây.
  • Nội dung nghe nhìn
    • Khi chọn chế độ này, âm thanh hỗ trợ AVRCP sẽ phát. Mức sử dụng âm thanh loại là: USAGE_MEDIA.
    • Trạng thái kết nối của ứng dụng nhà cung cấp sẽ chuyển thành 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 bằng Âm thanh năng lượng thấp

  • 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 ứng dụng 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 chọn chế độ này, âm thanh sẽ phát với 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 ứng dụng nhà cung cấp sẽ chuyển thành 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 chọn chế độ này, âm thanh sẽ phát mà người dùng không có quyền kiểm soát trực tiếp. Loại sử dụng âm thanh là: USAGE_GAME.
    • Trạng thái kết nối của ứng dụng nhà cung cấp sẽ chuyển thành 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.
  • Kết quả chuyển đổi

    • Trường này cho thấy độ trễ đang hoạt động của tính năng Kết nối và Chuyển đổi. Điều này cũng cho thấy lý do từ chối nút chuyển nếu một sự kiện âm thanh đã được kích hoạt nhưng việc chuyển đổi đã không xảy ra.
    • Độ trễ được tính bằng mili giây (ms).
    • Nói chung, độ trễ được đo từ thời điểm bắt đầu trình kích hoạt Nút chuyển âm thanh khi nhận được một hồ sơ BT được kết nối hoặc thông báo cho công tắc đa điểm sự kiện.
    • 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 ghi lại các phép đo độ 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 kết quả đo lường độ trễ được hiển thị trong NearbyDeviceManager Mục SwitchHistory:
            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 thể đo lường (ví dụ: công tắc đang hoạt động cho HFP) sẽ được được ghi lại là độ trễ 0 mili giây.

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

Ví dụ về nhật ký từ kiểm thử độ 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 sự kiện âm thanh mới mà không có hoạt động đầu vào của người dùng. Đ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.