文档章节

Android Multimedia框架总结(一)MediaPlayer介绍之状态图及生命周期

天王盖地虎626
 天王盖地虎626
发布于 01/19 21:12
字数 346
阅读 15
收藏 1

前言:从本篇开始,将进入Multimedia框架,包含MediaPlayer, Camera, Surface, MediaRecord, 接下来几篇都是MediaPlayer相关。同样看下Agenda如下:

MediaPlayer的状态图
Idle 状态
End 状态
Error 状态
Initialized状态
Prepared状态
Preparing状态
Started状态
Paused状态
Stopped状态
PlaybackCompleted状态
MediaPlayer介绍
MediaPlayer类是用于控制playback的视频/音频文件及流。 
主要覆盖如下以下方面:

状态图
有效状态及无效状态
权限
回调方法
MediaPlayer的状态图
playback控制视频/音频文件及流是被状态机进行管理。下图显示MediaPlayer生命周期以及由playback控制操作所影响。

椭圆代表MediaPlayer驻留的状态 
弧代表playback控制且驱动MediaPlayer状态进行过渡。 
有两种类型的弧,一种是用单箭头表示的是同步方法调用,另一种有两个箭头代表异步方法调用

从状态图中,我们能看到MediaPlayer有如下一些状态:

Idle 状态及End 状态

Error 状态

Initialized状态

Prepared状态

Started状态

Paused状态

Stopped状态

PlaybackCompleted状态

本文转载自:https://blog.csdn.net/hejjunlin/article/details/52349221

共有 人打赏支持
天王盖地虎626
粉丝 22
博文 236
码字总数 7329
作品 0
南京
私信 提问
Android Multimedia框架总结(六)C++中MediaPlayer的C/S架构

前面几节中,都是通过java层调用到jni中,jni向下到c++层并未介绍 看下Java层一个方法在c++层 MediaPlayer后续过程 frameworks/av/media/libmedia/MediaPlayer.cpp 找一个我们之前熟悉的setDa...

天王盖地虎626
01/19
0
0
【android学习之十四】——多媒体1:音乐播放

声明:学习的书籍《Android应用开发揭秘》,这里记录学习该书籍的日志,引用的相关代码与总结描述,没有商业的用途,完全是自我学习的一个记录,刚刚学习不可避免会出现很多问题,若是有错误...

晨曦之光
2012/03/08
2.8K
1
Android媒体播放---Media playback(二)

使用MediaPlayer 媒体框架的最中重要的组件之一是MediaPlayer类。这个类的对象能够用最小的步骤来获取、解码和播放音视频。它支持以下几种不同的媒体来源: 1. 本地资源; 2. 内部的统一资源...

长平狐
2012/10/16
301
0
Android:MediaSession框架介绍

很多同学,在学习安卓的时候,可能会完成一个音乐播放器的项目,因为音乐播放器项目会贯穿安卓的四大组件。在项目中,大家一定会在服务中使用MediaPlayer去播放音乐,但是界面如何控制服务进...

1641907557
2016/01/30
7.8K
2
Android媒体播放---Media Playback(一)

本文译自:http://developer.android.com/guide/topics/ui/index.html Android多媒体框架包括对播放各种大众化的媒体类型的支持,因此能够很容易的把音频、视频、图片集成到应用程序中。你能...

长平狐
2012/10/16
183
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊flink的NetworkEnvironmentConfiguration

序 本文主要研究一下flink的NetworkEnvironmentConfiguration NetworkEnvironmentConfiguration flink-1.7.2/flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/NetworkEnv......

go4it
31分钟前
1
0
极路由4刷OpenWrt(LEDE)

申请开发者模式 登录路由器后台 进入插件中间 选中路由器信息 申请开发者权限 安装开发者插件 刷 Bootloader 下载 极路由4 的 Breed 通过SSH登录路由器 (必须安装开发者插件,端口 1022 账号...

dingdayu
40分钟前
3
0
浅淡个人学习嵌入式Linux过程

我专业是电子信息工程,在初入大学的时候,我们的班主任便要我们多多去了解一些关于电子方面的知识。后来我了解到了嵌入式,继而了解到了嵌入式Linux。其实我们学习linux差不多就学习linux内...

linux-tao
今天
7
0
SpringBoot使用GraphQL简单学习-1

官网 一、GraphQL简介 1.GraphQL是什么? GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。 GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够...

wind2012
今天
6
0
Android的WIFI局域网对讲机

https://blog.csdn.net/z979451341/article/details/79280749 (三)Android局域网内语音对讲 基于UDP语音传输 https://blog.csdn.net/stormxiaofeng/article/details/80513947 Android7.0手......

shzwork
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部