mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00
Compare commits
No commits in common. "a7c897003c35e8db816c470131f548081fc9b02e" and "4d68243158b04644b33113fe8a9514cb81b8b41c" have entirely different histories.
a7c897003c
...
4d68243158
@ -9,8 +9,6 @@
|
||||
scrubber bar around). The behavior of scrubbing mode can be customized
|
||||
with `setScrubbingModeParameters(..)` on `ExoPlayer` and
|
||||
`ExoPlayer.Builder`.
|
||||
* Fix bug where prepare errors in the content of `AdsMediaSource` may be
|
||||
never reported ([#2337](https://github.com/androidx/media/issues/2337)).
|
||||
* Transformer:
|
||||
* Filling an initial gap (added via `addGap()`) with silent audio now
|
||||
requires explicitly setting `experimentalSetForceAudioTrack(true)` in
|
||||
|
@ -102,6 +102,13 @@ public final class MaskingMediaSource extends WrappingMediaSource {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("MissingSuperCall")
|
||||
public void maybeThrowSourceInfoRefreshError() {
|
||||
// Do nothing. Source info refresh errors will be thrown when calling
|
||||
// MaskingMediaPeriod.maybeThrowPrepareError.
|
||||
}
|
||||
|
||||
@Override
|
||||
public MaskingMediaPeriod createPeriod(
|
||||
MediaPeriodId id, Allocator allocator, long startPositionUs) {
|
||||
|
@ -16818,27 +16818,6 @@ public final class ExoPlayerTest {
|
||||
assertThat(shouldRendererThrowRecoverableError.get()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void prepareMaskingMediaSource_withRealSourcePrepareError_reportsPlaybackException()
|
||||
throws Exception {
|
||||
ExoPlayer player = new TestExoPlayerBuilder(context).build();
|
||||
FakeMediaSource realSourceWithPrepareFailure =
|
||||
new FakeMediaSource() {
|
||||
@Override
|
||||
public void maybeThrowSourceInfoRefreshError() throws IOException {
|
||||
throw new IOException();
|
||||
}
|
||||
};
|
||||
realSourceWithPrepareFailure.setAllowPreparation(false);
|
||||
MediaSource maskingMediaSource =
|
||||
new MaskingMediaSource(realSourceWithPrepareFailure, /* useLazyPreparation= */ false);
|
||||
player.setMediaSource(maskingMediaSource);
|
||||
|
||||
player.prepare();
|
||||
// Assert the prepare error is reported.
|
||||
advance(player).untilPlayerError();
|
||||
}
|
||||
|
||||
// Internal methods.
|
||||
|
||||
private void addWatchAsSystemFeature() {
|
||||
|
@ -113,7 +113,6 @@ public final class AndroidTestUtil {
|
||||
protected PlaybackVideoGraphWrapper createPlaybackVideoGraphWrapper(
|
||||
Context context, VideoFrameReleaseControl videoFrameReleaseControl) {
|
||||
return new PlaybackVideoGraphWrapper.Builder(context, videoFrameReleaseControl)
|
||||
.setEnablePlaylistMode(true)
|
||||
.setClock(getClock())
|
||||
.setEnableReplayableCache(true)
|
||||
.build();
|
||||
|
Loading…
x
Reference in New Issue
Block a user