@Override public void onDroppedVideoFrames(EventTime eventTime, int droppedFrames, long elapsedMs) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.DROPPED_FRAMES, String.valueOf(droppedFrames)); callingMethodParameters.put(Parameters.ELAPSED_MS, String.valueOf(elapsedMs)); infoListeners.onNewInfo(Methods.ON_DROPPED_VIDEO_FRAMES, callingMethodParameters); }
@Override public void onRenderedFirstFrame(EventTime eventTime, Surface surface) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.SURFACE, surface.toString()); infoListeners.onNewInfo(Methods.ON_RENDERED_FIRST_FRAME, callingMethodParameters); }
@Override public void onAudioUnderrun(EventTime eventTime, int bufferSize, long bufferSizeMs, long elapsedSinceLastFeedMs) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.BUFFER_SIZE, String.valueOf(bufferSize)); callingMethodParameters.put(Parameters.BUFFER_SIZE_MS, String.valueOf(bufferSizeMs)); callingMethodParameters.put(Parameters.ELAPSED_SINCE_LAST_FEED_MS, String.valueOf(elapsedSinceLastFeedMs)); infoListeners.onNewInfo(Methods.ON_AUDIO_UNDERRUN, callingMethodParameters); }
@Override public void onDecoderDisabled(EventTime eventTime, int trackType, DecoderCounters decoderCounters) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.TRACK_TYPE, String.valueOf(trackType)); callingMethodParameters.put(Parameters.DECODER_COUNTERS, decoderCounters.toString()); infoListeners.onNewInfo(Methods.ON_DECODER_DISABLED, callingMethodParameters); }
@Override public void onRepeatModeChanged(EventTime eventTime, int repeatMode) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.REPEAT_MODE, String.valueOf(repeatMode)); infoListeners.onNewInfo(Methods.ON_REPEAT_MODE_CHANGED, callingMethodParameters); }
@Override public void onPositionDiscontinuity(EventTime eventTime, int reason) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.REASON, String.valueOf(reason)); infoListeners.onNewInfo(Methods.ON_POSITION_DISCONTINUITY, callingMethodParameters); }
@Override public void onPlaybackParametersChanged(PlaybackParameters playbackParameters) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.PLAYBACK_PARAMETERS, String.valueOf(playbackParameters)); infoListener.onNewInfo(Methods.ON_PLAYBACK_PARAMETERS_CHANGED, callingMethodParameters); }
@Override public void onRepeatModeChanged(@Player.RepeatMode int repeatMode) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.REPEAT_MODE, String.valueOf(repeatMode)); infoListener.onNewInfo(Methods.ON_REPEAT_MODE_CHANGED, callingMethodParameters); }
@Override public void onPlayerStateChanged(boolean playWhenReady, int playbackState) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.PLAY_WHEN_READY, String.valueOf(playWhenReady)); callingMethodParameters.put(Parameters.PLAYBACK_STATE, String.valueOf(playbackState)); infoListener.onNewInfo(Methods.ON_PLAYER_STATE_CHANGED, callingMethodParameters); }
@Override public void onDrmKeysRemoved() { infoListener.onNewInfo(Methods.ON_DRM_KEYS_REMOVED, Collections.<String, String>emptyMap()); } }
@Override public void onDrmKeysRemoved(EventTime eventTime) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); infoListeners.onNewInfo(Methods.ON_DRM_KEYS_REMOVED, callingMethodParameters); } }
@Override public void onMetadata(EventTime eventTime, Metadata metadata) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.METADATA, metadata.toString()); infoListeners.onNewInfo(Methods.ON_METADATA, callingMethodParameters); }
@Override public void onBandwidthEstimate(EventTime eventTime, int totalLoadTimeMs, long totalBytesLoaded, long bitrateEstimate) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.TOTAL_LOAD_TIME_MS, String.valueOf(totalLoadTimeMs)); callingMethodParameters.put(Parameters.TOTAL_BYTES_LOADED, String.valueOf(totalBytesLoaded)); callingMethodParameters.put(Parameters.BITRATE_ESTIMATE, String.valueOf(bitrateEstimate)); infoListeners.onNewInfo(Methods.ON_BANDWIDTH_ESTIMATE, callingMethodParameters); }
@Override public void onMediaPeriodCreated(EventTime eventTime) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); infoListeners.onNewInfo(Methods.ON_MEDIA_PERIOD_CREATED, callingMethodParameters); }
@Override public void onUpstreamDiscarded(EventTime eventTime, MediaSourceEventListener.MediaLoadData mediaLoadData) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.MEDIA_LOAD_DATA, mediaLoadData.toString()); infoListeners.onNewInfo(Methods.ON_UPSTREAM_DISCARDED, callingMethodParameters); }
@Override public void onLoadCompleted(EventTime eventTime, MediaSourceEventListener.LoadEventInfo loadEventInfo, MediaSourceEventListener.MediaLoadData mediaLoadData) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.LOAD_EVENT_INFO, loadEventInfo.toString()); callingMethodParameters.put(Parameters.MEDIA_LOAD_DATA, mediaLoadData.toString()); infoListeners.onNewInfo(Methods.ON_LOAD_COMPLETED, callingMethodParameters); }
@Override public void onTracksChanged(EventTime eventTime, TrackGroupArray trackGroups, TrackSelectionArray trackSelections) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.TRACK_GROUPS, trackGroups.toString()); callingMethodParameters.put(Parameters.TRACK_SELECTIONS, trackSelections.toString()); infoListeners.onNewInfo(Methods.ON_TRACKS_CHANGED, callingMethodParameters); }
@Override public void onPlayerError(EventTime eventTime, ExoPlaybackException error) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.EVENT_TIME, eventTime.toString()); callingMethodParameters.put(Parameters.ERROR, error.toString()); infoListeners.onNewInfo(Methods.ON_PLAYER_ERROR, callingMethodParameters); }
@Override public void onDownstreamFormatChanged(int windowIndex, @Nullable MediaSource.MediaPeriodId mediaPeriodId, MediaLoadData mediaLoadData) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.WINDOW_INDEX, String.valueOf(windowIndex)); callingMethodParameters.put(Parameters.MEDIA_PERIOD_ID, mediaPeriodId == null ? NO_MEDIA_PERIOD_ID : mediaPeriodId.toString()); callingMethodParameters.put(Parameters.MEDIA_LOAD_DATA, mediaLoadData.toString()); infoListener.onNewInfo(Methods.ON_DOWNSTREAM_FORMAT_CHANGED, callingMethodParameters); } }
@Override public void onMediaPeriodReleased(int windowIndex, MediaSource.MediaPeriodId mediaPeriodId) { HashMap<String, String> callingMethodParameters = new HashMap<>(); callingMethodParameters.put(Parameters.WINDOW_INDEX, String.valueOf(windowIndex)); callingMethodParameters.put(Parameters.MEDIA_PERIOD_ID, mediaPeriodId.toString()); infoListener.onNewInfo(Methods.ON_MEDIA_PERIOD_RELEASED, callingMethodParameters); }