VideoCaptureCamera1$11.smali

.class Lio/agora/rtc2/video/VideoCaptureCamera1$11;
.super Ljava/lang/Object;
.source "VideoCaptureCamera1.java"

# interfaces
.implements Lio/agora/base/internal/video/SurfaceTextureHelper$IVideoCapture;


# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
    value = Lio/agora/rtc2/video/VideoCaptureCamera1;->listenForTextureFrames()V
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x0
    name = null
.end annotation


# instance fields
.field final synthetic this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;


# direct methods
.method constructor <init>(Lio/agora/rtc2/video/VideoCaptureCamera1;)V
    .registers 2

    .line 1416
    iput-object p1, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

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

    return-void
.end method


# virtual methods
.method public onFrame(Lio/agora/base/VideoFrame;)V
    .registers 7

    .line 1419
    iget-object v0, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    # getter for: Lio/agora/rtc2/video/VideoCaptureCamera1;->mPreviewBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
    invoke-static {v0}, Lio/agora/rtc2/video/VideoCaptureCamera1;->access$700(Lio/agora/rtc2/video/VideoCaptureCamera1;)Ljava/util/concurrent/locks/ReentrantLock;

    move-result-object v0

    invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantLock;->lock()V

    .line 1421
    :try_start_9
    iget-object v0, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    # getter for: Lio/agora/rtc2/video/VideoCaptureCamera1;->mIsRunning:Z
    invoke-static {v0}, Lio/agora/rtc2/video/VideoCaptureCamera1;->access$800(Lio/agora/rtc2/video/VideoCaptureCamera1;)Z

    move-result v0
    :try_end_f
    .catchall {:try_start_9 .. :try_end_f} :catchall_55

    if-nez v0, :cond_1b

    .line 1435
    iget-object p1, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    # getter for: Lio/agora/rtc2/video/VideoCaptureCamera1;->mPreviewBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
    invoke-static {p1}, Lio/agora/rtc2/video/VideoCaptureCamera1;->access$700(Lio/agora/rtc2/video/VideoCaptureCamera1;)Ljava/util/concurrent/locks/ReentrantLock;

    move-result-object p1

    invoke-virtual {p1}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V

    return-void

    .line 1426
    :cond_1b
    :try_start_1b
    new-instance v0, Lio/agora/base/VideoFrame;

    .line 1427
    invoke-virtual {p1}, Lio/agora/base/VideoFrame;->getBuffer()Lio/agora/base/VideoFrame$Buffer;

    move-result-object v1

    check-cast v1, Lio/agora/base/TextureBuffer;

    iget-object v2, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    iget-boolean v2, v2, Lio/agora/rtc2/video/VideoCaptureCamera1;->mInvertDeviceOrientationReadings:Z

    const/4 v3, 0x0

    if-nez v2, :cond_2c

    const/4 v2, 0x1

    goto :goto_2d

    :cond_2c
    move v2, v3

    :goto_2d
    invoke-static {v1, v2, v3}, Lio/agora/rtc2/video/VideoCapture;->createTextureBufferWithModifiedTransformMatrix(Lio/agora/base/TextureBuffer;ZI)Lio/agora/base/VideoFrame$TextureBuffer;

    move-result-object v1

    iget-object v2, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    .line 1430
    invoke-virtual {v2}, Lio/agora/rtc2/video/VideoCaptureCamera1;->getCameraRotation()I

    move-result v2

    invoke-virtual {p1}, Lio/agora/base/VideoFrame;->getTimestampNs()J

    move-result-wide v3

    invoke-direct {v0, v1, v2, v3, v4}, Lio/agora/base/VideoFrame;-><init>(Lio/agora/base/VideoFrame$Buffer;IJ)V

    .line 1431
    iget-object p1, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    invoke-virtual {p1, v0}, Lio/agora/rtc2/video/VideoCaptureCamera1;->attachPerFrameMetaInfos(Lio/agora/base/VideoFrame;)V

    .line 1432
    iget-object p1, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    invoke-virtual {p1, v0}, Lio/agora/rtc2/video/VideoCaptureCamera1;->onFrameCaptured(Lio/agora/base/VideoFrame;)V

    .line 1433
    invoke-virtual {v0}, Lio/agora/base/VideoFrame;->release()V
    :try_end_4b
    .catchall {:try_start_1b .. :try_end_4b} :catchall_55

    .line 1435
    iget-object p1, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    # getter for: Lio/agora/rtc2/video/VideoCaptureCamera1;->mPreviewBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
    invoke-static {p1}, Lio/agora/rtc2/video/VideoCaptureCamera1;->access$700(Lio/agora/rtc2/video/VideoCaptureCamera1;)Ljava/util/concurrent/locks/ReentrantLock;

    move-result-object p1

    invoke-virtual {p1}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V

    return-void

    :catchall_55
    move-exception p1

    iget-object v0, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    # getter for: Lio/agora/rtc2/video/VideoCaptureCamera1;->mPreviewBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
    invoke-static {v0}, Lio/agora/rtc2/video/VideoCaptureCamera1;->access$700(Lio/agora/rtc2/video/VideoCaptureCamera1;)Ljava/util/concurrent/locks/ReentrantLock;

    move-result-object v0

    invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V

    throw p1
.end method

.method public onFrameDropped(I)V
    .registers 3

    .line 1441
    iget-object v0, p0, Lio/agora/rtc2/video/VideoCaptureCamera1$11;->this$0:Lio/agora/rtc2/video/VideoCaptureCamera1;

    # invokes: Lio/agora/rtc2/video/VideoCaptureCamera;->onFrameDropped(I)V
    invoke-static {v0, p1}, Lio/agora/rtc2/video/VideoCaptureCamera1;->access$901(Lio/agora/rtc2/video/VideoCaptureCamera1;I)V

    return-void
.end method