Add error code for muxer timeout

PiperOrigin-RevId: 519965132
This commit is contained in:
kimvde 2023-03-28 09:16:15 +00:00 committed by Tianyi Feng
parent fc539da061
commit 49d5955ce1
3 changed files with 10 additions and 2 deletions

View File

@ -69,6 +69,7 @@ public final class ExportException extends Exception {
ERROR_CODE_VIDEO_FRAME_PROCESSING_FAILED,
ERROR_CODE_AUDIO_PROCESSING_FAILED,
ERROR_CODE_MUXING_FAILED,
ERROR_CODE_MUXING_TIMEOUT,
})
public @interface ErrorCode {}
@ -163,6 +164,12 @@ public final class ExportException extends Exception {
/** Caused by a failure while muxing media samples. */
public static final int ERROR_CODE_MUXING_FAILED = 7001;
/**
* Caused by a timeout while muxing media samples.
*
* @see Muxer#getMaxDelayBetweenSamplesMs()
*/
public static final int ERROR_CODE_MUXING_TIMEOUT = 7002;
/* package */ static final ImmutableBiMap<String, @ErrorCode Integer> NAME_TO_ERROR_CODE =
new ImmutableBiMap.Builder<String, @ErrorCode Integer>()
@ -185,6 +192,7 @@ public final class ExportException extends Exception {
.put("ERROR_CODE_VIDEO_FRAME_PROCESSING_FAILED", ERROR_CODE_VIDEO_FRAME_PROCESSING_FAILED)
.put("ERROR_CODE_AUDIO_PROCESSING_FAILED", ERROR_CODE_AUDIO_PROCESSING_FAILED)
.put("ERROR_CODE_MUXING_FAILED", ERROR_CODE_MUXING_FAILED)
.put("ERROR_CODE_MUXING_TIMEOUT", ERROR_CODE_MUXING_TIMEOUT)
.buildOrThrow();
/** Returns the name of a given {@code errorCode}. */

View File

@ -301,7 +301,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
"No output sample written in the last "
+ maxDelayBetweenSamplesMs
+ " milliseconds. Aborting transformation."),
ExportException.ERROR_CODE_MUXING_FAILED));
ExportException.ERROR_CODE_MUXING_TIMEOUT));
},
maxDelayBetweenSamplesMs,
MILLISECONDS);

View File

@ -821,7 +821,7 @@ public final class MediaItemExportTest {
ExportException exception =
assertThrows(ExportException.class, () -> TransformerTestRunner.runLooper(transformer));
assertThat(exception).hasCauseThat().isInstanceOf(IllegalStateException.class);
assertThat(exception.errorCode).isEqualTo(ExportException.ERROR_CODE_MUXING_FAILED);
assertThat(exception.errorCode).isEqualTo(ExportException.ERROR_CODE_MUXING_TIMEOUT);
}
@Test