DefaultRenderersFactory.smali
.class public Lcom/google/android/exoplayer2/DefaultRenderersFactory;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/android/exoplayer2/RenderersFactory;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/android/exoplayer2/DefaultRenderersFactory$ExtensionRendererMode;
}
.end annotation
# static fields
.field public static final DEFAULT_ALLOWED_VIDEO_JOINING_TIME_MS:J = 0x1388L
.field public static final EXTENSION_RENDERER_MODE_OFF:I = 0x0
.field public static final EXTENSION_RENDERER_MODE_ON:I = 0x1
.field public static final EXTENSION_RENDERER_MODE_PREFER:I = 0x2
.field protected static final MAX_DROPPED_VIDEO_FRAME_COUNT_TO_NOTIFY:I = 0x32
.field private static final TAG:Ljava/lang/String; = "DefaultRenderersFactory"
# instance fields
.field private final allowedVideoJoiningTimeMs:J
.field private final context:Landroid/content/Context;
.field private final drmSessionManager:Lcom/google/android/exoplayer2/drm/DrmSessionManager;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/android/exoplayer2/drm/DrmSessionManager<",
"Lcom/google/android/exoplayer2/drm/FrameworkMediaCrypto;",
">;"
}
.end annotation
.end field
.field private final extensionRendererMode:I
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 3
const/4 v0, 0x0
.line 93
invoke-direct {p0, p1, v0}, Lcom/google/android/exoplayer2/DefaultRenderersFactory;-><init>(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;)V
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/exoplayer2/drm/DrmSessionManager<",
"Lcom/google/android/exoplayer2/drm/FrameworkMediaCrypto;",
">;)V"
}
.end annotation
const/4 v0, 0x0
.line 103
invoke-direct {p0, p1, p2, v0}, Lcom/google/android/exoplayer2/DefaultRenderersFactory;-><init>(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;I)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;I)V
.registers 10
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/exoplayer2/drm/DrmSessionManager<",
"Lcom/google/android/exoplayer2/drm/FrameworkMediaCrypto;",
">;I)V"
}
.end annotation
const-wide/16 v4, 0x1388
move-object v0, p0
move-object v1, p1
move-object v2, p2
move v3, p3
.line 117
invoke-direct/range {v0 .. v5}, Lcom/google/android/exoplayer2/DefaultRenderersFactory;-><init>(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;IJ)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;IJ)V
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/exoplayer2/drm/DrmSessionManager<",
"Lcom/google/android/exoplayer2/drm/FrameworkMediaCrypto;",
">;IJ)V"
}
.end annotation
.line 132
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 133
iput-object p1, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->context:Landroid/content/Context;
.line 134
iput-object p2, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->drmSessionManager:Lcom/google/android/exoplayer2/drm/DrmSessionManager;
.line 135
iput p3, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->extensionRendererMode:I
.line 136
iput-wide p4, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->allowedVideoJoiningTimeMs:J
return-void
.end method
# virtual methods
.method protected buildAudioProcessors()[Lcom/google/android/exoplayer2/audio/AudioProcessor;
.registers 2
const/4 v0, 0x0
new-array v0, v0, [Lcom/google/android/exoplayer2/audio/AudioProcessor;
return-object v0
.end method
.method protected buildAudioRenderers(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;[Lcom/google/android/exoplayer2/audio/AudioProcessor;Landroid/os/Handler;Lcom/google/android/exoplayer2/audio/AudioRendererEventListener;ILjava/util/ArrayList;)V
.registers 20
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/exoplayer2/drm/DrmSessionManager<",
"Lcom/google/android/exoplayer2/drm/FrameworkMediaCrypto;",
">;[",
"Lcom/google/android/exoplayer2/audio/AudioProcessor;",
"Landroid/os/Handler;",
"Lcom/google/android/exoplayer2/audio/AudioRendererEventListener;",
"I",
"Ljava/util/ArrayList<",
"Lcom/google/android/exoplayer2/Renderer;",
">;)V"
}
.end annotation
move/from16 v0, p6
move-object/from16 v9, p7
const-string v10, "DefaultRenderersFactory"
.line 221
new-instance v11, Lcom/google/android/exoplayer2/audio/MediaCodecAudioRenderer;
sget-object v2, Lcom/google/android/exoplayer2/mediacodec/MediaCodecSelector;->DEFAULT:Lcom/google/android/exoplayer2/mediacodec/MediaCodecSelector;
.line 222
invoke-static {p1}, Lcom/google/android/exoplayer2/audio/AudioCapabilities;->getCapabilities(Landroid/content/Context;)Lcom/google/android/exoplayer2/audio/AudioCapabilities;
move-result-object v7
const/4 v4, 0x1
move-object v1, v11
move-object v3, p2
move-object/from16 v5, p4
move-object/from16 v6, p5
move-object v8, p3
invoke-direct/range {v1 .. v8}, Lcom/google/android/exoplayer2/audio/MediaCodecAudioRenderer;-><init>(Lcom/google/android/exoplayer2/mediacodec/MediaCodecSelector;Lcom/google/android/exoplayer2/drm/DrmSessionManager;ZLandroid/os/Handler;Lcom/google/android/exoplayer2/audio/AudioRendererEventListener;Lcom/google/android/exoplayer2/audio/AudioCapabilities;[Lcom/google/android/exoplayer2/audio/AudioProcessor;)V
.line 221
invoke-virtual {v9, v11}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
if-nez v0, :cond_1f
return-void
.line 227
:cond_1f
invoke-virtual/range {p7 .. p7}, Ljava/util/ArrayList;->size()I
move-result v1
const/4 v2, 0x2
if-ne v0, v2, :cond_28
add-int/lit8 v1, v1, -0x1
:cond_28
const/4 v0, 0x0
const/4 v3, 0x3
const/4 v4, 0x1
:try_start_2b
const-string v5, "com.google.android.exoplayer2.ext.opus.LibopusAudioRenderer"
.line 234
invoke-static {v5}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v5
new-array v6, v3, [Ljava/lang/Class;
.line 235
const-class v7, Landroid/os/Handler;
aput-object v7, v6, v0
const-class v7, Lcom/google/android/exoplayer2/audio/AudioRendererEventListener;
aput-object v7, v6, v4
const-class v7, [Lcom/google/android/exoplayer2/audio/AudioProcessor;
aput-object v7, v6, v2
invoke-virtual {v5, v6}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v5
new-array v6, v3, [Ljava/lang/Object;
aput-object p4, v6, v0
aput-object p5, v6, v4
aput-object p3, v6, v2
.line 237
invoke-virtual {v5, v6}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v5
check-cast v5, Lcom/google/android/exoplayer2/Renderer;
:try_end_51
.catch Ljava/lang/ClassNotFoundException; {:try_start_2b .. :try_end_51} :catch_65
.catch Ljava/lang/Exception; {:try_start_2b .. :try_end_51} :catch_5e
add-int/lit8 v6, v1, 0x1
.line 239
:try_start_53
invoke-virtual {v9, v1, v5}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
const-string v1, "Loaded LibopusAudioRenderer."
.line 240
invoke-static {v10, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
:try_end_5b
.catch Ljava/lang/ClassNotFoundException; {:try_start_53 .. :try_end_5b} :catch_5c
.catch Ljava/lang/Exception; {:try_start_53 .. :try_end_5b} :catch_5e
goto :goto_66
:catch_5c
move v1, v6
goto :goto_65
:catch_5e
move-exception v0
.line 244
new-instance v1, Ljava/lang/RuntimeException;
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v1
:catch_65
:goto_65
move v6, v1
:goto_66
:try_start_66
const-string v1, "com.google.android.exoplayer2.ext.flac.LibflacAudioRenderer"
.line 249
invoke-static {v1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v1
new-array v5, v3, [Ljava/lang/Class;
.line 250
const-class v7, Landroid/os/Handler;
aput-object v7, v5, v0
const-class v7, Lcom/google/android/exoplayer2/audio/AudioRendererEventListener;
aput-object v7, v5, v4
const-class v7, [Lcom/google/android/exoplayer2/audio/AudioProcessor;
aput-object v7, v5, v2
invoke-virtual {v1, v5}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v1
new-array v5, v3, [Ljava/lang/Object;
aput-object p4, v5, v0
aput-object p5, v5, v4
aput-object p3, v5, v2
.line 252
invoke-virtual {v1, v5}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/google/android/exoplayer2/Renderer;
:try_end_8c
.catch Ljava/lang/ClassNotFoundException; {:try_start_66 .. :try_end_8c} :catch_a0
.catch Ljava/lang/Exception; {:try_start_66 .. :try_end_8c} :catch_99
add-int/lit8 v5, v6, 0x1
.line 254
:try_start_8e
invoke-virtual {v9, v6, v1}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
const-string v1, "Loaded LibflacAudioRenderer."
.line 255
invoke-static {v10, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
:try_end_96
.catch Ljava/lang/ClassNotFoundException; {:try_start_8e .. :try_end_96} :catch_97
.catch Ljava/lang/Exception; {:try_start_8e .. :try_end_96} :catch_99
goto :goto_a1
:catch_97
move v6, v5
goto :goto_a0
:catch_99
move-exception v0
.line 259
new-instance v1, Ljava/lang/RuntimeException;
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v1
:catch_a0
:goto_a0
move v5, v6
:goto_a1
:try_start_a1
const-string v1, "com.google.android.exoplayer2.ext.ffmpeg.FfmpegAudioRenderer"
.line 264
invoke-static {v1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v1
new-array v6, v3, [Ljava/lang/Class;
.line 265
const-class v7, Landroid/os/Handler;
aput-object v7, v6, v0
const-class v7, Lcom/google/android/exoplayer2/audio/AudioRendererEventListener;
aput-object v7, v6, v4
const-class v7, [Lcom/google/android/exoplayer2/audio/AudioProcessor;
aput-object v7, v6, v2
invoke-virtual {v1, v6}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v1
new-array v3, v3, [Ljava/lang/Object;
aput-object p4, v3, v0
aput-object p5, v3, v4
aput-object p3, v3, v2
.line 267
invoke-virtual {v1, v3}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/exoplayer2/Renderer;
.line 269
invoke-virtual {v9, v5, v0}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
const-string v0, "Loaded FfmpegAudioRenderer."
.line 270
invoke-static {v10, v0}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
:try_end_cf
.catch Ljava/lang/ClassNotFoundException; {:try_start_a1 .. :try_end_cf} :catch_d7
.catch Ljava/lang/Exception; {:try_start_a1 .. :try_end_cf} :catch_d0
return-void
:catch_d0
move-exception v0
.line 274
new-instance v1, Ljava/lang/RuntimeException;
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v1
:catch_d7
return-void
.end method
.method protected buildMetadataRenderers(Landroid/content/Context;Lcom/google/android/exoplayer2/metadata/MetadataOutput;Landroid/os/Looper;ILjava/util/ArrayList;)V
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/exoplayer2/metadata/MetadataOutput;",
"Landroid/os/Looper;",
"I",
"Ljava/util/ArrayList<",
"Lcom/google/android/exoplayer2/Renderer;",
">;)V"
}
.end annotation
.line 306
new-instance p1, Lcom/google/android/exoplayer2/metadata/MetadataRenderer;
invoke-direct {p1, p2, p3}, Lcom/google/android/exoplayer2/metadata/MetadataRenderer;-><init>(Lcom/google/android/exoplayer2/metadata/MetadataOutput;Landroid/os/Looper;)V
invoke-virtual {p5, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method protected buildMiscellaneousRenderers(Landroid/content/Context;Landroid/os/Handler;ILjava/util/ArrayList;)V
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Landroid/os/Handler;",
"I",
"Ljava/util/ArrayList<",
"Lcom/google/android/exoplayer2/Renderer;",
">;)V"
}
.end annotation
return-void
.end method
.method protected buildTextRenderers(Landroid/content/Context;Lcom/google/android/exoplayer2/text/TextOutput;Landroid/os/Looper;ILjava/util/ArrayList;)V
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/exoplayer2/text/TextOutput;",
"Landroid/os/Looper;",
"I",
"Ljava/util/ArrayList<",
"Lcom/google/android/exoplayer2/Renderer;",
">;)V"
}
.end annotation
.line 291
new-instance p1, Lcom/google/android/exoplayer2/text/TextRenderer;
invoke-direct {p1, p2, p3}, Lcom/google/android/exoplayer2/text/TextRenderer;-><init>(Lcom/google/android/exoplayer2/text/TextOutput;Landroid/os/Looper;)V
invoke-virtual {p5, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method protected buildVideoRenderers(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;JLandroid/os/Handler;Lcom/google/android/exoplayer2/video/VideoRendererEventListener;ILjava/util/ArrayList;)V
.registers 22
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/exoplayer2/drm/DrmSessionManager<",
"Lcom/google/android/exoplayer2/drm/FrameworkMediaCrypto;",
">;J",
"Landroid/os/Handler;",
"Lcom/google/android/exoplayer2/video/VideoRendererEventListener;",
"I",
"Ljava/util/ArrayList<",
"Lcom/google/android/exoplayer2/Renderer;",
">;)V"
}
.end annotation
move/from16 v0, p7
move-object/from16 v1, p8
.line 175
new-instance v12, Lcom/google/android/exoplayer2/video/MediaCodecVideoRenderer;
sget-object v4, Lcom/google/android/exoplayer2/mediacodec/MediaCodecSelector;->DEFAULT:Lcom/google/android/exoplayer2/mediacodec/MediaCodecSelector;
const/4 v8, 0x0
const/16 v11, 0x32
move-object v2, v12
move-object v3, p1
move-wide/from16 v5, p3
move-object v7, p2
move-object/from16 v9, p5
move-object/from16 v10, p6
invoke-direct/range {v2 .. v11}, Lcom/google/android/exoplayer2/video/MediaCodecVideoRenderer;-><init>(Landroid/content/Context;Lcom/google/android/exoplayer2/mediacodec/MediaCodecSelector;JLcom/google/android/exoplayer2/drm/DrmSessionManager;ZLandroid/os/Handler;Lcom/google/android/exoplayer2/video/VideoRendererEventListener;I)V
invoke-virtual {v1, v12}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
if-nez v0, :cond_1d
return-void
.line 182
:cond_1d
invoke-virtual/range {p8 .. p8}, Ljava/util/ArrayList;->size()I
move-result v2
const/4 v3, 0x2
if-ne v0, v3, :cond_26
add-int/lit8 v2, v2, -0x1
:cond_26
:try_start_26
const-string v0, "com.google.android.exoplayer2.ext.vp9.LibvpxVideoRenderer"
.line 189
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
const/4 v4, 0x5
new-array v5, v4, [Ljava/lang/Class;
.line 190
sget-object v6, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
const/4 v7, 0x0
aput-object v6, v5, v7
sget-object v6, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
const/4 v8, 0x1
aput-object v6, v5, v8
const-class v6, Landroid/os/Handler;
aput-object v6, v5, v3
const-class v6, Lcom/google/android/exoplayer2/video/VideoRendererEventListener;
const/4 v9, 0x3
aput-object v6, v5, v9
sget-object v6, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
const/4 v10, 0x4
aput-object v6, v5, v10
invoke-virtual {v0, v5}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v0
new-array v4, v4, [Ljava/lang/Object;
.line 192
sget-object v5, Ljava/lang/Boolean;->TRUE:Ljava/lang/Boolean;
aput-object v5, v4, v7
invoke-static/range {p3 .. p4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v5
aput-object v5, v4, v8
aput-object p5, v4, v3
aput-object p6, v4, v9
const/16 v3, 0x32
.line 193
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
aput-object v3, v4, v10
.line 192
invoke-virtual {v0, v4}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/exoplayer2/Renderer;
.line 194
invoke-virtual {v1, v2, v0}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
const-string v0, "DefaultRenderersFactory"
const-string v1, "Loaded LibvpxVideoRenderer."
.line 195
invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
:try_end_73
.catch Ljava/lang/ClassNotFoundException; {:try_start_26 .. :try_end_73} :catch_7b
.catch Ljava/lang/Exception; {:try_start_26 .. :try_end_73} :catch_74
return-void
:catch_74
move-exception v0
.line 199
new-instance v1, Ljava/lang/RuntimeException;
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v1
:catch_7b
return-void
.end method
.method public createRenderers(Landroid/os/Handler;Lcom/google/android/exoplayer2/video/VideoRendererEventListener;Lcom/google/android/exoplayer2/audio/AudioRendererEventListener;Lcom/google/android/exoplayer2/text/TextOutput;Lcom/google/android/exoplayer2/metadata/MetadataOutput;)[Lcom/google/android/exoplayer2/Renderer;
.registers 16
.line 144
new-instance v9, Ljava/util/ArrayList;
invoke-direct {v9}, Ljava/util/ArrayList;-><init>()V
.line 145
iget-object v1, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->context:Landroid/content/Context;
iget-object v2, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->drmSessionManager:Lcom/google/android/exoplayer2/drm/DrmSessionManager;
iget-wide v3, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->allowedVideoJoiningTimeMs:J
iget v7, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->extensionRendererMode:I
move-object v0, p0
move-object v5, p1
move-object v6, p2
move-object v8, v9
invoke-virtual/range {v0 .. v8}, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->buildVideoRenderers(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;JLandroid/os/Handler;Lcom/google/android/exoplayer2/video/VideoRendererEventListener;ILjava/util/ArrayList;)V
.line 147
iget-object v1, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->context:Landroid/content/Context;
iget-object v2, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->drmSessionManager:Lcom/google/android/exoplayer2/drm/DrmSessionManager;
invoke-virtual {p0}, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->buildAudioProcessors()[Lcom/google/android/exoplayer2/audio/AudioProcessor;
move-result-object v3
iget v6, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->extensionRendererMode:I
move-object v4, p1
move-object v5, p3
move-object v7, v9
invoke-virtual/range {v0 .. v7}, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->buildAudioRenderers(Landroid/content/Context;Lcom/google/android/exoplayer2/drm/DrmSessionManager;[Lcom/google/android/exoplayer2/audio/AudioProcessor;Landroid/os/Handler;Lcom/google/android/exoplayer2/audio/AudioRendererEventListener;ILjava/util/ArrayList;)V
.line 149
iget-object v1, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->context:Landroid/content/Context;
invoke-virtual {p1}, Landroid/os/Handler;->getLooper()Landroid/os/Looper;
move-result-object v3
iget v4, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->extensionRendererMode:I
move-object v2, p4
move-object v5, v9
invoke-virtual/range {v0 .. v5}, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->buildTextRenderers(Landroid/content/Context;Lcom/google/android/exoplayer2/text/TextOutput;Landroid/os/Looper;ILjava/util/ArrayList;)V
.line 151
iget-object v1, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->context:Landroid/content/Context;
invoke-virtual {p1}, Landroid/os/Handler;->getLooper()Landroid/os/Looper;
move-result-object v3
iget v4, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->extensionRendererMode:I
move-object v2, p5
invoke-virtual/range {v0 .. v5}, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->buildMetadataRenderers(Landroid/content/Context;Lcom/google/android/exoplayer2/metadata/MetadataOutput;Landroid/os/Looper;ILjava/util/ArrayList;)V
.line 153
iget-object p2, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->context:Landroid/content/Context;
iget p3, p0, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->extensionRendererMode:I
invoke-virtual {p0, p2, p1, p3, v9}, Lcom/google/android/exoplayer2/DefaultRenderersFactory;->buildMiscellaneousRenderers(Landroid/content/Context;Landroid/os/Handler;ILjava/util/ArrayList;)V
.line 154
invoke-virtual {v9}, Ljava/util/ArrayList;->size()I
move-result p1
new-array p1, p1, [Lcom/google/android/exoplayer2/Renderer;
invoke-virtual {v9, p1}, Ljava/util/ArrayList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object p1
check-cast p1, [Lcom/google/android/exoplayer2/Renderer;
return-object p1
.end method