播放器 API 参考

更新时间: 2024/02/26 19:41:32

有关API的详细说明,可参见下方的链接,点开即可。

播放器 Android SDK API 文档详见API文档

接口说明

类别 API名称 功能
创建播放实例 create 使用Context创建播放器实例
销毁播放实例 release 释放播放器实例的所有资源
设置缓冲策略 setBufferStrategy 设置缓冲策略, 在prepareAsync前调用
设置解码模式 setHardwareDecoder 设置是否开启硬件解码, 在prepaerAsync前调用
设置是否自动播放 setShouldAutoplay 设置prepareAsync完成后是否自动播放,若设置成false,需要手动调用start()进行播放, 在prepareAsync前调用
设置用于显示的surfaceView setDisplay 设置显示用的surfaceView,在prepareAsync前调用
设置用于显示的surface setSurface 设置用于显示的surface,可以是surfaceView和TextureView
设置播放地址 setDataSource 设置播放地址,在prepareAsync前调用
获取播放地址 getDataSource 获取设置的源文件路径
设置自动重试信息 setAutoRetryConfig 设置自动重试信息
播放预处理 prepareAsync 预处理播放器,为播放做准备,适用于非加密视频
播放预处理 prepareAsyncWithDecryptionToken 预处理播放器,为播放做准备,适用于使用解密相关信息解密的视频的预处理
播放预处理 prepareAsyncWithDecryptionKey 预处理播放器,为播放做准备,适用于使用解密密钥息解密的视频的预处理
获取媒体信息 getMediaInfo 获取媒体信息,包括解码器类型,码流格式等, 需要在收到onPrepare的通知后调用
设置是否精确seek setAccurateSeek 设置是否精确seek
设置静音 setMute 设置是否静音
设置镜像 setMirror 该接口只支持软解,如需硬解镜像请使用TextureView的setScaleX
截图 getSnapshot 截图功能仅在软件解码条件下支持,硬件解码不支持, 需要在收到onPrepare的通知后调用
获取版本号 getVersion 获取播放器的版本号
开始播放 start 开始播放,或者暂停后恢复播放
停止播放 stop 停止播放
暂停播放 pause 暂停播放,只适用于在点播时调用,不支持直播
复位播放实例 reset 复位播放器至未初始化状态
获取视频的宽度 getVideoWidth 获取视频的宽度, 需要在收到onPrepare的通知后调用
获取视频的高度 getVideoHeight 获取视频的高度, 需要在收到onPrepare的通知后调用
获取播放状态 isPlaying 检测是否正在播放
设置到指定时间点播放 seekTo 设置到指定时间点播放,需要在收到onPrepare的通知后调用,只适用于点播
获取当前播放位置的时间点 getCurrentPosition 获取当前播放位置的时间点 单位: ms, 需要在收到onPrepare的通知后调用
获取多媒体文件总时长 getDuration 获取多媒体文件总时长,只适用于点播 单位: ms, 需要在收到onPrepare的通知后调用
获取当前已缓存位置的时间点 getPlayableDuration 获取当前已缓存位置的时间点 单位:ms, 需要在收到onPrepare的通知后调用
设置音量 setVolume 设置音量(0.0 ~ 1.0, 0.0为静音,1.0为最大)
设置循环播放 setLooping 设置循环播放(0,不循环;-1无限循环;1循环一次,2循环两次,以此类推)
获取是否循环播放 isLooping 获取是否循环播放
设置循环播放 setLoopCount 设置循环播放次数(0: 不循环;-1: 无限循环;1: 循环一次,2: 循环两次,以此类推)
获取循环次数 getLoopCount 获取是循环播放次数
设置播放速度 setPlaybackSpeed 设置播放速度,只适用于点播
设置拉流超时时间 setPlaybackTimeout 设置拉流超时时间 单位: 秒, 需要在设置播放路径接口后调用
设置点播时本地外挂字幕文件 setSubtitleFile 设置点播时本地外挂字幕文件路径
切换播放地址 switchContentUrl 播放过程中切换播放地址,适用于非加密视频
切换播放地址 switchContentUrlWithDecryptionToken 播放过程中使用解密信息切换加密播放地址
切换播放地址 switchContentUrlWithDecryptionKey 播放过程中使用解密密钥切换加密播放地址
获取音轨信息 getAudioTracksInfo 获取当前播放媒体的音轨信息,需要在prepare完成后调用
获取音轨序号 getSelectedAudioTrack 获取当前选择的音轨序号,需要在prepare完成后调用
切换音轨 setSelectedAudioTrack 切换音轨,需要在prepare完成后调用
设置是否开启同步回调 setSyncOpen 设置是否开启同步时间戳、同步内容信息回调
获取播放实时数据 getMediaRealTimeInfo 获取播放实时数据
获取正在播放的时间戳 getCurrentRealTime 获取正在播放的时间戳
获取正在播放的同步时间戳 getCurrentSyncTimestamp 获取正在播放的同步时间戳
设置当前正在播放的时间戳回调 setOnCurrentRealTimeListener 设置当前正在播放的时间戳回调
设置当前正在播放的同步时间戳回调 setOnCurrentSyncTimestampListener 设置当前正在播放的同步时间戳回调
设置自定义信息回调 setOnCurrentSyncContentListener 设置当前正在播放的音视频流里附带的内容信息回调
设置视频帧数据的回调 setOnVideoFrameFilterListener 注册获取视频帧数据的回调,用户需要实现回调函数OnVideoFrameFilterListener来接收视频帧
设置音频回调数据的参数 setAudioPcmDataConfig 配置PCM回调数据的参数信息,需要在prepare前调用
设置音频帧数据的回调 setOnAudioFrameFilterListener 注册获取音频帧数据的回调,用户需要实现回调函数OnAudioFrameFilterListener来接收音频帧
设置预处理完成的监听器 setOnPreparedListener 设置预处理完成的监听器,在视频预处理完成后回调
设置视频播放完成的监听器 setOnCompletionListener 设置视频播放完成的监听器,在视频播放完成后调用,视频播放完成后会回调onCompletion或者onError
设置缓存变化的监听器 setOnBufferingUpdateListener 设置缓存变化的监听器,在网络视频流缓存变化时调用
设置指定时间点播放的监听器 setOnSeekCompleteListener 设置指定时间点播放的监听器,在调用seekTo操作设置到指定时间点播放完成时调用
设置视频大小变化的监听器 setOnVideoSizeChangedListener 设置视频大小变化的监听器,在视频大小发生变化时调用
设置播放错误的监听器 setOnErrorListener 设置播放错误的监听器,在播放发生错误时调用,收到回调时可以进行播放重试或者提示播放错误等操作
设置状态变化的监听器 setOnInfoListener 设置状态变化的监听器,在有状态变化时调用
设置字幕回调结果的监听器 setOnSubtitleListener 设置字幕回调结果的监听器,在字幕信息变化时调用
添加预调度拉流链接地址 addPreloadUrls 添加预调度拉流链接地址,添加后SDK会进行自动预调度处理,预调度结果会进行缓存
移除预调度拉流链接地址 removePreloadUrls 移除预调度拉流链接地址,从预调度结果缓存中删除该拉流地址相关预调度信息
查询预调度拉流链接地址的结果信息 queryPreloadUrls 查询预调度拉流链接地址的结果信息,查询预调度结果缓存中所有的预调度信息

