CaptureResolutionDecider.smali

.class public Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;
.super Ljava/lang/Object;
.source "SourceFile"


# annotations
.annotation runtime Lcom/tencent/liteav/base/annotations/JNINamespace;
    value = "liteav::video"
.end annotation


# instance fields
.field private mNativePtr:J


# direct methods
.method public constructor <init>()V
    .registers 3

    .line 16
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    const-wide/16 v0, 0x0

    .line 17
    iput-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    return-void
.end method

.method private static native nativeCreate()J
.end method

.method private static native nativeDestroy(J)V
.end method

.method private static native nativeGetCaptureSize(J)Lcom/tencent/liteav/base/util/Size;
.end method

.method private static native nativeSetCameraCaptureMode(JI)V
.end method

.method private static native nativeSetEncodeRotation(JI)V
.end method

.method private static native nativeSetEncodeSize(JII)V
.end method

.method private static native nativeSetManualCaptureSize(JII)V
.end method

.method private static native nativeSetRealCaptureFrameSize(JIIIZ)V
.end method

.method private static native nativeSetResolutionMode(JI)V
.end method

.method private static native nativeSetSourceType(JI)V
.end method


# virtual methods
.method public getCaptureSize()Lcom/tencent/liteav/base/util/Size;
    .registers 5

    .line 81
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-eqz v2, :cond_d

    invoke-static {v0, v1}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeGetCaptureSize(J)Lcom/tencent/liteav/base/util/Size;

    move-result-object v0

    return-object v0

    :cond_d
    new-instance v0, Lcom/tencent/liteav/base/util/Size;

    invoke-direct {v0}, Lcom/tencent/liteav/base/util/Size;-><init>()V

    return-object v0
.end method

.method public initialize()V
    .registers 5

    .line 20
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v0, v0, v2

    if-nez v0, :cond_e

    .line 21
    invoke-static {}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeCreate()J

    move-result-wide v0

    iput-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    :cond_e
    return-void
.end method

.method public setCameraCaptureMode(Lcom/tencent/liteav/videoproducer/producer/VideoProducerDef$CameraCaptureMode;)V
    .registers 6

    .line 67
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-eqz v2, :cond_f

    if-eqz p1, :cond_f

    .line 1137
    iget p1, p1, Lcom/tencent/liteav/videoproducer/producer/VideoProducerDef$CameraCaptureMode;->mValue:I

    .line 68
    invoke-static {v0, v1, p1}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeSetCameraCaptureMode(JI)V

    :cond_f
    return-void
.end method

.method public setEncodeRotation(Lcom/tencent/liteav/videobase/utils/Rotation;)V
    .registers 6

    .line 54
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-eqz v2, :cond_f

    .line 55
    invoke-static {p1}, Lcom/tencent/liteav/videobase/utils/Rotation;->a(Lcom/tencent/liteav/videobase/utils/Rotation;)I

    move-result p1

    invoke-static {v0, v1, p1}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeSetEncodeRotation(JI)V

    :cond_f
    return-void
.end method

.method public setEncodeSize(II)V
    .registers 7

    .line 48
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-eqz v2, :cond_b

    .line 49
    invoke-static {v0, v1, p1, p2}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeSetEncodeSize(JII)V

    :cond_b
    return-void
.end method

.method public setManualCaptureSize(II)V
    .registers 7

    .line 61
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-eqz v2, :cond_b

    .line 62
    invoke-static {v0, v1, p1, p2}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeSetManualCaptureSize(JII)V

    :cond_b
    return-void
.end method

.method public setRealCaptureFrameSize(IILcom/tencent/liteav/videobase/utils/Rotation;Z)V
    .registers 11

    .line 74
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-eqz v2, :cond_12

    .line 76
    invoke-static {p3}, Lcom/tencent/liteav/videobase/utils/Rotation;->a(Lcom/tencent/liteav/videobase/utils/Rotation;)I

    move-result v4

    move v2, p1

    move v3, p2

    move v5, p4

    .line 75
    invoke-static/range {v0 .. v5}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeSetRealCaptureFrameSize(JIIIZ)V

    :cond_12
    return-void
.end method

.method public setResolutionMode(Lcom/tencent/liteav/videobase/base/GLConstants$ResolutionMode;)V
    .registers 6

    .line 40
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-eqz v2, :cond_11

    if-nez p1, :cond_c

    const/4 p1, -0x1

    goto :goto_e

    .line 1133
    :cond_c
    iget p1, p1, Lcom/tencent/liteav/videobase/base/GLConstants$ResolutionMode;->mValue:I

    .line 41
    :goto_e
    invoke-static {v0, v1, p1}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeSetResolutionMode(JI)V

    :cond_11
    return-void
.end method

.method public setSourceType(Lcom/tencent/liteav/videoproducer/capture/CaptureSourceInterface$SourceType;)V
    .registers 6

    .line 33
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-eqz v2, :cond_f

    if-eqz p1, :cond_f

    .line 1071
    iget p1, p1, Lcom/tencent/liteav/videoproducer/capture/CaptureSourceInterface$SourceType;->mValue:I

    .line 34
    invoke-static {v0, v1, p1}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeSetSourceType(JI)V

    :cond_f
    return-void
.end method

.method public uninitialize()V
    .registers 6

    .line 26
    iget-wide v0, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    const-wide/16 v2, 0x0

    cmp-long v4, v0, v2

    if-eqz v4, :cond_d

    .line 27
    invoke-static {v0, v1}, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->nativeDestroy(J)V

    .line 28
    iput-wide v2, p0, Lcom/tencent/liteav/videoproducer/decider/CaptureResolutionDecider;->mNativePtr:J

    :cond_d
    return-void
.end method