Remove deprecated Transformer.Listener methods

Methods were deprecated between Media3 1.0.0 and Media3 1.1.0.

PiperOrigin-RevId: 690656410
This commit is contained in:
shahddaghash 2024-10-28 10:06:32 -07:00 committed by Copybara-Service
parent 4601a42aee
commit 772bd20f7d
6 changed files with 25 additions and 183 deletions

View file

@ -88,6 +88,21 @@
`EditedMediaItem` passed to `Transformer.start()` instead.
* `setListener()`, use `addListener()`, `removeListener()` or
`removeAllListeners()` instead.
* Remove the following deprecated `Tansformer.Listener` methods:
* `onTransformationCompleted(MediaItem)`, use
`onCompleted(Composition, ExportResult)` instead.
* `onTransformationCompleted(MediaItem, TransformationResult)`, use
`onCompleted(Composition, ExportResult)` instead.
* `onTransformationError(MediaItem, Exception)`, use
`onError(Composition, ExportResult, ExportException)` instead.
* `onTransformationError(MediaItem, TransformationException)`, use
`onError(Composition, ExportResult, ExportException)` instead.
* `onTransformationError(MediaItem, TransformationResult,
TransformationException)`, use `onError(Composition, ExportResult,
ExportException)` instead.
* `onFallbackApplied(MediaItem, TransformationRequest,
TransformationRequest)`, use `onFallbackApplied(Composition,
TransformationRequest, TransformationRequest)` instead.
## 1.5

View file

