Skip to content

Commit 5911eae

Browse files
committed
Fixes UI update issues
1 parent 048ea60 commit 5911eae

4 files changed

Lines changed: 59 additions & 7 deletions

File tree

FlyleafLib/FlyleafLib.xml

Lines changed: 47 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

FlyleafLib/MediaPlayer/Player.Screamers.cs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -298,14 +298,17 @@ private void Screamer()
298298
}
299299

300300
VideoDecoder.Frames.TryDequeue(out vFrame);
301-
if (vFrame != null) vFrame.timestamp = (long) (vFrame.timestamp / Speed);
301+
if (Speed != 1 && vFrame != null)
302+
vFrame.timestamp = (long) (vFrame.timestamp / Speed);
302303
}
303304
else if (vDistanceMs < -2)
304305
{
305306
Video.framesDropped++;
306307
VideoDecoder.DisposeFrame(vFrame);
307308
VideoDecoder.Frames.TryDequeue(out vFrame);
308-
if (vFrame != null) vFrame.timestamp = (long) (vFrame.timestamp / Speed);
309+
if (Speed != 1 && vFrame != null)
310+
vFrame.timestamp = (long) (vFrame.timestamp / Speed);
311+
309312
Log($"vDistanceMs 2 |-> {vDistanceMs}");
310313

311314
if (vDistanceMs < -10)
@@ -530,11 +533,11 @@ private void ScreamerAudioOnly()
530533

531534
if (aDistanceMs > 100)
532535
{
533-
if (Master.UICurTimePerSecond && (
534-
(mainDemuxer.HLSPlaylist == null && curTime / 10000000 != _CurTime / 10000000) ||
536+
if (Master.UICurTimePerSecond && (
537+
(mainDemuxer.HLSPlaylist == null && curTime / 10000000 != _CurTime / 10000000) ||
535538
(mainDemuxer.HLSPlaylist != null && Math.Abs(elapsedTicks - elapsedSec) > 10000000)))
536539
{
537-
elapsedSec = elapsedTicks;
540+
elapsedSec = elapsedTicks;
538541
UI(() => UpdateCurTime());
539542
}
540543

FlyleafLib/MediaPlayer/Player.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,10 @@ internal void UpdateCurTime()
174174
Set(ref _CurTime, curTime, true, nameof(CurTime));
175175

176176
if (_BufferedDuration != mainDemuxer.BufferedDuration)
177+
{
178+
_BufferedDuration = mainDemuxer.BufferedDuration;
177179
Raise(nameof(BufferedDuration));
180+
}
178181
}
179182

180183
/// <summary>

FlyleafLib/MediaPlayer/Video.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ internal AspectRatio
7272
internal int _Height, height;
7373

7474
public bool VideoAcceleration
75-
{ get => _VideoAcceleration;internal set => Set(ref _VideoAcceleration, value); }
75+
{ get => videoAcceleration;internal set => Set(ref _VideoAcceleration, value); }
7676
internal bool _VideoAcceleration, videoAcceleration;
7777

7878
Action uiAction;

0 commit comments

Comments
 (0)