q.smali 
.class public final Lcom/tencent/liteav/videoconsumer/renderer/q;
.super Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderInterface;
.source "SourceFile"
# interfaces
.implements Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface$RenderViewListener;
# instance fields
.field private A:Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener;
.field private B:Z
.field private C:Landroid/graphics/Bitmap;
.field private final D:Lcom/tencent/liteav/base/b/a;
.field private final a:Ljava/lang/String;
.field private final b:Landroid/os/Handler;
.field private final c:Lcom/tencent/liteav/base/util/CustomHandler;
.field private final d:Lcom/tencent/liteav/videobase/videobase/IVideoReporter;
.field private final e:Lcom/tencent/liteav/base/util/l;
.field private final f:Lcom/tencent/liteav/base/util/l;
.field private final g:Lcom/tencent/liteav/base/b/b;
.field private final h:Lcom/tencent/liteav/base/util/Size;
.field private i:Landroid/view/Surface;
.field private j:Z
.field private k:Ljava/lang/Object;
.field private l:Lcom/tencent/liteav/videobase/egl/EGLCore;
.field private final m:Lcom/tencent/liteav/videobase/frame/c;
.field private n:Lcom/tencent/liteav/videobase/frame/j;
.field private final o:Lcom/tencent/liteav/videobase/utils/m;
.field private p:Lcom/tencent/liteav/videobase/frame/e;
.field private q:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
.field private r:Lcom/tencent/liteav/videobase/utils/Rotation;
.field private s:Z
.field private t:Z
.field private u:Lcom/tencent/liteav/videobase/videobase/DisplayTarget;
.field private v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
.field private final w:Lcom/tencent/liteav/base/util/Size;
.field private volatile x:Z
.field private y:Z
.field private z:Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;
# direct methods
.method public constructor <init>(Landroid/os/Looper;Lcom/tencent/liteav/videobase/videobase/IVideoReporter;)V
    .registers 7
    .line 114
    invoke-direct {p0}, Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderInterface;-><init>()V
    .line 63
    new-instance v0, Ljava/lang/StringBuilder;
    const-string v1, "VideoRenderer_"
    invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
    invoke-virtual {p0}, Ljava/lang/Object;->hashCode()I
    move-result v1
    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v0
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    .line 65
    new-instance v0, Landroid/os/Handler;
    .line 66
    invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
    move-result-object v1
    invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->b:Landroid/os/Handler;
    .line 71
    new-instance v0, Lcom/tencent/liteav/base/util/l;
    const/4 v1, 0x5
    invoke-direct {v0, v1}, Lcom/tencent/liteav/base/util/l;-><init>(I)V
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->f:Lcom/tencent/liteav/base/util/l;
    .line 73
    new-instance v0, Lcom/tencent/liteav/base/b/b;
    invoke-direct {v0}, Lcom/tencent/liteav/base/b/b;-><init>()V
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    .line 76
    new-instance v0, Lcom/tencent/liteav/base/util/Size;
    invoke-direct {v0}, Lcom/tencent/liteav/base/util/Size;-><init>()V
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    const/4 v0, 0x0
    .line 78
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    const/4 v1, 0x0
    .line 79
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->j:Z
    .line 83
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    .line 84
    new-instance v2, Lcom/tencent/liteav/videobase/frame/c;
    invoke-direct {v2}, Lcom/tencent/liteav/videobase/frame/c;-><init>()V
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->m:Lcom/tencent/liteav/videobase/frame/c;
    .line 86
    new-instance v2, Lcom/tencent/liteav/videobase/utils/m;
    invoke-direct {v2}, Lcom/tencent/liteav/videobase/utils/m;-><init>()V
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->o:Lcom/tencent/liteav/videobase/utils/m;
    .line 90
    sget-object v2, Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;->a:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->q:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    .line 91
    sget-object v2, Lcom/tencent/liteav/videobase/utils/Rotation;->a:Lcom/tencent/liteav/videobase/utils/Rotation;
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->r:Lcom/tencent/liteav/videobase/utils/Rotation;
    .line 92
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->s:Z
    .line 93
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->t:Z
    .line 101
    new-instance v2, Lcom/tencent/liteav/base/util/Size;
    invoke-direct {v2}, Lcom/tencent/liteav/base/util/Size;-><init>()V
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->w:Lcom/tencent/liteav/base/util/Size;
    .line 103
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->x:Z
    .line 104
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->y:Z
    .line 109
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->B:Z
    .line 112
    new-instance v1, Lcom/tencent/liteav/base/b/a;
    const-wide/16 v2, 0x1388
    invoke-direct {v1, v2, v3}, Lcom/tencent/liteav/base/b/a;-><init>(J)V
    iput-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->D:Lcom/tencent/liteav/base/b/a;
    .line 115
    new-instance v1, Lcom/tencent/liteav/base/util/CustomHandler;
    invoke-direct {v1, p1}, Lcom/tencent/liteav/base/util/CustomHandler;-><init>(Landroid/os/Looper;)V
    iput-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->c:Lcom/tencent/liteav/base/util/CustomHandler;
    .line 116
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->e:Lcom/tencent/liteav/base/util/l;
    .line 117
    iput-object p2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->d:Lcom/tencent/liteav/videobase/videobase/IVideoReporter;
    return-void
.end method
.method public constructor <init>(Lcom/tencent/liteav/base/util/l;Lcom/tencent/liteav/videobase/videobase/IVideoReporter;)V
    .registers 7
    .line 120
    invoke-direct {p0}, Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderInterface;-><init>()V
    .line 63
    new-instance v0, Ljava/lang/StringBuilder;
    const-string v1, "VideoRenderer_"
    invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
    invoke-virtual {p0}, Ljava/lang/Object;->hashCode()I
    move-result v1
    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v0
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    .line 65
    new-instance v0, Landroid/os/Handler;
    .line 66
    invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
    move-result-object v1
    invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->b:Landroid/os/Handler;
    .line 71
    new-instance v0, Lcom/tencent/liteav/base/util/l;
    const/4 v1, 0x5
    invoke-direct {v0, v1}, Lcom/tencent/liteav/base/util/l;-><init>(I)V
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->f:Lcom/tencent/liteav/base/util/l;
    .line 73
    new-instance v0, Lcom/tencent/liteav/base/b/b;
    invoke-direct {v0}, Lcom/tencent/liteav/base/b/b;-><init>()V
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    .line 76
    new-instance v0, Lcom/tencent/liteav/base/util/Size;
    invoke-direct {v0}, Lcom/tencent/liteav/base/util/Size;-><init>()V
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    const/4 v0, 0x0
    .line 78
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    const/4 v1, 0x0
    .line 79
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->j:Z
    .line 83
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    .line 84
    new-instance v2, Lcom/tencent/liteav/videobase/frame/c;
    invoke-direct {v2}, Lcom/tencent/liteav/videobase/frame/c;-><init>()V
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->m:Lcom/tencent/liteav/videobase/frame/c;
    .line 86
    new-instance v2, Lcom/tencent/liteav/videobase/utils/m;
    invoke-direct {v2}, Lcom/tencent/liteav/videobase/utils/m;-><init>()V
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->o:Lcom/tencent/liteav/videobase/utils/m;
    .line 90
    sget-object v2, Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;->a:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->q:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    .line 91
    sget-object v2, Lcom/tencent/liteav/videobase/utils/Rotation;->a:Lcom/tencent/liteav/videobase/utils/Rotation;
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->r:Lcom/tencent/liteav/videobase/utils/Rotation;
    .line 92
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->s:Z
    .line 93
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->t:Z
    .line 101
    new-instance v2, Lcom/tencent/liteav/base/util/Size;
    invoke-direct {v2}, Lcom/tencent/liteav/base/util/Size;-><init>()V
    iput-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->w:Lcom/tencent/liteav/base/util/Size;
    .line 103
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->x:Z
    .line 104
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->y:Z
    .line 109
    iput-boolean v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->B:Z
    .line 112
    new-instance v1, Lcom/tencent/liteav/base/b/a;
    const-wide/16 v2, 0x1388
    invoke-direct {v1, v2, v3}, Lcom/tencent/liteav/base/b/a;-><init>(J)V
    iput-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->D:Lcom/tencent/liteav/base/b/a;
    .line 121
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->c:Lcom/tencent/liteav/base/util/CustomHandler;
    .line 122
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->e:Lcom/tencent/liteav/base/util/l;
    .line 123
    iput-object p2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->d:Lcom/tencent/liteav/videobase/videobase/IVideoReporter;
    return-void
