android视频开发倍速播放,调整视频播放速度
最近公司做的项目中有一个这样的需求,当我的APP通过蓝牙连接跑步机的时候,需要和跑步机同步的播放频。而且跑步机上边的调节速度按钮,可以同步的使APP视频的播放速度同步的加快,这样的来达到模拟场景跑步速度的加快。最开始的解决方案,使用android原生的VideoView控件,非常轻松的就实现了跑步播放视频的功能,可是怎么控制速度呢,找来找去发现实现不了(那位大神可以做到,可以给我留言,学习学习).后来又找了几个其他的播放框架,发现大多数都是通过自定义android原生的来实现的播放,同样的不能实现调整播放速度。最后想到干脆终极的解决方案吧,FFmpeg吧,可惜好无奈啊,宝宝现在C语言还只是初步。哎!最后在网上看到两个基于FFmpeg开发的视频框架,可以解决这个问题。就是大名鼎鼎的Vitamio和VLC.最后我选择了Vitamio,因为这个的资料多一些。朋友们也可以去github看看VLC怎么做。这里提醒一下,使用Vitamio需要到官网去下载最新的5.2版本。因为github的4.0版本bug太多,而且不支持64位架构的处理器。还不支持android6.0.直接来看看我怎么做的吧
第一步:去官网下载最新的依赖包和demo。中间那个initActivity就是我们所需要的依赖。
第一步:导入我们的工程吧。import Module.
什么?报错了,别慌,让我们制定编译的SDK版本。
修改一下我们的版本,点击一下 Try Again.重新编译一下,就通过了。
第二步:依赖到我们的项目中:看到最后一步就算成功了。
第三步:开始编写我们的代码吧
package demo.cdy.com.myvitamiodemo;import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;import io.vov.vitamio.MediaPlayer;
import io.vov.vitamio.Vitamio;
import io.vov.vitamio.widget.MediaController;
import io.vov.vitamio.widget.VideoView;public class MainActivity extends AppCompatActivity implements MediaPlayer.OnErrorListener {private VideoView videoView;private MediaController mMediaController;private MediaPlayer mPlayer;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//第一步注册Vitamio.isInitialized(getApplicationContext());//初始化我们的控件,注意使依赖包的,不是android原生的。videoView = (VideoView) findViewById(R.id.videoView);//实例化控制器mMediaController = new MediaController(this);videoView.setMediaController(mMediaController);//绑定控制器videoView.setVideoQuality(MediaPlayer.VIDEOQUALITY_HIGH);//设置播放画质 高画质videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {@Overridepublic void onPrepared(MediaPlayer mMediaPlayer) {// optional need Vitamio5.2//视频预处理完成后回掉,设置播放速度mPlayer = mMediaPlayer;//mMediaPlayer的setPlaybackSpeed方法控制视频的播放速度。数值从e.g. 0.8 or 2.0, default to 1.0, range in [0.5-2]mMediaPlayer.setPlaybackSpeed(1.0f);}});videoView.setVideoPath("http://www.midea.com/video/masvod/public/2015/02/28/20150228_14bcec18032_r1_800k.mp4");//设置错误回掉videoView.setOnErrorListener(this);}@Overridepublic boolean onError(MediaPlayer mp, int what, int extra) {return false;}
}
看效果图:
最后说名一下:播放速度的控制使是通过
mMediaPlayer.setPlaybackSpeed(1.0f);
来控制的。我们在setOnPreparedListener回掉方法中,把这个MediaPlayer对象给拿出来。以后调节速度就可以自己写按钮通过这个mPlayer对象来随时随地的控制了。
是不是很方便呢,大家如果有更好的更简洁的办法请留言哦,因为这个依赖包实在太大了,足足压缩之后apk将会增加10M。期待更简洁的办法。
博客已经移步:chaodongyang.com
如果喜欢我的文章需要更多干货,请扫描下方二维码,关注我的微信公众号
android视频开发倍速播放,调整视频播放速度相关推荐
- 腾讯视频 android 2倍,腾讯视频多倍速播放产品设计小结
观看是腾讯视频对于用户来说最为核心的体验,我们不断努力把精力聚焦在用户观看过程的体验优化,为用户创造更流畅有和趣的观看体验.近期其中一个探索是多倍速播放的尝试,此文向大家分享下我们在这次产品设计方案中 ...
- PPT里被插入的视频如何倍速播放?
前提:当播放PPT时,如果同时需要播放一个视频,可以有2种方法:(1)PPT里可以插入视频(2)单独放在桌面上的视频也可以倍速播放. 那么,PPT里被插入的视频如何倍速播放? 1.一页空白PPT 2. ...
- 百度网盘视频在线(倍速播放)
百度网盘视频在线(倍速播放) 实现步骤: 在网页打开百度网盘,在期中找到要观看的视频 选择好视频之后,在视频的网页按下F12在Console下输入以下这条命令就可以开启倍速观看了 我选的是1.5倍速的 ...
- Android MediaPlayer 音频倍速播放,调整播放速度
本文链接: Android MediaPlayer 倍速播放,调整播放速度 现在市面上的很多音视频App都有倍速播放的功能,例如把播放速度调整为0.5.1.5.2倍等等. 从Android API 2 ...
- android b站倍速播放器,哔哩哔哩怎么加速播放?B站网页版和手机版视频倍速播放的方法介绍...
bilibili简称B站是国内知名的视频弹幕网站,这里有最及时的动漫新番,最棒的ACG氛围,最有创意的Up主.那么,爱逛b站的朋友们都知道,加速播放效果更佳!那么,哔哩哔哩怎么加速播放呢?接下来小编就 ...
- 考研必备 | 百度网盘网页视频在线倍速播放
写在前面: 考研学子努力加油,拼尽全力吧! 1. >> 彩蛋 1 << 2. >> 彩蛋 2<< 1.打开百度网盘网页视频播放页面 ,在 ...
- 谷歌浏览器自定义视频的倍速播放
想随意调节视频播放的倍速 ,谷歌浏览器按f12,点选console 输入 document.querySelector('video').playbackRate = 3; 按下回车即可3倍速播放,想 ...
- 百度网盘网页版视频在线倍速播放
由于最近要刷高数视频,时间不充裕了,所以打算加速看视频,但是却发现-度盘不止下载高效-而且- 此方法适用于Chrome浏览器: 1 .打开开发者工具 2 .选择Console,并在下方输入此句代码(此 ...
- 百度云视频 在线倍速播放
使用谷歌浏览器 进入 pan.baidu.com,打开一个视频 按F12打开审查模式,并点击console进入控制台 输入代码videojs.getPlayers("video-player ...
最新文章
- Python 2 宣布正式退休,Python 3 时代到来!
- jQuery学习笔记6:表单选择器
- shell awk 的一些用法
- Spring Cloud Alibaba源码 - 21 Ribbon 源码解析
- 每天学一点儿shell:shell脚本的异步执行
- 关于QMap的几点总结思考
- VTK:PolyData之CenterOfMass
- 【数据结构与算法】之深入解析“我的日程安排表II”的求解思路与算法示例
- python快速学_python快速学习4
- Windows各种计时器
- linux下cron定时任务的总结
- c语言程序设计实验周信东指针,C语言程序设计实验4 数组 周信东
- Android含文档server结束(client UI接口异步请求的一部分)三
- 给内联元素设置宽高的几种方式
- Android开发的前景到底怎么样?
- linux 网络编程
- java源码编译指令
- SQL Sever 创建视图
- 建站之星v2.7快速更换模版
- 记录vue中使用了transition后使用fixed引起的Bug
热门文章
- 教你架设安全的交换机系统
- Office Word中横线的增加和删除方法
- 通过PHPMailer发送会议邀请邮件,可将会议邀请信息写入outlook和Foxmail日历中
- css 媒体查询问题 @media
- React+Nginx 二级域名指向配置
- Vue3.0+Cesium+Tomcat服务下倾斜摄影数据加载详细过程
- 知乎高赞,6款办公工具,小白逆袭成职场大神
- 一定要让孩子明白“越自律,越自由”
- 华为鸿蒙邀请函,2019年华为开发者大会邀请函曝光,鸿蒙实锤?
- 十大免费和开源计算机辅助翻译软件