播放控制
AdjustPlayoutVolume
AdjustPublishSignalVolume
调节远端用户听到的音量。
C++
UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer")
int AdjustPublishSignalVolume(int volume);
连接到声网服务器后,你可以调用该方法,调节远端用户听到的媒体文件的音量。
调用时机
加入频道前后均可调用。
调用限制
无。
参数
- volume
- 信号音量,取值范围从 0 到 400:
- 0: 无声。
- 100: (默认)媒体文件的原始音量。
- 400: 原始音量的四倍(自带溢出保护)。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
Mute
Pause
Play
播放媒体文件。
C++
UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer")
int Play();
调用时机
- 在调用 Open 或 OpenWithMediaSource 打开媒体文件、且收到 OnPlayerSourceStateChanged 回调报告状态为 PLAYER_STATE_OPEN_COMPLETED 后,调用该方法。
- 在调用 Seek 后调用该方法。
调用限制
无。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
PlayPreloadedSrc
播放预加载的媒体资源。
C++
UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer")
int PlayPreloadedSrc(const FString& src);
详情
调用 PreloadSrc 方法将媒体资源预加载到播放列表后,可以调用该方法播放已预加载的媒体资源。调用该方法后,如果你收到 OnPlayerSourceStateChanged 回调报告状态 PLAYER_STATE_PLAYING,则表示播放成功。
如果你想更换播放的预加载媒体资源,你可以再次调用该方法并指定新的媒体资源路径。如果你想重新播放媒体资源,你需要在播放前调用 PreloadSrc 重新将该媒体资源预加载到播放列表。如果你想清空播放列表,请调用 Stop。
信息
如果你在播放暂停时调用该方法,该方法会在恢复播放后才生效。
参数
- src
- 播放列表中的媒体资源 URL 地址,必须与 PreloadSrc 方法设置的 src 一致,否则无法播放。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
Resume
Seek
定位到媒体文件的指定播放位置。
C++
UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer")
int Seek(int64 newPos);
- 如果你在播放已经完成后(收到 OnPlayerSourceStateChanged 回调报告播放状态为 PLAYER_STATE_PLAYBACK_COMPLETED 或 PLAYER_STATE_PLAYBACK_ALL_LOOPS_COMPLETED)再调用 Seek,方法调用成功后,SDK 会从你指定的位置开始自动播放,此时你会收到 OnPlayerSourceStateChanged 回调报告播放状态为 PLAYER_STATE_PLAYING。
- 如果你在播放暂停的情况下调用 Seek,调用成功后 SDK 会定位到你指定位置,如需播放,请调用 Resume 或 Play。
调用时机
该方法在加入频道前后均可调用。
调用限制
无。
相关回调
成功调用该方法后,你会收到 OnPlayerEvent 回调,报告当前播放器发生的事件,如定位开始、定位成功或定位失败。
参数
- newPos
- 指定的位置(毫秒)。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
Stop
停止播放。
C++
UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer")
int Stop();
调用该方法停止播放后,如需重新播放,需要调用 Open 或 OpenWithMediaSource 再次打开媒体资源。
调用时机
该方法需要在 Play 之后调用。
调用限制
无。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。