From 84df55c6e82171d07286f6d2405693e6d3b0518f Mon Sep 17 00:00:00 2001 From: Patrik Aradi Date: Tue, 6 Feb 2024 11:14:14 +0800 Subject: [PATCH] fix naming and formatting --- .../media3/effect/DefaultVideoCompositor.java | 12 ++++-------- .../media3/effect/MultipleInputVideoGraph.java | 1 - .../androidx/media3/effect/VideoCompositor.java | 6 +++--- .../media3/transformer/SampleExporter.java | 3 ++- .../media3/transformer/TransformerInternal.java | 2 +- .../media3/transformer/VideoSampleExporter.java | 14 +++++++------- 6 files changed, 17 insertions(+), 21 deletions(-) diff --git a/libraries/effect/src/main/java/androidx/media3/effect/DefaultVideoCompositor.java b/libraries/effect/src/main/java/androidx/media3/effect/DefaultVideoCompositor.java index 70f0f76a71..778e612d4a 100644 --- a/libraries/effect/src/main/java/androidx/media3/effect/DefaultVideoCompositor.java +++ b/libraries/effect/src/main/java/androidx/media3/effect/DefaultVideoCompositor.java @@ -27,7 +27,6 @@ import android.opengl.EGLDisplay; import android.opengl.EGLSurface; import android.opengl.GLES20; import android.util.SparseArray; - import androidx.annotation.GuardedBy; import androidx.annotation.IntRange; import androidx.annotation.Nullable; @@ -43,18 +42,15 @@ import androidx.media3.common.util.LongArrayQueue; import androidx.media3.common.util.Size; import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.Util; - import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; - -import org.checkerframework.checker.nullness.qual.MonotonicNonNull; - import java.io.IOException; import java.util.ArrayDeque; import java.util.Iterator; import java.util.List; import java.util.Queue; import java.util.concurrent.ExecutorService; +import org.checkerframework.checker.nullness.qual.MonotonicNonNull; /** * A basic {@link VideoCompositor} implementation that takes in frames from input sources' streams @@ -146,9 +142,9 @@ public final class DefaultVideoCompositor implements VideoCompositor { } @Override - public synchronized int registerInputSource(int sequenceId) { - inputSources.put(sequenceId, new InputSource()); - return sequenceId; + public synchronized int registerInputSource(int sequenceIndex) { + inputSources.put(sequenceIndex, new InputSource()); + return sequenceIndex; } @Override diff --git a/libraries/effect/src/main/java/androidx/media3/effect/MultipleInputVideoGraph.java b/libraries/effect/src/main/java/androidx/media3/effect/MultipleInputVideoGraph.java index 8e76ee146d..20542cb4f6 100644 --- a/libraries/effect/src/main/java/androidx/media3/effect/MultipleInputVideoGraph.java +++ b/libraries/effect/src/main/java/androidx/media3/effect/MultipleInputVideoGraph.java @@ -257,7 +257,6 @@ public abstract class MultipleInputVideoGraph implements VideoGraph { onPreProcessingVideoFrameProcessorEnded(videoCompositorInputId); } }); - preProcessors.put(videoCompositorInputId, preProcessor); return videoCompositorInputId; } diff --git a/libraries/effect/src/main/java/androidx/media3/effect/VideoCompositor.java b/libraries/effect/src/main/java/androidx/media3/effect/VideoCompositor.java index 13ed072bb7..198a7d566d 100644 --- a/libraries/effect/src/main/java/androidx/media3/effect/VideoCompositor.java +++ b/libraries/effect/src/main/java/androidx/media3/effect/VideoCompositor.java @@ -49,10 +49,10 @@ public interface VideoCompositor extends GlTextureProducer { * Registers a new input source, and returns a unique {@code inputId} corresponding to this * source, to be used in {@link #queueInputTexture}. * - * @param sequenceId The sequence ID of the input source, which is can be used to determine the - * order of the input sources. + * @param sequenceIndex The sequence index of the input source, which is can be used to determine + * the order of the input sources. */ - int registerInputSource(int sequenceId); + int registerInputSource(int sequenceIndex); /** * Signals that no more frames will come from the upstream {@link GlTextureProducer.Listener}. * diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/SampleExporter.java b/libraries/transformer/src/main/java/androidx/media3/transformer/SampleExporter.java index 276caef733..e11f0fcd02 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/SampleExporter.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/SampleExporter.java @@ -67,7 +67,8 @@ import java.util.List; * @param sequenceIndex The sequence index of the input. * @throws ExportException If an error occurs getting the input. */ - public abstract GraphInput getInput(EditedMediaItem editedMediaItem, Format format, int sequenceIndex) throws ExportException; + public abstract GraphInput getInput( + EditedMediaItem editedMediaItem, Format format, int sequenceIndex) throws ExportException; /** * Processes the input data and returns whether it may be possible to process more data by calling diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java b/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java index d40df2a4ca..f840801b26 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java @@ -637,7 +637,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; } GraphInput sampleExporterInput = - sampleExporter.getInput(firstEditedMediaItem, assetLoaderOutputFormat, sequenceIndex); + sampleExporter.getInput(firstEditedMediaItem, assetLoaderOutputFormat, sequenceIndex); OnMediaItemChangedListener onMediaItemChangedListener = (editedMediaItem, durationUs, decodedFormat, isLast) -> { onMediaItemChanged(trackType, durationUs, isLast); diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/VideoSampleExporter.java b/libraries/transformer/src/main/java/androidx/media3/transformer/VideoSampleExporter.java index 0556bdf65f..9784af9cbe 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/VideoSampleExporter.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/VideoSampleExporter.java @@ -59,8 +59,6 @@ import java.util.Objects; import org.checkerframework.checker.initialization.qual.Initialized; import org.checkerframework.checker.nullness.qual.MonotonicNonNull; import org.checkerframework.dataflow.qual.Pure; -import java.nio.ByteBuffer; -import java.util.List; /** Processes, encodes and muxes raw video frames. */ /* package */ final class VideoSampleExporter extends SampleExporter { @@ -276,14 +274,16 @@ import java.util.List; ImmutableList hdrEncoders = getSupportedEncodersForHdrEditing(requestedOutputMimeType, inputFormat.colorInfo); if (hdrEncoders.isEmpty()) { - // Fallback H.265/HEVC codecs for HDR content to avoid tonemapping. - hdrEncoders = - getSupportedEncodersForHdrEditing(MimeTypes.VIDEO_H265, inputFormat.colorInfo); + @Nullable + String alternativeMimeType = MediaCodecUtil.getAlternativeCodecMimeType(inputFormat); + if (alternativeMimeType != null) { + requestedOutputMimeType = alternativeMimeType; + hdrEncoders = + getSupportedEncodersForHdrEditing(alternativeMimeType, inputFormat.colorInfo); + } } if (hdrEncoders.isEmpty()) { hdrMode = HDR_MODE_TONE_MAP_HDR_TO_SDR_USING_OPEN_GL; - } else { - requestedOutputMimeType = MimeTypes.VIDEO_H265; } }