Consignes de certification pour les commutateurs audio

Préparation à la certification

  • Préparez les appareils de test.
    • Vous aurez besoin de cinq appareils Android.
      • Ces appareils doivent inclure :
        • Au moins un appareil Android T (13) et un appareil Android V (15).
        • Au moins un Samsung et un Pixel.
        • Exemple :
          • 1 OnePlus (Android 10).
          • 3 Samsung (Android 11, 12, 13).
          • 1 Pixel (Android 15).
    • Un appareil sans option de basculement audio :
      • Un iPhone, un PC, un ordinateur portable compatible Bluetooth (BT) ou un téléphone Android sur lequel le switch audio est désactivé.
        • Vous pouvez désactiver le switch audio dans les paramètres détaillés de l'appareil Bluetooth.
      • Le scénario de test multipoint 2.8 nécessite un appareil sans switch audio en plus des cinq téléphones de test.
  • Rejoignez le groupe de test du sélecteur audio avec vos comptes de test pour afficher les notifications de débogage sur les téléphones de test.

    • Cela permet également à Google de collecter des données de test via Google Analytics.

Classic avec A2DP+HFP

  • Assurez-vous que tous les appareils Android sont équipés de GmsCore version 23.xx.xx ou ultérieure.

BLE avec LE Audio

  • Au moins deux des téléphones de référence doivent être compatibles avec LE Audio.
    • Par exemple, un téléphone Samsung et un téléphone Pixel compatibles avec LE Audio.
  • Assurez-vous que tous les appareils Android sont équipés de GmsCore version 24.33.xx ou ultérieure.

Critères de certification

  • Le taux de réussite du changement de cible doit être supérieur à 95% dans tous les cas de test.
  • Dans les tests nécessitant un changement de profil, la connexion du profil et le changement d'état actif doivent être effectués dans les trois secondes suivant le déclenchement des événements audio dans au moins 75 % des cas.

Classic avec A2DP+HFP

Les autotests doivent être effectués selon les combinaisons suivantes :

  • Téléphone A=Android S (12) + Téléphone B=Android T (13)
  • Téléphone A=Android T (13) + Téléphone B=Android S (12)

BLE avec LE Audio

Les autotests doivent être effectués selon les combinaisons suivantes :

  • Téléphone A : Bluetooth classique, Téléphone B : Bluetooth classique
  • Téléphone A : LE Audio, Téléphone B : Bluetooth classique
  • Téléphone A : Bluetooth classique, Téléphone B : LE Audio

Les fournisseurs qui acceptent les doubles connexions LE Audio peuvent éventuellement effectuer les tests suivants :

  • Téléphone A : LE Audio, Téléphone B : LE Audio

Guide de test

Préparation de l'appareil testé

  • Vérifiez que l'appareil Bluetooth n'a pas déjà été associé à un téléphone connecté au compte Google de test.
    • Si l'appareil a été associé au compte Google de test, procédez comme suit pour dissocier l'appareil :
      • Dans les appareils associés :
        • Accédez aux paramètres Bluetooth.
        • Sélectionnez "Oublier l'appareil".
        • Activez et désactivez le mode Avion.
    • Assurez-vous que l'option "Enregistrer automatiquement les appareils" est activée.
      • Ce bouton est désactivé par défaut.
      • Vous trouverez cette option dans Paramètres > Google > Appareils > Appareils enregistrés (un par DUT).
    • Mettez l'appareil Bluetooth en mode association.
    • Associez le premier appareil Bluetooth (A).
    • Associez les autres appareils Bluetooth (B, C, D, etc.) à d'autres appareils.

Champ d'application

  • Tous les casques exécutent des tests à partir des différents onglets du rapport d'autotest BT Classic ou BT LE Audio.
  • Les casques compatibles uniquement avec le mode SinglePoint (SP) exécutent les éléments suivants :
    • Onglet "Generic_test".
  • Les casques compatibles avec le mode MP exécutent les éléments suivants :
    • Onglet "Generic_test".
    • Onglet "Multipoint_only".
  • Les casques MP qui peuvent être basculés en mode SP exécutent les éléments suivants :
    • Onglet "Generic_test" avec le mode multiprocessus désactivé.
    • Onglet "Generic_test" avec MP activé.
    • Onglet "Multipoint uniquement" avec le multipoint activé.

Remplir le rapport sur l'auto-repos et l'auto-test

  • Créez une copie des rapports d'autotest BT Classic ou BT LE Audio.
  • Exécutez tous les scénarios de test au moins deux fois.
  • Les tests doivent être exécutés sous la forme suivante :

Classic avec A2DP+HFP

  • L'appareil B sera le principal DUT.
    • Saisissez les informations de l'appareil B dans les champs "Téléphone" et "OS" en haut du modèle.