.end method
.method private a(Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
    .registers 3
    .line 643
    monitor-enter p0
    .line 644
    :try_start_1
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->C:Landroid/graphics/Bitmap;
    .line 645
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->C:Landroid/graphics/Bitmap;
    .line 646
    monitor-exit p0
    return-object v0
    :catchall_7
    move-exception p1
    .line 647
    monitor-exit p0
    :try_end_9
    .catchall {:try_start_1 .. :try_end_9} :catchall_7
    throw p1
.end method
.method private a()V
    .registers 7
    .line 315
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    if-nez v0, :cond_5
    return-void
    .line 318
    :cond_5
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    const-string v1, "uninitGL"
    invoke-virtual {v0, v1}, Lcom/tencent/liteav/base/b/b;->a(Ljava/lang/String;)Lcom/tencent/liteav/base/b/a;
    move-result-object v0
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const/4 v2, 0x2
    new-array v2, v2, [Ljava/lang/Object;
    iget-object v3, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    const/4 v4, 0x0
    if-eqz v3, :cond_1c
    .line 319
    invoke-virtual {v3}, Ljava/lang/Object;->hashCode()I
    move-result v3
    goto :goto_1d
    :cond_1c
    move v3, v4
    :goto_1d
    invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
    move-result-object v3
    aput-object v3, v2, v4
    const/4 v3, 0x1
    iget-object v5, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    aput-object v5, v2, v3
    const-string v3, "uninitializeEGL %d %s"
    .line 318
    invoke-static {v0, v1, v3, v2}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Lcom/tencent/liteav/base/b/a;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    .line 321
    :try_start_2d
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/egl/EGLCore;->makeCurrent()V
    :try_end_32
    .catch Lcom/tencent/liteav/videobase/egl/f; {:try_start_2d .. :try_end_32} :catch_33
    goto :goto_4d
    :catch_33
    move-exception v0
    .line 323
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    const-string v2, "makeCurrentError"
    invoke-virtual {v1, v2}, Lcom/tencent/liteav/base/b/b;->a(Ljava/lang/String;)Lcom/tencent/liteav/base/b/a;
    move-result-object v1
    iget-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    invoke-static {v0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
    move-result-object v0
    const-string v3, "uninitializeEGL EGLCore makeCurrent failed."
    invoke-virtual {v3, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object v0
    new-array v3, v4, [Ljava/lang/Object;
    invoke-static {v1, v2, v0, v3}, Lcom/tencent/liteav/base/util/LiteavLog;->e(Lcom/tencent/liteav/base/b/a;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    .line 326
    :goto_4d
    invoke-direct {p0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->d()V
    .line 327
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->m:Lcom/tencent/liteav/videobase/frame/c;
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/c;->d()V
    .line 329
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->p:Lcom/tencent/liteav/videobase/frame/e;
    const/4 v1, 0x0
    if-eqz v0, :cond_64
    .line 330
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/e;->a()V
    .line 331
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->p:Lcom/tencent/liteav/videobase/frame/e;
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/e;->b()V
    .line 332
    iput-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->p:Lcom/tencent/liteav/videobase/frame/e;
    .line 335
    :cond_64
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    invoke-static {v0}, Lcom/tencent/liteav/videobase/egl/EGLCore;->destroy(Lcom/tencent/liteav/videobase/egl/EGLCore;)V
    .line 336
    iput-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    return-void
.end method
.method private a(Landroid/view/Surface;Z)V
    .registers 4
    .line 586
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    invoke-static {v0, p1}, Lcom/tencent/liteav/base/util/i;->a(Ljava/lang/Object;Ljava/lang/Object;)Z
    move-result v0
    if-eqz v0, :cond_10
    .line 587
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string p2, "updateSurface same surface!"
    invoke-static {p1, p2}, Lcom/tencent/liteav/base/util/LiteavLog;->d(Ljava/lang/String;Ljava/lang/String;)V
    return-void
    .line 590
    :cond_10
    invoke-direct {p0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a()V
    .line 591
    iget-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->j:Z
    if-eqz v0, :cond_1e
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    if-eqz v0, :cond_1e
    .line 592
    invoke-virtual {v0}, Landroid/view/Surface;->release()V
    .line 594
    :cond_1e
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    if-nez p1, :cond_28
    .line 596
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    const/4 v0, 0x0
    invoke-virtual {p1, v0, v0}, Lcom/tencent/liteav/base/util/Size;->set(II)V
    .line 598
    :cond_28
    iput-boolean p2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->j:Z
    return-void
.end method
.method private a(Lcom/tencent/liteav/videobase/frame/PixelFrame;Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;)V
    .registers 4
    .line 443
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->A:Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener;
    if-eqz v0, :cond_7
    .line 444
    invoke-virtual {v0, p1, p2}, Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener;->onRenderFrame(Lcom/tencent/liteav/videobase/frame/PixelFrame;Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;)V
    :cond_7
    return-void
.end method
.method private a(Lcom/tencent/liteav/videobase/frame/PixelFrame;ZZLcom/tencent/liteav/videobase/utils/Rotation;Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;Z)V
    .registers 9
    .line 488
    new-instance v0, Lcom/tencent/liteav/videobase/frame/PixelFrame;
    invoke-direct {v0, p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;-><init>(Lcom/tencent/liteav/videobase/frame/PixelFrame;)V
    .line 490
    invoke-virtual {p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getRotation()Lcom/tencent/liteav/videobase/utils/Rotation;
    move-result-object p1
    .line 2045
    iget p1, p1, Lcom/tencent/liteav/videobase/utils/Rotation;->mValue:I
    .line 3045
    iget v1, p4, Lcom/tencent/liteav/videobase/utils/Rotation;->mValue:I
    add-int/2addr p1, v1
    .line 490
    rem-int/lit16 p1, p1, 0x168
    .line 489
    invoke-static {p1}, Lcom/tencent/liteav/videobase/utils/Rotation;->a(I)Lcom/tencent/liteav/videobase/utils/Rotation;
    move-result-object p1
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->setRotation(Lcom/tencent/liteav/videobase/utils/Rotation;)V
    if-eqz p2, :cond_22
    .line 492
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->isMirrorHorizontal()Z
    move-result p1
    xor-int/lit8 p1, p1, 0x1
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->setMirrorHorizontal(Z)V
    :cond_22
    if-eqz p3, :cond_2d
    .line 495
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->isMirrorVertical()Z
    move-result p1
    xor-int/lit8 p1, p1, 0x1
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->setMirrorVertical(Z)V
    .line 497
    :cond_2d
    sget-object p1, Lcom/tencent/liteav/videobase/utils/Rotation;->b:Lcom/tencent/liteav/videobase/utils/Rotation;
    if-eq p4, p1, :cond_35
    sget-object p1, Lcom/tencent/liteav/videobase/utils/Rotation;->d:Lcom/tencent/liteav/videobase/utils/Rotation;
    if-ne p4, p1, :cond_43
    .line 498
    :cond_35
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getWidth()I
    move-result p1
    .line 499
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getHeight()I
    move-result p2
    invoke-virtual {v0, p2}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->setWidth(I)V
    .line 500
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->setHeight(I)V
    .line 503
    :cond_43
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->isMirrorVertical()Z
    move-result p1
    xor-int/lit8 p1, p1, 0x1
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->setMirrorVertical(Z)V
    .line 504
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getRotation()Lcom/tencent/liteav/videobase/utils/Rotation;
    move-result-object p1
    sget-object p2, Lcom/tencent/liteav/videobase/utils/Rotation;->a:Lcom/tencent/liteav/videobase/utils/Rotation;
    if-eq p1, p2, :cond_70
    .line 505
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getRotation()Lcom/tencent/liteav/videobase/utils/Rotation;
    move-result-object p1
    sget-object p2, Lcom/tencent/liteav/videobase/utils/Rotation;->c:Lcom/tencent/liteav/videobase/utils/Rotation;
    if-eq p1, p2, :cond_70
    .line 507
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getRotation()Lcom/tencent/liteav/videobase/utils/Rotation;
    move-result-object p1
    .line 4045
    iget p1, p1, Lcom/tencent/liteav/videobase/utils/Rotation;->mValue:I
    .line 507
    sget-object p2, Lcom/tencent/liteav/videobase/utils/Rotation;->c:Lcom/tencent/liteav/videobase/utils/Rotation;
    .line 5045
    iget p2, p2, Lcom/tencent/liteav/videobase/utils/Rotation;->mValue:I
    add-int/2addr p1, p2
    .line 507
    rem-int/lit16 p1, p1, 0x168
    .line 506
    invoke-static {p1}, Lcom/tencent/liteav/videobase/utils/Rotation;->a(I)Lcom/tencent/liteav/videobase/utils/Rotation;
    move-result-object p1
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->setRotation(Lcom/tencent/liteav/videobase/utils/Rotation;)V
    .line 509
    :cond_70
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget p1, p1, Lcom/tencent/liteav/base/util/Size;->width:I
    iget-object p2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget p2, p2, Lcom/tencent/liteav/base/util/Size;->height:I
    const/4 p3, 0x0
    invoke-static {p3, p3, p1, p2}, Lcom/tencent/liteav/videobase/utils/OpenGlUtils;->glViewport(IIII)V
    if-eqz p6, :cond_8f
    .line 512
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    if-eqz p1, :cond_8f
    .line 514
    iget-object p2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->q:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    .line 515
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getWidth()I
    move-result p3
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getHeight()I
    move-result p4
    .line 514
    invoke-virtual {p1, p2, p3, p4}, Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;->updateVideoFrameInfo(Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;II)V
    .line 519
    :cond_8f
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->n:Lcom/tencent/liteav/videobase/frame/j;
    if-nez p1, :cond_bf
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {p1}, Lcom/tencent/liteav/base/util/Size;->isValid()Z
    move-result p1
    if-eqz p1, :cond_bf
    .line 520
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    new-instance p2, Ljava/lang/StringBuilder;
    const-string p3, "create PixelFrameRenderer,surfaceSize="
    invoke-direct {p2, p3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
    iget-object p3, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object p2
    invoke-static {p1, p2}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 521
    new-instance p1, Lcom/tencent/liteav/videobase/frame/j;
    iget-object p2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget p2, p2, Lcom/tencent/liteav/base/util/Size;->width:I
    iget-object p3, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget p3, p3, Lcom/tencent/liteav/base/util/Size;->height:I
    invoke-direct {p1, p2, p3}, Lcom/tencent/liteav/videobase/frame/j;-><init>(II)V
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->n:Lcom/tencent/liteav/videobase/frame/j;
    .line 524
    :cond_bf
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->n:Lcom/tencent/liteav/videobase/frame/j;
    if-eqz p1, :cond_d3
    .line 525
    iget-object p2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    instance-of p2, p2, Lcom/tencent/liteav/videoconsumer/renderer/i;
    const/4 p3, 0x0
    if-eqz p2, :cond_d0
    .line 527
    sget-object p2, Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;->c:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    invoke-virtual {p1, v0, p2, p3}, Lcom/tencent/liteav/videobase/frame/j;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;Lcom/tencent/liteav/videobase/frame/d;)V
    return-void
    .line 529
    :cond_d0
    invoke-virtual {p1, v0, p5, p3}, Lcom/tencent/liteav/videobase/frame/j;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;Lcom/tencent/liteav/videobase/frame/d;)V
    :cond_d3
    return-void
.end method
.method private a(Lcom/tencent/liteav/videobase/videobase/DisplayTarget;Z)V
    .registers 6
    .line 340
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    new-instance v1, Ljava/lang/StringBuilder;
    const-string v2, "setDisplayViewInternal="
    invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
    invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    const-string v2, ",clearLastImage="
    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v1
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 342
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->u:Lcom/tencent/liteav/videobase/videobase/DisplayTarget;
    invoke-static {v0, p1}, Lcom/tencent/liteav/base/util/CommonUtil;->equals(Ljava/lang/Object;Ljava/lang/Object;)Z
    move-result v0
    if-eqz v0, :cond_32
    if-eqz p1, :cond_32
    .line 343
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    if-eqz v1, :cond_32
    .line 344
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string/jumbo p2, "view is equal and RenderViewHelper is created."
    invoke-static {p1, p2}, Lcom/tencent/liteav/base/util/LiteavLog;->w(Ljava/lang/String;Ljava/lang/String;)V
    return-void
    :cond_32
    if-nez v0, :cond_40
    const/4 v0, 0x1
    .line 348
    iput-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->B:Z
    .line 349
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->u:Lcom/tencent/liteav/videobase/videobase/DisplayTarget;
    if-eqz v0, :cond_40
    if-eqz p2, :cond_40
    .line 350
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/videobase/DisplayTarget;->hideAll()V
    .line 353
    :cond_40
    invoke-direct {p0, p2}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Z)V
    .line 354
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->u:Lcom/tencent/liteav/videobase/videobase/DisplayTarget;
    if-nez p1, :cond_48
    return-void
    .line 358
    :cond_48
    invoke-virtual {p1}, Lcom/tencent/liteav/videobase/videobase/DisplayTarget;->showAll()V
    .line 359
    invoke-static {p1, p0}, Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;->create(Lcom/tencent/liteav/videobase/videobase/DisplayTarget;Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface$RenderViewListener;)Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    move-result-object p1
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;)V
    .registers 4
    .line 653
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    new-instance v1, Ljava/lang/StringBuilder;
    const-string v2, "onSurfaceDestroy "
    invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
    iget-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v1
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 654
    iget-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->j:Z
    const/4 v1, 0x0
    invoke-direct {p0, v1, v0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Landroid/view/Surface;Z)V
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;Landroid/view/Surface;Z)V
    .registers 7
    .line 611
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const/4 v1, 0x3
    new-array v1, v1, [Ljava/lang/Object;
    const/4 v2, 0x0
    aput-object p1, v1, v2
    iget-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    const/4 v3, 0x1
    aput-object v2, v1, v3
    .line 612
    invoke-static {p2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
    move-result-object v2
    const/4 v3, 0x2
    aput-object v2, v1, v3
    const-string v2, "onSurfaceChanged surface: %s, oldSurface: %s, isNeedRelease: %b"
    .line 611
    invoke-static {v0, v2, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    .line 613
    invoke-direct {p0, p1, p2}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Landroid/view/Surface;Z)V
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;)V
    .registers 5
    .line 193
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->q:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    if-eq v0, p1, :cond_15
    .line 194
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
    move-result-object v1
    const-string v2, "setScaleType "
    invoke-virtual {v2, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object v1
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 195
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->q:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    :cond_15
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;)V
    .registers 4
    .line 185
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string v1, "takeSnapshot "
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 186
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->z:Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videobase/utils/Rotation;)V
    .registers 5
    .line 203
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->r:Lcom/tencent/liteav/videobase/utils/Rotation;
    if-eq v0, p1, :cond_15
    .line 204
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
    move-result-object v1
    const-string v2, "setRenderRotation "
    invoke-virtual {v2, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object v1
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 205
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->r:Lcom/tencent/liteav/videobase/utils/Rotation;
    :cond_15
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videobase/videobase/DisplayTarget;Z)V
    .registers 3
    .line 175
    invoke-direct {p0, p1, p2}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/videobase/DisplayTarget;Z)V
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;Ljava/nio/ByteBuffer;IILcom/tencent/liteav/videobase/base/TakeSnapshotListener;)V
    .registers 14
    .line 557
    instance-of v0, p1, Lcom/tencent/liteav/videoconsumer/renderer/i;
    const/4 v1, 0x0
    if-eqz v0, :cond_a
    .line 558
    check-cast p1, Lcom/tencent/liteav/videoconsumer/renderer/i;
    .line 6133
    iget-object p1, p1, Lcom/tencent/liteav/videoconsumer/renderer/i;->a:Landroid/view/TextureView;
    goto :goto_b
    :cond_a
    move-object p1, v1
    :goto_b
    if-nez p1, :cond_e
    goto :goto_17
    .line 560
    :cond_e
    new-instance v0, Landroid/graphics/Matrix;
    invoke-direct {v0}, Landroid/graphics/Matrix;-><init>()V
    invoke-virtual {p1, v0}, Landroid/view/TextureView;->getTransform(Landroid/graphics/Matrix;)Landroid/graphics/Matrix;
    move-result-object v1
    :goto_17
    move-object v6, v1
    .line 561
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->f:Lcom/tencent/liteav/base/util/l;
    move-object v2, p0
    move-object v3, p2
    move v4, p3
    move v5, p4
    move-object v7, p5
    invoke-static/range {v2 .. v7}, Lcom/tencent/liteav/videoconsumer/renderer/w;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Ljava/nio/ByteBuffer;IILandroid/graphics/Matrix;Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;)Ljava/lang/Runnable;
    move-result-object p0
    invoke-virtual {p1, p0}, Lcom/tencent/liteav/base/util/l;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener;)V
    .registers 4
    .line 129
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string v1, "Start"
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 130
    iget-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->x:Z
    if-eqz v0, :cond_13
    .line 131
    iget-object p0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string p1, "renderer is started!"
    invoke-static {p0, p1}, Lcom/tencent/liteav/base/util/LiteavLog;->w(Ljava/lang/String;Ljava/lang/String;)V
    return-void
    :cond_13
    const/4 v0, 0x1
    .line 134
    iput-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->x:Z
    .line 135
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->A:Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener;
    .line 136
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->u:Lcom/tencent/liteav/videobase/videobase/DisplayTarget;
    if-eqz p1, :cond_1f
    .line 137
    invoke-direct {p0, p1, v0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/videobase/DisplayTarget;Z)V
    .line 139
    :cond_1f
    iget-object p0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->D:Lcom/tencent/liteav/base/b/a;
    .line 9039
    invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
    move-result-wide v0
    iput-wide v0, p0, Lcom/tencent/liteav/base/b/a;->a:J
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;Ljava/nio/ByteBuffer;IILandroid/graphics/Matrix;Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;)V
    .registers 9
    const/4 v0, 0x0
    .line 6570
    :try_start_1
    invoke-virtual {p1, v0}, Ljava/nio/ByteBuffer;->position(I)Ljava/nio/Buffer;
    .line 6571
    sget-object v0, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;
    invoke-static {p2, p3, v0}, Landroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
    move-result-object v0
    .line 6572
    invoke-virtual {v0, p1}, Landroid/graphics/Bitmap;->copyPixelsFromBuffer(Ljava/nio/Buffer;)V
    if-nez p4, :cond_14
    .line 6575
    new-instance p4, Landroid/graphics/Matrix;
    invoke-direct {p4}, Landroid/graphics/Matrix;-><init>()V
    :cond_14
    const/high16 p1, 0x3f800000    # 1.0f
    const/high16 v1, -0x40800000    # -1.0f
    int-to-float p2, p2
    const/high16 v2, 0x40000000    # 2.0f
    div-float/2addr p2, v2
    int-to-float p3, p3
    div-float/2addr p3, v2
    .line 6576
    invoke-virtual {p4, p1, v1, p2, p3}, Landroid/graphics/Matrix;->postScale(FFFF)Z
    const/4 p1, 0x1
    .line 6577
    invoke-static {v0, p4, p1}, Lcom/tencent/liteav/videobase/utils/BitmapUtils;->createBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Matrix;Z)Landroid/graphics/Bitmap;
    move-result-object p1
    .line 6578
    invoke-interface {p5, p1}, Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;->onComplete(Landroid/graphics/Bitmap;)V
    :try_end_29
    .catchall {:try_start_1 .. :try_end_29} :catchall_2a
    return-void
    :catchall_2a
    move-exception p1
    .line 6580
    iget-object p0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string p2, "build snapshot bitmap failed."
    invoke-static {p0, p2, p1}, Lcom/tencent/liteav/base/util/LiteavLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
    const/4 p0, 0x0
    .line 6581
    invoke-interface {p5, p0}, Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;->onComplete(Landroid/graphics/Bitmap;)V
    return-void
