首页 清松游戏介绍 正文

mediaplayer播放器卡顿怎么办?试试这几个解决方法!

今天搞个本地视频播放,用到MediaPlayer,过程给大伙儿分享一下。

我寻思这玩意儿应该不难,毕竟就是放个视频嘛于是我先整个MediaPlayer对象出来:

MediaPlayer mediaPlayer = new MediaPlayer();

mediaplayer播放器卡顿怎么办?试试这几个解决方法!

有对象,接下来就得告诉它要放哪个视频。我把视频文件放在项目的某个角落,然后把路径设置进去:

*(视频文件路径);

小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区

mediaplayer播放器卡顿怎么办?试试这几个解决方法!

弄好路径,我还不能直接让它放,得先让它“准备”一下。就像你做饭前得先把菜洗好切好一样:


准备好,我才敢让它开始播放:


mediaplayer播放器卡顿怎么办?试试这几个解决方法!

我以为这就完事儿,结果一运行,发现有时候视频放着放着就卡住,声音和画面都不同步,给??整麻!

后来我到处找资料,才晓得原来播放视频这事儿,挺耗资源的,不能在主线程里搞,不然整个界面都卡死。得开个新的线程,把播放的操作都丢进去,这样才不会影响到其他地方:


new Thread(new Runnable() {

@Override

public void run() {

mediaplayer播放器卡顿怎么办?试试这几个解决方法!

// 把之前的prepare和start都放在这里面

}).start();

除卡顿,我还发现,有时候换个视频放,或者同一个视频快进快退,也会出问题。有时候声音没,有时候画面花,真是让人头大!

我又是一番折腾,发现这MediaPlayer用起来还挺讲究的。每次放完一个视频,或者切换视频,最好都“重置”一下,就像你每次做完饭都要洗锅一样:

mediaplayer播放器卡顿怎么办?试试这几个解决方法!


然后,再重新设置数据源,重新准备,重新播放。虽然麻烦点,但至少能保证不出幺蛾子。

折腾一天,总算是把这个播放器给弄顺溜。现在想想,这玩意儿还真不简单,里面门道还挺多。下次再搞类似的东西,我就有经验,嘿

还有,为增强播放体验可以考虑下安装解码器,这个我还没来的及实践,准备下次搞一下试试看。

相关推荐