Page History

Player_methods

Last edited by 谷俊

MediaPlayer主要方法

tring getVersion()
功能:获取SDK版本信息

void setVideoScalingMode(int flag)
参数:flag 填充模式
功能:设置设置视频画面填充方式:
*填充模式,视频宽高比例与手机频幕宽高比例不一致时,使用此模式视频播放会有黑边  IMediaPlayer.VIDEO_SCALING_MODE_SCALE_TO_FIT
*裁剪模式,视频宽高比例与手机频幕宽高比例不一致时,使用此模式视频播放会有裁剪 IMediaPlayer.VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING

void setDataSource(String path)
参数:path 视频播放地址
功能:设置视频播放地址给播放器,播放器进入Initialized状态

void setDataSource(Context context, Uri uri)
参数:context Application的上下文内容
      uri 视频播放地址
功能:设置视频播放地址,播放器进入Initialized状态

void setDataSource(Context context, Uri uri, Map<String, String> headers)
参数:context Application的上下文内容
      uri 视频播放地址
      headers 与获取数据的请求一同发送的头
功能:设置视频播放地址和请求的头信息,播放器进入Initialized状态

void setDataSource(FileDescriptor fd)
参数:fd 视频文件的FileDescriptor
功能:设置需要播放的视频源,播放器进入Initialized状态

void prepareAsync()
功能:与prepare接口功能相同,不过此接口是异步的,播放器进入Preparing状态

void start()
功能:在播放器发出prepared回调之后调用,开始播放视频,播放器进入Started状态

void pause()
功能:暂停视频播放,播放器进入Paused状态

void stop()
功能:停止视频播放,播放器进入Stopped状态

long getCurrentPosition()
返回值:处于Playing状态时,返回真实播放进度,否则为0。单位为毫秒(ms
功能:获取音视频的播放进度

void seekTo(long msec)
参数:seek的目标位置,单位为微秒(us
功能:快进、快退

long getDuration()
返回值:Prepared之后调用会返回音视频的时长,否则为0。单位毫秒(ms
功能:获取音视频的时长

int getVideoWidth()
返回值:Prepared之后调用返回视频宽度,否则为0.
功能:获取视频宽度

int getVideoHeight()
返回值:Prepared之后调用返回视频高度,否则为0.
功能:获取视频高度

boolean isPlaying()
返回值:播放器处于Playing时返回true,否则为false
功能:判断播放器是否在Playing状态

void release()
功能:释放播放器资源

void reset()
功能:重置播放器

void setSurface(Surface surface)
参数:Surface
功能:设置Surface,用于视频渲染

void setDisplay(SurfaceHolder sh)
参数:SurfaceHolder
功能:设置SurfaceHolder

void setVolume(float leftVolume, float rightVolume)
参数:leftVolume 左声道音量
      rightVolume 右声道音量
功能:设置当前播放左右声道音量(范围为:0.0f--2.0f,音量默认值为1.0f,0.0f时播放静音)

void setScreenOnWhilePlaying(boolean screenOn)
参数:screenOn 值为true时,播放时屏幕保持常亮,反之则否
功能:使用SurfaceHolder控制播放期间屏幕是否保持常亮。须调用接口setDisplay设置SurfaceHolder,此接口才有效

void setLooping(boolean looping)
参数:looping 是否循环播放
功能:设置播放器循环/非循环播放

void isLooping()
返回值:true 播放器处于循环播放状态
       false 播放器不处于循环播放状态
功能:判断播放器是否处于循环播放状态

void setTimeout(int prepareTimeout, int readTimeout)
参数:prepareTimeout网络链接超时阈值,单位为秒,默认值为10s
      ReadTimeout 读取数据超时阈值,单位为秒,默认值30s
功能:设置超时阈值 (须在prepareAsync之前调用本接口)

void setBufferTimeMax(float timeSecond)
参数:直播音频缓存最大值,单位为秒
功能:设置直播音频缓存上限,由此可控制追赶功能的阈值。该值为负数时,关闭直播追赶功能。此接口只对直播有效

void reload(String pathboolean isFLush)
参数:path播放地址
      isFLush是否清除播放器中旧有视频的缓存数据
功能:重新加载传入的播放地址的视频

void setRotateDegree(int degree)
参数:只能设置90/180/270中的某个值
功能:设置软解视频的旋转角度

Bitmap getScreenShot()
返回值:视频的截图
功能:获取视频的截图

void setPlayerMute(boolean isMute)
参数:是否静音的标志位
功能:设置播放器是否静音

void reload(String pathboolean isFLushReloadMode reloadMode)
参数:path播放地址
      isFLush是否清除播放器中旧有视频的缓存数据
      reloadMode 具体定义详见播放器reload模式介绍
功能:重新加载传入的播放地址的视频

void setDecodeMode(DecodeMode mode);
参数:硬解码标志位,具体定义详见播放器解码模式介绍
功能:设置硬解参数,播放器会首先尝试使用系统硬解方案,若失败则会使用软解

boolean setMirror(boolean mirror)
参数:mirror 设置是否镜像播放,truefalse分别指镜像播放和正常显示
返回值:truefalse分别指设置镜像成功或失败
功能:设置镜像
注:此方法在硬解情况下无法做到镜像播放