Optimisation de l'utilisation des ressources - Kit SDK Amazon Chime

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Optimisation de l'utilisation des ressources

Lors de la création duVideoFxProcessor, vous pouvez fournir le processingBudgetPerFrame paramètre optionnel et contrôler la quantité de CPU et de GPU utilisée par les filtres.

let videoFxProcessor: VideoFxProcessor | undefined = undefined; const processingBudgetPerFrame = 50; try { videoFxProcessor = await VideoFxProcessor.create(logger, videoFxConfig, processingBudgetPerFrame); } catch (error) { logger.warn(error.toString()); }

Le VideoFxProcessor traitement d'un cadre prend du temps. La durée dépend de l'appareil, du navigateur et des autres éléments qui s'exécutent dans le navigateur ou sur l'appareil. Le processeur utilise le concept de budget pour cibler le temps nécessaire au traitement et au rendu de chaque image.

Le temps de traitement est exprimé en millisecondes. À titre d'exemple d'utilisation d'un budget, 1 seconde correspond à 1 000 ms. Le ciblage de 15 images par seconde de capture vidéo permet d'obtenir un budget total de 1 000 ms/15 images par seconde = 66 ms. Vous pouvez définir un budget de 50 % de ce montant, soit 33 ms, en fournissant la valeur 50 dans le processingBudgetPerFrame paramètre, comme indiqué dans l'exemple ci-dessus.

Il essaie VideoFxProcessor ensuite de traiter les cadres dans les limites du budget spécifié. Si le traitement dépasse le budget, le processeur réduit la qualité visuelle pour respecter le budget. Le processeur continue de réduire la qualité visuelle au minimum, puis elle cesse de diminuer. Cette durée de traitement est mesurée en continu. Ainsi, si davantage de ressources deviennent disponibles, par exemple si une autre application ferme et libère du processeur, le processeur améliore à nouveau la qualité visuelle jusqu'à atteindre le budget prévu ou jusqu'à ce qu'une qualité visuelle maximale soit atteinte.

Si vous ne fournissez aucune valeur àprocessingBudgetPerFrame, la valeur VideoFxProcessor par défaut est. 50