总体参数说明

  • 状态类型
参数 说明
NELP_BUFFERING_START 标识缓冲开始
NELP_BUFFERING_END 标识缓冲结束
NELP_FIRST_VIDEO_RENDERED 标识视频第一帧显示
NELP_FIRST_AUDIO_RENDERED 标识音频第一帧显示
NELP_NET_STATE_BAD 标识网络状态比较差
  • 播放模式类型
参数 说明
NELPTOPSPEED 直播极速模式
NELPLOWDELAY 直播低延时模式
NELPFLUENT 直播流畅模式
NELPANTIJITTER 点播抗抖动模式
NELPDELAYPULLUP 直播延时追赶模式
  • 密钥校验结果类型
参数 说明
NELP_NO_ENCRYPTION 密钥校验结果:视频未加密,可以进行下一步播放操作
NELP_ENCRYPTION_CHECK_OK 密钥校验结果:密钥正确,SDK内部会自动进行prepare操作,可以进行下一步播放操作
NELP_ENCRYPTION_UNSUPPORT_PROTOCAL 密钥校验结果:拉流协议不支持
NELP_ENCRYPTION_KEY_CHECK_ERROR 密钥校验结果:密钥错误
NELP_ENCRYPTION_INPUT_INVALIED 密钥校验结果:输入的地址无法播放
NELP_ENCRYPTION_GET_KEY_TIMEOUT 密钥校验结果:获取密钥超时
NELP_ENCRYPTION_UNKNOWN_ERROR 密钥校验结果:未知错误
  • 播放器错误类型
参数 说明
NELP_EN_HTTP_CONNECT_ERROR HTTP连接失败
NELP_EN_RTMP_CONNECT_ERROR RTMP连接失败
NELP_EN_STREAM_PARSE_ERROR 解析失败
NELP_EN_BUFFERING_ERROR 缓冲失败
NELP_EN_AUDIO_OPEN_ERROR 音频相关操作初始化失败
NELP_EN_VIDEO_OPEN_ERROR 视频相关操作初始化失败
NELP_EN_STREAM_IS_NULL 没有音视频流
NELP_EN_AUDIO_DECODE_ERROR 音频解码失败
NELP_EN_VIDEO_DECODE_ERROR 视频解码失败
NELP_EN_AUDIO_RENDER_ERROR 音频播放失败
NELP_EN_VIDEO_RENDER_ERROR 视频播放失败
NELP_EN_UNKNOWN_ERROR 未知错误
此文档是否对你有帮助?
有帮助
去反馈
  • 接口说明
  • 总体参数说明