diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/CastActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/CastActivity.java index 2d19dae71..f6a1cdf4d 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/CastActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/CastActivity.java @@ -338,8 +338,7 @@ public class CastActivity extends BaseActivity implements CustomKeyDownCast.List @Subscribe(threadMode = ThreadMode.MAIN) public void onErrorEvent(ErrorEvent event) { - if (event.getCode() / 1000 == 4 && mPlayers.isHard()) onDecode(); - else if (mPlayers.error()) onError(event); + if (mPlayers.error()) onError(event); else onReset(); } diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java index 6a902affe..d1a8304f6 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java @@ -727,8 +727,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick @Subscribe(threadMode = ThreadMode.MAIN) public void onErrorEvent(ErrorEvent event) { - if (event.getCode() / 1000 == 4 && mPlayers.isHard()) onDecode(); - else if (mPlayers.error()) onError(event); + if (mPlayers.error()) onError(event); else fetch(); } diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java index 046571fb4..74f160603 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java @@ -1132,8 +1132,7 @@ public class VideoActivity extends BaseActivity implements CustomKeyDownVod.List @Subscribe(threadMode = ThreadMode.MAIN) public void onErrorEvent(ErrorEvent event) { if (isBackground()) return; - if (event.getCode() / 1000 == 4 && mPlayers.isHard()) onDecode(); - else if (mPlayers.error()) onError(event); + if (mPlayers.error()) onError(event); else onRefresh(); } diff --git a/app/src/main/java/com/fongmi/android/tv/player/Players.java b/app/src/main/java/com/fongmi/android/tv/player/Players.java index 6116d4d2d..99fe71c3d 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/Players.java +++ b/app/src/main/java/com/fongmi/android/tv/player/Players.java @@ -84,10 +84,6 @@ public class Players implements Player.Listener, ParseCallback { return decode == HARD; } - public static boolean isSoft(int decode) { - return decode == SOFT; - } - private Players(Activity activity) { decode = Setting.getDecode(); builder = new StringBuilder(); @@ -220,10 +216,6 @@ public class Players implements Player.Listener, ParseCallback { return getDuration() > 5 * 60 * 1000 && !exoPlayer.isCurrentMediaItemLive(); } - public boolean isHard() { - return decode == HARD; - } - public boolean isPortrait() { return getVideoHeight() > getVideoWidth(); } @@ -398,7 +390,7 @@ public class Players implements Player.Listener, ParseCallback { } private void setMediaItem(Map headers, String url, String format, Drm drm, List subs, int timeout) { - if (exoPlayer != null) exoPlayer.setMediaItem(ExoUtil.getMediaItem(this.headers = checkUa(headers), UrlUtil.uri(this.url = url), ExoUtil.getMimeType(this.format = format, error), drm, checkSub(subs), decode), position); + if (exoPlayer != null) exoPlayer.setMediaItem(ExoUtil.getMediaItem(this.headers = checkUa(headers), UrlUtil.uri(this.url = url), ExoUtil.getMimeType(this.format = format, error), drm, checkSub(subs)), position); if (exoPlayer != null) exoPlayer.prepare(); Logger.t(TAG).d(error + "," + url); App.post(runnable, timeout); diff --git a/app/src/main/java/com/fongmi/android/tv/player/exo/ExoUtil.java b/app/src/main/java/com/fongmi/android/tv/player/exo/ExoUtil.java index 8c685c9a0..907fe70a0 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/exo/ExoUtil.java +++ b/app/src/main/java/com/fongmi/android/tv/player/exo/ExoUtil.java @@ -96,9 +96,8 @@ public class ExoUtil { return errorCode >= PlaybackException.ERROR_CODE_PARSING_CONTAINER_MALFORMED && errorCode <= PlaybackException.ERROR_CODE_PARSING_MANIFEST_UNSUPPORTED ? 2 : errorCode > 999 ? 1 : 0; } - public static MediaItem getMediaItem(Map headers, Uri uri, String mimeType, Drm drm, List subs, int decode) { + public static MediaItem getMediaItem(Map headers, Uri uri, String mimeType, Drm drm, List subs) { MediaItem.Builder builder = new MediaItem.Builder().setUri(uri); - builder.setAllowChunklessPreparation(Players.isHard(decode)); builder.setRequestMetadata(getRequestMetadata(headers, uri)); builder.setSubtitleConfigurations(getSubtitleConfigs(subs)); if (drm != null) builder.setDrmConfiguration(drm.get()); diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java index 487464f1e..6aaf7f8cf 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java @@ -1142,8 +1142,7 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo @Subscribe(threadMode = ThreadMode.MAIN) public void onErrorEvent(ErrorEvent event) { if (isRedirect()) return; - if (event.getCode() / 1000 == 4 && mPlayers.isHard()) onDecode(); - else if (mPlayers.error()) onError(event); + if (mPlayers.error()) onError(event); else onRefresh(); }