Simplify MediaCodecRenderer.maybeInitializeProcessingPipeline

PiperOrigin-RevId: 717466577
This commit is contained in:
kimvde 2025-01-20 03:04:34 -08:00 committed by Copybara-Service
parent 190563b8eb
commit 8abd36fb27
3 changed files with 5 additions and 14 deletions

View File

@ -1133,7 +1133,7 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
ArrayDeque<MediaCodecInfo> availableCodecInfos = checkNotNull(this.availableCodecInfos);
while (codec == null) {
MediaCodecInfo codecInfo = checkNotNull(availableCodecInfos.peekFirst());
if (!maybeInitializeProcessingPipeline(codecInfo, inputFormat)) {
if (!maybeInitializeProcessingPipeline(inputFormat)) {
return;
}
@ -1492,21 +1492,15 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
/**
* Initializes the processing pipeline, if needed by the implementation.
*
* <p>This method is called just before the renderer obtains the {@linkplain
* #getMediaCodecConfiguration configuration} for the {@link MediaCodecAdapter} and creates the
* adapter via the passed in {@link MediaCodecAdapter.Factory}.
*
* <p>The default implementation is a no-op.
*
* @param codecInfo The {@link MediaCodecInfo} of the codec which will be initialized.
* @param format The {@link Format} for which the codec is being configured.
* @return Returns {@code true} when the processing pipeline is successfully initialized, or the
* {@linkplain MediaCodecRenderer renderer} does not use a processing pipeline. The caller
* should try again later, if {@code false} is returned.
* @throws ExoPlaybackException If an error occurs preparing for initializing the codec.
*/
protected boolean maybeInitializeProcessingPipeline(MediaCodecInfo codecInfo, Format format)
throws ExoPlaybackException {
protected boolean maybeInitializeProcessingPipeline(Format format) throws ExoPlaybackException {
// Do nothing.
return true;
}

View File

@ -1227,8 +1227,7 @@ public class MediaCodecVideoRenderer extends MediaCodecRenderer
@CallSuper
@Override
protected boolean maybeInitializeProcessingPipeline(MediaCodecInfo codecInfo, Format format)
throws ExoPlaybackException {
protected boolean maybeInitializeProcessingPipeline(Format format) throws ExoPlaybackException {
if (videoSink != null && !videoSink.isInitialized()) {
try {
return videoSink.initialize(format);

View File

@ -79,7 +79,6 @@ import androidx.media3.exoplayer.Renderer;
import androidx.media3.exoplayer.SeekParameters;
import androidx.media3.exoplayer.analytics.AnalyticsListener;
import androidx.media3.exoplayer.mediacodec.MediaCodecAdapter;
import androidx.media3.exoplayer.mediacodec.MediaCodecInfo;
import androidx.media3.exoplayer.mediacodec.MediaCodecSelector;
import androidx.media3.exoplayer.source.DefaultMediaSourceFactory;
import androidx.media3.exoplayer.source.MediaSource;
@ -671,13 +670,12 @@ public final class ExperimentalFrameExtractor {
@CallSuper
@Override
protected boolean maybeInitializeProcessingPipeline(MediaCodecInfo codecInfo, Format format)
throws ExoPlaybackException {
protected boolean maybeInitializeProcessingPipeline(Format format) throws ExoPlaybackException {
if (isTransferHdr(format.colorInfo) && toneMapHdrToSdr) {
// Setting the VideoSink format to SDR_BT709_LIMITED tone maps to SDR.
format = format.buildUpon().setColorInfo(SDR_BT709_LIMITED).build();
}
return super.maybeInitializeProcessingPipeline(codecInfo, format);
return super.maybeInitializeProcessingPipeline(format);
}
@Override