接口速查

智能视频SDK VideoCreatingSDK

  • 智能视频SDK开发者个人信息保护合规指引
  • 智能视频SDK隐私政策
  • 功能发布记录
  • 播放器SDK
    • SDK&Demo下载
    • 产品简介与下载
    • ios播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 功能列表
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Unity播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • uniapp播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 快速进阶
    • HarmonyOS NEXT
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • Andriod播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Web 播放器
      • license指引
      • 简介
      • 使用指南
      • 版本更新记录
      • 开发指南
      • 接口速查
        • 事件响应接口
        • 控制接口
  • 图片加载SDK
    • SDK&Demo下载
    • SDK集成
    • 快速开始
    • 版本更新记录
    • 接口速查
    • 产品简介
    • 快速进阶
  • 短视频SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • 能力限制
      • DEMO体验
      • SDK下载
    • 使用指南
      • License申请
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 录制
        • 编辑
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • IOS版本开发接入文档
      • 视频指导
        • 视频指南
      • Android开发说明
        • 录制
        • Android版本开发接入文档
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • 概述
  • 移动直播SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • demo体验
      • SDK下载
    • 使用指南
      • 接入教程
      • License申请
      • License续费
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 互动直播
        • 特效直播
        • 拉流
        • IOS接入概述
        • 超低延迟直播
        • 直播推流
      • Android开发说明
        • 超低延时直播
        • 互动直播
        • 普通直播
        • 特效直播
        • 拉流
        • Android接入概述
        • 推流参数配置
所有文档
menu
没有找到结果,请重新输入

智能视频SDK VideoCreatingSDK

  • 智能视频SDK开发者个人信息保护合规指引
  • 智能视频SDK隐私政策
  • 功能发布记录
  • 播放器SDK
    • SDK&Demo下载
    • 产品简介与下载
    • ios播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 功能列表
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Unity播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • uniapp播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 快速进阶
    • HarmonyOS NEXT
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • Andriod播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Web 播放器
      • license指引
      • 简介
      • 使用指南
      • 版本更新记录
      • 开发指南
      • 接口速查
        • 事件响应接口
        • 控制接口
  • 图片加载SDK
    • SDK&Demo下载
    • SDK集成
    • 快速开始
    • 版本更新记录
    • 接口速查
    • 产品简介
    • 快速进阶
  • 短视频SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • 能力限制
      • DEMO体验
      • SDK下载
    • 使用指南
      • License申请
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 录制
        • 编辑
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • IOS版本开发接入文档
      • 视频指导
        • 视频指南
      • Android开发说明
        • 录制
        • Android版本开发接入文档
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • 概述
  • 移动直播SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • demo体验
      • SDK下载
    • 使用指南
      • 接入教程
      • License申请
      • License续费
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 互动直播
        • 特效直播
        • 拉流
        • IOS接入概述
        • 超低延迟直播
        • 直播推流
      • Android开发说明
        • 超低延时直播
        • 互动直播
        • 普通直播
        • 特效直播
        • 拉流
        • Android接入概述
        • 推流参数配置
  • 文档中心
  • arrow
  • 智能视频SDKVideoCreatingSDK
  • arrow
  • 播放器SDK
  • arrow
  • Andriod播放器
  • arrow
  • 接口速查
本页目录
  • 播放器相关
  • BDCloudMediaPlayer类
  • 多码率无缝切换(HLS,MP4等主流媒体格式)
  • IMediaPlayer接口
  • IMediaDataSource接口(外部媒体数据透传)
  • 下载器相关
  • VideoDownloadManager类
  • DownloadableVideoItem类
  • DownloadableVideoItem.DownloadStatus类
  • 网络视频代理缓存
  • ProxyCacheManager类
  • 播放器录制
  • RecordController类

接口速查

更新时间:2025-08-22

播放器相关

BDCloudMediaPlayer类