Exemple de scénario de test :

  • Téléphones de test :

    • Appareil 1 : Samsung (Android 13)
    • Appareil 2 : Pixel (Android 12 ou 13) et autres.
  • Tests exécutés :

    • Exécutez la requête 1. Appareil A=Samsung S10+ (12), Appareil B=Pixel 7 Pro (13) colonne D : Téléphone=Pixel 7 Pro, OS=Android 13
    • Exécutez la requête 2. Appareil A=Pixel 7 Pro (13), Appareil B=Pixel 6(12) colonne E : Téléphone=Pixel 6, OS=Android 12

Exemple de test terminé dans le modèle d'autotest :

Cette image montre les résultats d'un exemple de test.

BLE avec LE Audio

  1. Appareil A=Android V (15) + Appareil B=Android T (13)
  2. Appareil A=Android T (13) + Appareil B=Android V (15)
  3. Appareil A=Android T (13) + Appareil B=Android S (12)
  4. Appareil A=Android T (15) + Appareil B=Android V (15)
  5. L'appareil B sera le principal DUT.
    • Saisissez les informations de l'appareil B dans les champs "Téléphone" et "OS" en haut du modèle.

Exemple de scénario de test :

  • Téléphones de test :

    • Appareil 1 : Samsung (Android 13)
    • Appareil 2 : Pixel (Android 15) et autres
  • Tests exécutés :

    • [LEA+BT]: Appareil A= Pixel 8 (15), Appareil B=Pixel 7 Pro (13), colonne D : Téléphone=Pixel 7 Pro, OS=Android 13
    • [BT+LEA]: Device A=Pixel 7 (13), Device B=Pixel 8 (Android 15) column E: Phone=Pixel 8, OS=Android 15
    • [BT+BT]: Device A=Pixel 7 pro (13), Device B=Samsung S10+ (12) column E: Phone=Samsung S10+, OS=Android 12
    • [LEA+LEA]: Appareil A=Pixel 8 (15), Appareil B=Pixel 8(15) colonne E : Téléphone=Pixel 8, OS=Android 15

Exemple de test terminé dans le modèle d'autotest :

Cette image montre les résultats d'un exemple de test.

Événements audio :

  • Voici les quatre types d'événements audio testés et les applications de test recommandées :

    1. Appel :
      1. L'application de téléphone intégrée.
    2. VoIP : n'importe quelle application VoIP fonctionnera, par exemple :
      1. Application de test du switch audio.
      2. FB Messenger.
      3. Ligne.
      4. WhatsApp.
      5. Google Meet
      6. Google Meet
    3. Contenu multimédia : n'importe quel lecteur audio convient, par exemple :
      1. Application de test du switch audio.
      2. YouTube Music
      3. Apple Music
      4. Spotify.
      5. Google Podcasts)
    4. Jeu :
      1. Application de test du switch audio.

Informations de débogage :

  • Les notifications sont activées une fois que vous avez rejoint le groupe fp-sass-partner-test. Voici quelques exemples :

    • Dernière notification d'état :

    Figure 1 : Message de notification du dernier état

    • Aucune notification de contacteur :

    Figure 2 : Message "Aucun changement de compte"

    • Notification de latence de basculement :

    Figure 3 : message de notification de la latence de commutation.

Mesure de la latence

  • Il existe deux types de latence de commutation :
    1. Connecter un profil Bluetooth à un Seeker déconnecté.
      • Cela inclut toutes les demandes SinglePoint et certaines demandes multipoints dont le Seeker cible (appareil B) est déconnecté.
    2. Changer de Seeker actif connecté.
      • Cela inclut certains cas de multipoint où le Seeker cible (appareil B) est déjà connecté.
  • Il existe deux façons de récupérer des informations sur la latence :
    1. Toute la latence peut être vidée par la commande adb.
      • Pour en savoir plus, consultez la section Latence de vidage.
      • Cette commande peut fournir et enregistrer la latence après l'exécution d'au moins un cas de test.
    2. Utilisez l'application de test du switch audio.
      • L'application exécutée sur le Seeker cible affichera la latence après le changement.
      • Si aucun changement n'a été effectué, l'application affichera le motif "Aucun changement".

Application de test du switch audio :

  • L'utilisation de l'application pour déclencher des événements audio VoIP/multimédia/de jeu lors d'un autotest simplifiera la configuration du test et réduira la latence des événements du Seeker.
    • Vous pouvez télécharger la dernière version ici.
    • Le test VoIP LE Audio nécessite l'activation manuelle d'une règle : > adb root > adb shell settings put global hidden_api_policy 1 > adb reboot
  • Installation de l'application :
    • Copiez le fichier APK sur votre téléphone de test et ouvrez-le.
    • Vous pouvez également utiliser adb install audio_test_app.apk.
  • Si une boîte de dialogue vous demande d'autoriser l'accès aux notifications :
    1. Cliquez sur "OK".
    2. Sélectionnez "FP SASS test" dans la liste des applications.
    3. Autorisez l'accès aux notifications.

Présentation de l'application :

