VideoFrame.smali
.class public Lio/agora/base/VideoFrame;
.super Ljava/lang/Object;
.source "VideoFrame.java"
# interfaces
.implements Lio/agora/base/internal/RefCounted;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lio/agora/base/VideoFrame$SourceType;,
Lio/agora/base/VideoFrame$ColorSpace;,
Lio/agora/base/VideoFrame$TextureBuffer;,
Lio/agora/base/VideoFrame$RgbaBuffer;,
Lio/agora/base/VideoFrame$I422Buffer;,
Lio/agora/base/VideoFrame$I420Buffer;,
Lio/agora/base/VideoFrame$Buffer;
}
.end annotation
# instance fields
.field private alphaBuffer:[B
.field private buffer:Lio/agora/base/VideoFrame$Buffer;
.field private colorSpace:Lio/agora/base/VideoFrame$ColorSpace;
.field private metaInfo:Lio/agora/base/VideoFrameMetaInfo;
.field private rotation:I
.field private sampleAspectRatio:F
.field private sourceType:Lio/agora/base/VideoFrame$SourceType;
.field private timestampNs:J
# direct methods
.method public constructor <init>(Lio/agora/base/VideoFrame$Buffer;IJ)V
.registers 15
.line 374
sget-object v0, Lio/agora/base/VideoFrame$SourceType;->kUnspecified:Lio/agora/base/VideoFrame$SourceType;
invoke-virtual {v0}, Lio/agora/base/VideoFrame$SourceType;->ordinal()I
move-result v9
const/4 v6, 0x0
const/4 v7, 0x0
const/high16 v8, 0x3f800000 # 1.0f
move-object v1, p0
move-object v2, p1
move v3, p2
move-wide v4, p3
invoke-direct/range {v1 .. v9}, Lio/agora/base/VideoFrame;-><init>(Lio/agora/base/VideoFrame$Buffer;IJLio/agora/base/VideoFrame$ColorSpace;[BFI)V
return-void
.end method
.method public constructor <init>(Lio/agora/base/VideoFrame$Buffer;IJLio/agora/base/VideoFrame$ColorSpace;[BFI)V
.registers 10
.line 379
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 356
new-instance v0, Lio/agora/base/VideoFrameMetaInfo;
invoke-direct {v0}, Lio/agora/base/VideoFrameMetaInfo;-><init>()V
iput-object v0, p0, Lio/agora/base/VideoFrame;->metaInfo:Lio/agora/base/VideoFrameMetaInfo;
if-eqz p1, :cond_2d
.line 383
rem-int/lit8 v0, p2, 0x5a
if-nez v0, :cond_25
.line 386
iput-object p1, p0, Lio/agora/base/VideoFrame;->buffer:Lio/agora/base/VideoFrame$Buffer;
.line 387
iput p2, p0, Lio/agora/base/VideoFrame;->rotation:I
.line 388
iput-wide p3, p0, Lio/agora/base/VideoFrame;->timestampNs:J
.line 389
iput-object p5, p0, Lio/agora/base/VideoFrame;->colorSpace:Lio/agora/base/VideoFrame$ColorSpace;
.line 390
iput-object p6, p0, Lio/agora/base/VideoFrame;->alphaBuffer:[B
.line 391
iput p7, p0, Lio/agora/base/VideoFrame;->sampleAspectRatio:F
.line 392
invoke-static {}, Lio/agora/base/VideoFrame$SourceType;->values()[Lio/agora/base/VideoFrame$SourceType;
move-result-object p1
aget-object p1, p1, p8
iput-object p1, p0, Lio/agora/base/VideoFrame;->sourceType:Lio/agora/base/VideoFrame$SourceType;
return-void
.line 384
:cond_25
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "rotation must be a multiple of 90"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 381
:cond_2d
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "buffer not allowed to be null"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
# virtual methods
.method public getAlphaBuffer()[B
.registers 2
.line 470
iget-object v0, p0, Lio/agora/base/VideoFrame;->alphaBuffer:[B
return-object v0
.end method
.method public getBuffer()Lio/agora/base/VideoFrame$Buffer;
.registers 2
.line 409
iget-object v0, p0, Lio/agora/base/VideoFrame;->buffer:Lio/agora/base/VideoFrame$Buffer;
return-object v0
.end method
.method public getColorSpace()Lio/agora/base/VideoFrame$ColorSpace;
.registers 2
.line 466
iget-object v0, p0, Lio/agora/base/VideoFrame;->colorSpace:Lio/agora/base/VideoFrame$ColorSpace;
return-object v0
.end method
.method public getMetaInfo()Lio/agora/base/VideoFrameMetaInfo;
.registers 2
.line 430
iget-object v0, p0, Lio/agora/base/VideoFrame;->metaInfo:Lio/agora/base/VideoFrameMetaInfo;
return-object v0
.end method
.method public getRotatedHeight()I
.registers 2
.line 447
iget v0, p0, Lio/agora/base/VideoFrame;->rotation:I
rem-int/lit16 v0, v0, 0xb4
if-nez v0, :cond_d
.line 448
iget-object v0, p0, Lio/agora/base/VideoFrame;->buffer:Lio/agora/base/VideoFrame$Buffer;
invoke-interface {v0}, Lio/agora/base/VideoFrame$Buffer;->getHeight()I
move-result v0
return v0
.line 450
:cond_d
iget-object v0, p0, Lio/agora/base/VideoFrame;->buffer:Lio/agora/base/VideoFrame$Buffer;
invoke-interface {v0}, Lio/agora/base/VideoFrame$Buffer;->getWidth()I
move-result v0
return v0
.end method
.method public getRotatedWidth()I
.registers 2
.line 437
iget v0, p0, Lio/agora/base/VideoFrame;->rotation:I
rem-int/lit16 v0, v0, 0xb4
if-nez v0, :cond_d
.line 438
iget-object v0, p0, Lio/agora/base/VideoFrame;->buffer:Lio/agora/base/VideoFrame$Buffer;
invoke-interface {v0}, Lio/agora/base/VideoFrame$Buffer;->getWidth()I
move-result v0
return v0
.line 440
:cond_d
iget-object v0, p0, Lio/agora/base/VideoFrame;->buffer:Lio/agora/base/VideoFrame$Buffer;
invoke-interface {v0}, Lio/agora/base/VideoFrame$Buffer;->getHeight()I
move-result v0
return v0
.end method
.method public getRotation()I
.registers 2
.line 417
iget v0, p0, Lio/agora/base/VideoFrame;->rotation:I
return v0
.end method
.method public getSampleAspectRatio()F
.registers 2
.line 401
iget v0, p0, Lio/agora/base/VideoFrame;->sampleAspectRatio:F
return v0
.end method
.method public getSourceType()Lio/agora/base/VideoFrame$SourceType;
.registers 2
.line 397
iget-object v0, p0, Lio/agora/base/VideoFrame;->sourceType:Lio/agora/base/VideoFrame$SourceType;
return-object v0
.end method
.method public getTimestampNs()J
.registers 3
.line 425
iget-wide v0, p0, Lio/agora/base/VideoFrame;->timestampNs:J
return-wide v0
.end method
.method public release()V
.registers 2
.line 488
iget-object v0, p0, Lio/agora/base/VideoFrame;->buffer:Lio/agora/base/VideoFrame$Buffer;
invoke-interface {v0}, Lio/agora/base/VideoFrame$Buffer;->release()V
return-void
.end method
.method public replaceBuffer(Lio/agora/base/VideoFrame$Buffer;IJ)V
.registers 5
.line 459
invoke-virtual {p0}, Lio/agora/base/VideoFrame;->release()V
.line 460
iput-object p1, p0, Lio/agora/base/VideoFrame;->buffer:Lio/agora/base/VideoFrame$Buffer;
.line 461
iput p2, p0, Lio/agora/base/VideoFrame;->rotation:I
.line 462
iput-wide p3, p0, Lio/agora/base/VideoFrame;->timestampNs:J
return-void
.end method
.method public retain()V
.registers 2
.line 478
iget-object v0, p0, Lio/agora/base/VideoFrame;->buffer:Lio/agora/base/VideoFrame$Buffer;
invoke-interface {v0}, Lio/agora/base/VideoFrame$Buffer;->retain()V
return-void
.end method