104 lines
2.5 KiB
Smali
104 lines
2.5 KiB
Smali
.class public Lorg/webrtc/VideoRenderer;
|
|
.super Ljava/lang/Object;
|
|
.source "VideoRenderer.java"
|
|
|
|
|
|
# annotations
|
|
.annotation system Ldalvik/annotation/MemberClasses;
|
|
value = {
|
|
Lorg/webrtc/VideoRenderer$Callbacks;,
|
|
Lorg/webrtc/VideoRenderer$I420Frame;
|
|
}
|
|
.end annotation
|
|
|
|
.annotation runtime Lorg/webrtc/JNINamespace;
|
|
value = "webrtc::jni"
|
|
.end annotation
|
|
|
|
|
|
# instance fields
|
|
.field nativeVideoRenderer:J
|
|
|
|
|
|
# direct methods
|
|
.method public constructor <init>(Lorg/webrtc/VideoRenderer$Callbacks;)V
|
|
.locals 2
|
|
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
invoke-static {p1}, Lorg/webrtc/VideoRenderer;->nativeCreateVideoRenderer(Lorg/webrtc/VideoRenderer$Callbacks;)J
|
|
|
|
move-result-wide v0
|
|
|
|
iput-wide v0, p0, Lorg/webrtc/VideoRenderer;->nativeVideoRenderer:J
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method static native nativeCopyPlane(Ljava/nio/ByteBuffer;IIILjava/nio/ByteBuffer;I)V
|
|
.end method
|
|
|
|
.method private static native nativeCreateVideoRenderer(Lorg/webrtc/VideoRenderer$Callbacks;)J
|
|
.end method
|
|
|
|
.method private static native nativeFreeWrappedVideoRenderer(J)V
|
|
.end method
|
|
|
|
.method private static native nativeReleaseFrame(J)V
|
|
.end method
|
|
|
|
.method public static renderFrameDone(Lorg/webrtc/VideoRenderer$I420Frame;)V
|
|
.locals 5
|
|
|
|
const/4 v0, 0x0
|
|
|
|
iput-object v0, p0, Lorg/webrtc/VideoRenderer$I420Frame;->yuvPlanes:[Ljava/nio/ByteBuffer;
|
|
|
|
const/4 v0, 0x0
|
|
|
|
iput v0, p0, Lorg/webrtc/VideoRenderer$I420Frame;->textureId:I
|
|
|
|
invoke-static {p0}, Lorg/webrtc/VideoRenderer$I420Frame;->access$000(Lorg/webrtc/VideoRenderer$I420Frame;)J
|
|
|
|
move-result-wide v0
|
|
|
|
const-wide/16 v2, 0x0
|
|
|
|
cmp-long v4, v0, v2
|
|
|
|
if-eqz v4, :cond_0
|
|
|
|
invoke-static {p0}, Lorg/webrtc/VideoRenderer$I420Frame;->access$000(Lorg/webrtc/VideoRenderer$I420Frame;)J
|
|
|
|
move-result-wide v0
|
|
|
|
invoke-static {v0, v1}, Lorg/webrtc/VideoRenderer;->nativeReleaseFrame(J)V
|
|
|
|
invoke-static {p0, v2, v3}, Lorg/webrtc/VideoRenderer$I420Frame;->access$002(Lorg/webrtc/VideoRenderer$I420Frame;J)J
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
|
|
# virtual methods
|
|
.method public dispose()V
|
|
.locals 5
|
|
|
|
iget-wide v0, p0, Lorg/webrtc/VideoRenderer;->nativeVideoRenderer:J
|
|
|
|
const-wide/16 v2, 0x0
|
|
|
|
cmp-long v4, v0, v2
|
|
|
|
if-nez v4, :cond_0
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
invoke-static {v0, v1}, Lorg/webrtc/VideoRenderer;->nativeFreeWrappedVideoRenderer(J)V
|
|
|
|
iput-wide v2, p0, Lorg/webrtc/VideoRenderer;->nativeVideoRenderer:J
|
|
|
|
return-void
|
|
.end method
|