Implement audioNeedsEncoding based on requested settings

Do not use ForceEncodeFactory in tests

PiperOrigin-RevId: 705835243
This commit is contained in:
dancho 2024-12-13 04:20:45 -08:00 committed by Copybara-Service
parent 07b658a6da
commit 72672b7f87
2 changed files with 13 additions and 10 deletions

View File

@ -2356,11 +2356,10 @@ public class TransformerEndToEndTest {
Transformer transformer =
new Transformer.Builder(context)
.setEncoderFactory(
new AndroidTestUtil.ForceEncodeEncoderFactory(
new DefaultEncoderFactory.Builder(context)
.setRequestedAudioEncoderSettings(
new AudioEncoderSettings.Builder().setProfile(AACObjectHE).build())
.build()))
new DefaultEncoderFactory.Builder(context)
.setRequestedAudioEncoderSettings(
new AudioEncoderSettings.Builder().setProfile(AACObjectHE).build())
.build())
.build();
MediaItem mediaItem = new MediaItem.Builder().setUri(MP4_ASSET.uri).build();
EditedMediaItem editedMediaItem =
@ -2392,11 +2391,10 @@ public class TransformerEndToEndTest {
new Transformer.Builder(context)
.setMuxerFactory(new InAppMuxer.Factory.Builder().build())
.setEncoderFactory(
new AndroidTestUtil.ForceEncodeEncoderFactory(
new DefaultEncoderFactory.Builder(context)
.setRequestedAudioEncoderSettings(
new AudioEncoderSettings.Builder().setBitrate(requestedBitrate).build())
.build()))
new DefaultEncoderFactory.Builder(context)
.setRequestedAudioEncoderSettings(
new AudioEncoderSettings.Builder().setBitrate(requestedBitrate).build())
.build())
.build();
MediaItem mediaItem = new MediaItem.Builder().setUri(MP4_ASSET.uri).build();
EditedMediaItem editedMediaItem =

View File

@ -391,6 +391,11 @@ public final class DefaultEncoderFactory implements Codec.EncoderFactory {
/* outputSurface= */ null);
}
@Override
public boolean audioNeedsEncoding() {
return !requestedAudioEncoderSettings.equals(AudioEncoderSettings.DEFAULT);
}
@Override
public boolean videoNeedsEncoding() {
return !requestedVideoEncoderSettings.equals(VideoEncoderSettings.DEFAULT);