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 fe5c02be6..944373f66 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 @@ -195,7 +195,7 @@ public class CastActivity extends BaseActivity implements CustomKeyDownCast.List } private void onDecode() { - mPlayers.toggleDecode(); + mPlayers.toggleDecode(mBinding.exo); setDecode(); onReset(); } @@ -347,7 +347,7 @@ public class CastActivity extends BaseActivity implements CustomKeyDownCast.List private void onCheck(ErrorEvent event) { if (event.getCode() == PlaybackException.ERROR_CODE_IO_UNSPECIFIED || event.getCode() >= PlaybackException.ERROR_CODE_PARSING_CONTAINER_MALFORMED && event.getCode() <= PlaybackException.ERROR_CODE_PARSING_MANIFEST_UNSUPPORTED) mPlayers.setFormat(ExoUtil.getMimeType(event.getCode())); else if (event.getCode() == PlaybackException.ERROR_CODE_BEHIND_LIVE_WINDOW) mPlayers.seekTo(C.TIME_UNSET); - else mPlayers.toggleDecode(); + else mPlayers.toggleDecode(mBinding.exo); mPlayers.setMediaItem(); setDecode(); } 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 01b292100..c9e455fbe 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 @@ -385,7 +385,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick } private void onDecode() { - mPlayers.toggleDecode(); + mPlayers.toggleDecode(mBinding.exo); setDecode(); fetch(); } @@ -749,7 +749,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick private void onCheck(ErrorEvent event) { if (event.getCode() == PlaybackException.ERROR_CODE_IO_UNSPECIFIED || event.getCode() >= PlaybackException.ERROR_CODE_PARSING_CONTAINER_MALFORMED && event.getCode() <= PlaybackException.ERROR_CODE_PARSING_MANIFEST_UNSUPPORTED) mPlayers.setFormat(ExoUtil.getMimeType(event.getCode())); else if (event.getCode() == PlaybackException.ERROR_CODE_BEHIND_LIVE_WINDOW) mPlayers.seekTo(C.TIME_UNSET); - else mPlayers.toggleDecode(); + else mPlayers.toggleDecode(mBinding.exo); mPlayers.setMediaItem(); setDecode(); } 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 3d7febc13..3a9c87a95 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 @@ -843,7 +843,7 @@ public class VideoActivity extends BaseActivity implements CustomKeyDownVod.List } private void onDecode() { - mPlayers.toggleDecode(); + mPlayers.toggleDecode(mBinding.exo); setDecode(); onRefresh(); } @@ -1143,7 +1143,7 @@ public class VideoActivity extends BaseActivity implements CustomKeyDownVod.List private void onCheck(ErrorEvent event) { if (event.getCode() == PlaybackException.ERROR_CODE_IO_UNSPECIFIED || event.getCode() >= PlaybackException.ERROR_CODE_PARSING_CONTAINER_MALFORMED && event.getCode() <= PlaybackException.ERROR_CODE_PARSING_MANIFEST_UNSUPPORTED) mPlayers.setFormat(ExoUtil.getMimeType(event.getCode())); else if (event.getCode() == PlaybackException.ERROR_CODE_BEHIND_LIVE_WINDOW) mPlayers.seekTo(C.TIME_UNSET); - else mPlayers.toggleDecode(); + else mPlayers.toggleDecode(mBinding.exo); mPlayers.setMediaItem(); setDecode(); } 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 31797b7d0..8e000d87e 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 @@ -277,8 +277,9 @@ public class Players implements Player.Listener, ParseCallback { return setSpeed(speed); } - public void toggleDecode() { + public void toggleDecode(PlayerView exo) { Setting.putDecode(decode = isHard() ? SOFT : HARD); + init(exo); } public String getPositionTime(long time) { diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java index 88b11f670..fd2d02ce7 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java @@ -416,7 +416,7 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List } private void onDecode() { - mPlayers.toggleDecode(); + mPlayers.toggleDecode(mBinding.exo); setR1Callback(); setDecode(); fetch(); @@ -808,7 +808,7 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List private void onCheck(ErrorEvent event) { if (event.getCode() == PlaybackException.ERROR_CODE_IO_UNSPECIFIED || event.getCode() >= PlaybackException.ERROR_CODE_PARSING_CONTAINER_MALFORMED && event.getCode() <= PlaybackException.ERROR_CODE_PARSING_MANIFEST_UNSUPPORTED) mPlayers.setFormat(ExoUtil.getMimeType(event.getCode())); else if (event.getCode() == PlaybackException.ERROR_CODE_BEHIND_LIVE_WINDOW) mPlayers.seekTo(C.TIME_UNSET); - else mPlayers.toggleDecode(); + else mPlayers.toggleDecode(mBinding.exo); mPlayers.setMediaItem(); setDecode(); } 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 388409942..495c8c731 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 @@ -773,7 +773,7 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo } private void onDecode() { - mPlayers.toggleDecode(); + mPlayers.toggleDecode(mBinding.exo); setR1Callback(); setDecode(); onRefresh(); @@ -1163,7 +1163,7 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo private void onCheck(ErrorEvent event) { if (event.getCode() == PlaybackException.ERROR_CODE_IO_UNSPECIFIED || event.getCode() >= PlaybackException.ERROR_CODE_PARSING_CONTAINER_MALFORMED && event.getCode() <= PlaybackException.ERROR_CODE_PARSING_MANIFEST_UNSUPPORTED) mPlayers.setFormat(ExoUtil.getMimeType(event.getCode())); else if (event.getCode() == PlaybackException.ERROR_CODE_BEHIND_LIVE_WINDOW) mPlayers.seekTo(C.TIME_UNSET); - else mPlayers.toggleDecode(); + else mPlayers.toggleDecode(mBinding.exo); mPlayers.setMediaItem(); setDecode(); }