Extract MuxerException into a separate file

This is to avoid very long name as the FQN earlier
contained muxer 3 times

PiperOrigin-RevId: 707591813
This commit is contained in:
sheenachhabra 2024-12-18 10:18:55 -08:00 committed by Copybara-Service
parent c3b58f2434
commit 44aa87c832
14 changed files with 50 additions and 26 deletions

View File

@ -87,6 +87,8 @@
`StaticOverlaySettings`. `OverlaySettings` can be subclassed to allow `StaticOverlaySettings`. `OverlaySettings` can be subclassed to allow
dynamic overlay settings. dynamic overlay settings.
* Muxers: * Muxers:
* Moved `MuxerException` out of `Muxer` interface to avoid a very long
fully qualified name.
* IMA extension: * IMA extension:
* Session: * Session:
* Add 'Context' as a parameter to * Add 'Context' as a parameter to

View File

@ -20,7 +20,6 @@ import android.content.res.AssetFileDescriptor;
import android.media.MediaCodec; import android.media.MediaCodec;
import androidx.media3.common.util.MediaFormatUtil; import androidx.media3.common.util.MediaFormatUtil;
import androidx.media3.exoplayer.MediaExtractorCompat; import androidx.media3.exoplayer.MediaExtractorCompat;
import androidx.media3.muxer.Muxer.MuxerException;
import java.io.IOException; import java.io.IOException;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -18,7 +18,6 @@ package androidx.media3.muxer;
import android.media.MediaCodec.BufferInfo; import android.media.MediaCodec.BufferInfo;
import androidx.media3.common.C; import androidx.media3.common.C;
import androidx.media3.common.Format; import androidx.media3.common.Format;
import androidx.media3.common.MediaLibraryInfo;
import androidx.media3.common.Metadata; import androidx.media3.common.Metadata;
import androidx.media3.common.MimeTypes; import androidx.media3.common.MimeTypes;
import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.UnstableApi;
@ -28,24 +27,6 @@ import java.nio.ByteBuffer;
/** The muxer for producing media container files. */ /** The muxer for producing media container files. */
@UnstableApi @UnstableApi
public interface Muxer { public interface Muxer {
/** Thrown when a muxer failure occurs. */
final class MuxerException extends Exception {
static {
MediaLibraryInfo.registerModule("media3.muxer");
}
/**
* Creates an instance.
*
* @param message See {@link #getMessage()}.
* @param cause See {@link #getCause()}.
*/
public MuxerException(String message, Throwable cause) {
super(message, cause);
}
}
/** Factory for muxers. */ /** Factory for muxers. */
interface Factory { interface Factory {
/** /**

View File

@ -0,0 +1,38 @@
/*
* Copyright 2024 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package androidx.media3.muxer;
import androidx.media3.common.MediaLibraryInfo;
import androidx.media3.common.util.UnstableApi;
/** Thrown when a muxer failure occurs. */
@UnstableApi
public final class MuxerException extends Exception {
static {
MediaLibraryInfo.registerModule("media3.muxer");
}
/**
* Creates an instance.
*
* @param message See {@link #getMessage()}.
* @param cause See {@link #getCause()}.
*/
public MuxerException(String message, Throwable cause) {
super(message, cause);
}
}

View File

@ -815,7 +815,7 @@ public class Mp4MuxerEndToEndTest {
} }
private static void writeFakeSamples(Mp4Muxer muxer, TrackToken trackToken, int sampleCount) private static void writeFakeSamples(Mp4Muxer muxer, TrackToken trackToken, int sampleCount)
throws Muxer.MuxerException { throws MuxerException {
for (int i = 0; i < sampleCount; i++) { for (int i = 0; i < sampleCount; i++) {
Pair<ByteBuffer, BufferInfo> sampleAndSampleInfo = Pair<ByteBuffer, BufferInfo> sampleAndSampleInfo =
getFakeSampleAndSampleInfo(/* presentationTimeUs= */ i); getFakeSampleAndSampleInfo(/* presentationTimeUs= */ i);

View File

@ -36,7 +36,7 @@ import androidx.media3.common.audio.SonicAudioProcessor;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import androidx.media3.effect.RgbFilter; import androidx.media3.effect.RgbFilter;
import androidx.media3.muxer.Muxer; import androidx.media3.muxer.Muxer;
import androidx.media3.muxer.Muxer.MuxerException; import androidx.media3.muxer.MuxerException;
import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.platform.app.InstrumentationRegistry; import androidx.test.platform.app.InstrumentationRegistry;
import com.google.common.base.Ascii; import com.google.common.base.Ascii;

View File

@ -22,6 +22,7 @@ import androidx.media3.common.Metadata;
import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.UnstableApi;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import androidx.media3.muxer.Muxer; import androidx.media3.muxer.Muxer;
import androidx.media3.muxer.MuxerException;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
import com.google.errorprone.annotations.CanIgnoreReturnValue; import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;

View File

@ -34,6 +34,7 @@ import androidx.media3.common.util.MediaFormatUtil;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import androidx.media3.container.Mp4LocationData; import androidx.media3.container.Mp4LocationData;
import androidx.media3.muxer.Muxer; import androidx.media3.muxer.Muxer;
import androidx.media3.muxer.MuxerException;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
import com.google.errorprone.annotations.CanIgnoreReturnValue; import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.io.IOException; import java.io.IOException;

View File

@ -31,6 +31,7 @@ import androidx.media3.container.Mp4OrientationData;
import androidx.media3.muxer.FragmentedMp4Muxer; import androidx.media3.muxer.FragmentedMp4Muxer;
import androidx.media3.muxer.Mp4Muxer; import androidx.media3.muxer.Mp4Muxer;
import androidx.media3.muxer.Muxer; import androidx.media3.muxer.Muxer;
import androidx.media3.muxer.MuxerException;
import androidx.media3.muxer.MuxerUtil; import androidx.media3.muxer.MuxerUtil;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
import com.google.errorprone.annotations.CanIgnoreReturnValue; import com.google.errorprone.annotations.CanIgnoreReturnValue;

View File

@ -48,8 +48,8 @@ import androidx.media3.common.util.Util;
import androidx.media3.container.NalUnitUtil; import androidx.media3.container.NalUnitUtil;
import androidx.media3.effect.DebugTraceUtil; import androidx.media3.effect.DebugTraceUtil;
import androidx.media3.muxer.Muxer; import androidx.media3.muxer.Muxer;
import androidx.media3.muxer.Muxer.MuxerException;
import androidx.media3.muxer.Muxer.TrackToken; import androidx.media3.muxer.Muxer.TrackToken;
import androidx.media3.muxer.MuxerException;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
import java.io.File; import java.io.File;
import java.lang.annotation.Documented; import java.lang.annotation.Documented;

View File

@ -31,7 +31,7 @@ import androidx.media3.common.Format;
import androidx.media3.common.Metadata; import androidx.media3.common.Metadata;
import androidx.media3.common.MimeTypes; import androidx.media3.common.MimeTypes;
import androidx.media3.decoder.DecoderInputBuffer; import androidx.media3.decoder.DecoderInputBuffer;
import androidx.media3.muxer.Muxer.MuxerException; import androidx.media3.muxer.MuxerException;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet; import com.google.common.collect.ImmutableSet;
import java.util.List; import java.util.List;

View File

@ -65,7 +65,7 @@ import androidx.media3.common.util.ConditionVariable;
import androidx.media3.common.util.HandlerWrapper; import androidx.media3.common.util.HandlerWrapper;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import androidx.media3.effect.DebugTraceUtil; import androidx.media3.effect.DebugTraceUtil;
import androidx.media3.muxer.Muxer.MuxerException; import androidx.media3.muxer.MuxerException;
import androidx.media3.transformer.AssetLoader.CompositionSettings; import androidx.media3.transformer.AssetLoader.CompositionSettings;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
import java.lang.annotation.Documented; import java.lang.annotation.Documented;

View File

@ -27,6 +27,7 @@ import androidx.media3.common.Format;
import androidx.media3.common.Metadata; import androidx.media3.common.Metadata;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import androidx.media3.muxer.Muxer; import androidx.media3.muxer.Muxer;
import androidx.media3.muxer.MuxerException;
import androidx.media3.test.utils.DumpableFormat; import androidx.media3.test.utils.DumpableFormat;
import androidx.media3.test.utils.Dumper; import androidx.media3.test.utils.Dumper;
import androidx.media3.test.utils.Dumper.Dumpable; import androidx.media3.test.utils.Dumper.Dumpable;

View File

@ -30,7 +30,7 @@ import androidx.annotation.Nullable;
import androidx.media3.common.C; import androidx.media3.common.C;
import androidx.media3.common.ColorInfo; import androidx.media3.common.ColorInfo;
import androidx.media3.common.Format; import androidx.media3.common.Format;
import androidx.media3.muxer.Muxer.MuxerException; import androidx.media3.muxer.MuxerException;
import androidx.media3.test.utils.DumpFileAsserts; import androidx.media3.test.utils.DumpFileAsserts;
import androidx.test.core.app.ApplicationProvider; import androidx.test.core.app.ApplicationProvider;
import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.ext.junit.runners.AndroidJUnit4;