媒体资源打开
open [1/2]
打开媒体资源。
int open(String url, long startPos);
该方法支持打开以 content://
开头的 URI 文件。
注意:
该方法为异步调用。
如需播放媒体文件,请在收到 onPlayerStateChanged
回调报告播放状态为 PLAYER_STATE_OPEN_COMPLETED
后再调用 play
方法播放媒体文件。
参数
参数名 | 描述 |
---|---|
url | 设置媒体文件的路径,支持本地和在线文件。 |
startPos | 设置起始播放位置(毫秒),默认值为 0。 |
返回值
-
0: 方法调用成功。
-
< 0: 方法调用失败。详见
错误码
了解详情和解决建议。
open [2/2]
通过 URI 打开媒体文件。
int open(Uri uri, long startPos);
注意:
该方法为异步调用。
如需播放媒体文件,请在收到 onPlayerStateChanged
回调报告播放状态为 PLAYER_STATE_OPEN_COMPLETED
后再调用 play
方法播放媒体文件。
参数
参数名 | 描述 |
---|---|
uri | 媒体文件的 URI(Uniform Resource Identifier),可用于标识媒体文件。 |
startPos | 设置起始播放位置 (毫秒),默认值为 0。 |
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见
错误码
了解详情和解决建议。
openWithCustomSource
打开自定义媒体资源文件。
int openWithCustomSource(long startPos, IMediaPlayerCustomDataProvider provider);
该方法已废弃,请改用 openWithMediaSource
。
该方法支持你打开自定义的媒体资源文件。例如,你可以调用该方法打开已加密的媒体资源。
参数
参数名 | 描述 |
---|---|
startPos | 设置起始播放位置(毫秒),默认值为 0。 |
provider | 自定义媒体资源文件的回调。详见 |
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见
错误码
了解详情和解决建议。
openWithMediaSource
打开媒体资源并进行播放设置。
int openWithMediaSource(MediaPlayerSource source);
该方法支持你打开不同类型的媒体资源,包括自定义的媒体资源文件,并可进行播放设置。
该方法支持打开以 content://
开头的 URI 文件。
参数
参数名 | 描述 |
---|---|
source | 媒体资源,详见 |
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见
错误码
了解详情和解决建议。
preloadSrc
预加载媒体资源。
int preloadSrc(String src, long startPos);
你可以调用该方法将一个媒体资源预加载到播放列表中。如果需要预加载多个媒体资源,你可以多次调用该方法。
调用该方法后,如果收到 onPreloadEvent
回调报告事件 PLAYER_PRELOAD_EVENT_COMPLETE
,则预加载成功;如果你收到 onPreloadEvent
回调报告事件 PLAYER_PRELOAD_EVENT_ERROR
,则预加载失败。
预加载成功后,如果你想播放媒体资源,请调用 playPreloadedSrc
;如果你想清空播放列表,请调用 stop
。
注:
SDK 不支持你预加载重复的媒体资源到播放列表,但支持你将正在播放的媒体资源再次预加载到播放列表。
参数
参数名 | 描述 |
---|---|
src | 媒体资源的网络路径。 |
startPos | 预加载到播放列表后,开始播放时的起始位置(毫秒)。预加载直播流时,将该参数设置为 0。 |
返回值
-
0: 方法调用成功。
-
< 0: 方法调用失败。详见
错误码
了解详情和解决建议。
switchSrc
切换媒体资源。
int switchSrc(String src, boolean syncPts);
你可以根据当前网络状态调用该方法切换播放的媒体资源的码率。例如:
-
在网络较差时,将播放的媒体资源切换为较低码率的媒体资源地址。
-
在网络较好时,将播放的媒体资源切换为较高码率的媒体资源地址。
调用该方法后,如果你收到 onPlayerEvent
回调报告事件 PLAYER_EVENT_SWITCH_COMPLETE
,则媒体资源切换成功;如果你收到 onPlayerEvent
回调报告事件 PLAYER_EVENT_SWITCH_ERROR
,则媒体资源切换失败。
注意:
-
请确保在
open [1/2]
之后调用该方法。 -
为保证播放正常,请在调用该方法时注意如下:
-
不要在播放暂停时调用该方法。
-
不要在切换码率过程中调用
seek
。 -
确保切换码率前的播放位置不大于待切换的媒体资源总时长。
-
参数
参数名 | 描述 |
---|---|
src | 媒体资源的网络路径。 |
syncPts | 是否同步切换前后的起始播放位置:
如果媒体资源为直播流,你只能将该参数设置为 false ,否则 SDK 切换媒体资源会失败。如果媒体资源为点播流,你可以根据场景需求对该参数赋值。 |
返回值
-
0: 方法调用成功。
-
< 0: 方法调用失败。详见
错误码
了解详情和解决建议。