AVProVideo视频进度条

AVProVideo视频进度条1,新建slider并添加事件

大家好,又见面了,我是你们的朋友全栈君。

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     }

 

<span role="heading" aria-level="2">AVProVideo视频进度条

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155668.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • html给网页添加背景音乐_网页怎么在属性里加入音乐

    html给网页添加背景音乐_网页怎么在属性里加入音乐方式一:<videocontrols=””autoplay=””name=”media”><sourcesrc=”音乐”type=”audio/mpeg”></video><videocontrols=”true”autoplay=”true”name=”media”loop=”true”hidden=”true”…

    2022年9月24日
    4
  • linux常用命令菜鸟教程_初学者化妆必备用品清单

    linux常用命令菜鸟教程_初学者化妆必备用品清单一.学习Linux终端命令的原因1.Linux刚面世时并没有图形界面,所有的操作全靠命令完成,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等2.在职场中,大量的服务器维护工作都是在远程通过SSH客户端来完成的,并没有图形界面,所有的维护工作都需要通过命令来完成在职场中,作为后端程序员,必须要或多或少的掌握一些Linux常用的终端命令。3.Linux发行版本的命令大概有200多个,但是常用的命令只有10多个而已二.linux常用指令ls命令…

    2022年8月21日
    8
  • 小程序入坑指南 | 鹅厂优文

    小程序入坑指南 | 鹅厂优文

    2022年4月2日
    55
  • 树莓派3B+ 引脚图说明

    树莓派3B+ 引脚图说明如上图所示,我们可以很清楚的看到各个引脚的功能。例如我们想使用pwm引脚来控制舵机,则我们可以考虑使用其中的BCM18(PWM0)和BCM13(PWM1)。在使用wiringPi库时,我们定义的引脚即BCM引脚,例如:pwmPinV=18pwmPinH=13…

    2022年6月25日
    50
  • 实战 | SpringBoot微信点餐系统(附源码)[通俗易懂]

    实战 | SpringBoot微信点餐系统(附源码)[通俗易懂]点击上方“java进阶架构师”,选择右上角“置顶公众号”20大进阶架构专题每日送达架构前后端分离:补充:setting.xml文件的作用:settings.xml是ma…

    2022年4月19日
    189
  • 【数学建模】MATLAB应用实战系列(九十)-变异系数法应用案例(附MATLAB和Python代码)「建议收藏」

    【数学建模】MATLAB应用实战系列(九十)-变异系数法应用案例(附MATLAB和Python代码)「建议收藏」前言以下为博主为大家精心准备的人工智能&算法精品专栏,需要的小伙伴可自行订阅深度学习100例全系列详细教程深度学习算法原理介绍及应用案例tensorflow从入门到精通100讲深度学习框架TensorFlow的应用案例手把手教你ML机器学习算法源码全解析机器学习算法解析及应用案例数据挖掘算法解析指南数据挖掘算法原理解析及应用案例数据结构常见算法原理讲解数据结构算法原理解析及应用人工智能AI实战系列代码全解析图像处理、自然语言处理实战案例解析变异系…

    2022年5月3日
    69

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号