Cette image montre un exemple d'application en cours d'exécution.

  • Fournisseur cible

    • Lorsque vous cliquez sur ce bouton, la liste des appareils Bluetooth associés s'affiche. Sélectionnez celle que vous souhaitez tester.
    • Les boutons "Connecter" et "Déconnecter" fonctionnent comme ceux des détails de l'appareil dans les paramètres Bluetooth.
  • État actuel

    • Ce champ indique le dernier état de connexion que le Seeker a reçu d'un fournisseur à l'aide de la diffusion BLE ou du flux d'événements.
    • Les notifications de débogage du commutateur audio s'affichent également ici.
  • Type de demandeur

    • Cette option permet de basculer entre les flux audio sur l'appareil.

Type d'audio

Classic avec A2DP+HFP

  • VoIP
    • Si vous sélectionnez ce mode, le mode audio passera à AudioManager.MODE_IN_COMMUNICATION et appellera AudioManager.startBluetoothSco, puis lira l'audio avec USAGE_VOICE_COMMUNICATION.
    • Le type de flux est STREAM_VOICE_CALL.
    • L'état de la connexion au fournisseur doit passer à CONNECTED_HFP en cinq secondes.
  • Multimédia
    • Si vous sélectionnez ce mode, l'audio compatible avec AVRCP sera lu. Le type d'utilisation de l'élément audio est : USAGE_MEDIA.
    • L'état de la connexion au fournisseur doit passer à CONNECTED_A2DP_WITH_AVRCP en cinq secondes.
    • L'état de la connexion peut brièvement passer à CONNECTED_A2DP_ONLY lorsqu'elle est démarrée ou arrêtée.
  • Jeu

    • La sélection de ce mode permet de lire l'audio qui n'est pas compatible avec AVRCP. Le type d'utilisation de l'élément audio est le suivant : USAGE_GAME.
    • L'état de la connexion au fournisseur doit passer à CONNECTED_A2DP_ONLY en moins de cinq secondes.

BLE avec LE Audio

  • VoIP

    • Si vous sélectionnez ce mode, le mode audio passera à AudioManager.MODE_IN_COMMUNICATION et le son sera diffusé avec USAGE_VOICE_COMMUNICATION.
    • Le type de flux est STREAM_VOICE_CALL.
    • L'état de la connexion au fournisseur doit passer à CONNECTED_LE_AUDIO_CALL en moins de cinq secondes.
  • Multimédia

    • Si vous sélectionnez ce mode, le contenu audio sera lu avec le type de flux STREAM_MUSIC. Le type d'utilisation de l'élément audio est le suivant : USAGE_MEDIA.
    • L'état de la connexion au fournisseur doit passer à CONNECTED_LE_AUDIO_MEDIA_WITH_CONTROL en cinq secondes.
    • L'état de la connexion peut brièvement passer à CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROL lorsqu'elle est démarrée ou arrêtée.
  • Jeu

    • La sélection de ce mode permet de lire des contenus audio sur lesquels l'utilisateur n'a pas de contrôle direct. Le type d'utilisation de l'élément audio est le suivant : USAGE_GAME.
    • L'état de la connexion au fournisseur doit passer à CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROL en cinq secondes.
  • Boutons de lecture et d'arrêt

    • Les boutons LECTURE et ARRÊT permettent de démarrer ou d'arrêter la lecture de l'audio.
  • Résultat du transfert

    • Ce champ affiche la latence active de connexion et de transfert. Il affiche également la raison du refus d'un changement si un événement audio a été déclenché, mais que le changement n'a pas eu lieu.
    • La latence est mesurée en millisecondes (ms).
    • En général, la latence est mesurée entre le début du déclencheur de switch audio et la réception d'un événement de profil BT connecté ou de notification de switch multipoint.
    • Les commutations déclenchées par le fournisseur mesurent la latence à partir du début de l'audio.

Latence de vidage

  • La commande suivante permet à un utilisateur de capturer des mesures de latence lors de l'exécution de tests manuels : adb shell dumpsys activity service com.google.android.gms/.nearby.discovery.service.DiscoveryService
    • Les mesures de latence sont affichées dans la section NearbyDeviceManager > 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"
  • Tout changement que GmsCore ne peut pas mesurer (par exemple, le changement actif pour HFP) sera enregistré avec une latence de 0 ms.

Référence des modèles de journaux :

Exemples de journaux du test de latence

Problèmes connus :

Voici les bugs connus causés par Seeker :

  1. Le son du jeu ne bascule pas correctement.
    • Les téléphones Samsung définissent l'état de la connexion sur CONNECTED_A2DP_WITH_AVRCP au lieu de CONNECTED_A2DP_ONLY lorsque vous jouez à des jeux.
    • Certains jeux (comme Candy Crush) peuvent relancer la musique de fond et déclencher un nouvel événement audio sans intervention de l'utilisateur. Les téléphones associés peuvent activer constamment le son sur chaque téléphone qui ouvre le jeu.