Try removing duplicate calls

This commit is contained in:
Ian Baker 2024-10-23 15:51:11 +01:00
parent 7cf500bc2d
commit 37f795ea82
10 changed files with 84 additions and 116 deletions

View File

@ -409,7 +409,7 @@ public class DefaultAnalyticsCollector implements AnalyticsCollector {
EventTime eventTime = generateMediaPeriodEventTime(windowIndex, mediaPeriodId); EventTime eventTime = generateMediaPeriodEventTime(windowIndex, mediaPeriodId);
sendEvent( sendEvent(
eventTime, eventTime,
C.INDEX_UNSET, /* eventFlag= */ C.INDEX_UNSET,
listener -> listener.onLoadStarted(eventTime, loadEventInfo, mediaLoadData)); listener -> listener.onLoadStarted(eventTime, loadEventInfo, mediaLoadData));
sendEvent( sendEvent(
eventTime, eventTime,

View File

@ -234,7 +234,7 @@ public interface MediaSourceEventListener {
/* trackSelectionData= */ null, /* trackSelectionData= */ null,
/* mediaStartTimeUs= */ C.TIME_UNSET, /* mediaStartTimeUs= */ C.TIME_UNSET,
/* mediaEndTimeUs= */ C.TIME_UNSET, /* mediaEndTimeUs= */ C.TIME_UNSET,
/* retryCount= */ retryCount); retryCount);
} }
/** Dispatches {@link #onLoadStarted(int, MediaPeriodId, LoadEventInfo, MediaLoadData, int)}. */ /** Dispatches {@link #onLoadStarted(int, MediaPeriodId, LoadEventInfo, MediaLoadData, int)}. */

View File

