BILIBILI exploite la solution d'IA Web intégrée à l'appareil de MediaPipe pour améliorer l'expérience utilisateur lors des flux vidéo et augmenter la durée des sessions de 30%

BILIBILI, l'une des principales plates-formes de contenus de divertissement en Chine et en Asie du Sud-Est, héberge une base de données massive de contenus générés par les utilisateurs, de diffusions en direct et d'expériences de jeu qui attirent plus de 330 millions d'utilisateurs actifs par mois (MAU).

L'une des caractéristiques distinctives de la plate-forme BILIBILI est l'intégration des commentaires sur le flux vidéo, une fonctionnalité populaire au Japon et en Chine qui affiche les commentaires des spectateurs en temps réel sous forme de texte défilant dans les flux vidéo. Les commentaires en bulles ajoutent un élément excitant et immersif aux contenus vidéo en direct. Ils permettent aux spectateurs de rester activement engagés en leur permettant d'exprimer leurs propres pensées et de répondre aux réactions des autres spectateurs en temps réel.

Problématique

Bien que les commentaires sur le carrousel soient un moyen engageant pour les spectateurs d'interagir avec le contenu, il est important de ne pas masquer le portrait de l'intervenant pour une expérience utilisateur optimale. Dans la vidéo suivante, les commentaires sur le screen peuvent être gênants et décourager les spectateurs de continuer à regarder.

État d'origine: les vidéos initiales montrent une personne en train de parler, avec des commentaires qui défilent à l'écran, au-dessus du visage de l'orateur.

Pour permettre aux commentaires du flux de commentaires de s'afficher en arrière-plan du portrait d'un intervenant, vous avez besoin d'une segmentation précise du machine learning, qui peut être difficile à exécuter efficacement sur l'appareil. C'est pourquoi, historiquement, de telles fonctionnalités puissantes devaient être prises en charge côté serveur.

Compte tenu de la quantité de contenu diffusée quotidiennement par BILIBILI, le traitement de grandes parties de celui-ci côté serveur serait très coûteux. Son équipe de développement devait donc trouver une solution côté client pour réduire les coûts. Autre défi : le passage au machine learning côté client rend difficile l'empêchement de l'augmentation de l'utilisation du processeur au point de nuire aux performances.

Objectif: BILIBILI souhaitait que les commentaires du flux défilent de droite à gauche derrière l'orateur, afin de ne pas masquer son visage.

La solution: segmentation d'images sur l'appareil

Pour relever ces défis, les développeurs de BILIBILI ont exploité la segmentation du corps avec MediaPipe et TensorFlow.js, un prédécesseur du segmenteur d'images de MediaPipe. Cela a fourni une API de segmentation efficace sur l'appareil, ainsi que des modèles pré-entraînés pour la segmentation de selfie et multi-objet.

BILIBILI peut désormais itérer et prendre en charge rapidement la fonctionnalité, tout en réduisant les coûts et en maintenant les performances.

Implémentation

Voici comment BILIBILI a implémenté cette solution:

  1. Contours des personnages en temps réel: BILIBILI a utilisé le modèle Selfie Segmenter pour extraire le contour des personnages tout au long de la vidéo. Cela leur a permis de créer un masque qui délimitait les limites des caractères.
  2. Intégration à la couche de commentaires en direct: il a ensuite fusionné le contour des caractères extraits avec la couche de commentaires en direct à l'aide des propriétés CSS mask-image. En définissant la zone des caractères centraux sur "transparent", les commentaires du panneau de suivi peuvent apparaître en arrière-plan des personnages sans les masquer.
    Un caractère bleu dans un rectangle pointe vers un autre rectangle contenant un caractère gris, qui représente le masque SVG. Un signe plus avec des lignes bleues indique l'ajout de commentaires en direct. Ensemble, cela équivaut à des lignes bleues derrière le contour d'un personnage, représentant les commentaires qui s'écoulent derrière le personnage.
    Diagramme montrant comment les développeurs de BILIBILI ont extrait un contour de personnage à partir d'un élément vidéo et l'ont intégré à une couche de commentaires en direct à l'aide du calcul en temps réel de MediaPipe.
  3. Optimiser l'implémentation: BILIBILI devait tester et s'assurer que l'implémentation n'affectait pas les performances.

Optimisation des performances

Les développeurs de BILIBILI ont utilisé OffscreenCanvas et Web Workers pour déplacer les tâches fastidieuses vers les workers, afin d'éviter d'occuper le thread principal. Il a ensuite réduit la taille du masque, car il n'est nécessaire que pour extraire le contour du personnage et ne dépend pas de la taille ni de la qualité de l'image.

Après avoir réduit la taille du masque, l'équipe de développement de BILIBILI a étiré le masque lors de la composition et l'a fusionné avec la couche DOM pour réduire autant que possible la pression de rendu.

Un personnage bleu dans un cadre pointe vers une mini-image identique. Une ligne en pointillés pointe vers un petit cadre noir contenant un caractère transparent. La petite boîte noire pointe vers une boîte plus grande identique. Ce processus de minimisation, ainsi que les commentaires en direct, représentés par des lignes bleues, correspondent aux résultats fusionnés des commentaires qui défilent derrière le personnage.
Schéma illustrant comment BILIBILI a réduit la taille du masque et l'a fusionné avec un masque étiré.

Augmentation de la durée des sessions et des taux de clics

En combinant la couverture et la puissance du Web à la flexibilité des solutions d'IA de MediaPipe, BILIBILI a réussi à offrir une expérience d'application Web puissante et attrayante à des millions d'utilisateurs. Et en seulement un mois d'implémentation, BILIBILI a enregistré une augmentation notable de la durée des sessions de 30% et une amélioration de 19% du taux de clics sur les vidéos en streaming en direct.

    30 %

    Durée de session accrue

    19 %

    Augmenter le CTR

Grâce aux solutions d'IA Web sans frais sur l'appareil de MediaPipe, les développeurs de BILIBILI ont pu conserver efficacement des éléments visuels cruciaux tout en maintenant l'engagement des spectateurs, en assurant des performances fluides et, en fin de compte, en offrant l'expérience de streaming vidéo premium que les spectateurs attendent du leader de la plate-forme.

Citation de Jun Liu, ingénieur principal chez BILIBILI : "La solution MediaPipe nous a permis de réduire les coûts de développement sans nous concentrer sur la création d'un modèle d'extraction de portrait.