Optimieren der Ressourcenauslastung - Amazon Chime SDK

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Optimieren der Ressourcenauslastung

Beim Erstellen von können Sie den optionalen processingBudgetPerFrame Parameter angeben und die Menge an CPU und GPU steuern, die die Filter verwenden. VideoFxProcessor

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

Das VideoFxProcessor erfordert Zeit, um einen Frame zu verarbeiten. Die Dauer hängt vom Gerät, vom Browser und davon ab, was sonst noch im Browser oder auf dem Gerät läuft. Der Prozessor verwendet das Konzept eines Budgets, um den Zeitaufwand für die Verarbeitung und das Rendern jedes Frames festzulegen.

Die Verarbeitungszeit ist in Millisekunden angegeben. Ein Beispiel für die Verwendung eines Budgets: 1 Sekunde hat 1000 ms. Wenn 15 Bilder pro Sekunde Videoaufnahme angestrebt werden, ergibt sich ein Gesamtbudget von 1000 ms/15 Bildern pro Sekunde = 66 ms. Sie können ein Budget von 50% davon oder 33 ms festlegen, indem Sie den Wert 50 im processingBudgetPerFrame Parameter angeben, wie im obigen Beispiel gezeigt.

Der versucht VideoFxProcessor dann, die Frames innerhalb des angegebenen Budgets zu bearbeiten. Wenn die Verarbeitung das Budget überschreitet, reduziert der Prozessor die visuelle Qualität, um das Budget einzuhalten. Der Prozessor reduziert die visuelle Qualität weiterhin auf ein Minimum. Ab diesem Zeitpunkt wird sie nicht mehr reduziert. Diese Verarbeitungsdauer wird kontinuierlich gemessen. Wenn also mehr Ressourcen verfügbar werden, z. B. wenn eine andere App geschlossen wird und die CPU freigegeben wird, erhöht der Prozessor die visuelle Qualität erneut, bis das Budget erreicht ist oder die maximale visuelle Qualität erreicht wird.

Wenn Sie keinen Wert für angebenprocessingBudgetPerFrame, ist der VideoFxProcessor Standardwert. 50