.class final Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod; .super Ljava/lang/Object; .source "ProgressiveMediaPeriod.java" # interfaces .implements Landroidx/media3/exoplayer/source/MediaPeriod; .implements Landroidx/media3/extractor/ExtractorOutput; .implements Landroidx/media3/exoplayer/upstream/Loader$Callback; .implements Landroidx/media3/exoplayer/upstream/Loader$ReleaseCallback; .implements Landroidx/media3/exoplayer/source/SampleQueue$UpstreamFormatChangedListener; # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$Listener;, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId;, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$SampleStreamImpl;, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable; } .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Ljava/lang/Object;", "Landroidx/media3/exoplayer/source/MediaPeriod;", "Landroidx/media3/extractor/ExtractorOutput;", "Landroidx/media3/exoplayer/upstream/Loader$Callback<", "Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;", ">;", "Landroidx/media3/exoplayer/upstream/Loader$ReleaseCallback;", "Landroidx/media3/exoplayer/source/SampleQueue$UpstreamFormatChangedListener;" } .end annotation # static fields .field private static final DEFAULT_LAST_SAMPLE_DURATION_US:J = 0x2710L .field private static final ICY_FORMAT:Landroidx/media3/common/Format; .field private static final ICY_METADATA_HEADERS:Ljava/util/Map; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/Map<", "Ljava/lang/String;", "Ljava/lang/String;", ">;" } .end annotation .end field # instance fields .field private final allocator:Landroidx/media3/exoplayer/upstream/Allocator; .field private callback:Landroidx/media3/exoplayer/source/MediaPeriod$Callback; .field private final continueLoadingCheckIntervalBytes:J .field private final customCacheKey:Ljava/lang/String; .field private final dataSource:Landroidx/media3/datasource/DataSource; .field private dataType:I .field private final drmEventDispatcher:Landroidx/media3/exoplayer/drm/DrmSessionEventListener$EventDispatcher; .field private final drmSessionManager:Landroidx/media3/exoplayer/drm/DrmSessionManager; .field private durationUs:J .field private enabledTrackCount:I .field private extractedSamplesCountAtStartOfLoad:I .field private final handler:Landroid/os/Handler; .field private haveAudioVideoTracks:Z .field private icyHeaders:Landroidx/media3/extractor/metadata/icy/IcyHeaders; .field private isLengthKnown:Z .field private isLive:Z .field private lastSeekPositionUs:J .field private final listener:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$Listener; .field private final loadCondition:Landroidx/media3/common/util/ConditionVariable; .field private final loadErrorHandlingPolicy:Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy; .field private final loader:Landroidx/media3/exoplayer/upstream/Loader; .field private loadingFinished:Z .field private final maybeFinishPrepareRunnable:Ljava/lang/Runnable; .field private final mediaSourceEventDispatcher:Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher; .field private notifyDiscontinuity:Z .field private final onContinueLoadingRequestedRunnable:Ljava/lang/Runnable; .field private pendingDeferredRetry:Z .field private pendingResetPositionUs:J .field private prepared:Z .field private final progressiveMediaExtractor:Landroidx/media3/exoplayer/source/ProgressiveMediaExtractor; .field private released:Z .field private sampleQueueTrackIds:[Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; .field private sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .field private sampleQueuesBuilt:Z .field private seekMap:Landroidx/media3/extractor/SeekMap; .field private seenFirstTrackSelection:Z .field private trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .field private final uri:Landroid/net/Uri; # direct methods .method public static synthetic $r8$lambda$fRLJj_pvmhUWdElszeJahaiDmb0(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)V .locals 0 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeFinishPrepare()V return-void .end method .method static constructor ()V .locals 2 .line 100 invoke-static {}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->createIcyMetadataHeaders()Ljava/util/Map; move-result-object v0 sput-object v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->ICY_METADATA_HEADERS:Ljava/util/Map; .line 102 new-instance v0, Landroidx/media3/common/Format$Builder; invoke-direct {v0}, Landroidx/media3/common/Format$Builder;->()V const-string v1, "icy" .line 103 invoke-virtual {v0, v1}, Landroidx/media3/common/Format$Builder;->setId(Ljava/lang/String;)Landroidx/media3/common/Format$Builder; move-result-object v0 const-string v1, "application/x-icy" invoke-virtual {v0, v1}, Landroidx/media3/common/Format$Builder;->setSampleMimeType(Ljava/lang/String;)Landroidx/media3/common/Format$Builder; move-result-object v0 invoke-virtual {v0}, Landroidx/media3/common/Format$Builder;->build()Landroidx/media3/common/Format; move-result-object v0 sput-object v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->ICY_FORMAT:Landroidx/media3/common/Format; return-void .end method .method public constructor (Landroid/net/Uri;Landroidx/media3/datasource/DataSource;Landroidx/media3/exoplayer/source/ProgressiveMediaExtractor;Landroidx/media3/exoplayer/drm/DrmSessionManager;Landroidx/media3/exoplayer/drm/DrmSessionEventListener$EventDispatcher;Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy;Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher;Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$Listener;Landroidx/media3/exoplayer/upstream/Allocator;Ljava/lang/String;I)V .locals 0 .line 179 invoke-direct {p0}, Ljava/lang/Object;->()V iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->uri:Landroid/net/Uri; iput-object p2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->dataSource:Landroidx/media3/datasource/DataSource; iput-object p4, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->drmSessionManager:Landroidx/media3/exoplayer/drm/DrmSessionManager; iput-object p5, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->drmEventDispatcher:Landroidx/media3/exoplayer/drm/DrmSessionEventListener$EventDispatcher; iput-object p6, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadErrorHandlingPolicy:Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy; iput-object p7, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->mediaSourceEventDispatcher:Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher; iput-object p8, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->listener:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$Listener; iput-object p9, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->allocator:Landroidx/media3/exoplayer/upstream/Allocator; iput-object p10, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->customCacheKey:Ljava/lang/String; int-to-long p1, p11 iput-wide p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->continueLoadingCheckIntervalBytes:J .line 190 new-instance p1, Landroidx/media3/exoplayer/upstream/Loader; const-string p2, "ProgressiveMediaPeriod" invoke-direct {p1, p2}, Landroidx/media3/exoplayer/upstream/Loader;->(Ljava/lang/String;)V iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; iput-object p3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->progressiveMediaExtractor:Landroidx/media3/exoplayer/source/ProgressiveMediaExtractor; .line 192 new-instance p1, Landroidx/media3/common/util/ConditionVariable; invoke-direct {p1}, Landroidx/media3/common/util/ConditionVariable;->()V iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadCondition:Landroidx/media3/common/util/ConditionVariable; .line 193 new-instance p1, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$$ExternalSyntheticLambda0; invoke-direct {p1, p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$$ExternalSyntheticLambda0;->(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)V iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeFinishPrepareRunnable:Ljava/lang/Runnable; .line 194 new-instance p1, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$$ExternalSyntheticLambda1; invoke-direct {p1, p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$$ExternalSyntheticLambda1;->(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)V iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->onContinueLoadingRequestedRunnable:Ljava/lang/Runnable; .line 200 invoke-static {}, Landroidx/media3/common/util/Util;->createHandlerForCurrentLooper()Landroid/os/Handler; move-result-object p1 iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->handler:Landroid/os/Handler; const/4 p1, 0x0 new-array p2, p1, [Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; iput-object p2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueueTrackIds:[Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; new-array p1, p1, [Landroidx/media3/exoplayer/source/SampleQueue; iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; const-wide p1, -0x7fffffffffffffffL # -4.9E-324 iput-wide p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J iput-wide p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J const/4 p1, 0x1 iput p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->dataType:I return-void .end method .method static synthetic access$1000(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)Ljava/lang/Runnable; .locals 0 .line 73 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->onContinueLoadingRequestedRunnable:Ljava/lang/Runnable; return-object p0 .end method .method static synthetic access$1100(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)Landroid/os/Handler; .locals 0 .line 73 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->handler:Landroid/os/Handler; return-object p0 .end method .method static synthetic access$1200(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;Z)J .locals 0 .line 73 invoke-direct {p0, p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->getLargestQueuedTimestampUs(Z)J move-result-wide p0 return-wide p0 .end method .method static synthetic access$1300()Ljava/util/Map; .locals 1 sget-object v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->ICY_METADATA_HEADERS:Ljava/util/Map; return-object v0 .end method .method static synthetic access$1400(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)Ljava/lang/String; .locals 0 .line 73 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->customCacheKey:Ljava/lang/String; return-object p0 .end method .method static synthetic access$600(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)V .locals 0 .line 73 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->onLengthKnown()V return-void .end method .method static synthetic access$700(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)Landroidx/media3/extractor/metadata/icy/IcyHeaders; .locals 0 .line 73 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->icyHeaders:Landroidx/media3/extractor/metadata/icy/IcyHeaders; return-object p0 .end method .method static synthetic access$702(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;Landroidx/media3/extractor/metadata/icy/IcyHeaders;)Landroidx/media3/extractor/metadata/icy/IcyHeaders; .locals 0 .line 73 iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->icyHeaders:Landroidx/media3/extractor/metadata/icy/IcyHeaders; return-object p1 .end method .method static synthetic access$800()Landroidx/media3/common/Format; .locals 1 sget-object v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->ICY_FORMAT:Landroidx/media3/common/Format; return-object v0 .end method .method static synthetic access$900(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)J .locals 2 .line 73 iget-wide v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->continueLoadingCheckIntervalBytes:J return-wide v0 .end method .method private assertPrepared()V .locals 1 .annotation runtime Lorg/checkerframework/checker/nullness/qual/EnsuresNonNull; value = { "trackState", "seekMap" } .end annotation iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z .line 920 invoke-static {v0}, Landroidx/media3/common/util/Assertions;->checkState(Z)V iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 921 invoke-static {v0}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekMap:Landroidx/media3/extractor/SeekMap; .line 922 invoke-static {p0}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; return-void .end method .method private configureRetry(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;I)Z .locals 6 iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isLengthKnown:Z const/4 v1, 0x1 if-nez v0, :cond_3 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekMap:Landroidx/media3/extractor/SeekMap; if-eqz v0, :cond_0 .line 839 invoke-interface {v0}, Landroidx/media3/extractor/SeekMap;->getDurationUs()J move-result-wide v2 const-wide v4, -0x7fffffffffffffffL # -4.9E-324 cmp-long v0, v2, v4 if-eqz v0, :cond_0 goto :goto_1 :cond_0 iget-boolean p2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z const/4 v0, 0x0 if-eqz p2, :cond_1 .line 844 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->suppressRead()Z move-result p2 if-nez p2, :cond_1 iput-boolean v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingDeferredRetry:Z return v0 :cond_1 iget-boolean p2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z iput-boolean p2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->notifyDiscontinuity:Z const-wide/16 v2, 0x0 iput-wide v2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->lastSeekPositionUs:J iput v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->extractedSamplesCountAtStartOfLoad:I iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 864 array-length p2, p0 :goto_0 if-ge v0, p2, :cond_2 aget-object v4, p0, v0 .line 865 invoke-virtual {v4}, Landroidx/media3/exoplayer/source/SampleQueue;->reset()V add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 867 :cond_2 invoke-static {p1, v2, v3, v2, v3}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$500(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;JJ)V return v1 :cond_3 :goto_1 iput p2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->extractedSamplesCountAtStartOfLoad:I return v1 .end method .method private static createIcyMetadataHeaders()Ljava/util/Map; .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/Map<", "Ljava/lang/String;", "Ljava/lang/String;", ">;" } .end annotation .line 1146 new-instance v0, Ljava/util/HashMap; invoke-direct {v0}, Ljava/util/HashMap;->()V const-string v1, "Icy-MetaData" const-string v2, "1" .line 1147 invoke-interface {v0, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 1150 invoke-static {v0}, Ljava/util/Collections;->unmodifiableMap(Ljava/util/Map;)Ljava/util/Map; move-result-object v0 return-object v0 .end method .method private getExtractedSamplesCount()I .locals 4 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 897 array-length v0, p0 const/4 v1, 0x0 move v2, v1 :goto_0 if-ge v1, v0, :cond_0 aget-object v3, p0, v1 .line 898 invoke-virtual {v3}, Landroidx/media3/exoplayer/source/SampleQueue;->getWriteIndex()I move-result v3 add-int/2addr v2, v3 add-int/lit8 v1, v1, 0x1 goto :goto_0 :cond_0 return v2 .end method .method private getLargestQueuedTimestampUs(Z)J .locals 5 const-wide/high16 v0, -0x8000000000000000L const/4 v2, 0x0 :goto_0 iget-object v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 905 array-length v3, v3 if-ge v2, v3, :cond_2 if-nez p1, :cond_0 iget-object v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 906 invoke-static {v3}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v3 check-cast v3, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; iget-object v3, v3, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->trackEnabledStates:[Z aget-boolean v3, v3, v2 if-eqz v3, :cond_1 :cond_0 iget-object v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 907 aget-object v3, v3, v2 .line 908 invoke-virtual {v3}, Landroidx/media3/exoplayer/source/SampleQueue;->getLargestQueuedTimestampUs()J move-result-wide v3 invoke-static {v0, v1, v3, v4}, Ljava/lang/Math;->max(JJ)J move-result-wide v0 :cond_1 add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_2 return-wide v0 .end method .method private isPendingReset()Z .locals 4 iget-wide v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J const-wide v2, -0x7fffffffffffffffL # -4.9E-324 cmp-long p0, v0, v2 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method private maybeFinishPrepare()V .locals 11 iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->released:Z if-nez v0, :cond_a iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z if-nez v0, :cond_a iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueuesBuilt:Z if-eqz v0, :cond_a iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekMap:Landroidx/media3/extractor/SeekMap; if-nez v0, :cond_0 goto/16 :goto_5 :cond_0 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 750 array-length v1, v0 const/4 v2, 0x0 move v3, v2 :goto_0 if-ge v3, v1, :cond_2 aget-object v4, v0, v3 .line 751 invoke-virtual {v4}, Landroidx/media3/exoplayer/source/SampleQueue;->getUpstreamFormat()Landroidx/media3/common/Format; move-result-object v4 if-nez v4, :cond_1 return-void :cond_1 add-int/lit8 v3, v3, 0x1 goto :goto_0 :cond_2 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadCondition:Landroidx/media3/common/util/ConditionVariable; .line 755 invoke-virtual {v0}, Landroidx/media3/common/util/ConditionVariable;->close()Z iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 756 array-length v0, v0 .line 757 new-array v1, v0, [Landroidx/media3/common/TrackGroup; .line 758 new-array v3, v0, [Z move v4, v2 :goto_1 const/4 v5, 0x1 if-ge v4, v0, :cond_9 iget-object v6, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 760 aget-object v6, v6, v4 invoke-virtual {v6}, Landroidx/media3/exoplayer/source/SampleQueue;->getUpstreamFormat()Landroidx/media3/common/Format; move-result-object v6 invoke-static {v6}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v6 check-cast v6, Landroidx/media3/common/Format; .line 761 iget-object v7, v6, Landroidx/media3/common/Format;->sampleMimeType:Ljava/lang/String; .line 762 invoke-static {v7}, Landroidx/media3/common/MimeTypes;->isAudio(Ljava/lang/String;)Z move-result v8 if-nez v8, :cond_4 .line 763 invoke-static {v7}, Landroidx/media3/common/MimeTypes;->isVideo(Ljava/lang/String;)Z move-result v7 if-eqz v7, :cond_3 goto :goto_2 :cond_3 move v7, v2 goto :goto_3 :cond_4 :goto_2 move v7, v5 .line 764 :goto_3 aput-boolean v7, v3, v4 iget-boolean v9, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->haveAudioVideoTracks:Z or-int/2addr v7, v9 iput-boolean v7, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->haveAudioVideoTracks:Z iget-object v7, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->icyHeaders:Landroidx/media3/extractor/metadata/icy/IcyHeaders; if-eqz v7, :cond_8 if-nez v8, :cond_5 iget-object v9, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueueTrackIds:[Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; .line 768 aget-object v9, v9, v4 iget-boolean v9, v9, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId;->isIcyTrack:Z if-eqz v9, :cond_7 .line 769 :cond_5 iget-object v9, v6, Landroidx/media3/common/Format;->metadata:Landroidx/media3/common/Metadata; if-nez v9, :cond_6 .line 771 new-instance v9, Landroidx/media3/common/Metadata; new-array v10, v5, [Landroidx/media3/common/Metadata$Entry; aput-object v7, v10, v2 invoke-direct {v9, v10}, Landroidx/media3/common/Metadata;->([Landroidx/media3/common/Metadata$Entry;)V goto :goto_4 :cond_6 new-array v10, v5, [Landroidx/media3/common/Metadata$Entry; .line 773 aput-object v7, v10, v2 invoke-virtual {v9, v10}, Landroidx/media3/common/Metadata;->copyWithAppendedEntries([Landroidx/media3/common/Metadata$Entry;)Landroidx/media3/common/Metadata; move-result-object v9 .line 775 :goto_4 invoke-virtual {v6}, Landroidx/media3/common/Format;->buildUpon()Landroidx/media3/common/Format$Builder; move-result-object v6 invoke-virtual {v6, v9}, Landroidx/media3/common/Format$Builder;->setMetadata(Landroidx/media3/common/Metadata;)Landroidx/media3/common/Format$Builder; move-result-object v6 invoke-virtual {v6}, Landroidx/media3/common/Format$Builder;->build()Landroidx/media3/common/Format; move-result-object v6 :cond_7 if-eqz v8, :cond_8 .line 779 iget v8, v6, Landroidx/media3/common/Format;->averageBitrate:I const/4 v9, -0x1 if-ne v8, v9, :cond_8 iget v8, v6, Landroidx/media3/common/Format;->peakBitrate:I if-ne v8, v9, :cond_8 iget v8, v7, Landroidx/media3/extractor/metadata/icy/IcyHeaders;->bitrate:I if-eq v8, v9, :cond_8 .line 783 invoke-virtual {v6}, Landroidx/media3/common/Format;->buildUpon()Landroidx/media3/common/Format$Builder; move-result-object v6 iget v7, v7, Landroidx/media3/extractor/metadata/icy/IcyHeaders;->bitrate:I invoke-virtual {v6, v7}, Landroidx/media3/common/Format$Builder;->setAverageBitrate(I)Landroidx/media3/common/Format$Builder; move-result-object v6 invoke-virtual {v6}, Landroidx/media3/common/Format$Builder;->build()Landroidx/media3/common/Format; move-result-object v6 :cond_8 iget-object v7, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->drmSessionManager:Landroidx/media3/exoplayer/drm/DrmSessionManager; .line 786 invoke-interface {v7, v6}, Landroidx/media3/exoplayer/drm/DrmSessionManager;->getCryptoType(Landroidx/media3/common/Format;)I move-result v7 invoke-virtual {v6, v7}, Landroidx/media3/common/Format;->copyWithCryptoType(I)Landroidx/media3/common/Format; move-result-object v6 .line 787 new-instance v7, Landroidx/media3/common/TrackGroup; invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String; move-result-object v8 new-array v5, v5, [Landroidx/media3/common/Format; aput-object v6, v5, v2 invoke-direct {v7, v8, v5}, Landroidx/media3/common/TrackGroup;->(Ljava/lang/String;[Landroidx/media3/common/Format;)V aput-object v7, v1, v4 add-int/lit8 v4, v4, 0x1 goto/16 :goto_1 .line 789 :cond_9 new-instance v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; new-instance v2, Landroidx/media3/exoplayer/source/TrackGroupArray; invoke-direct {v2, v1}, Landroidx/media3/exoplayer/source/TrackGroupArray;->([Landroidx/media3/common/TrackGroup;)V invoke-direct {v0, v2, v3}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->(Landroidx/media3/exoplayer/source/TrackGroupArray;[Z)V iput-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; iput-boolean v5, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->callback:Landroidx/media3/exoplayer/source/MediaPeriod$Callback; .line 791 invoke-static {v0}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroidx/media3/exoplayer/source/MediaPeriod$Callback; invoke-interface {v0, p0}, Landroidx/media3/exoplayer/source/MediaPeriod$Callback;->onPrepared(Landroidx/media3/exoplayer/source/MediaPeriod;)V :cond_a :goto_5 return-void .end method .method private maybeNotifyDownstreamFormat(I)V .locals 10 .line 510 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->assertPrepared()V iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 511 iget-object v0, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->trackNotifiedDownstreamFormats:[Z .line 512 aget-boolean v1, v0, p1 if-nez v1, :cond_0 iget-object v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 513 iget-object v1, v1, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->tracks:Landroidx/media3/exoplayer/source/TrackGroupArray; invoke-virtual {v1, p1}, Landroidx/media3/exoplayer/source/TrackGroupArray;->get(I)Landroidx/media3/common/TrackGroup; move-result-object v1 const/4 v2, 0x0 invoke-virtual {v1, v2}, Landroidx/media3/common/TrackGroup;->getFormat(I)Landroidx/media3/common/Format; move-result-object v5 iget-object v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->mediaSourceEventDispatcher:Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher; .line 514 iget-object v1, v5, Landroidx/media3/common/Format;->sampleMimeType:Ljava/lang/String; .line 515 invoke-static {v1}, Landroidx/media3/common/MimeTypes;->getTrackType(Ljava/lang/String;)I move-result v4 const/4 v6, 0x0 const/4 v7, 0x0 iget-wide v8, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->lastSeekPositionUs:J .line 514 invoke-virtual/range {v3 .. v9}, Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher;->downstreamFormatChanged(ILandroidx/media3/common/Format;ILjava/lang/Object;J)V const/4 p0, 0x1 .line 520 aput-boolean p0, v0, p1 :cond_0 return-void .end method .method private maybeStartDeferredRetry(I)V .locals 3 .line 525 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->assertPrepared()V iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 526 iget-object v0, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->trackIsAudioVideoFlags:[Z iget-boolean v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingDeferredRetry:Z if-eqz v1, :cond_2 .line 527 aget-boolean v0, v0, p1 if-eqz v0, :cond_2 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; aget-object p1, v0, p1 const/4 v0, 0x0 .line 529 invoke-virtual {p1, v0}, Landroidx/media3/exoplayer/source/SampleQueue;->isReady(Z)Z move-result p1 if-eqz p1, :cond_0 goto :goto_1 :cond_0 const-wide/16 v1, 0x0 iput-wide v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J iput-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingDeferredRetry:Z const/4 p1, 0x1 iput-boolean p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->notifyDiscontinuity:Z iput-wide v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->lastSeekPositionUs:J iput v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->extractedSamplesCountAtStartOfLoad:I iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 537 array-length v1, p1 :goto_0 if-ge v0, v1, :cond_1 aget-object v2, p1, v0 .line 538 invoke-virtual {v2}, Landroidx/media3/exoplayer/source/SampleQueue;->reset()V add-int/lit8 v0, v0, 0x1 goto :goto_0 :cond_1 iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->callback:Landroidx/media3/exoplayer/source/MediaPeriod$Callback; .line 540 invoke-static {p1}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 check-cast p1, Landroidx/media3/exoplayer/source/MediaPeriod$Callback; invoke-interface {p1, p0}, Landroidx/media3/exoplayer/source/MediaPeriod$Callback;->onContinueLoadingRequested(Landroidx/media3/exoplayer/source/SequenceableLoader;)V :cond_2 :goto_1 return-void .end method .method private onLengthKnown()V .locals 2 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->handler:Landroid/os/Handler; .line 712 new-instance v1, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$$ExternalSyntheticLambda2; invoke-direct {v1, p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$$ExternalSyntheticLambda2;->(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;)V invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z return-void .end method .method private prepareTrackOutput(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId;)Landroidx/media3/extractor/TrackOutput; .locals 4 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 716 array-length v0, v0 const/4 v1, 0x0 :goto_0 if-ge v1, v0, :cond_1 iget-object v2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueueTrackIds:[Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; .line 718 aget-object v2, v2, v1 invoke-virtual {p1, v2}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId;->equals(Ljava/lang/Object;)Z move-result v2 if-eqz v2, :cond_0 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 719 aget-object p0, p0, v1 return-object p0 :cond_0 add-int/lit8 v1, v1, 0x1 goto :goto_0 :cond_1 iget-object v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->allocator:Landroidx/media3/exoplayer/upstream/Allocator; iget-object v2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->drmSessionManager:Landroidx/media3/exoplayer/drm/DrmSessionManager; iget-object v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->drmEventDispatcher:Landroidx/media3/exoplayer/drm/DrmSessionEventListener$EventDispatcher; .line 723 invoke-static {v1, v2, v3}, Landroidx/media3/exoplayer/source/SampleQueue;->createWithDrm(Landroidx/media3/exoplayer/upstream/Allocator;Landroidx/media3/exoplayer/drm/DrmSessionManager;Landroidx/media3/exoplayer/drm/DrmSessionEventListener$EventDispatcher;)Landroidx/media3/exoplayer/source/SampleQueue; move-result-object v1 .line 724 invoke-virtual {v1, p0}, Landroidx/media3/exoplayer/source/SampleQueue;->setUpstreamFormatChangeListener(Landroidx/media3/exoplayer/source/SampleQueue$UpstreamFormatChangedListener;)V iget-object v2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueueTrackIds:[Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; add-int/lit8 v3, v0, 0x1 .line 726 invoke-static {v2, v3}, Ljava/util/Arrays;->copyOf([Ljava/lang/Object;I)[Ljava/lang/Object; move-result-object v2 check-cast v2, [Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; .line 727 aput-object p1, v2, v0 .line 728 invoke-static {v2}, Landroidx/media3/common/util/Util;->castNonNullTypeArray([Ljava/lang/Object;)[Ljava/lang/Object; move-result-object p1 check-cast p1, [Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueueTrackIds:[Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 729 invoke-static {p1, v3}, Ljava/util/Arrays;->copyOf([Ljava/lang/Object;I)[Ljava/lang/Object; move-result-object p1 check-cast p1, [Landroidx/media3/exoplayer/source/SampleQueue; .line 730 aput-object v1, p1, v0 .line 731 invoke-static {p1}, Landroidx/media3/common/util/Util;->castNonNullTypeArray([Ljava/lang/Object;)[Ljava/lang/Object; move-result-object p1 check-cast p1, [Landroidx/media3/exoplayer/source/SampleQueue; iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; return-object v1 .end method .method private seekInsideBufferUs([ZJ)Z .locals 4 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 880 array-length v0, v0 const/4 v1, 0x0 move v2, v1 :goto_0 if-ge v2, v0, :cond_2 iget-object v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 882 aget-object v3, v3, v2 .line 883 invoke-virtual {v3, p2, p3, v1}, Landroidx/media3/exoplayer/source/SampleQueue;->seekTo(JZ)Z move-result v3 if-nez v3, :cond_1 .line 888 aget-boolean v3, p1, v2 if-nez v3, :cond_0 iget-boolean v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->haveAudioVideoTracks:Z if-nez v3, :cond_1 :cond_0 return v1 :cond_1 add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_2 const/4 p0, 0x1 return p0 .end method .method private setSeekMap(Landroidx/media3/extractor/SeekMap;)V .locals 6 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->icyHeaders:Landroidx/media3/extractor/metadata/icy/IcyHeaders; const-wide v1, -0x7fffffffffffffffL # -4.9E-324 if-nez v0, :cond_0 move-object v0, p1 goto :goto_0 .line 736 :cond_0 new-instance v0, Landroidx/media3/extractor/SeekMap$Unseekable; invoke-direct {v0, v1, v2}, Landroidx/media3/extractor/SeekMap$Unseekable;->(J)V :goto_0 iput-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekMap:Landroidx/media3/extractor/SeekMap; .line 737 invoke-interface {p1}, Landroidx/media3/extractor/SeekMap;->getDurationUs()J move-result-wide v3 iput-wide v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isLengthKnown:Z const/4 v3, 0x1 if-nez v0, :cond_1 .line 738 invoke-interface {p1}, Landroidx/media3/extractor/SeekMap;->getDurationUs()J move-result-wide v4 cmp-long v0, v4, v1 if-nez v0, :cond_1 move v0, v3 goto :goto_1 :cond_1 const/4 v0, 0x0 :goto_1 iput-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isLive:Z if-eqz v0, :cond_2 const/4 v3, 0x7 :cond_2 iput v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->dataType:I iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->listener:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$Listener; iget-wide v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J .line 740 invoke-interface {p1}, Landroidx/media3/extractor/SeekMap;->isSeekable()Z move-result p1 iget-boolean v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isLive:Z invoke-interface {v0, v1, v2, p1, v3}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$Listener;->onSourceInfoRefreshed(JZZ)V iget-boolean p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z if-nez p1, :cond_3 .line 742 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeFinishPrepare()V :cond_3 return-void .end method .method private startLoading()V .locals 26 move-object/from16 v7, p0 .line 795 new-instance v8, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable; iget-object v2, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->uri:Landroid/net/Uri; iget-object v3, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->dataSource:Landroidx/media3/datasource/DataSource; iget-object v4, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->progressiveMediaExtractor:Landroidx/media3/exoplayer/source/ProgressiveMediaExtractor; iget-object v6, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadCondition:Landroidx/media3/common/util/ConditionVariable; move-object v0, v8 move-object/from16 v1, p0 move-object/from16 v5, p0 invoke-direct/range {v0 .. v6}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;Landroid/net/Uri;Landroidx/media3/datasource/DataSource;Landroidx/media3/exoplayer/source/ProgressiveMediaExtractor;Landroidx/media3/extractor/ExtractorOutput;Landroidx/media3/common/util/ConditionVariable;)V iget-boolean v0, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z if-eqz v0, :cond_2 .line 799 invoke-direct/range {p0 .. p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isPendingReset()Z move-result v0 invoke-static {v0}, Landroidx/media3/common/util/Assertions;->checkState(Z)V iget-wide v0, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J const-wide v2, -0x7fffffffffffffffL # -4.9E-324 cmp-long v4, v0, v2 if-eqz v4, :cond_0 iget-wide v4, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J cmp-long v0, v4, v0 if-lez v0, :cond_0 const/4 v0, 0x1 iput-boolean v0, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z iput-wide v2, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J return-void :cond_0 iget-object v0, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekMap:Landroidx/media3/extractor/SeekMap; .line 806 invoke-static {v0}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroidx/media3/extractor/SeekMap; iget-wide v4, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J invoke-interface {v0, v4, v5}, Landroidx/media3/extractor/SeekMap;->getSeekPoints(J)Landroidx/media3/extractor/SeekMap$SeekPoints; move-result-object v0 iget-object v0, v0, Landroidx/media3/extractor/SeekMap$SeekPoints;->first:Landroidx/media3/extractor/SeekPoint; iget-wide v0, v0, Landroidx/media3/extractor/SeekPoint;->position:J iget-wide v4, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J .line 805 invoke-static {v8, v0, v1, v4, v5}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$500(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;JJ)V iget-object v0, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 808 array-length v1, v0 const/4 v4, 0x0 :goto_0 if-ge v4, v1, :cond_1 aget-object v5, v0, v4 iget-wide v9, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J .line 809 invoke-virtual {v5, v9, v10}, Landroidx/media3/exoplayer/source/SampleQueue;->setStartTimeUs(J)V add-int/lit8 v4, v4, 0x1 goto :goto_0 :cond_1 iput-wide v2, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J .line 813 :cond_2 invoke-direct/range {p0 .. p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->getExtractedSamplesCount()I move-result v0 iput v0, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->extractedSamplesCountAtStartOfLoad:I iget-object v0, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; iget-object v1, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadErrorHandlingPolicy:Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy; iget v2, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->dataType:I .line 816 invoke-interface {v1, v2}, Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy;->getMinimumLoadableRetryCount(I)I move-result v1 .line 815 invoke-virtual {v0, v8, v7, v1}, Landroidx/media3/exoplayer/upstream/Loader;->startLoading(Landroidx/media3/exoplayer/upstream/Loader$Loadable;Landroidx/media3/exoplayer/upstream/Loader$Callback;I)J move-result-wide v13 .line 817 invoke-static {v8}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$300(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)Landroidx/media3/datasource/DataSpec; move-result-object v12 iget-object v15, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->mediaSourceEventDispatcher:Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher; .line 818 new-instance v16, Landroidx/media3/exoplayer/source/LoadEventInfo; .line 819 invoke-static {v8}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$200(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v10 move-object/from16 v9, v16 invoke-direct/range {v9 .. v14}, Landroidx/media3/exoplayer/source/LoadEventInfo;->(JLandroidx/media3/datasource/DataSpec;J)V const/16 v17, 0x1 const/16 v18, -0x1 const/16 v19, 0x0 const/16 v20, 0x0 const/16 v21, 0x0 .line 825 invoke-static {v8}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$400(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v22 iget-wide v0, v7, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J move-wide/from16 v24, v0 .line 818 invoke-virtual/range {v15 .. v25}, Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher;->loadStarted(Landroidx/media3/exoplayer/source/LoadEventInfo;IILandroidx/media3/common/Format;ILjava/lang/Object;JJ)V return-void .end method .method private suppressRead()Z .locals 1 iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->notifyDiscontinuity:Z if-nez v0, :cond_1 .line 544 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isPendingReset()Z move-result p0 if-eqz p0, :cond_0 goto :goto_0 :cond_0 const/4 p0, 0x0 goto :goto_1 :cond_1 :goto_0 const/4 p0, 0x1 :goto_1 return p0 .end method # virtual methods .method public continueLoading(J)Z .locals 0 iget-boolean p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z if-nez p1, :cond_2 iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; .line 349 invoke-virtual {p1}, Landroidx/media3/exoplayer/upstream/Loader;->hasFatalError()Z move-result p1 if-nez p1, :cond_2 iget-boolean p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingDeferredRetry:Z if-nez p1, :cond_2 iget-boolean p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z if-eqz p1, :cond_0 iget p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->enabledTrackCount:I if-nez p1, :cond_0 goto :goto_0 :cond_0 iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadCondition:Landroidx/media3/common/util/ConditionVariable; .line 354 invoke-virtual {p1}, Landroidx/media3/common/util/ConditionVariable;->open()Z move-result p1 iget-object p2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; .line 355 invoke-virtual {p2}, Landroidx/media3/exoplayer/upstream/Loader;->isLoading()Z move-result p2 if-nez p2, :cond_1 .line 356 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->startLoading()V const/4 p1, 0x1 :cond_1 return p1 :cond_2 :goto_0 const/4 p0, 0x0 return p0 .end method .method public discardBuffer(JZ)V .locals 5 .line 330 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->assertPrepared()V .line 331 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isPendingReset()Z move-result v0 if-eqz v0, :cond_0 return-void :cond_0 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 334 iget-object v0, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->trackEnabledStates:[Z iget-object v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 335 array-length v1, v1 const/4 v2, 0x0 :goto_0 if-ge v2, v1, :cond_1 iget-object v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 337 aget-object v3, v3, v2 aget-boolean v4, v0, v2 invoke-virtual {v3, p1, p2, p3, v4}, Landroidx/media3/exoplayer/source/SampleQueue;->discardTo(JZZ)V add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_1 return-void .end method .method public endTracks()V .locals 1 const/4 v0, 0x1 iput-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueuesBuilt:Z iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->handler:Landroid/os/Handler; iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeFinishPrepareRunnable:Ljava/lang/Runnable; .line 688 invoke-virtual {v0, p0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z return-void .end method .method public getAdjustedSeekPositionUs(JLandroidx/media3/exoplayer/SeekParameters;)J .locals 8 .line 453 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->assertPrepared()V iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekMap:Landroidx/media3/extractor/SeekMap; .line 454 invoke-interface {v0}, Landroidx/media3/extractor/SeekMap;->isSeekable()Z move-result v0 if-nez v0, :cond_0 const-wide/16 p0, 0x0 return-wide p0 :cond_0 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekMap:Landroidx/media3/extractor/SeekMap; .line 458 invoke-interface {p0, p1, p2}, Landroidx/media3/extractor/SeekMap;->getSeekPoints(J)Landroidx/media3/extractor/SeekMap$SeekPoints; move-result-object p0 .line 459 iget-object v0, p0, Landroidx/media3/extractor/SeekMap$SeekPoints;->first:Landroidx/media3/extractor/SeekPoint; iget-wide v4, v0, Landroidx/media3/extractor/SeekPoint;->timeUs:J iget-object p0, p0, Landroidx/media3/extractor/SeekMap$SeekPoints;->second:Landroidx/media3/extractor/SeekPoint; iget-wide v6, p0, Landroidx/media3/extractor/SeekPoint;->timeUs:J move-object v1, p3 move-wide v2, p1 invoke-virtual/range {v1 .. v7}, Landroidx/media3/exoplayer/SeekParameters;->resolveSeekPositionUs(JJJ)J move-result-wide p0 return-wide p0 .end method .method public getBufferedPositionUs()J .locals 11 .line 384 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->assertPrepared()V iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z const-wide/high16 v1, -0x8000000000000000L if-nez v0, :cond_7 iget v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->enabledTrackCount:I if-nez v0, :cond_0 goto :goto_1 .line 387 :cond_0 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isPendingReset()Z move-result v0 if-eqz v0, :cond_1 iget-wide v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J return-wide v0 :cond_1 iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->haveAudioVideoTracks:Z const/4 v3, 0x0 const-wide v4, 0x7fffffffffffffffL if-eqz v0, :cond_3 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 393 array-length v0, v0 move v6, v3 move-wide v7, v4 :goto_0 if-ge v6, v0, :cond_4 iget-object v9, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 395 iget-object v9, v9, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->trackIsAudioVideoFlags:[Z aget-boolean v9, v9, v6 if-eqz v9, :cond_2 iget-object v9, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; iget-object v9, v9, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->trackEnabledStates:[Z aget-boolean v9, v9, v6 if-eqz v9, :cond_2 iget-object v9, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; aget-object v9, v9, v6 .line 397 invoke-virtual {v9}, Landroidx/media3/exoplayer/source/SampleQueue;->isLastSampleQueued()Z move-result v9 if-nez v9, :cond_2 iget-object v9, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 398 aget-object v9, v9, v6 .line 399 invoke-virtual {v9}, Landroidx/media3/exoplayer/source/SampleQueue;->getLargestQueuedTimestampUs()J move-result-wide v9 invoke-static {v7, v8, v9, v10}, Ljava/lang/Math;->min(JJ)J move-result-wide v7 :cond_2 add-int/lit8 v6, v6, 0x1 goto :goto_0 :cond_3 move-wide v7, v4 :cond_4 cmp-long v0, v7, v4 if-nez v0, :cond_5 .line 404 invoke-direct {p0, v3}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->getLargestQueuedTimestampUs(Z)J move-result-wide v7 :cond_5 cmp-long v0, v7, v1 if-nez v0, :cond_6 iget-wide v7, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->lastSeekPositionUs:J :cond_6 return-wide v7 :cond_7 :goto_1 return-wide v1 .end method .method public getNextLoadPositionUs()J .locals 2 .line 369 invoke-virtual {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->getBufferedPositionUs()J move-result-wide v0 return-wide v0 .end method .method public getTrackGroups()Landroidx/media3/exoplayer/source/TrackGroupArray; .locals 0 .line 248 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->assertPrepared()V iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 249 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->tracks:Landroidx/media3/exoplayer/source/TrackGroupArray; return-object p0 .end method .method icyTrack()Landroidx/media3/extractor/TrackOutput; .locals 3 .line 699 new-instance v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; const/4 v1, 0x0 const/4 v2, 0x1 invoke-direct {v0, v1, v2}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId;->(IZ)V invoke-direct {p0, v0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepareTrackOutput(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId;)Landroidx/media3/extractor/TrackOutput; move-result-object p0 return-object p0 .end method .method public isLoading()Z .locals 1 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; .line 364 invoke-virtual {v0}, Landroidx/media3/exoplayer/upstream/Loader;->isLoading()Z move-result v0 if-eqz v0, :cond_0 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadCondition:Landroidx/media3/common/util/ConditionVariable; invoke-virtual {p0}, Landroidx/media3/common/util/ConditionVariable;->isOpen()Z move-result p0 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method isReady(I)Z .locals 1 .line 466 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->suppressRead()Z move-result v0 if-nez v0, :cond_0 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; aget-object p1, v0, p1 iget-boolean p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z invoke-virtual {p1, p0}, Landroidx/media3/exoplayer/source/SampleQueue;->isReady(Z)Z move-result p0 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method synthetic lambda$new$0$androidx-media3-exoplayer-source-ProgressiveMediaPeriod()V .locals 1 .line 0 iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->released:Z if-nez v0, :cond_0 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->callback:Landroidx/media3/exoplayer/source/MediaPeriod$Callback; .line 197 invoke-static {v0}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroidx/media3/exoplayer/source/MediaPeriod$Callback; invoke-interface {v0, p0}, Landroidx/media3/exoplayer/source/MediaPeriod$Callback;->onContinueLoadingRequested(Landroidx/media3/exoplayer/source/SequenceableLoader;)V :cond_0 return-void .end method .method synthetic lambda$onLengthKnown$2$androidx-media3-exoplayer-source-ProgressiveMediaPeriod()V .locals 1 .line 0 const/4 v0, 0x1 iput-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isLengthKnown:Z return-void .end method .method synthetic lambda$seekMap$1$androidx-media3-exoplayer-source-ProgressiveMediaPeriod(Landroidx/media3/extractor/SeekMap;)V .locals 0 .line 693 invoke-direct {p0, p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->setSeekMap(Landroidx/media3/extractor/SeekMap;)V return-void .end method .method maybeThrowError()V .locals 2 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; iget-object v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadErrorHandlingPolicy:Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy; iget p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->dataType:I .line 475 invoke-interface {v1, p0}, Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy;->getMinimumLoadableRetryCount(I)I move-result p0 invoke-virtual {v0, p0}, Landroidx/media3/exoplayer/upstream/Loader;->maybeThrowError(I)V return-void .end method .method maybeThrowError(I)V .locals 1 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 470 aget-object p1, v0, p1 invoke-virtual {p1}, Landroidx/media3/exoplayer/source/SampleQueue;->maybeThrowError()V .line 471 invoke-virtual {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeThrowError()V return-void .end method .method public maybeThrowPrepareError()V .locals 1 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 239 invoke-virtual {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeThrowError()V iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z if-eqz v0, :cond_1 iget-boolean p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z if-eqz p0, :cond_0 goto :goto_0 :cond_0 const-string p0, "Loading finished before preparation is complete." const/4 v0, 0x0 .line 241 invoke-static {p0, v0}, Landroidx/media3/common/ParserException;->createForMalformedContainer(Ljava/lang/String;Ljava/lang/Throwable;)Landroidx/media3/common/ParserException; move-result-object p0 throw p0 :cond_1 :goto_0 return-void .end method .method public onLoadCanceled(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;JJZ)V .locals 15 move-object v0, p0 .line 589 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$100(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)Landroidx/media3/datasource/StatsDataSource; move-result-object v1 .line 590 new-instance v14, Landroidx/media3/exoplayer/source/LoadEventInfo; .line 592 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$200(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v3 .line 593 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$300(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)Landroidx/media3/datasource/DataSpec; move-result-object v5 .line 594 invoke-virtual {v1}, Landroidx/media3/datasource/StatsDataSource;->getLastOpenedUri()Landroid/net/Uri; move-result-object v6 .line 595 invoke-virtual {v1}, Landroidx/media3/datasource/StatsDataSource;->getLastResponseHeaders()Ljava/util/Map; move-result-object v7 .line 598 invoke-virtual {v1}, Landroidx/media3/datasource/StatsDataSource;->getBytesRead()J move-result-wide v12 move-object v2, v14 move-wide/from16 v8, p2 move-wide/from16 v10, p4 invoke-direct/range {v2 .. v13}, Landroidx/media3/exoplayer/source/LoadEventInfo;->(JLandroidx/media3/datasource/DataSpec;Landroid/net/Uri;Ljava/util/Map;JJJ)V iget-object v1, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadErrorHandlingPolicy:Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy; .line 599 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$200(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v2 invoke-interface {v1, v2, v3}, Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy;->onLoadTaskConcluded(J)V iget-object v2, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->mediaSourceEventDispatcher:Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher; const/4 v4, 0x1 const/4 v5, -0x1 const/4 v6, 0x0 const/4 v7, 0x0 const/4 v8, 0x0 .line 607 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$400(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v9 iget-wide v11, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J move-object v3, v14 .line 600 invoke-virtual/range {v2 .. v12}, Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher;->loadCanceled(Landroidx/media3/exoplayer/source/LoadEventInfo;IILandroidx/media3/common/Format;ILjava/lang/Object;JJ)V if-nez p6, :cond_1 iget-object v1, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 610 array-length v2, v1 const/4 v3, 0x0 :goto_0 if-ge v3, v2, :cond_0 aget-object v4, v1, v3 .line 611 invoke-virtual {v4}, Landroidx/media3/exoplayer/source/SampleQueue;->reset()V add-int/lit8 v3, v3, 0x1 goto :goto_0 :cond_0 iget v1, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->enabledTrackCount:I if-lez v1, :cond_1 iget-object v1, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->callback:Landroidx/media3/exoplayer/source/MediaPeriod$Callback; .line 614 invoke-static {v1}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/media3/exoplayer/source/MediaPeriod$Callback; invoke-interface {v1, p0}, Landroidx/media3/exoplayer/source/MediaPeriod$Callback;->onContinueLoadingRequested(Landroidx/media3/exoplayer/source/SequenceableLoader;)V :cond_1 return-void .end method .method public bridge synthetic onLoadCanceled(Landroidx/media3/exoplayer/upstream/Loader$Loadable;JJZ)V .locals 0 .line 73 check-cast p1, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable; invoke-virtual/range {p0 .. p6}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->onLoadCanceled(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;JJZ)V return-void .end method .method public onLoadCompleted(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;JJ)V .locals 16 move-object/from16 v0, p0 iget-wide v1, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J const-wide v3, -0x7fffffffffffffffL # -4.9E-324 cmp-long v1, v1, v3 const/4 v2, 0x1 if-nez v1, :cond_1 iget-object v1, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekMap:Landroidx/media3/extractor/SeekMap; if-eqz v1, :cond_1 .line 553 invoke-interface {v1}, Landroidx/media3/extractor/SeekMap;->isSeekable()Z move-result v1 .line 555 invoke-direct {v0, v2}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->getLargestQueuedTimestampUs(Z)J move-result-wide v3 const-wide/high16 v5, -0x8000000000000000L cmp-long v5, v3, v5 if-nez v5, :cond_0 const-wide/16 v3, 0x0 goto :goto_0 :cond_0 const-wide/16 v5, 0x2710 add-long/2addr v3, v5 :goto_0 iput-wide v3, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J iget-object v5, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->listener:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$Listener; iget-boolean v6, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isLive:Z .line 560 invoke-interface {v5, v3, v4, v1, v6}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$Listener;->onSourceInfoRefreshed(JZZ)V .line 562 :cond_1 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$100(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)Landroidx/media3/datasource/StatsDataSource; move-result-object v1 .line 563 new-instance v15, Landroidx/media3/exoplayer/source/LoadEventInfo; .line 565 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$200(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v4 .line 566 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$300(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)Landroidx/media3/datasource/DataSpec; move-result-object v6 .line 567 invoke-virtual {v1}, Landroidx/media3/datasource/StatsDataSource;->getLastOpenedUri()Landroid/net/Uri; move-result-object v7 .line 568 invoke-virtual {v1}, Landroidx/media3/datasource/StatsDataSource;->getLastResponseHeaders()Ljava/util/Map; move-result-object v8 .line 571 invoke-virtual {v1}, Landroidx/media3/datasource/StatsDataSource;->getBytesRead()J move-result-wide v13 move-object v3, v15 move-wide/from16 v9, p2 move-wide/from16 v11, p4 invoke-direct/range {v3 .. v14}, Landroidx/media3/exoplayer/source/LoadEventInfo;->(JLandroidx/media3/datasource/DataSpec;Landroid/net/Uri;Ljava/util/Map;JJJ)V iget-object v1, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadErrorHandlingPolicy:Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy; .line 572 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$200(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v3 invoke-interface {v1, v3, v4}, Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy;->onLoadTaskConcluded(J)V iget-object v3, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->mediaSourceEventDispatcher:Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher; const/4 v5, 0x1 const/4 v6, -0x1 const/4 v7, 0x0 const/4 v8, 0x0 const/4 v9, 0x0 .line 580 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$400(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v10 iget-wide v12, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J move-object v4, v15 .line 573 invoke-virtual/range {v3 .. v13}, Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher;->loadCompleted(Landroidx/media3/exoplayer/source/LoadEventInfo;IILandroidx/media3/common/Format;ILjava/lang/Object;JJ)V iput-boolean v2, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z iget-object v1, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->callback:Landroidx/media3/exoplayer/source/MediaPeriod$Callback; .line 583 invoke-static {v1}, Landroidx/media3/common/util/Assertions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/media3/exoplayer/source/MediaPeriod$Callback; invoke-interface {v1, v0}, Landroidx/media3/exoplayer/source/MediaPeriod$Callback;->onContinueLoadingRequested(Landroidx/media3/exoplayer/source/SequenceableLoader;)V return-void .end method .method public bridge synthetic onLoadCompleted(Landroidx/media3/exoplayer/upstream/Loader$Loadable;JJ)V .locals 0 .line 73 check-cast p1, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable; invoke-virtual/range {p0 .. p5}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->onLoadCompleted(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;JJ)V return-void .end method .method public onLoadError(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;JJLjava/io/IOException;I)Landroidx/media3/exoplayer/upstream/Loader$LoadErrorAction; .locals 25 move-object/from16 v0, p0 .line 626 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$100(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)Landroidx/media3/datasource/StatsDataSource; move-result-object v1 .line 627 new-instance v14, Landroidx/media3/exoplayer/source/LoadEventInfo; .line 629 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$200(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v3 .line 630 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$300(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)Landroidx/media3/datasource/DataSpec; move-result-object v5 .line 631 invoke-virtual {v1}, Landroidx/media3/datasource/StatsDataSource;->getLastOpenedUri()Landroid/net/Uri; move-result-object v6 .line 632 invoke-virtual {v1}, Landroidx/media3/datasource/StatsDataSource;->getLastResponseHeaders()Ljava/util/Map; move-result-object v7 .line 635 invoke-virtual {v1}, Landroidx/media3/datasource/StatsDataSource;->getBytesRead()J move-result-wide v12 move-object v2, v14 move-wide/from16 v8, p2 move-wide/from16 v10, p4 invoke-direct/range {v2 .. v13}, Landroidx/media3/exoplayer/source/LoadEventInfo;->(JLandroidx/media3/datasource/DataSpec;Landroid/net/Uri;Ljava/util/Map;JJJ)V .line 636 new-instance v1, Landroidx/media3/exoplayer/source/MediaLoadData; const/16 v16, 0x1 const/16 v17, -0x1 const/16 v18, 0x0 const/16 v19, 0x0 const/16 v20, 0x0 .line 643 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$400(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v2 invoke-static {v2, v3}, Landroidx/media3/common/util/Util;->usToMs(J)J move-result-wide v21 iget-wide v2, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J .line 644 invoke-static {v2, v3}, Landroidx/media3/common/util/Util;->usToMs(J)J move-result-wide v23 move-object v15, v1 invoke-direct/range {v15 .. v24}, Landroidx/media3/exoplayer/source/MediaLoadData;->(IILandroidx/media3/common/Format;ILjava/lang/Object;JJ)V iget-object v2, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadErrorHandlingPolicy:Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy; .line 646 new-instance v3, Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy$LoadErrorInfo; move-object/from16 v13, p6 move/from16 v4, p7 invoke-direct {v3, v14, v1, v13, v4}, Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy$LoadErrorInfo;->(Landroidx/media3/exoplayer/source/LoadEventInfo;Landroidx/media3/exoplayer/source/MediaLoadData;Ljava/io/IOException;I)V .line 647 invoke-interface {v2, v3}, Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy;->getRetryDelayMsFor(Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy$LoadErrorInfo;)J move-result-wide v1 const-wide v3, -0x7fffffffffffffffL # -4.9E-324 cmp-long v3, v1, v3 const/4 v4, 0x1 if-nez v3, :cond_0 .line 650 sget-object v1, Landroidx/media3/exoplayer/upstream/Loader;->DONT_RETRY_FATAL:Landroidx/media3/exoplayer/upstream/Loader$LoadErrorAction; move-object/from16 v15, p1 goto :goto_1 .line 652 :cond_0 invoke-direct/range {p0 .. p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->getExtractedSamplesCount()I move-result v3 iget v5, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->extractedSamplesCountAtStartOfLoad:I if-le v3, v5, :cond_1 move-object/from16 v15, p1 move v5, v4 goto :goto_0 :cond_1 const/4 v5, 0x0 move-object/from16 v15, p1 .line 655 :goto_0 invoke-direct {v0, v15, v3}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->configureRetry(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;I)Z move-result v3 if-eqz v3, :cond_2 .line 656 invoke-static {v5, v1, v2}, Landroidx/media3/exoplayer/upstream/Loader;->createRetryAction(ZJ)Landroidx/media3/exoplayer/upstream/Loader$LoadErrorAction; move-result-object v1 goto :goto_1 .line 657 :cond_2 sget-object v1, Landroidx/media3/exoplayer/upstream/Loader;->DONT_RETRY:Landroidx/media3/exoplayer/upstream/Loader$LoadErrorAction; .line 660 :goto_1 invoke-virtual {v1}, Landroidx/media3/exoplayer/upstream/Loader$LoadErrorAction;->isRetry()Z move-result v2 xor-int/lit8 v16, v2, 0x1 iget-object v2, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->mediaSourceEventDispatcher:Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher; const/4 v4, 0x1 const/4 v5, -0x1 const/4 v6, 0x0 const/4 v7, 0x0 const/4 v8, 0x0 .line 668 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$400(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v9 iget-wide v11, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->durationUs:J move-object v3, v14 move-object/from16 v13, p6 move/from16 v14, v16 .line 661 invoke-virtual/range {v2 .. v14}, Landroidx/media3/exoplayer/source/MediaSourceEventListener$EventDispatcher;->loadError(Landroidx/media3/exoplayer/source/LoadEventInfo;IILandroidx/media3/common/Format;ILjava/lang/Object;JJLjava/io/IOException;Z)V if-eqz v16, :cond_3 iget-object v0, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadErrorHandlingPolicy:Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy; .line 673 invoke-static/range {p1 .. p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;->access$200(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;)J move-result-wide v2 invoke-interface {v0, v2, v3}, Landroidx/media3/exoplayer/upstream/LoadErrorHandlingPolicy;->onLoadTaskConcluded(J)V :cond_3 return-object v1 .end method .method public bridge synthetic onLoadError(Landroidx/media3/exoplayer/upstream/Loader$Loadable;JJLjava/io/IOException;I)Landroidx/media3/exoplayer/upstream/Loader$LoadErrorAction; .locals 0 .line 73 check-cast p1, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable; invoke-virtual/range {p0 .. p7}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->onLoadError(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$ExtractingLoadable;JJLjava/io/IOException;I)Landroidx/media3/exoplayer/upstream/Loader$LoadErrorAction; move-result-object p0 return-object p0 .end method .method public onLoaderReleased()V .locals 4 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 224 array-length v1, v0 const/4 v2, 0x0 :goto_0 if-ge v2, v1, :cond_0 aget-object v3, v0, v2 .line 225 invoke-virtual {v3}, Landroidx/media3/exoplayer/source/SampleQueue;->release()V add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_0 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->progressiveMediaExtractor:Landroidx/media3/exoplayer/source/ProgressiveMediaExtractor; .line 227 invoke-interface {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaExtractor;->release()V return-void .end method .method public onUpstreamFormatChanged(Landroidx/media3/common/Format;)V .locals 0 iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->handler:Landroid/os/Handler; iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeFinishPrepareRunnable:Ljava/lang/Runnable; .line 706 invoke-virtual {p1, p0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z return-void .end method .method public prepare(Landroidx/media3/exoplayer/source/MediaPeriod$Callback;J)V .locals 0 iput-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->callback:Landroidx/media3/exoplayer/source/MediaPeriod$Callback; iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadCondition:Landroidx/media3/common/util/ConditionVariable; .line 233 invoke-virtual {p1}, Landroidx/media3/common/util/ConditionVariable;->open()Z .line 234 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->startLoading()V return-void .end method .method readData(ILandroidx/media3/exoplayer/FormatHolder;Landroidx/media3/decoder/DecoderInputBuffer;I)I .locals 3 .line 483 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->suppressRead()Z move-result v0 const/4 v1, -0x3 if-eqz v0, :cond_0 return v1 .line 486 :cond_0 invoke-direct {p0, p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeNotifyDownstreamFormat(I)V iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 487 aget-object v0, v0, p1 iget-boolean v2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z .line 488 invoke-virtual {v0, p2, p3, p4, v2}, Landroidx/media3/exoplayer/source/SampleQueue;->read(Landroidx/media3/exoplayer/FormatHolder;Landroidx/media3/decoder/DecoderInputBuffer;IZ)I move-result p2 if-ne p2, v1, :cond_1 .line 490 invoke-direct {p0, p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeStartDeferredRetry(I)V :cond_1 return p2 .end method .method public readDiscontinuity()J .locals 2 iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->notifyDiscontinuity:Z if-eqz v0, :cond_1 iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z if-nez v0, :cond_0 .line 375 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->getExtractedSamplesCount()I move-result v0 iget v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->extractedSamplesCountAtStartOfLoad:I if-le v0, v1, :cond_1 :cond_0 const/4 v0, 0x0 iput-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->notifyDiscontinuity:Z iget-wide v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->lastSeekPositionUs:J return-wide v0 :cond_1 const-wide v0, -0x7fffffffffffffffL # -4.9E-324 return-wide v0 .end method .method public reevaluateBuffer(J)V .locals 0 return-void .end method .method public release()V .locals 4 iget-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepared:Z if-eqz v0, :cond_0 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 212 array-length v1, v0 const/4 v2, 0x0 :goto_0 if-ge v2, v1, :cond_0 aget-object v3, v0, v2 .line 213 invoke-virtual {v3}, Landroidx/media3/exoplayer/source/SampleQueue;->preRelease()V add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_0 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; .line 216 invoke-virtual {v0, p0}, Landroidx/media3/exoplayer/upstream/Loader;->release(Landroidx/media3/exoplayer/upstream/Loader$ReleaseCallback;)V iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->handler:Landroid/os/Handler; const/4 v1, 0x0 .line 217 invoke-virtual {v0, v1}, Landroid/os/Handler;->removeCallbacksAndMessages(Ljava/lang/Object;)V iput-object v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->callback:Landroidx/media3/exoplayer/source/MediaPeriod$Callback; const/4 v0, 0x1 iput-boolean v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->released:Z return-void .end method .method public seekMap(Landroidx/media3/extractor/SeekMap;)V .locals 2 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->handler:Landroid/os/Handler; .line 693 new-instance v1, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$$ExternalSyntheticLambda3; invoke-direct {v1, p0, p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$$ExternalSyntheticLambda3;->(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;Landroidx/media3/extractor/SeekMap;)V invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z return-void .end method .method public seekToUs(J)J .locals 4 .line 413 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->assertPrepared()V iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 414 iget-object v0, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->trackIsAudioVideoFlags:[Z iget-object v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekMap:Landroidx/media3/extractor/SeekMap; .line 416 invoke-interface {v1}, Landroidx/media3/extractor/SeekMap;->isSeekable()Z move-result v1 if-eqz v1, :cond_0 goto :goto_0 :cond_0 const-wide/16 p1, 0x0 :goto_0 const/4 v1, 0x0 iput-boolean v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->notifyDiscontinuity:Z iput-wide p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->lastSeekPositionUs:J .line 420 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->isPendingReset()Z move-result v2 if-eqz v2, :cond_1 iput-wide p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J return-wide p1 :cond_1 iget v2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->dataType:I const/4 v3, 0x7 if-eq v2, v3, :cond_2 .line 428 invoke-direct {p0, v0, p1, p2}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekInsideBufferUs([ZJ)Z move-result v0 if-eqz v0, :cond_2 return-wide p1 :cond_2 iput-boolean v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingDeferredRetry:Z iput-wide p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingResetPositionUs:J iput-boolean v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; .line 436 invoke-virtual {v0}, Landroidx/media3/exoplayer/upstream/Loader;->isLoading()Z move-result v0 if-eqz v0, :cond_4 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 438 array-length v2, v0 :goto_1 if-ge v1, v2, :cond_3 aget-object v3, v0, v1 .line 439 invoke-virtual {v3}, Landroidx/media3/exoplayer/source/SampleQueue;->discardToEnd()V add-int/lit8 v1, v1, 0x1 goto :goto_1 :cond_3 iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; .line 441 invoke-virtual {p0}, Landroidx/media3/exoplayer/upstream/Loader;->cancelLoading()V goto :goto_3 :cond_4 iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; .line 443 invoke-virtual {v0}, Landroidx/media3/exoplayer/upstream/Loader;->clearFatalError()V iget-object p0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 444 array-length v0, p0 :goto_2 if-ge v1, v0, :cond_5 aget-object v2, p0, v1 .line 445 invoke-virtual {v2}, Landroidx/media3/exoplayer/source/SampleQueue;->reset()V add-int/lit8 v1, v1, 0x1 goto :goto_2 :cond_5 :goto_3 return-wide p1 .end method .method public selectTracks([Landroidx/media3/exoplayer/trackselection/ExoTrackSelection;[Z[Landroidx/media3/exoplayer/source/SampleStream;[ZJ)J .locals 8 .line 259 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->assertPrepared()V iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 260 iget-object v0, v0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->tracks:Landroidx/media3/exoplayer/source/TrackGroupArray; iget-object v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->trackState:Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState; .line 261 iget-object v1, v1, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackState;->trackEnabledStates:[Z iget v2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->enabledTrackCount:I const/4 v3, 0x0 move v4, v3 .line 264 :goto_0 array-length v5, p1 const/4 v6, 0x1 if-ge v4, v5, :cond_2 .line 265 aget-object v5, p3, v4 if-eqz v5, :cond_1 aget-object v7, p1, v4 if-eqz v7, :cond_0 aget-boolean v7, p2, v4 if-nez v7, :cond_1 .line 266 :cond_0 check-cast v5, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$SampleStreamImpl; invoke-static {v5}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$SampleStreamImpl;->access$000(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$SampleStreamImpl;)I move-result v5 .line 267 aget-boolean v7, v1, v5 invoke-static {v7}, Landroidx/media3/common/util/Assertions;->checkState(Z)V iget v7, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->enabledTrackCount:I sub-int/2addr v7, v6 iput v7, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->enabledTrackCount:I .line 269 aput-boolean v3, v1, v5 const/4 v5, 0x0 .line 270 aput-object v5, p3, v4 :cond_1 add-int/lit8 v4, v4, 0x1 goto :goto_0 :cond_2 iget-boolean p2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seenFirstTrackSelection:Z if-eqz p2, :cond_3 if-nez v2, :cond_4 goto :goto_1 :cond_3 const-wide/16 v4, 0x0 cmp-long p2, p5, v4 if-eqz p2, :cond_4 :goto_1 move p2, v6 goto :goto_2 :cond_4 move p2, v3 :goto_2 move v2, v3 .line 277 :goto_3 array-length v4, p1 if-ge v2, v4, :cond_9 .line 278 aget-object v4, p3, v2 if-nez v4, :cond_8 aget-object v4, p1, v2 if-eqz v4, :cond_8 .line 280 invoke-interface {v4}, Landroidx/media3/exoplayer/trackselection/ExoTrackSelection;->length()I move-result v5 if-ne v5, v6, :cond_5 move v5, v6 goto :goto_4 :cond_5 move v5, v3 :goto_4 invoke-static {v5}, Landroidx/media3/common/util/Assertions;->checkState(Z)V .line 281 invoke-interface {v4, v3}, Landroidx/media3/exoplayer/trackselection/ExoTrackSelection;->getIndexInTrackGroup(I)I move-result v5 if-nez v5, :cond_6 move v5, v6 goto :goto_5 :cond_6 move v5, v3 :goto_5 invoke-static {v5}, Landroidx/media3/common/util/Assertions;->checkState(Z)V .line 282 invoke-interface {v4}, Landroidx/media3/exoplayer/trackselection/ExoTrackSelection;->getTrackGroup()Landroidx/media3/common/TrackGroup; move-result-object v4 invoke-virtual {v0, v4}, Landroidx/media3/exoplayer/source/TrackGroupArray;->indexOf(Landroidx/media3/common/TrackGroup;)I move-result v4 .line 283 aget-boolean v5, v1, v4 xor-int/2addr v5, v6 invoke-static {v5}, Landroidx/media3/common/util/Assertions;->checkState(Z)V iget v5, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->enabledTrackCount:I add-int/2addr v5, v6 iput v5, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->enabledTrackCount:I .line 285 aput-boolean v6, v1, v4 .line 286 new-instance v5, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$SampleStreamImpl; invoke-direct {v5, p0, v4}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$SampleStreamImpl;->(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;I)V aput-object v5, p3, v2 .line 287 aput-boolean v6, p4, v2 if-nez p2, :cond_8 iget-object p2, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 290 aget-object p2, p2, v4 .line 296 invoke-virtual {p2, p5, p6, v6}, Landroidx/media3/exoplayer/source/SampleQueue;->seekTo(JZ)Z move-result v4 if-nez v4, :cond_7 .line 297 invoke-virtual {p2}, Landroidx/media3/exoplayer/source/SampleQueue;->getReadIndex()I move-result p2 if-eqz p2, :cond_7 move p2, v6 goto :goto_6 :cond_7 move p2, v3 :cond_8 :goto_6 add-int/lit8 v2, v2, 0x1 goto :goto_3 :cond_9 iget p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->enabledTrackCount:I if-nez p1, :cond_c iput-boolean v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->pendingDeferredRetry:Z iput-boolean v3, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->notifyDiscontinuity:Z iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; .line 304 invoke-virtual {p1}, Landroidx/media3/exoplayer/upstream/Loader;->isLoading()Z move-result p1 if-eqz p1, :cond_b iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 306 array-length p2, p1 :goto_7 if-ge v3, p2, :cond_a aget-object p3, p1, v3 .line 307 invoke-virtual {p3}, Landroidx/media3/exoplayer/source/SampleQueue;->discardToEnd()V add-int/lit8 v3, v3, 0x1 goto :goto_7 :cond_a iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loader:Landroidx/media3/exoplayer/upstream/Loader; .line 309 invoke-virtual {p1}, Landroidx/media3/exoplayer/upstream/Loader;->cancelLoading()V goto :goto_a :cond_b iget-object p1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 311 array-length p2, p1 :goto_8 if-ge v3, p2, :cond_e aget-object p3, p1, v3 .line 312 invoke-virtual {p3}, Landroidx/media3/exoplayer/source/SampleQueue;->reset()V add-int/lit8 v3, v3, 0x1 goto :goto_8 :cond_c if-eqz p2, :cond_e .line 316 invoke-virtual {p0, p5, p6}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seekToUs(J)J move-result-wide p5 .line 318 :goto_9 array-length p1, p3 if-ge v3, p1, :cond_e .line 319 aget-object p1, p3, v3 if-eqz p1, :cond_d .line 320 aput-boolean v6, p4, v3 :cond_d add-int/lit8 v3, v3, 0x1 goto :goto_9 :cond_e :goto_a iput-boolean v6, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->seenFirstTrackSelection:Z return-wide p5 .end method .method skipData(IJ)I .locals 2 .line 496 invoke-direct {p0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->suppressRead()Z move-result v0 if-eqz v0, :cond_0 const/4 p0, 0x0 return p0 .line 499 :cond_0 invoke-direct {p0, p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeNotifyDownstreamFormat(I)V iget-object v0, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->sampleQueues:[Landroidx/media3/exoplayer/source/SampleQueue; .line 500 aget-object v0, v0, p1 iget-boolean v1, p0, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->loadingFinished:Z .line 501 invoke-virtual {v0, p2, p3, v1}, Landroidx/media3/exoplayer/source/SampleQueue;->getSkipCount(JZ)I move-result p2 .line 502 invoke-virtual {v0, p2}, Landroidx/media3/exoplayer/source/SampleQueue;->skip(I)V if-nez p2, :cond_1 .line 504 invoke-direct {p0, p1}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->maybeStartDeferredRetry(I)V :cond_1 return p2 .end method .method public track(II)Landroidx/media3/extractor/TrackOutput; .locals 1 .line 682 new-instance p2, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId; const/4 v0, 0x0 invoke-direct {p2, p1, v0}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId;->(IZ)V invoke-direct {p0, p2}, Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod;->prepareTrackOutput(Landroidx/media3/exoplayer/source/ProgressiveMediaPeriod$TrackId;)Landroidx/media3/extractor/TrackOutput; move-result-object p0 return-object p0 .end method