接口名 描述
static void setAppId(String appid) 设置AppId(即LicenseId)
static void setCuid(String cuid) 设置自定义cuid,该信息将透传给APM模块上报
static String getSdkVersion() 获取sdk版本,形式为 xx.xx.xx
void setDataSource(Context context, Uri uri) 设置播放源
void setDataSource(Context context, Uri uri, Map<String,String> headers) 设置播放源,可设置请求头信息
void setDataSource(String path) 设置播放源 (file-path or http/rtsp URL)
void setDataSource(String path, Map<String,String> headers) 设置播放源 (file-path or http/rtsp URL),可设置网络请求头部信息。
void setDecryptTokenForHLS(String token) DRM加密-token加密,通过该接口设置token
String getDataSource() 获取播放路径
void setDisplay(SurfaceHolder sh) 设置 SurfaceHolder 用于显示视频
void setSurface(android.view.Surface surface) 设置Surface来显示视频,与接口setDisplay(SurfaceHolder)功能类似,但不支持setScreenOnWhilePlaying(boolean) 接口的设置。
void setScreenOnWhilePlaying(boolean screenOn) 设置播放时屏幕保持,仅在设置过SurfaceHolder时有效。
void prepareAsync() 异步准备,播放器仅支持异步准备
void start() 启动播放 要求播放源已经准备好
void pause() 暂停播放
void seekTo(long msec) 快速切换到某个时间点进行播放
void stop() 停止播放
void reset() 重置,将状态重置为IDLE 重置后需重新设置播放源
void release() 释放播放器
long getCurrentPosition() 获取当前播放位置,单位为毫秒
long getDuration() 获取音视频时长,单位为毫秒
void setDecodeMode(int mode) 设置软硬解模式,默认为auto模式(自动检测,优先硬解)
int getDecodeMode() 获取之前设置的解码模式
int getVideoHeight() 获取视频高度
int getVideoWidth() 获取视频宽度
void setLooping(boolean looping) 设置是否循环播放
boolean isLooping() 是否循环播放
boolean isPlaying() 是否正在播放
void setBufferSizeInBytes(int size) 设置缓冲过程中,起播数据字节长度
void setBufferTimeInMs(int time) 设置缓冲过程中,起播数据时长
void setTimeoutInUs(int timeout) 设置建立连接和数据下载过程中的超时时长,单位为微秒,默认值为15秒
void setMaxCacheSizeInBytes(int size) 设置 最大缓冲区长度
void setMaxCacheDuration(int duration) 设置 最大缓冲区时长,单位毫秒
void setMaxProbeSize(int maxProbeSize) 设置probe(音视频格式探测)最大数据大小
void setMaxProbeTimeInMs(int maxProbeTime) 设置probe(音视频格式探测)最大时长,单位毫秒
void setInitPlayPosition(long positionInMilliSeconds) 设置初始播放位置, 需在prepareAsync之前调用
void setLogEnabled(boolean enable) 是否显示debug级别日志
long getDownloadSpeed() 获取网络下载速度
void setVolume(float leftVolume, float rightVolume) 设置左右声道的音量
void setWakeMode(android.content.Context context, int mode) 设置保持唤醒模式
BDCloudTrackInfo[] getTrackInfo() 获取所有音视频track的信息
int getSelectedTrack(int trackType) 获取当前选中的视频/音频/字幕轨
void selectTrack(int track) 选择轨道,track 对应getTrackInfo()返回数组的下标
void deselectTrack(int track) 反选轨道,track 对应getTrackInfo()返回数组的下标
void toggleFrameChasing(boolean isEnable) 设置是否开启追帧播放功能(目前只支持 rtmp 和 http-flv 直播,其他场景请勿开启追帧)
void setAudioDataCallback(OnReceiveAudioDataCallback callback) 设置音频回调 (录制功能使用)
int getCurrentVariantIndex() 有感码率切换场景下,获得当前多码率子码流的index
boolean selectResolutionByIndex(int index) 切换多分辨率,以重新启播的方式实现,不保证无缝,需要首先调用getVariantInfo拿到数组
void selectVariantByIndex(int index) 在起播时设置多码率index,在播放过程中的切换请使用selectResolutionByIndex
String[] getVariantInfo() 有感切换(SOURCE_SWITCH_NORMAL_MODE)场景下,获得多码率视频的各子码流信息
void addExtSubtitleUrl(String extSubUrl) 添加外挂字幕,在播放器prepared之后调用

多码率无缝切换(HLS,MP4等主流媒体格式)

接口名 描述
void setMediaInputType(int input) 设置多码率切换模式,可选模式包括
- SOURCE_SWITCH_NORMAL_MODE:普通模式,非无缝切换
- SOURCE_SWITCH_SMOOTH_MODE:MP4无缝切换模式
- SOURCE_SWITCH_SMOOTH_HLS_MODE:HLS无缝切换模式
void setMediaItems(String[] mediaItems) MP4多码率切换场景下,传入各子码流信息
String[] getMediaItems() MP4和HLS无缝切换场景下,获得多码率视频的各子码流信息
int getCurrentMediaIndex() MP4和HLS无缝切换场景下,获得当前的子码流index
boolean setMediaItemIndex(int index) 执行无缝码流切换

IMediaPlayer接口

