mirror of
https://gitlab.futo.org/videostreaming/grayjay.git
synced 2025-08-07 08:39:30 +00:00
Merge branch 'prevent-stutter-for-audio-sources' into 'master'
audio background stutter fix See merge request videostreaming/grayjay!96
This commit is contained in:
commit
dc422eafce
2 changed files with 9 additions and 6 deletions
|
@ -446,7 +446,7 @@ class VideoDetailFragment() : MainFragment() {
|
||||||
val viewDetail = _viewDetail;
|
val viewDetail = _viewDetail;
|
||||||
Logger.i(TAG, "onUserLeaveHint preventPictureInPicture=${viewDetail?.preventPictureInPicture} isCasting=${StateCasting.instance.isCasting} isBackgroundPictureInPicture=${Settings.instance.playback.isBackgroundPictureInPicture()} allowBackground=${viewDetail?.allowBackground}");
|
Logger.i(TAG, "onUserLeaveHint preventPictureInPicture=${viewDetail?.preventPictureInPicture} isCasting=${StateCasting.instance.isCasting} isBackgroundPictureInPicture=${Settings.instance.playback.isBackgroundPictureInPicture()} allowBackground=${viewDetail?.allowBackground}");
|
||||||
|
|
||||||
if(viewDetail?.preventPictureInPicture == false && !StateCasting.instance.isCasting && Settings.instance.playback.isBackgroundPictureInPicture() && !viewDetail.allowBackground) {
|
if(viewDetail?.preventPictureInPicture == false && !StateCasting.instance.isCasting && Settings.instance.playback.isBackgroundPictureInPicture() && !viewDetail.allowBackground && !viewDetail.audioOnly) {
|
||||||
_leavingPiP = false;
|
_leavingPiP = false;
|
||||||
|
|
||||||
val params = _viewDetail?.getPictureInPictureParams();
|
val params = _viewDetail?.getPictureInPictureParams();
|
||||||
|
|
|
@ -194,6 +194,8 @@ class VideoDetailView : ConstraintLayout {
|
||||||
|
|
||||||
val currentUrl get() = video?.url ?: _searchVideo?.url ?: _url;
|
val currentUrl get() = video?.url ?: _searchVideo?.url ?: _url;
|
||||||
|
|
||||||
|
val audioOnly get() = _lastVideoSource == null;
|
||||||
|
|
||||||
private var _liveChat: LiveChatManager? = null;
|
private var _liveChat: LiveChatManager? = null;
|
||||||
private var _videoResumePositionMilliseconds : Long = 0L;
|
private var _videoResumePositionMilliseconds : Long = 0L;
|
||||||
|
|
||||||
|
@ -1084,14 +1086,15 @@ class VideoDetailView : ConstraintLayout {
|
||||||
if(StateCasting.instance.isCasting)
|
if(StateCasting.instance.isCasting)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if(allowBackground)
|
if (allowBackground) {
|
||||||
StatePlayer.instance.startOrUpdateMediaSession(context, video);
|
StatePlayer.instance.startOrUpdateMediaSession(context, video)
|
||||||
else {
|
} else {
|
||||||
when (Settings.instance.playback.backgroundPlay) {
|
when (Settings.instance.playback.backgroundPlay) {
|
||||||
0 -> handlePause();
|
0 -> handlePause();
|
||||||
1 -> {
|
1 -> {
|
||||||
if(!(video?.isLive ?: false) && Settings.instance.playback.backgroundSwitchToAudio)
|
if (video?.isLive != true && Settings.instance.playback.backgroundSwitchToAudio && audioOnly) {
|
||||||
_player.switchToAudioMode();
|
_player.switchToAudioMode()
|
||||||
|
}
|
||||||
StatePlayer.instance.startOrUpdateMediaSession(context, video);
|
StatePlayer.instance.startOrUpdateMediaSession(context, video);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue