Open Core 是 Android 多媒体框架的核心,所有 Android 平台的音频、视频的采用以及播放等操作,都是通过它来实现。
- 1、多媒体文件的播放、下载,包括:3GPP,MPEG-4,AAC 和 MP3 containers。
- 2、流媒体文件的下载、实时播放,包括:3GPP,HTTP 和 RTSP/RTP。
- 3、动态视频和静态图像的编码、解码,例如:MPEG-4,H.263 和 AVC (H.264),JPEG。
- 4、语音编码格式:MP3,AAC,AAC+。
- 5、视频和图像格式:3GPP,MPEG-4 和 JPEG。
- 6、视频会议:基于 H324-M 标准。
Open Core 是一个多媒体的框架,从宏观上来看,它主要包含了两大方面的内容:
- 1、PVPPlayer:提供媒体播放器的功能,完成各种音频(Audio)、视频(Video)流的回放(Playback)功能。
- 2、PVAuthor:提供媒体流记录的功能,完成各种音频、视频流以及静态图像的捕获功能。
- 方法: create( Context context, Uri uri)
解释:静态方法,通过Uri创建一个多媒体播放器。
- 方法: create( Context context, int resid)
解释:静态方法,通过资源ID创建一个多媒体播放器
- 方法: create( Context context, Uri uri, SurfaceHolder holder)
解释:静态方法,通过Uri和指定 SurfaceHolder 【抽象类】 创建一个多媒体播放器
- 方法: getCurrentPosition ()
解释:返回 Int, 得到当前播放位置
- 方法: getDuration ()
解释:返回 Int,得到文件的时间
- 方法: getVideoHeight()
解释:返回 Int ,得到视频的高度
- 方法: getVideoWidth()
解释:返回 Int,得到视频的宽度
- 方法: isLooping()
解释:返回 boolean ,是否循环播放
- 方法: isPlaying()
解释:返回 boolean,是否正在播放
- 方法: pause()
解释:无返回值 ,暂停
- 方法: prepare()
解释:无返回值,准备同步
- 方法: prepareAsync()
解释:无返回值,准备异步
- 方法: release()
解释:无返回值,释放 MediaPlayer 对象
- 方法: reset()
解释:无返回值,重置 MediaPlayer 对象
- 方法: seekTo(int msec)
解释:无返回值,指定播放的位置(以毫秒为单位的时间)
- 方法: setAudioStreamType(int streamtype)
解释:无返回值,指定流媒体的类型
- 方法: setDataSource( String path)
解释:无返回值,设置多媒体数据来源【根据 路径】
- 方法: setDataSource( FileDescriptor fd, long offset, long length)
解释:无返回值,设置多媒体数据来源【根据 FileDescriptor】
- 方法: setDataSource( FileDescriptor fd)
解释:无返回值,设置多媒体数据来源【根据 FileDescriptor】
- 方法: setDataSource( Context context, Uri uri)
解释:无返回值,设置多媒体数据来源【根据 Uri】
- 方法: setDisplay( SurfaceHolder sh)
解释:无返回值,设置用 SurfaceHolder 来显示多媒体
- 方法: setLooping(boolean looping)
解释:无返回值,设置是否循环播放
- 事件: setOnBufferingUpdateListener( MediaPlayer.OnBufferingUpdateListener listener)
解释:监听事件,网络流媒体的缓冲监听
- 事件: setOnCompletionListener( MediaPlayer.OnCompletionListener listener)
解释:监听事件,网络流媒体播放结束监听
- 事件: setOnErrorListener( MediaPlayer.OnErrorListener listener)
解释:监听事件,设置错误信息监听
- 事件: setOnVideoSizeChangedListener( MediaPlayer.OnVideoSizeChangedListener listener)
解释:监听事件,视频尺寸监听
- 方法: setScreenOnWhilePlaying(boolean screenOn)
解释:无返回值,设置是否使用 SurfaceHolder 显示
- 方法: setVolume(float leftVolume, float rightVolume)
解释:无返回值,设置音量
- 方法: start()
解释:无返回值,开始播放
- 方法: stop()
解释:无返回值,停止播放