接口名 描述
IMediaPlayer.OnBufferingUpdateListener interface,总缓冲进度监听器
IMediaPlayer.OnCompletionListener interface,播放完成监听器
IMediaPlayer.OnErrorListener interface,播放失败监听器
IMediaPlayer.OnInfoListener interface,信息通知监听器
IMediaPlayer.OnPreparedListener interface,准备完成监听器
IMediaPlayer.OnSeekCompleteListener interface,Seek结束监听器
IMediaPlayer.OnVideoSizeChangedListener interface,视频大小改变监听器
IMediaPlayer.OnMetadataListener interface,直播视频元信息回调
IMediaPlayer.OnSEIListener interface,SEI信息回调
IMediaPlayer.OnHdrStaticMetadataListener interface,HDR静态元数据回调
IMediaPlayer.OnVividMetadataListener interface,HDR Vivid动态元数据回调
IMediaPlayer.OnTimedTextListener interface,字幕内容回调
IMediaPlayer.OnHlsSegmentRequestListener interface,HLS分片请求回调
IMediaPlayer.OnTrackChangedListener interface,音轨、字幕轨切换回调
IMediaPlayer.OnExtSubtitleOpenListener interface,外挂字幕打开回调
静态变量名 描述
MEDIA_INFO_UNKNOWN 1,未知通知
MEDIA_INFO_VIDEO_RENDERING_START 3,视频开始渲染
MEDIA_INFO_BUFFERING_START 701,开始缓冲
MEDIA_INFO_BUFFERING_END 702,停止缓冲
MEDIA_INFO_VIDEO_ROTATION_CHANGED 10001,视频方向通知
MEDIA_INFO_AUDIO_RENDERING_START 10002,音频开始播放
MEDIA_INFO_FRAMECHASING_START 10003,直播追帧开始
MEDIA_INFO_FRAMECHASING_END 10004,直播追帧结束
MEDIA_INFO_MEDIA_CHANGE_START 10005,多码率切换开始
MEDIA_INFO_MEDIA_CHANGE_END 10006,多码率切换结束

IMediaDataSource接口(外部媒体数据透传)

方法 描述
int readAt(long position, byte[] buffer, int offset, int size) 读取媒体数据
long getSize() 获取媒体文件大小
void close() 关闭外部数据源

下载器相关

VideoDownloadManager类

方法 描述
void changeMaxDownloadingItems(int maxItems) 更改最大并行下载数目,默认为5,范围为(1, 10]。
void deleteDownloader(String url) 删除下载
HashMap<String,DownloadableVideoItem> getAllDownloadableVideoItems() 获得所有下载项目(该hashMap为所有下载项的镜像列表)
DownloadableVideoItem getDownloadableVideoItemByUrl(String url) 获得单个下载项目信息
static VideoDownloadManager getInstance(Context context, String userName) 获取下载器单例
String getUserName() 获取设置的用户名
void pauseDownloader(String url) 停止下载
void startOrResumeDownloader(String url, DownloadObserver observer) 开始下载或者恢复下载
void startOrResumeDownloaderWithToken(String url, String token, DownloadObserver observer) 开始下载或者恢复下载
void stopAll() 暂停所有下载

DownloadableVideoItem类

方法 描述
int getErrorCode() 获取错误码 当DownloadStatus的状态为ERROR时,通过该接口获取错误码
String getFailReason() 获取错误描述 推荐使用getErrorCode接口
String getLocalAbsolutePath() 获取本地文件的全路径名
float getProgress() 获得当前下载进度
DownloadableVideoItem.DownloadStatus getStatus() 获取下载状态
String getUrl() 获取url
错误码 描述
ERROR_CODE_NO_ERROR 0,无错误
ERROR_CODE_INVALID_URL 1,地址无效
ERROR_CODE_NETWORK_FAILED 2, 网络问题
ERROR_CODE_SDCARD_UNMOUNTED 3,本地存储问题
ERROR_CODE_M3U8_INVALID_FORMAT 4,m3u8格式问题
ERROR_CODE_M3U8_SAVE_FAILED 5,m3u8存储问题
ERROR_CODE_M3U8_DRM_INVALID 6,drm保护相关key或者token无效
ERROR_CODE_TS_SAVE_FAILED 7,ts文件保存失败

DownloadableVideoItem.DownloadStatus类

枚举成员 描述
DownloadStatus.NONE 初始状态,短暂
DownloadStatus.PENDING 达到最大并发下载数,新加入的下载会pending
DownloadStatus.DOWNLOADING 正在下载
DownloadStatus.PAUSED 下载暂停
DownloadStatus.ERROR 下载出错
DownloadStatus.COMPLETED 下载完成
DownloadStatus.DELETED 删除状态。短暂:删除后会通过该状态回调observer的update,随后记录删除。

网络视频代理缓存

ProxyCacheManager类

方法 描述
static synchronized ProxyCacheManager getInstance() 获取缓存代理管理器单例
void setCacheDir(File cacheDir) 设置视频缓存路径,若路径无效则使用默认路径
void setProxy(HttpProxyCacheServer proxy) 设置网络代理服务
void setCacheAvailableListener(CacheListener listener) 设置视频进度监听器
String getProxyUrl(Context context,String url) 获取代理播放链接,播放器基于此链接进行播放
void cleanVideoCacheDir(Context context) 清空缓存
void release() 反注册缓存监听,释放资源

播放器录制

RecordController类

方法 描述
void init(SurfaceTexture surfaceTexture, int framerate, int videoBitrate) 初始化录制
void setRecordListener(IRecordListener listener) 设置录制监听
void setRecordSize(int width, int height) 设置录制尺寸
void startRecord(String filePath) 开始录制
void onUpdateAudioData(byte[] bytes, int byteSize) 更新正在播放的音频数据(通过调用BDCloudMediaPlayer#setAudioDataCallback 回调后设置)
boolean isRecording() 是否正在录制
void stopRecord() 结束录制
void onDestroy() 销毁

上一篇
版本更新记录
下一篇
快速进阶