From 5819b47f410f3c62c543b0ac6506f186cd88e44d Mon Sep 17 00:00:00 2001 From: tonihei Date: Mon, 4 May 2020 11:07:03 +0100 Subject: [PATCH] Use helper method for duplicated message sending logic. PiperOrigin-RevId: 309709215 --- .../android/exoplayer2/SimpleExoPlayer.java | 126 ++++-------------- 1 file changed, 27 insertions(+), 99 deletions(-) diff --git a/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java b/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java index c067a05925..93ebacf5ab 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java @@ -516,15 +516,7 @@ public class SimpleExoPlayer extends BasePlayer public void setVideoScalingMode(@Renderer.VideoScalingMode int videoScalingMode) { verifyApplicationThread(); this.videoScalingMode = videoScalingMode; - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_VIDEO) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_SCALING_MODE) - .setPayload(videoScalingMode) - .send(); - } - } + sendRendererMessage(C.TRACK_TYPE_VIDEO, Renderer.MSG_SET_SCALING_MODE, videoScalingMode); } @Override @@ -689,15 +681,7 @@ public class SimpleExoPlayer extends BasePlayer } if (!Util.areEqual(this.audioAttributes, audioAttributes)) { this.audioAttributes = audioAttributes; - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_AUDIO) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_AUDIO_ATTRIBUTES) - .setPayload(audioAttributes) - .send(); - } - } + sendRendererMessage(C.TRACK_TYPE_AUDIO, Renderer.MSG_SET_AUDIO_ATTRIBUTES, audioAttributes); streamVolumeManager.setStreamType(Util.getStreamTypeForAudioUsage(audioAttributes.usage)); for (AudioListener audioListener : audioListeners) { audioListener.onAudioAttributesChanged(audioAttributes); @@ -724,15 +708,7 @@ public class SimpleExoPlayer extends BasePlayer return; } this.audioSessionId = audioSessionId; - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_AUDIO) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_AUDIO_SESSION_ID) - .setPayload(audioSessionId) - .send(); - } - } + sendRendererMessage(C.TRACK_TYPE_AUDIO, Renderer.MSG_SET_AUDIO_SESSION_ID, audioSessionId); if (audioSessionId != C.AUDIO_SESSION_ID_UNSET) { notifyAudioSessionIdSet(); } @@ -746,15 +722,7 @@ public class SimpleExoPlayer extends BasePlayer @Override public void setAuxEffectInfo(AuxEffectInfo auxEffectInfo) { verifyApplicationThread(); - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_AUDIO) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_AUX_EFFECT_INFO) - .setPayload(auxEffectInfo) - .send(); - } - } + sendRendererMessage(C.TRACK_TYPE_AUDIO, Renderer.MSG_SET_AUX_EFFECT_INFO, auxEffectInfo); } @Override @@ -793,15 +761,8 @@ public class SimpleExoPlayer extends BasePlayer return; } this.skipSilenceEnabled = skipSilenceEnabled; - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_AUDIO) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_SKIP_SILENCE_ENABLED) - .setPayload(skipSilenceEnabled) - .send(); - } - } + sendRendererMessage( + C.TRACK_TYPE_AUDIO, Renderer.MSG_SET_SKIP_SILENCE_ENABLED, skipSilenceEnabled); notifySkipSilenceEnabledChanged(); } @@ -958,15 +919,8 @@ public class SimpleExoPlayer extends BasePlayer public void setVideoFrameMetadataListener(VideoFrameMetadataListener listener) { verifyApplicationThread(); videoFrameMetadataListener = listener; - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_VIDEO) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_VIDEO_FRAME_METADATA_LISTENER) - .setPayload(listener) - .send(); - } - } + sendRendererMessage( + C.TRACK_TYPE_VIDEO, Renderer.MSG_SET_VIDEO_FRAME_METADATA_LISTENER, listener); } @Override @@ -975,30 +929,16 @@ public class SimpleExoPlayer extends BasePlayer if (videoFrameMetadataListener != listener) { return; } - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_VIDEO) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_VIDEO_FRAME_METADATA_LISTENER) - .setPayload(null) - .send(); - } - } + sendRendererMessage( + C.TRACK_TYPE_VIDEO, Renderer.MSG_SET_VIDEO_FRAME_METADATA_LISTENER, /* payload= */ null); } @Override public void setCameraMotionListener(CameraMotionListener listener) { verifyApplicationThread(); cameraMotionListener = listener; - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_CAMERA_MOTION) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_CAMERA_MOTION_LISTENER) - .setPayload(listener) - .send(); - } - } + sendRendererMessage( + C.TRACK_TYPE_CAMERA_MOTION, Renderer.MSG_SET_CAMERA_MOTION_LISTENER, listener); } @Override @@ -1007,15 +947,8 @@ public class SimpleExoPlayer extends BasePlayer if (cameraMotionListener != listener) { return; } - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_CAMERA_MOTION) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_CAMERA_MOTION_LISTENER) - .setPayload(null) - .send(); - } - } + sendRendererMessage( + C.TRACK_TYPE_CAMERA_MOTION, Renderer.MSG_SET_CAMERA_MOTION_LISTENER, /* payload= */ null); } /** @@ -1869,15 +1802,10 @@ public class SimpleExoPlayer extends BasePlayer private void setVideoDecoderOutputBufferRendererInternal( @Nullable VideoDecoderOutputBufferRenderer videoDecoderOutputBufferRenderer) { - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_VIDEO) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_VIDEO_DECODER_OUTPUT_BUFFER_RENDERER) - .setPayload(videoDecoderOutputBufferRenderer) - .send(); - } - } + sendRendererMessage( + C.TRACK_TYPE_VIDEO, + Renderer.MSG_SET_VIDEO_DECODER_OUTPUT_BUFFER_RENDERER, + videoDecoderOutputBufferRenderer); this.videoDecoderOutputBufferRenderer = videoDecoderOutputBufferRenderer; } @@ -1893,15 +1821,7 @@ public class SimpleExoPlayer extends BasePlayer private void sendVolumeToRenderers() { float scaledVolume = audioVolume * audioFocusManager.getVolumeMultiplier(); - for (Renderer renderer : renderers) { - if (renderer.getTrackType() == C.TRACK_TYPE_AUDIO) { - player - .createMessage(renderer) - .setType(Renderer.MSG_SET_VOLUME) - .setPayload(scaledVolume) - .send(); - } - } + sendRendererMessage(C.TRACK_TYPE_AUDIO, Renderer.MSG_SET_VOLUME, scaledVolume); } private void notifyAudioSessionIdSet() { @@ -1975,6 +1895,14 @@ public class SimpleExoPlayer extends BasePlayer } } + private void sendRendererMessage(int trackType, int messageType, @Nullable Object payload) { + for (Renderer renderer : renderers) { + if (renderer.getTrackType() == trackType) { + player.createMessage(renderer).setType(messageType).setPayload(payload).send(); + } + } + } + private static DeviceInfo createDeviceInfo(StreamVolumeManager streamVolumeManager) { return new DeviceInfo( DeviceInfo.PLAYBACK_TYPE_LOCAL,