.end method
.method static synthetic a(Lcom/tencent/liteav/videoconsumer/renderer/q;Z)V
    .registers 5
    .line 223
    iget-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->t:Z
    if-eq v0, p1, :cond_13
    .line 224
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    invoke-static {p1}, Ljava/lang/String;->valueOf(Z)Ljava/lang/String;
    move-result-object v1
    const-string v2, "setVerticalMirror "
    invoke-virtual {v2, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object v1
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 226
    :cond_13
    iput-boolean p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->t:Z
    return-void
.end method
.method private a(Ljava/lang/Runnable;)V
    .registers 4
    .line 259
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->e:Lcom/tencent/liteav/base/util/l;
    if-eqz v0, :cond_8
    .line 260
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/base/util/l;->a(Ljava/lang/Runnable;)V
    return-void
    .line 263
    :cond_8
    invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
    move-result-object v0
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->c:Lcom/tencent/liteav/base/util/CustomHandler;
    invoke-virtual {v1}, Lcom/tencent/liteav/base/util/CustomHandler;->getLooper()Landroid/os/Looper;
    move-result-object v1
    if-ne v0, v1, :cond_18
    .line 264
    invoke-interface {p1}, Ljava/lang/Runnable;->run()V
    return-void
    .line 266
    :cond_18
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->c:Lcom/tencent/liteav/base/util/CustomHandler;
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/base/util/CustomHandler;->post(Ljava/lang/Runnable;)Z
    return-void
.end method
.method private a(Z)V
    .registers 3
    .line 602
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    if-eqz v0, :cond_a
    .line 603
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;->release(Z)V
    const/4 p1, 0x0
    .line 604
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    :cond_a
    return-void
.end method
.method private a(Lcom/tencent/liteav/videobase/frame/PixelFrame;)Z
    .registers 8
    .line 450
    invoke-virtual {p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getGLContext()Ljava/lang/Object;
    move-result-object v0
    .line 451
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    const/4 v2, 0x1
    const/4 v3, 0x0
    if-eqz v1, :cond_17
    if-eqz v0, :cond_15
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->k:Ljava/lang/Object;
    .line 453
    invoke-static {v1, v0}, Lcom/tencent/liteav/base/util/CommonUtil;->equals(Ljava/lang/Object;Ljava/lang/Object;)Z
    move-result v0
    if-nez v0, :cond_15
    goto :goto_17
    :cond_15
    move v0, v3
    goto :goto_18
    :cond_17
    :goto_17
    move v0, v2
    :goto_18
    if-eqz v0, :cond_b0
    .line 455
    invoke-direct {p0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a()V
    .line 456
    invoke-virtual {p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getGLContext()Ljava/lang/Object;
    move-result-object p1
    .line 1286
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    if-nez v0, :cond_37
    .line 1287
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    const-string v0, "initGLNoSurface"
    invoke-virtual {p1, v0}, Lcom/tencent/liteav/base/b/b;->a(Ljava/lang/String;)Lcom/tencent/liteav/base/b/a;
    move-result-object p1
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    new-array v1, v3, [Ljava/lang/Object;
    const-string v4, "Initialize EGL failed because surface is null"
    invoke-static {p1, v0, v4, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->e(Lcom/tencent/liteav/base/b/a;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    goto :goto_b0
    .line 1292
    :cond_37
    :try_start_37
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    const-string v1, "initGL"
    invoke-virtual {v0, v1}, Lcom/tencent/liteav/base/b/b;->a(Ljava/lang/String;)Lcom/tencent/liteav/base/b/a;
    move-result-object v0
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    new-instance v4, Ljava/lang/StringBuilder;
    const-string v5, "initializeEGL surface="
    invoke-direct {v4, v5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
    iget-object v5, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    const-string v5, ",size="
    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    iget-object v5, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v4
    new-array v5, v3, [Ljava/lang/Object;
    invoke-static {v0, v1, v4, v5}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Lcom/tencent/liteav/base/b/a;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    .line 1294
    new-instance v0, Lcom/tencent/liteav/videobase/egl/EGLCore;
    invoke-direct {v0}, Lcom/tencent/liteav/videobase/egl/EGLCore;-><init>()V
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    .line 1295
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    iget-object v4, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget v4, v4, Lcom/tencent/liteav/base/util/Size;->width:I
    iget-object v5, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget v5, v5, Lcom/tencent/liteav/base/util/Size;->height:I
    invoke-virtual {v0, p1, v1, v4, v5}, Lcom/tencent/liteav/videobase/egl/EGLCore;->initialize(Ljava/lang/Object;Landroid/view/Surface;II)V
    .line 1297
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->k:Ljava/lang/Object;
    .line 1298
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    invoke-virtual {p1}, Lcom/tencent/liteav/videobase/egl/EGLCore;->makeCurrent()V
    .line 1299
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->p:Lcom/tencent/liteav/videobase/frame/e;
    if-nez p1, :cond_86
    .line 1300
    new-instance p1, Lcom/tencent/liteav/videobase/frame/e;
    invoke-direct {p1}, Lcom/tencent/liteav/videobase/frame/e;-><init>()V
    iput-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->p:Lcom/tencent/liteav/videobase/frame/e;
    .line 1302
    :cond_86
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->m:Lcom/tencent/liteav/videobase/frame/c;
    invoke-virtual {p1}, Lcom/tencent/liteav/videobase/frame/c;->a()V
    :try_end_8b
    .catch Lcom/tencent/liteav/videobase/egl/f; {:try_start_37 .. :try_end_8b} :catch_8c
    goto :goto_b0
    :catch_8c
    move-exception p1
    .line 1304
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    const-string v1, "initGLError"
    invoke-virtual {v0, v1}, Lcom/tencent/liteav/base/b/b;->a(Ljava/lang/String;)Lcom/tencent/liteav/base/b/a;
    move-result-object v0
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string v4, "initializeEGL failed."
    invoke-static {v0, v1, v4, p1}, Lcom/tencent/liteav/base/util/LiteavLog;->e(Lcom/tencent/liteav/base/b/a;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
    const/4 v0, 0x0
    .line 1305
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    .line 1306
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->d:Lcom/tencent/liteav/videobase/videobase/IVideoReporter;
    sget-object v1, Lcom/tencent/liteav/videobase/videobase/h$c;->e:Lcom/tencent/liteav/videobase/videobase/h$c;
    invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
    move-result-object p1
    const-string v4, "VideoRender: create EGLCore fail:"
    invoke-virtual {v4, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object p1
    invoke-interface {v0, v1, p1}, Lcom/tencent/liteav/videobase/videobase/IVideoReporter;->notifyWarning(Lcom/tencent/liteav/videobase/videobase/h$c;Ljava/lang/String;)V
    .line 459
    :cond_b0
    :goto_b0
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    if-nez p1, :cond_b5
    return v3
    .line 464
    :cond_b5
    :try_start_b5
    invoke-virtual {p1}, Lcom/tencent/liteav/videobase/egl/EGLCore;->makeCurrent()V
    :try_end_b8
    .catch Lcom/tencent/liteav/videobase/egl/f; {:try_start_b5 .. :try_end_b8} :catch_b9
    return v2
    :catch_b9
    move-exception p1
    .line 467
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    const-string v1, "makeCurrentForFrameError"
    invoke-virtual {v0, v1}, Lcom/tencent/liteav/base/b/b;->a(Ljava/lang/String;)Lcom/tencent/liteav/base/b/a;
    move-result-object v0
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
    move-result-object p1
    const-string v2, "EGLCore makeCurrent failed."
    invoke-virtual {v2, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object p1
    new-array v2, v3, [Ljava/lang/Object;
    invoke-static {v0, v1, p1, v2}, Lcom/tencent/liteav/base/util/LiteavLog;->e(Lcom/tencent/liteav/base/b/a;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    return v3
.end method
.method private b()V
    .registers 5
    .line 414
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    if-nez v0, :cond_5
    return-void
    .line 417
    :cond_5
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/egl/EGLCore;->getSurfaceSize()Lcom/tencent/liteav/base/util/Size;
    move-result-object v0
    .line 418
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {v1, v0}, Lcom/tencent/liteav/base/util/Size;->equals(Ljava/lang/Object;)Z
    move-result v1
    if-eqz v1, :cond_12
    return-void
    .line 421
    :cond_12
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    new-instance v2, Ljava/lang/StringBuilder;
    const-string v3, "surface size changed,old size="
    invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
    iget-object v3, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    const-string v3, ",new size="
    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v2
    invoke-static {v1, v2}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 423
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {v1, v0}, Lcom/tencent/liteav/base/util/Size;->set(Lcom/tencent/liteav/base/util/Size;)V
    .line 424
    invoke-direct {p0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->d()V
    .line 425
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    if-eqz v0, :cond_51
    .line 426
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->d:Lcom/tencent/liteav/videobase/videobase/IVideoReporter;
    sget-object v1, Lcom/tencent/liteav/videobase/videobase/i;->j:Lcom/tencent/liteav/videobase/videobase/i;
    iget-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget v2, v2, Lcom/tencent/liteav/base/util/Size;->width:I
    shl-int/lit8 v2, v2, 0x10
    iget-object v3, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget v3, v3, Lcom/tencent/liteav/base/util/Size;->height:I
    or-int/2addr v2, v3
    .line 427
    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
    move-result-object v2
    .line 426
    invoke-interface {v0, v1, v2}, Lcom/tencent/liteav/videobase/videobase/IVideoReporter;->updateStatus(Lcom/tencent/liteav/videobase/videobase/i;Ljava/lang/Object;)V
    .line 429
    :cond_51
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->A:Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener;
    if-eqz v0, :cond_60
    .line 430
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget v1, v1, Lcom/tencent/liteav/base/util/Size;->width:I
    iget-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget v2, v2, Lcom/tencent/liteav/base/util/Size;->height:I
    invoke-virtual {v0, v1, v2}, Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener;->onRenderTargetSizeChanged(II)V
    :cond_60
    return-void
.end method
.method static synthetic b(Lcom/tencent/liteav/videoconsumer/renderer/q;)V
    .registers 9
    const/4 v0, 0x0
    .line 622
    invoke-direct {p0, v0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
    move-result-object v0
    if-nez v0, :cond_8
    return-void
    .line 627
    :cond_8
    invoke-static {v0}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->createFromBitmap(Landroid/graphics/Bitmap;)Lcom/tencent/liteav/videobase/frame/PixelFrame;
    move-result-object v2
    if-nez v2, :cond_f
    return-void
    .line 631
    :cond_f
    invoke-direct {p0, v2}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;)Z
    move-result v0
    if-nez v0, :cond_19
    .line 632
    invoke-virtual {v2}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->release()V
    return-void
    .line 635
    :cond_19
    invoke-direct {p0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->b()V
    const/4 v3, 0x0
    const/4 v4, 0x0
    .line 637
    sget-object v5, Lcom/tencent/liteav/videobase/utils/Rotation;->a:Lcom/tencent/liteav/videobase/utils/Rotation;
    iget-object v6, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->q:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    const/4 v7, 0x0
    move-object v1, p0
    invoke-direct/range {v1 .. v7}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;ZZLcom/tencent/liteav/videobase/utils/Rotation;Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;Z)V
    .line 638
    invoke-direct {p0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->c()Z
    return-void
.end method
.method static synthetic b(Lcom/tencent/liteav/videoconsumer/renderer/q;Z)V
    .registers 5
    .line 213
    iget-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->s:Z
    if-eq v0, p1, :cond_13
    .line 214
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    invoke-static {p1}, Ljava/lang/String;->valueOf(Z)Ljava/lang/String;
    move-result-object v1
    const-string v2, "setHorizontalMirror "
    invoke-virtual {v2, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object v1
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 216
    :cond_13
    iput-boolean p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->s:Z
    return-void
.end method
.method static synthetic c(Lcom/tencent/liteav/videoconsumer/renderer/q;)V
    .registers 18
    move-object/from16 v7, p0
    .line 248
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->o:Lcom/tencent/liteav/videobase/utils/m;
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/utils/m;->a()Lcom/tencent/liteav/videobase/frame/PixelFrame;
    move-result-object v8
    if-nez v8, :cond_12
    .line 250
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string v1, "renderFrameInternal pixelFrame is null!"
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->d(Ljava/lang/String;Ljava/lang/String;)V
    return-void
    .line 7369
    :cond_12
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->w:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {v8}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getWidth()I
    move-result v1
    invoke-virtual {v8}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getHeight()I
    move-result v2
    invoke-virtual {v0, v1, v2}, Lcom/tencent/liteav/base/util/Size;->set(II)V
    .line 7370
    invoke-virtual {v8}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getMetaData()Lcom/tencent/liteav/videobase/frame/FrameMetaData;
    move-result-object v0
    if-eqz v0, :cond_40
    .line 7372
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/FrameMetaData;->getRenderRotation()Lcom/tencent/liteav/videobase/utils/Rotation;
    move-result-object v1
    iput-object v1, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->r:Lcom/tencent/liteav/videobase/utils/Rotation;
    .line 7373
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/FrameMetaData;->isRenderMirrorHorizontal()Z
    move-result v1
    iput-boolean v1, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->s:Z
    .line 7374
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/FrameMetaData;->isRenderMirrorVertical()Z
    move-result v1
    iput-boolean v1, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->t:Z
    .line 7375
    iget-object v1, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->w:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/FrameMetaData;->getCaptureRealSize()Lcom/tencent/liteav/base/util/Size;
    move-result-object v0
    invoke-virtual {v1, v0}, Lcom/tencent/liteav/base/util/Size;->set(Lcom/tencent/liteav/base/util/Size;)V
    .line 7378
    :cond_40
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->D:Lcom/tencent/liteav/base/b/a;
    invoke-virtual {v0}, Lcom/tencent/liteav/base/b/a;->a()Z
    move-result v0
    if-eqz v0, :cond_4f
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    if-eqz v0, :cond_4f
    .line 7379
    invoke-virtual {v0}, Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;->checkViewAvailability()V
    .line 7382
    :cond_4f
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    if-nez v0, :cond_5a
    .line 7384
    sget-object v0, Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;->c:Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;
    invoke-direct {v7, v8, v0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;)V
    goto/16 :goto_112
    .line 7388
    :cond_5a
    invoke-direct {v7, v8}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;)Z
    move-result v0
    const/4 v9, 0x0
    if-nez v0, :cond_79
    .line 7390
    sget-object v0, Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;->a:Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;
    invoke-direct {v7, v8, v0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;)V
    .line 7391
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    const-string v1, "makeCurrent"
    invoke-virtual {v0, v1}, Lcom/tencent/liteav/base/b/b;->a(Ljava/lang/String;)Lcom/tencent/liteav/base/b/a;
    move-result-object v0
    iget-object v1, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    new-array v2, v9, [Ljava/lang/Object;
    const-string v3, "make current failed."
    invoke-static {v0, v1, v3, v2}, Lcom/tencent/liteav/base/util/LiteavLog;->e(Lcom/tencent/liteav/base/b/a;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    goto/16 :goto_112
    .line 7395
    :cond_79
    invoke-direct/range {p0 .. p0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->b()V
    .line 7396
    iget-boolean v2, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->s:Z
    iget-boolean v3, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->t:Z
    iget-object v4, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->r:Lcom/tencent/liteav/videobase/utils/Rotation;
    iget-object v5, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->q:Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;
    const/4 v6, 0x1
    move-object/from16 v0, p0
    move-object v1, v8
    invoke-direct/range {v0 .. v6}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;ZZLcom/tencent/liteav/videobase/utils/Rotation;Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;Z)V
    .line 7399
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->z:Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;
    const/4 v6, 0x0
    if-eqz v0, :cond_dd
    const v0, 0x8d40
    .line 7400
    invoke-static {v0, v9}, Lcom/tencent/liteav/videobase/utils/OpenGlUtils;->bindFramebuffer(II)V
    .line 7401
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget v3, v0, Lcom/tencent/liteav/base/util/Size;->width:I
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    iget v4, v0, Lcom/tencent/liteav/base/util/Size;->height:I
    .line 7535
    iget-object v5, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->z:Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;
    if-eqz v5, :cond_dd
    .line 7539
    iput-object v6, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->z:Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;
    mul-int v0, v3, v4
    mul-int/lit8 v0, v0, 0x4
    .line 7541
    invoke-static {v0}, Lcom/tencent/liteav/videobase/utils/j;->b(I)Ljava/nio/ByteBuffer;
    move-result-object v2
    if-nez v2, :cond_b9
    .line 7543
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string v1, "snapshotVideoFrameFromFrameBuffer, allocate direct buffer failed."
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->e(Ljava/lang/String;Ljava/lang/String;)V
    .line 7544
    invoke-interface {v5, v6}, Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;->onComplete(Landroid/graphics/Bitmap;)V
    goto :goto_dd
    .line 7547
    :cond_b9
    invoke-static {}, Ljava/nio/ByteOrder;->nativeOrder()Ljava/nio/ByteOrder;
    move-result-object v0
    invoke-virtual {v2, v0}, Ljava/nio/ByteBuffer;->order(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer;
    .line 7548
    invoke-virtual {v2, v9}, Ljava/nio/ByteBuffer;->position(I)Ljava/nio/Buffer;
    const/4 v10, 0x0
    const/4 v11, 0x0
    const/16 v14, 0x1908
    const/16 v15, 0x1401
    move v12, v3
    move v13, v4
    move-object/from16 v16, v2
    .line 7550
    invoke-static/range {v10 .. v16}, Landroid/opengl/GLES20;->glReadPixels(IIIIIILjava/nio/Buffer;)V
    .line 7552
    iget-object v1, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->v:Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;
    .line 7555
    iget-object v10, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->b:Landroid/os/Handler;
    move-object/from16 v0, p0
    invoke-static/range {v0 .. v5}, Lcom/tencent/liteav/videoconsumer/renderer/s;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videoconsumer/renderer/RenderViewHelperInterface;Ljava/nio/ByteBuffer;IILcom/tencent/liteav/videobase/base/TakeSnapshotListener;)Ljava/lang/Runnable;
    move-result-object v0
    invoke-virtual {v10, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
    .line 7404
    :cond_dd
    :goto_dd
    invoke-direct/range {p0 .. p0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->c()Z
    move-result v0
    if-eqz v0, :cond_fc
    invoke-static {}, Lcom/tencent/liteav/videobase/utils/OpenGlUtils;->getGLErrorCount()I
    move-result v0
    if-gtz v0, :cond_fc
    .line 7405
    sget-object v0, Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;->b:Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;
    invoke-direct {v7, v8, v0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;)V
    .line 8436
    iget-boolean v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->B:Z
    if-eqz v0, :cond_112
    .line 8437
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->d:Lcom/tencent/liteav/videobase/videobase/IVideoReporter;
    sget-object v1, Lcom/tencent/liteav/videobase/videobase/h$b;->i:Lcom/tencent/liteav/videobase/videobase/h$b;
    invoke-interface {v0, v1, v8, v6}, Lcom/tencent/liteav/videobase/videobase/IVideoReporter;->notifyEvent(Lcom/tencent/liteav/videobase/videobase/h$b;Ljava/lang/Object;Ljava/lang/String;)V
    .line 8438
    iput-boolean v9, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->B:Z
    goto :goto_112
    .line 7408
    :cond_fc
    sget-object v0, Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;->a:Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;
    invoke-direct {v7, v8, v0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener$a;)V
    .line 7409
    iget-object v0, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    const-string v1, "renderFailed"
    invoke-virtual {v0, v1}, Lcom/tencent/liteav/base/b/b;->a(Ljava/lang/String;)Lcom/tencent/liteav/base/b/a;
    move-result-object v0
    iget-object v1, v7, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    new-array v2, v9, [Ljava/lang/Object;
    const-string v3, "render frame failed."
    invoke-static {v0, v1, v3, v2}, Lcom/tencent/liteav/base/util/LiteavLog;->e(Lcom/tencent/liteav/base/b/a;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    .line 254
    :cond_112
    :goto_112
    invoke-virtual {v8}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->release()V
    return-void
.end method
.method static synthetic c(Lcom/tencent/liteav/videoconsumer/renderer/q;Z)V
    .registers 5
    .line 146
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    invoke-static {p1}, Ljava/lang/String;->valueOf(Z)Ljava/lang/String;
    move-result-object v1
    const-string v2, "Stop,clearLastImage="
    invoke-virtual {v2, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object v1
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->i(Ljava/lang/String;Ljava/lang/String;)V
    .line 147
    iget-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->x:Z
    if-nez v0, :cond_1b
    .line 148
    iget-object p0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string p1, "renderer is not started!"
    invoke-static {p0, p1}, Lcom/tencent/liteav/base/util/LiteavLog;->w(Ljava/lang/String;Ljava/lang/String;)V
    return-void
    :cond_1b
    const/4 v0, 0x0
    .line 151
    iput-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->x:Z
    const/4 v1, 0x0
    .line 152
    iput-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->z:Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;
    .line 153
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Z)V
    .line 154
    iget-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->u:Lcom/tencent/liteav/videobase/videobase/DisplayTarget;
    if-eqz v2, :cond_2d
    if-eqz p1, :cond_2d
    .line 155
    invoke-virtual {v2}, Lcom/tencent/liteav/videobase/videobase/DisplayTarget;->hideAll()V
    .line 157
    :cond_2d
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->o:Lcom/tencent/liteav/videobase/utils/m;
    invoke-virtual {p1}, Lcom/tencent/liteav/videobase/utils/m;->b()V
    .line 158
    invoke-direct {p0}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a()V
    .line 159
    iget-boolean p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->j:Z
    if-eqz p1, :cond_42
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    if-eqz p1, :cond_42
    .line 160
    invoke-virtual {p1}, Landroid/view/Surface;->release()V
    .line 161
    iput-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->j:Z
    .line 163
    :cond_42
    iput-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->i:Landroid/view/Surface;
    .line 164
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->h:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {p1, v0, v0}, Lcom/tencent/liteav/base/util/Size;->set(II)V
    .line 165
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->w:Lcom/tencent/liteav/base/util/Size;
    invoke-virtual {p1, v0, v0}, Lcom/tencent/liteav/base/util/Size;->set(II)V
    .line 166
    iput-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->y:Z
    return-void
.end method
.method private c()Z
    .registers 7
    .line 475
    :try_start_0
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->l:Lcom/tencent/liteav/videobase/egl/EGLCore;
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/egl/EGLCore;->swapBuffers()V
    :try_end_5
    .catch Lcom/tencent/liteav/videobase/egl/f; {:try_start_0 .. :try_end_5} :catch_7
    const/4 v0, 0x1
    return v0
    :catch_7
    move-exception v0
    .line 478
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->g:Lcom/tencent/liteav/base/b/b;
    const-string v2, "swapBuffers"
    invoke-virtual {v1, v2}, Lcom/tencent/liteav/base/b/b;->a(Ljava/lang/String;)Lcom/tencent/liteav/base/b/a;
    move-result-object v1
    iget-object v2, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    invoke-static {v0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
    move-result-object v3
    const-string v4, "EGLCore swapBuffers failed."
    invoke-virtual {v4, v3}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object v3
    const/4 v4, 0x0
    new-array v5, v4, [Ljava/lang/Object;
    invoke-static {v1, v2, v3, v5}, Lcom/tencent/liteav/base/util/LiteavLog;->e(Lcom/tencent/liteav/base/b/a;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    .line 479
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->d:Lcom/tencent/liteav/videobase/videobase/IVideoReporter;
    sget-object v2, Lcom/tencent/liteav/videobase/videobase/h$c;->g:Lcom/tencent/liteav/videobase/videobase/h$c;
    invoke-static {v0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
    move-result-object v0
    const-string v3, "VideoRender: swapBuffer error:"
    invoke-virtual {v3, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
    move-result-object v0
    invoke-interface {v1, v2, v0}, Lcom/tencent/liteav/videobase/videobase/IVideoReporter;->notifyWarning(Lcom/tencent/liteav/videobase/videobase/h$c;Ljava/lang/String;)V
    return v4
.end method
.method private d()V
    .registers 2
    .line 659
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->n:Lcom/tencent/liteav/videobase/frame/j;
    if-eqz v0, :cond_a
    .line 660
    invoke-virtual {v0}, Lcom/tencent/liteav/videobase/frame/j;->a()V
    const/4 v0, 0x0
    .line 661
    iput-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->n:Lcom/tencent/liteav/videobase/frame/j;
    :cond_a
    return-void
.end method
# virtual methods
.method public final onRequestRedraw(Landroid/graphics/Bitmap;)V
    .registers 2
    .line 620
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
    .line 621
    invoke-static {p0}, Lcom/tencent/liteav/videoconsumer/renderer/u;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final onSurfaceChanged(Landroid/view/Surface;Z)V
    .registers 3
    .line 610
    invoke-static {p0, p1, p2}, Lcom/tencent/liteav/videoconsumer/renderer/t;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Landroid/view/Surface;Z)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final onSurfaceDestroy()V
    .registers 6
    .line 652
    invoke-static {p0}, Lcom/tencent/liteav/videoconsumer/renderer/v;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;)Ljava/lang/Runnable;
    move-result-object v0
    .line 5271
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->e:Lcom/tencent/liteav/base/util/l;
    const-wide/16 v2, 0x7d0
    if-eqz v1, :cond_e
    .line 5272
    invoke-virtual {v1, v0, v2, v3}, Lcom/tencent/liteav/base/util/l;->a(Ljava/lang/Runnable;J)V
    return-void
    .line 5275
    :cond_e
    invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
    move-result-object v1
    iget-object v4, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->c:Lcom/tencent/liteav/base/util/CustomHandler;
    invoke-virtual {v4}, Lcom/tencent/liteav/base/util/CustomHandler;->getLooper()Landroid/os/Looper;
    move-result-object v4
    if-ne v1, v4, :cond_1e
    .line 5276
    invoke-interface {v0}, Ljava/lang/Runnable;->run()V
    return-void
    .line 5278
    :cond_1e
    iget-object v1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->c:Lcom/tencent/liteav/base/util/CustomHandler;
    invoke-virtual {v1, v0, v2, v3}, Lcom/tencent/liteav/base/util/CustomHandler;->runAndWaitDone(Ljava/lang/Runnable;J)Z
    return-void
.end method
.method public final renderFrame(Lcom/tencent/liteav/videobase/frame/PixelFrame;)V
    .registers 4
    .line 232
    iget-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->x:Z
    if-nez v0, :cond_5
    return-void
    :cond_5
    if-nez p1, :cond_f
    .line 236
    iget-object p1, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string v0, "renderFrame pixelFrame is null!"
    invoke-static {p1, v0}, Lcom/tencent/liteav/base/util/LiteavLog;->w(Ljava/lang/String;Ljava/lang/String;)V
    return-void
    .line 239
    :cond_f
    iget-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->y:Z
    if-nez v0, :cond_1d
    const/4 v0, 0x1
    .line 240
    iput-boolean v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->y:Z
    .line 241
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->a:Ljava/lang/String;
    const-string v1, "VideoRender receive first frame!"
    invoke-static {v0, v1}, Lcom/tencent/liteav/base/util/LiteavLog;->d(Ljava/lang/String;Ljava/lang/String;)V
    .line 245
    :cond_1d
    invoke-virtual {p1}, Lcom/tencent/liteav/videobase/frame/PixelFrame;->getGLContext()Ljava/lang/Object;
    .line 246
    iget-object v0, p0, Lcom/tencent/liteav/videoconsumer/renderer/q;->o:Lcom/tencent/liteav/videobase/utils/m;
    invoke-virtual {v0, p1}, Lcom/tencent/liteav/videobase/utils/m;->a(Lcom/tencent/liteav/videobase/frame/PixelFrame;)V
    .line 247
    invoke-static {p0}, Lcom/tencent/liteav/videoconsumer/renderer/ae;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final setDisplayView(Lcom/tencent/liteav/videobase/videobase/DisplayTarget;Z)V
    .registers 3
    .line 175
    invoke-static {p0, p1, p2}, Lcom/tencent/liteav/videoconsumer/renderer/y;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videobase/videobase/DisplayTarget;Z)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final setHorizontalMirror(Z)V
    .registers 2
    .line 212
    invoke-static {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/ac;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Z)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final setRenderRotation(Lcom/tencent/liteav/videobase/utils/Rotation;)V
    .registers 2
    .line 202
    invoke-static {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/ab;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videobase/utils/Rotation;)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final setScaleType(Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;)V
    .registers 2
    .line 192
    invoke-static {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/aa;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videobase/base/GLConstants$GLScaleType;)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final setVerticalMirror(Z)V
    .registers 2
    .line 222
    invoke-static {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/ad;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Z)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final start(Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener;)V
    .registers 2
    .line 128
    invoke-static {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/r;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videoconsumer/renderer/VideoRenderListener;)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final stop(Z)V
    .registers 2
    .line 145
    invoke-static {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/x;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Z)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method
.method public final takeSnapshot(Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;)V
    .registers 2
    .line 184
    invoke-static {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/z;->a(Lcom/tencent/liteav/videoconsumer/renderer/q;Lcom/tencent/liteav/videobase/base/TakeSnapshotListener;)Ljava/lang/Runnable;
    move-result-object p1
    invoke-direct {p0, p1}, Lcom/tencent/liteav/videoconsumer/renderer/q;->a(Ljava/lang/Runnable;)V
    return-void
.end method