@ -600,28 +600,26 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
@Override @Override
public void onLoadStarted( public void onLoadStarted(
ExtractingLoadable loadable, long elapsedRealtimeMs, long loadDurationMs, int retryCount) { ExtractingLoadable loadable, long elapsedRealtimeMs, long loadDurationMs, int retryCount) {
if (retryCount > 0) { StatsDataSource dataSource = loadable.dataSource;
StatsDataSource dataSource = loadable.dataSource; LoadEventInfo loadEventInfo =
LoadEventInfo loadEventInfo = new LoadEventInfo(
new LoadEventInfo( loadable.loadTaskId,
loadable.loadTaskId, loadable.dataSpec,
loadable.dataSpec, dataSource.getLastOpenedUri(),
dataSource.getLastOpenedUri(), dataSource.getLastResponseHeaders(),
dataSource.getLastResponseHeaders(), elapsedRealtimeMs,
elapsedRealtimeMs, loadDurationMs,
loadDurationMs, /* bytesLoaded= */ 0);
dataSource.getBytesRead()); mediaSourceEventDispatcher.loadStarted(
mediaSourceEventDispatcher.loadStarted( loadEventInfo,
loadEventInfo, C.DATA_TYPE_MEDIA,
C.DATA_TYPE_MEDIA, C.TRACK_TYPE_UNKNOWN,
C.TRACK_TYPE_UNKNOWN, /* trackFormat= */ null,
/* trackFormat= */ null, C.SELECTION_REASON_UNKNOWN,
C.SELECTION_REASON_UNKNOWN, /* trackSelectionData= */ null,
/* trackSelectionData= */ null, /* mediaStartTimeUs= */ loadable.seekTimeUs,
/* mediaStartTimeUs= */ loadable.seekTimeUs, durationUs,
durationUs, retryCount);
retryCount);
}
} }
@Override @Override
@ -908,20 +906,8 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
pendingResetPositionUs = C.TIME_UNSET; pendingResetPositionUs = C.TIME_UNSET;
} }
extractedSamplesCountAtStartOfLoad = getExtractedSamplesCount(); extractedSamplesCountAtStartOfLoad = getExtractedSamplesCount();
long elapsedRealtimeMs = loader.startLoading(
loader.startLoading( loadable, this, loadErrorHandlingPolicy.getMinimumLoadableRetryCount(dataType));
loadable, this, loadErrorHandlingPolicy.getMinimumLoadableRetryCount(dataType));
DataSpec dataSpec = loadable.dataSpec;
mediaSourceEventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, dataSpec, elapsedRealtimeMs),
C.DATA_TYPE_MEDIA,
C.TRACK_TYPE_UNKNOWN,
/* trackFormat= */ null,
C.SELECTION_REASON_UNKNOWN,
/* trackSelectionData= */ null,
/* mediaStartTimeUs= */ loadable.seekTimeUs,
durationUs,
/* retryCount= */ 0);
} }
/** /**

View File

@ -155,21 +155,10 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
dataSource.addTransferListener(transferListener); dataSource.addTransferListener(transferListener);
} }
SourceLoadable loadable = new SourceLoadable(dataSpec, dataSource); SourceLoadable loadable = new SourceLoadable(dataSpec, dataSource);
long elapsedRealtimeMs = loader.startLoading(
loader.startLoading( loadable,
loadable, /* callback= */ this,
/* callback= */ this, loadErrorHandlingPolicy.getMinimumLoadableRetryCount(C.DATA_TYPE_MEDIA));
loadErrorHandlingPolicy.getMinimumLoadableRetryCount(C.DATA_TYPE_MEDIA));
eventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, dataSpec, elapsedRealtimeMs),
C.DATA_TYPE_MEDIA,
C.TRACK_TYPE_UNKNOWN,
format,
C.SELECTION_REASON_UNKNOWN,
/* trackSelectionData= */ null,
/* mediaStartTimeUs= */ 0,
durationUs,
/* retryCount= */ 0);
return true; return true;
} }
@ -220,7 +209,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
dataSource.getLastResponseHeaders(), dataSource.getLastResponseHeaders(),
elapsedRealtimeMs, elapsedRealtimeMs,
loadDurationMs, loadDurationMs,
sampleSize); /* bytesLoaded= */ 0);
eventDispatcher.loadStarted( eventDispatcher.loadStarted(
loadEventInfo, loadEventInfo,
C.DATA_TYPE_MEDIA, C.DATA_TYPE_MEDIA,

View File

@ -431,14 +431,14 @@ public final class ServerSideAdInsertionMediaSource extends BaseMediaSource
int retryCount) { int retryCount) {
// TODO file a bug to track updating this. // TODO file a bug to track updating this.
if (retryCount == 0) { if (retryCount == 0) {
@Nullable @Nullable
MediaPeriodImpl mediaPeriod = MediaPeriodImpl mediaPeriod =
getMediaPeriodForEvent(mediaPeriodId, mediaLoadData, /* useLoadingPeriod= */ true); getMediaPeriodForEvent(mediaPeriodId, mediaLoadData, /* useLoadingPeriod= */ true);
if (mediaPeriod == null) { if (mediaPeriod == null) {
mediaSourceEventDispatcherWithoutId.loadStarted( mediaSourceEventDispatcherWithoutId.loadStarted(
loadEventInfo, mediaLoadData, /* retryCount= */ 0); loadEventInfo, mediaLoadData, /* retryCount= */ 0);
} else { } else {
mediaPeriod.sharedPeriod.onLoadStarted(loadEventInfo, mediaLoadData); mediaPeriod.sharedPeriod.onLoadStarted(loadEventInfo, mediaLoadData);
mediaPeriod.mediaSourceEventDispatcher.loadStarted( mediaPeriod.mediaSourceEventDispatcher.loadStarted(
loadEventInfo, loadEventInfo,
correctMediaLoadData( correctMediaLoadData(

View File

@ -433,7 +433,14 @@ public class ChunkSampleStream<T extends ChunkSource>
public void onLoadStarted( public void onLoadStarted(
Chunk loadable, long elapsedRealtimeMs, long loadDurationMs, int retryCount) { Chunk loadable, long elapsedRealtimeMs, long loadDurationMs, int retryCount) {
mediaSourceEventDispatcher.loadStarted( mediaSourceEventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, loadable.dataSpec, elapsedRealtimeMs), new LoadEventInfo(
loadable.loadTaskId,
loadable.dataSpec,
loadable.getUri(),
loadable.getResponseHeaders(),
elapsedRealtimeMs,
loadDurationMs,
/* bytesLoaded= */ 0),
loadable.type, loadable.type,
primaryTrackType, primaryTrackType,
loadable.trackFormat, loadable.trackFormat,
@ -651,19 +658,8 @@ public class ChunkSampleStream<T extends ChunkSource>
} else if (loadable instanceof InitializationChunk) { } else if (loadable instanceof InitializationChunk) {
((InitializationChunk) loadable).init(chunkOutput); ((InitializationChunk) loadable).init(chunkOutput);
} }
long elapsedRealtimeMs = loader.startLoading(
loader.startLoading( loadable, this, loadErrorHandlingPolicy.getMinimumLoadableRetryCount(loadable.type));
loadable, this, loadErrorHandlingPolicy.getMinimumLoadableRetryCount(loadable.type));
mediaSourceEventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, loadable.dataSpec, elapsedRealtimeMs),
loadable.type,
primaryTrackType,
loadable.trackFormat,
loadable.trackSelectionReason,
loadable.trackSelectionData,
loadable.startTimeUs,
loadable.endTimeUs,
/* retryCount= */ 0);
return true; return true;
} }

View File

@ -635,7 +635,14 @@ public final class DashMediaSource extends BaseMediaSource {
long loadDurationMs, long loadDurationMs,
int retryCount) { int retryCount) {
manifestEventDispatcher.loadStarted( manifestEventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, loadable.dataSpec, elapsedRealtimeMs), new LoadEventInfo(
loadable.loadTaskId,
loadable.dataSpec,
loadable.getUri(),
loadable.getResponseHeaders(),
elapsedRealtimeMs,
loadDurationMs,
/* bytesLoaded= */ 0),
loadable.type, loadable.type,
retryCount); retryCount);
} }
@ -1105,11 +1112,7 @@ public final class DashMediaSource extends BaseMediaSource {
ParsingLoadable<T> loadable, ParsingLoadable<T> loadable,
Loader.Callback<ParsingLoadable<T>> callback, Loader.Callback<ParsingLoadable<T>> callback,
int minRetryCount) { int minRetryCount) {
long elapsedRealtimeMs = loader.startLoading(loadable, callback, minRetryCount); loader.startLoading(loadable, callback, minRetryCount);
manifestEventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, loadable.dataSpec, elapsedRealtimeMs),
loadable.type,
/* retryCount= */ 0);
} }
private static long getIntervalUntilNextManifestRefreshMs( private static long getIntervalUntilNextManifestRefreshMs(

View File

@ -808,20 +808,8 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
initMediaChunkLoad((HlsMediaChunk) loadable); initMediaChunkLoad((HlsMediaChunk) loadable);
} }
loadingChunk = loadable; loadingChunk = loadable;
long elapsedRealtimeMs = loader.startLoading(
loader.startLoading( loadable, this, loadErrorHandlingPolicy.getMinimumLoadableRetryCount(loadable.type));
loadable, this, loadErrorHandlingPolicy.getMinimumLoadableRetryCount(loadable.type));
// DO NOT SUBMIT is this duplicated with the line in onLoadStarted below on L868?
mediaSourceEventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, loadable.dataSpec, elapsedRealtimeMs),
loadable.type,
trackType,
loadable.trackFormat,
loadable.trackSelectionReason,
loadable.trackSelectionData,
loadable.startTimeUs,
loadable.endTimeUs,
/* retryCount= */ 0);
return true; return true;
} }
@ -866,7 +854,14 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
public void onLoadStarted( public void onLoadStarted(
Chunk loadable, long elapsedRealtimeMs, long loadDurationMs, int retryCount) { Chunk loadable, long elapsedRealtimeMs, long loadDurationMs, int retryCount) {
mediaSourceEventDispatcher.loadStarted( mediaSourceEventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, loadable.dataSpec, elapsedRealtimeMs), new LoadEventInfo(
loadable.loadTaskId,
loadable.dataSpec,
loadable.getUri(),
loadable.getResponseHeaders(),
elapsedRealtimeMs,
loadDurationMs,
/* bytesLoaded= */ 0),
loadable.type, loadable.type,
trackType, trackType,
loadable.trackFormat, loadable.trackFormat,

View File

@ -141,19 +141,10 @@ public final class DefaultHlsPlaylistTracker
playlistParserFactory.createPlaylistParser()); playlistParserFactory.createPlaylistParser());
Assertions.checkState(initialPlaylistLoader == null); Assertions.checkState(initialPlaylistLoader == null);
initialPlaylistLoader = new Loader("DefaultHlsPlaylistTracker:MultivariantPlaylist"); initialPlaylistLoader = new Loader("DefaultHlsPlaylistTracker:MultivariantPlaylist");
long elapsedRealtime = initialPlaylistLoader.startLoading(
initialPlaylistLoader.startLoading( multivariantPlaylistLoadable,
multivariantPlaylistLoadable, this,
this, loadErrorHandlingPolicy.getMinimumLoadableRetryCount(multivariantPlaylistLoadable.type));
loadErrorHandlingPolicy.getMinimumLoadableRetryCount(
multivariantPlaylistLoadable.type));
eventDispatcher.loadStarted(
new LoadEventInfo(
multivariantPlaylistLoadable.loadTaskId,
multivariantPlaylistLoadable.dataSpec,
elapsedRealtime),
multivariantPlaylistLoadable.type,
/* retryCount= */ 0);
} }
@Override @Override
@ -262,7 +253,14 @@ public final class DefaultHlsPlaylistTracker
long loadDurationMs, long loadDurationMs,
int retryCount) { int retryCount) {
eventDispatcher.loadStarted( eventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, loadable.dataSpec, elapsedRealtimeMs), new LoadEventInfo(
loadable.loadTaskId,
loadable.dataSpec,
loadable.getUri(),
loadable.getResponseHeaders(),
elapsedRealtimeMs,
loadDurationMs,
/* bytesLoaded= */ 0),
loadable.type, loadable.type,
retryCount); retryCount);
} }
@ -749,16 +747,10 @@ public final class DefaultHlsPlaylistTracker
playlistRequestUri, playlistRequestUri,
C.DATA_TYPE_MANIFEST, C.DATA_TYPE_MANIFEST,
mediaPlaylistParser); mediaPlaylistParser);
long elapsedRealtime =
mediaPlaylistLoader.startLoading( mediaPlaylistLoader.startLoading(
mediaPlaylistLoadable, mediaPlaylistLoadable,
/* callback= */ this, /* callback= */ this,
loadErrorHandlingPolicy.getMinimumLoadableRetryCount(mediaPlaylistLoadable.type)); loadErrorHandlingPolicy.getMinimumLoadableRetryCount(mediaPlaylistLoadable.type));
eventDispatcher.loadStarted(
new LoadEventInfo(
mediaPlaylistLoadable.loadTaskId, mediaPlaylistLoadable.dataSpec, elapsedRealtime),
mediaPlaylistLoadable.type,
/* retryCount= */ 0);
} }
private void processLoadedPlaylist( private void processLoadedPlaylist(

View File

@ -504,7 +504,14 @@ public final class SsMediaSource extends BaseMediaSource
long loadDurationMs, long loadDurationMs,
int retryCount) { int retryCount) {
manifestEventDispatcher.loadStarted( manifestEventDispatcher.loadStarted(
new LoadEventInfo(loadable.loadTaskId, loadable.dataSpec, elapsedRealtimeMs), new LoadEventInfo(
loadable.loadTaskId,
loadable.dataSpec,
loadable.getUri(),
loadable.getResponseHeaders(),
elapsedRealtimeMs,
loadDurationMs,
/* bytesLoaded= */ 0),
loadable.type, loadable.type,
/* retryCount= */ 0); /* retryCount= */ 0);
} }