大家好,又见面了,我是你们的朋友全栈君。
1,新建slider并添加事件
1 public MediaPlayer _mediaPlayer;
2 public Slider _videoSeekSlider;
3 public Text time;
4 float _setVideoSeekSliderValue;
5 private bool _wasPlayingOnScrub;
6
7 void Update()
8 {
9
10 int _all = (int)float.Parse((_mediaPlayer.m_Info.GetDurationMs() * 0.001f).ToString("F1"));
11 TimeSpan allTime = new TimeSpan(0, 0, _all);
12
13 int _current = (int)float.Parse((_mediaPlayer.m_Control.GetCurrentTimeMs() * 0.001f).ToString("F1"));
14 TimeSpan currentTime = new TimeSpan(0, 0, _current);
15
16 time.text = currentTime.Hours + ":" + currentTime.Minutes + ":" + currentTime.Seconds + "/" + allTime.Hours + ":" + allTime.Minutes + ":" + allTime.Seconds;
17 if (_mediaPlayer && _mediaPlayer.Info != null && _mediaPlayer.Info.GetDurationMs() > 0f)
18 {
19 float time = _mediaPlayer.Control.GetCurrentTimeMs();
20 float d = time / _mediaPlayer.Info.GetDurationMs();
21 _setVideoSeekSliderValue = d;
22 _videoSeekSlider.value = d;
23 }
24 }
25
26 public void OnVideoSeekSlider()
27 {
28 if (_mediaPlayer && _videoSeekSlider && _videoSeekSlider.value != _setVideoSeekSliderValue)
29 {
30 _mediaPlayer.Control.Seek(_videoSeekSlider.value * _mediaPlayer.Info.GetDurationMs());
31 }
32 }
33
34
35 public void OnVideoSliderBegin()
36 {
37 if (_mediaPlayer)
38 {
39 _wasPlayingOnScrub = _mediaPlayer.Control.IsPlaying();
40 if (_wasPlayingOnScrub)
41 {
42 _mediaPlayer.Control.Pause();
43
44 }
45 OnVideoSeekSlider();
46 }
47 }
48
49 public void OnVideoSliderEnd()
50 {
51 if (_mediaPlayer && _wasPlayingOnScrub)
52 {
53 _mediaPlayer.Control.Play();
54 _wasPlayingOnScrub = false;
55
56 }
57 }
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/155668.html原文链接:https://javaforall.cn