public class ExoMediaPlayer extends AbstractVideoPlayer
| 限定符和类型 | 字段和说明 |
|---|---|
protected android.content.Context |
mAppContext |
protected SimpleExoPlayer |
mInternalPlayer |
protected MediaSource |
mMediaSource |
protected ExoMediaSourceHelper |
mMediaSourceHelper |
mPlayerEventListener| 构造器和说明 |
|---|
ExoMediaPlayer(android.content.Context context) |
| 限定符和类型 | 方法和说明 |
|---|---|
int |
getBufferedPercentage()
获取缓冲百分比
|
long |
getCurrentPosition()
获取当前播放的位置
|
long |
getDuration()
获取视频总时长
|
float |
getSpeed()
获取播放速度
|
long |
getTcpSpeed()
获取当前缓冲的网速
|
void |
initPlayer()
初始化播放器实例
视频播放器第一步:创建视频播放器
|
boolean |
isPlaying()
是否正在播放
|
void |
onPlayerError(ExoPlaybackException error) |
void |
onPlayerStateChanged(boolean playWhenReady,
int playbackState) |
void |
onRenderedFirstFrame() |
void |
onVideoSizeChanged(int width,
int height,
int unappliedRotationDegrees,
float pixelWidthHeightRatio) |
void |
pause()
暂停
|
void |
prepareAsync()
准备开始播放(异步)
|
void |
release()
释放播放器
|
void |
reset()
重置播放器
|
void |
seekTo(long time)
调整进度
|
void |
setDataSource(android.content.res.AssetFileDescriptor fd)
用于播放raw和asset里面的视频文件
|
void |
setDataSource(java.lang.String path,
java.util.Map<java.lang.String,java.lang.String> headers)
设置播放地址
|
void |
setDisplay(android.view.SurfaceHolder holder)
设置渲染视频的View,主要用于SurfaceView
|
void |
setLoadControl(LoadControl loadControl) |
void |
setLooping(boolean isLooping)
设置是否循环播放
|
void |
setOptions()
设置其他播放配置
|
void |
setPlayerEventListener(VideoPlayerListener playerEventListener)
绑定VideoView,监听播放异常,完成,开始准备,视频size变化,视频信息等操作
|
void |
setRenderersFactory(RenderersFactory renderersFactory) |
void |
setSpeed(float speed)
设置播放速度
|
void |
setSurface(android.view.Surface surface)
设置渲染视频的View,主要用于SurfaceView
|
void |
setTrackSelector(TrackSelector trackSelector) |
void |
setVolume(float leftVolume,
float rightVolume)
设置音量
|
void |
start()
播放
|
void |
stop()
停止
|
protected android.content.Context mAppContext
protected SimpleExoPlayer mInternalPlayer
protected MediaSource mMediaSource
protected ExoMediaSourceHelper mMediaSourceHelper
public void initPlayer()
AbstractVideoPlayerinitPlayer 在类中 AbstractVideoPlayerpublic void setTrackSelector(TrackSelector trackSelector)
public void setRenderersFactory(RenderersFactory renderersFactory)
public void setLoadControl(LoadControl loadControl)
public void setDataSource(java.lang.String path,
java.util.Map<java.lang.String,java.lang.String> headers)
setDataSource 在类中 AbstractVideoPlayerpath - 播放地址headers - 播放地址请求头public void setDataSource(android.content.res.AssetFileDescriptor fd)
AbstractVideoPlayersetDataSource 在类中 AbstractVideoPlayerpublic void prepareAsync()
prepareAsync 在类中 AbstractVideoPlayerpublic void start()
start 在类中 AbstractVideoPlayerpublic void pause()
pause 在类中 AbstractVideoPlayerpublic void stop()
stop 在类中 AbstractVideoPlayerpublic void reset()
reset 在类中 AbstractVideoPlayerpublic boolean isPlaying()
isPlaying 在类中 AbstractVideoPlayerpublic void seekTo(long time)
seekTo 在类中 AbstractVideoPlayerpublic void release()
release 在类中 AbstractVideoPlayerpublic long getCurrentPosition()
getCurrentPosition 在类中 AbstractVideoPlayerpublic long getDuration()
getDuration 在类中 AbstractVideoPlayerpublic int getBufferedPercentage()
getBufferedPercentage 在类中 AbstractVideoPlayerpublic void setSurface(android.view.Surface surface)
setSurface 在类中 AbstractVideoPlayersurface - surfacepublic void setDisplay(android.view.SurfaceHolder holder)
AbstractVideoPlayersetDisplay 在类中 AbstractVideoPlayerholder - holderpublic void setVolume(float leftVolume,
float rightVolume)
setVolume 在类中 AbstractVideoPlayerleftVolume - v1rightVolume - v2public void setLooping(boolean isLooping)
setLooping 在类中 AbstractVideoPlayerisLooping - 布尔值public void setOptions()
AbstractVideoPlayersetOptions 在类中 AbstractVideoPlayerpublic void setSpeed(float speed)
setSpeed 在类中 AbstractVideoPlayerspeed - 速度public float getSpeed()
getSpeed 在类中 AbstractVideoPlayerpublic long getTcpSpeed()
getTcpSpeed 在类中 AbstractVideoPlayerpublic void onPlayerStateChanged(boolean playWhenReady,
int playbackState)
public void onPlayerError(ExoPlaybackException error)
public void onVideoSizeChanged(int width,
int height,
int unappliedRotationDegrees,
float pixelWidthHeightRatio)
public void onRenderedFirstFrame()
public void setPlayerEventListener(VideoPlayerListener playerEventListener)
AbstractVideoPlayer