FactorBitrateAdjuster.smali
.class Lio/agora/base/internal/video/FactorBitrateAdjuster;
.super Lio/agora/base/internal/video/BaseBitrateAdjuster;
.source "FactorBitrateAdjuster.java"
# static fields
.field public static final FACTOR_BASE:I = 0x3e8
.field public static final FACTOR_LEVEL1:I = 0x3b6
# instance fields
.field private factorLevel:I
# direct methods
.method public constructor <init>(I)V
.registers 3
.line 21
invoke-direct {p0}, Lio/agora/base/internal/video/BaseBitrateAdjuster;-><init>()V
const/16 v0, 0x3e8
.line 20
iput v0, p0, Lio/agora/base/internal/video/FactorBitrateAdjuster;->factorLevel:I
const/16 v0, 0x3b6
if-ne p1, v0, :cond_d
.line 23
iput v0, p0, Lio/agora/base/internal/video/FactorBitrateAdjuster;->factorLevel:I
:cond_d
return-void
.end method
.method private getBitrateAdjustmentScale()D
.registers 5
.line 28
iget v0, p0, Lio/agora/base/internal/video/FactorBitrateAdjuster;->factorLevel:I
int-to-double v0, v0
const-wide v2, 0x408f400000000000L # 1000.0
div-double/2addr v0, v2
return-wide v0
.end method
# virtual methods
.method public setTargets(II)V
.registers 5
.line 33
invoke-super {p0, p1, p2}, Lio/agora/base/internal/video/BaseBitrateAdjuster;->setTargets(II)V
.line 35
iget p1, p0, Lio/agora/base/internal/video/FactorBitrateAdjuster;->targetBitrateBps:I
int-to-double p1, p1
invoke-direct {p0}, Lio/agora/base/internal/video/FactorBitrateAdjuster;->getBitrateAdjustmentScale()D
move-result-wide v0
mul-double/2addr p1, v0
double-to-int p1, p1
iput p1, p0, Lio/agora/base/internal/video/FactorBitrateAdjuster;->targetBitrateBps:I
return-void
.end method