媒体资源打开
- Android
更新时间不可用
open [1/2]
打开媒体资源。
int open(String url, long startPos);支持播放以 content:// 开头的 URI 文件。
注: 该方法为异步调用。
调用时机
该方法可以在加入频道前或后调用。
相关回调
调用该方法后,SDK 会触发 onPlayerStateChanged 回调。在收到播放状态为 OPEN_COMPLETED 的上报后,你可以调用 play 方法播放媒体文件。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
open [2/2]
通过 URI 地址打开媒体文件。
int open(Uri uri, long startPos);注: 该方法为异步调用。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
openWithMediaSource
打开媒体文件并配置播放场景。
int openWithMediaSource(MediaPlayerSource source);该方法支持打开不同类型的媒体文件,包括以 content:// 开头的 URI 文件和 assets 文件夹中的媒体文件,并设置播放选项。
注: 该方法为异步调用。如果需要播放媒体文件,请确保在调用 play 方法之前,已收到 onPlayerStateChanged 回调并报告 OPEN_COMPLETED。
调用时机
你可以在加入频道前或加入频道后调用该方法。
参数
| 参数名 | 描述 |
|---|---|
source | 媒体资源,详见 MediaPlayerSource。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
preloadSrc
预加载媒体资源。
int preloadSrc(String src, long startPos);调用该方法后,如果在 onPreloadEvent 回调中收到 PLAYER_PRELOAD_EVENT_COMPLETE 事件,表示预加载成功;如果收到 PLAYER_PRELOAD_EVENT_ERROR 事件,表示预加载失败。预加载成功后,如需播放该媒体资源,请调用 playPreloadedSrc;如需清空播放列表,请调用 stop()。
注:
- 在调用此方法前,请确保已成功调用
open或 openWithMediaSource 打开媒体资源。 - 声网不支持将重复的媒体资源预加载到播放列表中。但你可以将正在播放的媒体资源再次预加载到播放列表中。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
switchSrc
切换正在播放的媒体资源。
int switchSrc(String src, boolean syncPts);你可以调用此方法根据当前网络状态切换播放的媒体资源地址。例如:
- 当网络较差时,将播放的媒体资源切换为码率较低的媒体资源地址。
- 当网络良好时,将播放的媒体资源切换为码率较高的媒体资源地址。
调用此方法后,如果收到 onPlayerEvent 回调报告 PLAYER_EVENT_SWITCH_COMPLETE 事件,表示切换成功。如果切换失败,SDK 会自动重试 3 次。如果仍然失败,你将收到 onPlayerEvent 回调报告 PLAYER_EVENT_SWITCH_ERROR 事件,表示切换过程中发生错误。
注:
-
请确保在调用
open之后再调用此方法。 -
为确保正常播放,调用此方法时请注意以下事项:
- 播放暂停时不要调用此方法。
- 切换过程中不要调用 seek 方法。
- 切换媒体资源前,请确保播放位置未超过待切换媒体资源的总时长。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
unloadSrc
卸载预加载的媒体资源。
int unloadSrc(String src);注: unloadSrc 无法释放正在播放的媒体资源。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。