Android Multimedia框架总结(二)MediaPlayer框架及播放网络视频案例

前言:前面一篇我们介绍MediaPlayer相关方法,有人说,没有实际例子,看得不是很明白,今天在分析MediaPlayer时,顺带一个播放网络视频例子。可以自行试试。今天分析的都是下几篇介绍各个模块进行铺垫。

  • Android中的MediaPlayer框架
  • MediaPlayer播放视频主要模块
  • 播放主要模块对应组件
  • MediaPlayer方法对应有效状态及无效状态
  • 案例:Mediaplayer播放网络视频

Android中的MediaPlayer框架

MediaPlayer播放视频主要模块

播放主要模块对应组件

MediaPlayer方法对应有效状态及无效状态

Mediaplayer播放网络视频效果图

为演示,我在本地搭建了一个服务器,将视频文件放在tomcat中的ROOT目录下。名字为sanpan.mp4的一个视频。

案例代码

设置播放相关的方法:在上一篇中MediaPlayer各状态的理解。

Xml文件:

由于是网络视频,记得在Manifest加上访问网络的权限

上面代码已经传到百度云:(永久链接)https://pan.baidu.com/s/1jIpslQu

时间: 2024-08-03 07:51:30

Android Multimedia框架总结(二)MediaPlayer框架及播放网络视频案例的相关文章

“Zhuang.Data”轻型数据库访问框架(二)框架的入口DbAccessor对象

目录: “Zhuang.Data”轻型数据库访问框架(一)开篇介绍 “Zhuang.Data”轻型数据库访问框架(二)框架的入口DbAccessor对象 先来看一段代码 DbAccessor dba = DbAccessor.Create(); var dt = dba.QueryDataTable("select * from sys_product where productid=#Id#",new {Id=1}); Console.WriteLine(DataTableUtil.

Android 使用PLDroidPlayer播放网络视频 根据视频角度自动旋转

最近因为项目需求 ,需要播放网络视频 ,于是乎 研究了一番 ,说说我遇到的那些坑 现在市面上有几个比较主流好用的第三方框架 Vitamio ( 体积比较大,有商业化风险 github:https://github.com/yixia/VitamioBundle/) ijkplayer(B站下开源的框架 体积大 配置环境比较麻烦 github:https://github.com/Bilibili/ijkplayer ) PLDroidPlayer(七牛根据ijkplayer二次开发的 定制简单

Android 使用PLDroidPlayer播放网络视频 依据视频角度自己主动旋转

近期由于项目需求 .须要播放网络视频 .于是乎 研究了一番 ,说说我遇到的那些坑 如今市面上有几个比較主流好用的第三方框架 Vitamio ( 体积比較大,有商业化风险 github:https://github.com/yixia/VitamioBundle/) ijkplayer(B站下开源的框架 体积大 配置环境比較麻烦 github:https://github.com/Bilibili/ijkplayer ) PLDroidPlayer(七牛依据ijkplayer二次开发的 定制简单

android基于开源网络框架asychhttpclient,二次封装为通用网络请求组件

网络请求是全部App都不可缺少的功能,假设每次开发都重写一次网络请求或者将曾经的代码拷贝到新的App中,不是非常合理,出于此目的,我希望将整个网络请求框架独立出来,与业务逻辑分隔开,这样就能够避免每次都要又一次编写网络请求,于是基于我比較熟悉的asynchttpclient又一次二次封装了一个网络请求框架. 思路:网络请求层唯一的功能就是发送请求,接收响应数据,请求取消,cookie处理这几个功能,二次助封装后这些功能能够直接调用封装好的方法就可以. 二次助封装代码例如以下: 1.功能接口: /

Android VideoView播放网络视频简介(转)

最近项目中用到了很多视频播放的地方,不管是聊天发送的视频消息,还是类似内涵段子的视频列表,都会涉及这些知识,不过网上的知识都很零散,一会找缓存方法,一会找预览图片的方法,一会找视频动态修改尺寸的方法,总之找的人好烦,所以自己写一篇来记录这些知识点,也方便别人查阅 获取视频首帧当预览图(MediaMetadataRetriever)在VideoView中,如果直接设置播放路径,然后seekTo(1)当然也能产生预览效果,但是,如果VideoView较多,设置播放路径的方法会产生几个问题,设置路径后

Android使用VideoView播放网络视频

Android支持播放网络上的视频.在播放网络上的视频时,牵涉到视频流的传输,往往有两种协议,一种是HTTP,一种是RTSP.这 两种协议最大的不同是,HTTP协议,不支持实时流媒体的播放,而RTSP协议就支持. Android中自带的播放器,以及VideoView等都支持上述两种协议,因此,可以直接播放网络上的视频,唯一不同的就是URI. 代码如下: package demo.camera; import android.app.Activity; import android.net.Uri

安卓MediaPlayer 播放网络视频源走了Error监听(原因同 Glide 无法加载Http图片)

问题:网上拿了一个视频加载封装库,主要封装了MediaPlayer,运行下视频是可以正常播放的,且视频源是网络视频源,但是引入我的项目里面的时候无法播放,mmp 调试下发现走了 public boolean onError(MediaPlayer mp, int what, int extra) 这个监听,后面两个参数是(1,-2147483648),源码中有对这串数字的解释:<li><code>MEDIA_ERROR_SYSTEM (-2147483648)</code&g

Android Multimedia框架总结(二十)MediaCodec状态周期及Codec与输入/输出Buffer过程(附实例)

转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/53183718 前言:前面几节都是介绍Camera2相关,对于Camera2预览把图像显示在SurfaceView上,还有录像时,时时刷新当前图像区域.追溯到最早介绍的MediaPlayer播放视频,这些都离不开重要角色MediaCodec,今天介绍MediaCodec,看下Agenda: MediaCodec是什么? codec操

Android Multimedia框架总结(六)C++中MediaPlayer的C/S架构

http://blog.csdn.net/hejjunlin/article/details/52435789 前面几节中,都是通过java层调用到jni中,jni向下到c++层并未介绍 看下Java层一个方法在c++层 MediaPlayer后续过程 frameworks/av/media/libmedia/MediaPlayer.cpp 找一个我们之前熟悉的setDataResource方法看下C/S模式的过程,亦可参考Android Multimedia框架总结(四)MediaPlayer