@ -373,7 +373,7 @@ public class TransformerAndroidTestRunner {
@Override
public void onFallbackApplied(
MediaItem inputMediaItem,
Composition composition,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {
// Note: As TransformationRequest only reports the output height but not the

View file

@ -303,7 +303,7 @@ public final class HdrEditingTest {
new Transformer.Listener() {
@Override
public void onFallbackApplied(
MediaItem inputMediaItem,
Composition composition,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {
isFallbackListenerInvoked.set(true);
@ -361,7 +361,7 @@ public final class HdrEditingTest {
new Transformer.Listener() {
@Override
public void onFallbackApplied(
MediaItem inputMediaItem,
Composition composition,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {
assertThat(originalTransformationRequest.hdrMode).isEqualTo(HDR_MODE_KEEP_HDR);

View file

@ -74,7 +74,7 @@ public class ToneMapHdrToSdrUsingMediaCodecTest {
new Transformer.Listener() {
@Override
public void onFallbackApplied(
MediaItem inputMediaItem,
Composition composition,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {
// Tone mapping flag shouldn't change in fallback when tone mapping is
@ -134,7 +134,7 @@ public class ToneMapHdrToSdrUsingMediaCodecTest {
new Transformer.Listener() {
@Override
public void onFallbackApplied(
MediaItem inputMediaItem,
Composition composition,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {
// Tone mapping flag shouldn't change in fallback when tone mapping is
@ -195,7 +195,7 @@ public class ToneMapHdrToSdrUsingMediaCodecTest {
new Transformer.Listener() {
@Override
public void onFallbackApplied(
MediaItem inputMediaItem,
Composition composition,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {
// Tone mapping flag shouldn't change in fallback when tone mapping is
@ -256,7 +256,7 @@ public class ToneMapHdrToSdrUsingMediaCodecTest {
new Transformer.Listener() {
@Override
public void onFallbackApplied(
MediaItem inputMediaItem,
Composition composition,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {
// Tone mapping flag shouldn't change in fallback when tone mapping is

View file

@ -582,58 +582,13 @@ public final class Transformer {
*/
public interface Listener {
/**
* @deprecated Use {@link #onCompleted(Composition, ExportResult)} instead.
*/
@Deprecated
default void onTransformationCompleted(MediaItem inputMediaItem) {}
/**
* @deprecated Use {@link #onCompleted(Composition, ExportResult)} instead.
*/
@SuppressWarnings("deprecation") // Using deprecated type in callback
@Deprecated
default void onTransformationCompleted(MediaItem inputMediaItem, TransformationResult result) {
onTransformationCompleted(inputMediaItem);
}
/**
* Called when the export is completed successfully.
*
* @param composition The {@link Composition} for which the export is completed.
* @param exportResult The {@link ExportResult} of the export.
*/
@SuppressWarnings("deprecation") // Calling deprecated listener method.
default void onCompleted(Composition composition, ExportResult exportResult) {
MediaItem mediaItem = composition.sequences.get(0).editedMediaItems.get(0).mediaItem;
onTransformationCompleted(mediaItem, new TransformationResult.Builder(exportResult).build());
}
/**
* @deprecated Use {@link #onError(Composition, ExportResult, ExportException)} instead.
*/
@Deprecated
default void onTransformationError(MediaItem inputMediaItem, Exception exception) {}
/**
* @deprecated Use {@link #onError(Composition, ExportResult, ExportException)} instead.
*/
@SuppressWarnings("deprecation") // Using deprecated type in callback
@Deprecated
default void onTransformationError(
MediaItem inputMediaItem, TransformationException exception) {
onTransformationError(inputMediaItem, (Exception) exception);
}
/**
* @deprecated Use {@link #onError(Composition, ExportResult, ExportException)} instead.
*/
@SuppressWarnings("deprecation") // Using deprecated type in callback
@Deprecated
default void onTransformationError(
MediaItem inputMediaItem, TransformationResult result, TransformationException exception) {
onTransformationError(inputMediaItem, exception);
}
default void onCompleted(Composition composition, ExportResult exportResult) {}
/**
* Called if an exception occurs during the export.
@ -645,25 +600,8 @@ public final class Transformer {
* @param exportException The {@link ExportException} describing the exception. This is the same
* instance as the {@linkplain ExportResult#exportException exception} in {@code result}.
*/
@SuppressWarnings("deprecation") // Calling deprecated listener method.
default void onError(
Composition composition, ExportResult exportResult, ExportException exportException) {
MediaItem mediaItem = composition.sequences.get(0).editedMediaItems.get(0).mediaItem;
onTransformationError(
mediaItem,
new TransformationResult.Builder(exportResult).build(),
new TransformationException(exportException));
}
/**
* @deprecated Use {@link #onFallbackApplied(Composition, TransformationRequest,
* TransformationRequest)} instead.
*/
@Deprecated
default void onFallbackApplied(
MediaItem inputMediaItem,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {}
Composition composition, ExportResult exportResult, ExportException exportException) {}
/**
* Called when falling back to an alternative {@link TransformationRequest} or changing the
@ -677,14 +615,10 @@ public final class Transformer {
* TransformationRequest#videoMimeType}, {@link TransformationRequest#outputHeight}, and
* {@link TransformationRequest#hdrMode} values set.
*/
@SuppressWarnings("deprecation") // Calling deprecated listener method.
default void onFallbackApplied(
Composition composition,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {
MediaItem mediaItem = composition.sequences.get(0).editedMediaItems.get(0).mediaItem;
onFallbackApplied(mediaItem, originalTransformationRequest, fallbackTransformationRequest);
}
TransformationRequest fallbackTransformationRequest) {}
}
/**

View file

@ -102,7 +102,6 @@ import java.util.Map;
import java.util.concurrent.ConcurrentLinkedDeque;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeoutException;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
import org.junit.After;
@ -723,112 +722,6 @@ public final class MediaItemExportTest {
composition, originalTransformationRequest, fallbackTransformationRequest);
}
@Test
public void start_success_callsDeprecatedCompletionCallbacks() throws Exception {
CapturingMuxer.Factory muxerFactory = new CapturingMuxer.Factory(/* handleAudioAsPcm= */ false);
AtomicBoolean deprecatedFallbackCalled1 = new AtomicBoolean();
AtomicBoolean deprecatedFallbackCalled2 = new AtomicBoolean();
Transformer transformer =
createTransformerBuilder(muxerFactory, /* enableFallback= */ false)
.addListener(
new Transformer.Listener() {
@Override
public void onTransformationCompleted(MediaItem inputMediaItem) {
deprecatedFallbackCalled1.set(true);
}
})
.addListener(
new Transformer.Listener() {
@Override
public void onTransformationCompleted(
MediaItem inputMediaItem, TransformationResult result) {
deprecatedFallbackCalled2.set(true);
}
})
.build();
MediaItem mediaItem = MediaItem.fromUri(ASSET_URI_PREFIX + FILE_AUDIO_VIDEO);
transformer.start(mediaItem, outputDir.newFile().getPath());
TransformerTestRunner.runLooper(transformer);
assertThat(deprecatedFallbackCalled1.get()).isTrue();
assertThat(deprecatedFallbackCalled2.get()).isTrue();
}
@Test
public void start_withError_callsDeprecatedErrorCallbacks() throws Exception {
CapturingMuxer.Factory muxerFactory = new CapturingMuxer.Factory(/* handleAudioAsPcm= */ false);
AtomicBoolean deprecatedFallbackCalled1 = new AtomicBoolean();
AtomicBoolean deprecatedFallbackCalled2 = new AtomicBoolean();
AtomicBoolean deprecatedFallbackCalled3 = new AtomicBoolean();
Transformer transformer =
createTransformerBuilder(muxerFactory, /* enableFallback= */ false)
.addListener(
new Transformer.Listener() {
@Override
public void onTransformationError(MediaItem inputMediaItem, Exception exception) {
deprecatedFallbackCalled1.set(true);
}
})
.addListener(
new Transformer.Listener() {
@Override
public void onTransformationError(
MediaItem inputMediaItem, TransformationException exception) {
deprecatedFallbackCalled2.set(true);
}
})
.addListener(
new Transformer.Listener() {
@Override
public void onTransformationError(
MediaItem inputMediaItem,
TransformationResult result,
TransformationException exception) {
deprecatedFallbackCalled3.set(true);
}
})
.build();
MediaItem mediaItem = MediaItem.fromUri("invalid.uri");
transformer.start(mediaItem, outputDir.newFile().getPath());
try {
TransformerTestRunner.runLooper(transformer);
} catch (ExportException exportException) {
// Ignore exception thrown.
}
assertThat(deprecatedFallbackCalled1.get()).isTrue();
assertThat(deprecatedFallbackCalled2.get()).isTrue();
assertThat(deprecatedFallbackCalled3.get()).isTrue();
}
@Test
public void start_withFallback_callsDeprecatedFallbackCallbacks() throws Exception {
CapturingMuxer.Factory muxerFactory = new CapturingMuxer.Factory(/* handleAudioAsPcm= */ true);
AtomicBoolean deprecatedFallbackCalled = new AtomicBoolean();
Transformer transformer =
createTransformerBuilder(muxerFactory, /* enableFallback= */ true)
.addListener(
new Transformer.Listener() {
@Override
public void onFallbackApplied(
MediaItem inputMediaItem,
TransformationRequest originalTransformationRequest,
TransformationRequest fallbackTransformationRequest) {
deprecatedFallbackCalled.set(true);
}
})
.build();
// No RAW encoder/muxer support, so fallback.
transformer.start(
MediaItem.fromUri(ASSET_URI_PREFIX + FILE_AUDIO_RAW), outputDir.newFile().getPath());
TransformerTestRunner.runLooper(transformer);
assertThat(deprecatedFallbackCalled.get()).isTrue();
}
@Test
public void start_afterBuildUponWithListenerRemoved_onlyCallsRemainingListeners()
throws Exception {