diff --git a/dita/RTC-NG/API/api_player_getconfigs.dita b/dita/RTC-NG/API/api_player_getconfigs.dita new file mode 100644 index 00000000000..838bead0eea --- /dev/null +++ b/dita/RTC-NG/API/api_player_getconfigs.dita @@ -0,0 +1,58 @@ + + + + <ph keyref="GetConfigs_Player"/> + 获取当前的播放器设置。 + + + + + + + + +
+

+ public void getConfigs(PlayerConfig config) throws RteException; + + - (BOOL)getConfigs:(AgoraRtePlayerConfig * _Nonnull)config error:(AgoraRteError * _Nullable)error; + bool GetConfigs(PlayerConfig* config, Error* err); + + + + +

+
+
+
+ +
自从
+
v4.5.0
+
+
+

+

+
+ 调用时机 +

//TODO

+
+
+ 调用限制 +

无。

+
+
+ 参数 + + + + + + + + + +
+
+
+
+
diff --git a/dita/RTC-NG/API/api_player_getinfo.dita b/dita/RTC-NG/API/api_player_getinfo.dita new file mode 100644 index 00000000000..c3588430f73 --- /dev/null +++ b/dita/RTC-NG/API/api_player_getinfo.dita @@ -0,0 +1,65 @@ + + + + <ph keyref="GetInfo"/> + 获取播放器播放的媒体流的相关信息。 + + + + + + + + +
+

+ public void getInfo(PlayerInfo info) throws RteException; + + - (BOOL)getInfo:(AgoraRtePlayerInfo * _Nonnull)info error:(AgoraRteError * _Nullable)error; + bool GetInfo(PlayerInfo *info, Error *err); + + + + +

+
+
+
+ +
自从
+
v4.5.0
+
+
+

你可以通过该方法获取媒体流的相关信息,例如媒体流的数量、音频采样率、视频分辨率宽高等信息。

+

+

+
+ 调用时机 +

//TODO

+
+
+ 调用限制 +

无。

+
+
+ 参数 + + + info + 媒体流的相关信息,详见 + + + + + +
+
+ <ph keyref="return-section-title"/> +

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

+

获取媒体流信息是否成功:

    +
  • :获取信息成功。
  • +
  • :获取信息失败。
  • +
+

+
+
diff --git a/dita/RTC-NG/API/api_player_muteaudio.dita b/dita/RTC-NG/API/api_player_muteaudio.dita new file mode 100644 index 00000000000..ac10f8b9ab1 --- /dev/null +++ b/dita/RTC-NG/API/api_player_muteaudio.dita @@ -0,0 +1,67 @@ + + + + <ph keyref="MuteAudio"/> + //TODO + + + + + + + + +
+

+ public void muteAudio(boolean mute) throws RteException; + + - (BOOL)muteAudio:(BOOL)mute error:(AgoraRteError * _Nullable)error; + bool MuteAudio(bool mute, Error* err); + + + + +

+
+
+
+ +
自从
+
v4.5.0
+
+
+

+
+
+ 适用场景 +

+

+
+ 调用时机 +

+

+
+ 调用限制 +

+

+ +
+ 参数 + + + + + +
+
+ <ph keyref="return-section-title"/> +

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

+
    +
  • 0: 方法调用成功。
  • +
  • < 0: 方法调用失败。详见了解详情和解决建议。
  • +
+
+
diff --git a/dita/RTC-NG/API/api_player_mutevideo.dita b/dita/RTC-NG/API/api_player_mutevideo.dita new file mode 100644 index 00000000000..4b9e65d7b7e --- /dev/null +++ b/dita/RTC-NG/API/api_player_mutevideo.dita @@ -0,0 +1,67 @@ + + + + <ph keyref="MuteVideo"/> + //TODO + + + + + + + + +
+

+ public void muteVideo(boolean mute) throws RteException; + + - (BOOL)muteVideo:(BOOL)mute error:(AgoraRteError * _Nullable)error; + bool MuteVideo(bool mute, Error* err); + + + + +

+
+
+
+ +
自从
+
v
+
+
+

+

+
+ 适用场景 +

+

+
+ 调用时机 +

+

+
+ 调用限制 +

+

+ +
+ 参数 + + + + + +
+
+ <ph keyref="return-section-title"/> +

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

+
    +
  • 0: 方法调用成功。
  • +
  • < 0: 方法调用失败。详见了解详情和解决建议。
  • +
+
+
diff --git a/dita/RTC-NG/API/api_player_pause.dita b/dita/RTC-NG/API/api_player_pause.dita index 23a546c526a..a7c29847bed 100644 --- a/dita/RTC-NG/API/api_player_pause.dita +++ b/dita/RTC-NG/API/api_player_pause.dita @@ -30,38 +30,36 @@
v4.5.0
-

- -

- 适用场景 -

+

当你调用 播放 URL 流后,如果你想暂停播放,可以调用此方法。如果你想要停止播放,请调用

+

调用时机 -

+

该方法需要在 之后调用。

调用限制 -

+

无。

-
+
参数 - +
-
+
<ph keyref="return-section-title"/>

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

-
    -
  • 0: 方法调用成功。
  • -
  • < 0: 方法调用失败。详见了解详情和解决建议。
  • -
+

暂停播放是否成功:

+

diff --git a/dita/RTC-NG/API/api_player_registerobserver.dita b/dita/RTC-NG/API/api_player_registerobserver.dita index 21fdb5d8761..61384f194ec 100644 --- a/dita/RTC-NG/API/api_player_registerobserver.dita +++ b/dita/RTC-NG/API/api_player_registerobserver.dita @@ -27,41 +27,39 @@
自从
-
v
+
v4.5.0
-

-

-
- 适用场景 -

+

你需要在该方法中实现一个 类,并根据场景需要,注册该类的回调。

+

调用时机 -

+

//TODO

调用限制 -

-

-
参数 - - - + + observer + 接口对象实例,详见 + + + +
-
+
<ph keyref="return-section-title"/>

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

-
+

注册是否成功:

+

diff --git a/dita/RTC-NG/API/api_player_setconfigs.dita b/dita/RTC-NG/API/api_player_setconfigs.dita new file mode 100644 index 00000000000..5f8343e425a --- /dev/null +++ b/dita/RTC-NG/API/api_player_setconfigs.dita @@ -0,0 +1,65 @@ + + + + <ph keyref="SetConfigs_Player"/> + 设置播放器配置。 + + + + + + + + +
+

+ public void setConfigs(PlayerConfig config) throws RteException; + + - (BOOL)setConfigs:(AgoraRtePlayerConfig * _Nonnull)config error:(AgoraRteError * _Nullable)error; + bool SetConfigs(PlayerConfig* config, Error* err); + + + + +

+
+
+
+ +
自从
+
v4.5.0
+
+
+

你可以调用该方法来进行播放器设置,如开启自动播放、订阅不同分辨率和码率的视频流等。

+

+

+
+ 调用时机 +

//TODO

+
+
+ 调用限制 +

无。

+
+
+ 参数 + + + config + 播放器设置的对象,详见 + + + + + +
+
+ <ph keyref="return-section-title"/> +

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

+

播放器设置是否成功:

    +
  • :设置成功。
  • +
  • :设置失败。
  • +
+

+
+
diff --git a/dita/RTC-NG/API/api_player_stop.dita b/dita/RTC-NG/API/api_player_stop.dita new file mode 100644 index 00000000000..fd4791de8b4 --- /dev/null +++ b/dita/RTC-NG/API/api_player_stop.dita @@ -0,0 +1,65 @@ + + + + <ph keyref="Stop_Player"/> + 停止播放。 + + + + + + + + +
+

+ public void pause() throws RteException; + + - (BOOL)pause:(AgoraRteError * _Nullable)error; + bool Stop(Error* err); + + + + +

+
+
+
+ +
自从
+
v4.5.0
+
+
+

+

当你调用 播放 URL 流后,如果你想停止播放,可以调用此方法。如果你需要暂停播放,请调用

+
+
+ 调用时机 +

该方法需要在 之后调用。

+
+
+ 调用限制 +

无。

+
+ +
+ 参数 + + + + + +
+
+ <ph keyref="return-section-title"/> +

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

+

停止播放是否成功:

    +
  • :停止播放成功。
  • +
  • :停止播放失败。
  • +
+

+
+
diff --git a/dita/RTC-NG/API/api_player_unregisterobserver.dita b/dita/RTC-NG/API/api_player_unregisterobserver.dita new file mode 100644 index 00000000000..ac8ac714d1c --- /dev/null +++ b/dita/RTC-NG/API/api_player_unregisterobserver.dita @@ -0,0 +1,65 @@ + + + + <ph keyref="UnregisterObserver_Player"/> + 取消注册 RTE 播放器事件观测器。 + + + + + + + + +
+

+ public void unregisterObserver(PlayerObserver observer) throws RteException; + + - (BOOL)unregisterObserver:(AgoraRtePlayerObserver * _Nullable)observer error:(AgoraRteError * _Nullable)error; + bool UnregisterObserver(PlayerObserver *observer, Error *err); + + + + +

+
+
+
+ +
自从
+
v4.5.0
+
+
+

调用 注册播放器事件观测器后,如果你需要取消注册,请调用该方法。

+

+

+
+ 调用时机 +

该方法需在 之后调用。

+
+
+ 调用限制 +

无。

+
+
+ 参数 + + + + + + + + + +
+
+ <ph keyref="return-section-title"/> +

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

+

取消注册是否成功:

    +
  • :取消注册成功。
  • +
  • :取消注册失败。
  • +
+

+
+
diff --git a/dita/RTC-NG/API/callback_playerobserver_onresolutionchanged.dita b/dita/RTC-NG/API/callback_playerobserver_onresolutionchanged.dita new file mode 100644 index 00000000000..a98881a9b16 --- /dev/null +++ b/dita/RTC-NG/API/callback_playerobserver_onresolutionchanged.dita @@ -0,0 +1,64 @@ + + + + <ph keyref="onResolutionChanged"/> + + + + + + + + + +
+

+ + + + + + + + + +

+
+
+
+ +
自从
+
v
+
+
+

+

+
+ 适用场景 +

+

+
+ 触发时机 +

+

+
+ 使用限制 +

+

+
+ 参数 + + + + + +
+
+ <ph keyref="return-section-title"/> +

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。

+
    +
  • 0: 方法调用成功。
  • +
  • < 0: 方法调用失败。详见了解详情和解决建议。
  • +
+
+
diff --git a/dita/RTC-NG/API/callback_playerobserver_onstatechanged.dita b/dita/RTC-NG/API/callback_playerobserver_onstatechanged.dita new file mode 100644 index 00000000000..c4049307bfe --- /dev/null +++ b/dita/RTC-NG/API/callback_playerobserver_onstatechanged.dita @@ -0,0 +1,65 @@ + + + + <ph keyref="onStateChanged"/> + 播放器状态发生改变回调。 + + + + + + + + +
+

+ public void onStateChanged(int old_state, int new_state, Error error){} + + - (void)onStateChanged:(AgoraRtePlayerState)oldState newState:(AgoraRtePlayerState)newState error:(AgoraRteError * _Nullable)error; + virtual void onStateChanged(PlayerState old_state, PlayerState new_state, + rte::Error *err) = 0; + + + + +

+
+
+
+ +
自从
+
v4.5.0
+
+
+

如果你需要监控播放器状态的变化,需要在调用 方法时注册该回调。

+
+
+ 触发时机 +

当播放器状态发生变化时,SDK 会触发此回调报告当前和变化之前的状态。

+
+
+ 使用限制 +

无。

+
+
+ 参数 + + + old_state + oldState + 播放器变化前的状态,详见 。 + + + + new_state + newState + 播放器当前的状态,详见 。如果当前状态为 ,你可以通过 errerror 参数获取详细错误信息。 + + + error + err + 状态或错误信息,详见 + +
+
+
diff --git a/dita/RTC-NG/API/class_rteplayerinfo.dita b/dita/RTC-NG/API/class_rteplayerinfo.dita new file mode 100644 index 00000000000..a78de61312b --- /dev/null +++ b/dita/RTC-NG/API/class_rteplayerinfo.dita @@ -0,0 +1,146 @@ + + + + <ph keyref="RtePlayerInfo"/> + 媒体流的相关信息。 + +
+

+ public class PlayerInfo { + public int state(); + public long duration(); + public int streamCount(); + public boolean hasAudio(); + public boolean hasVideo(); + public boolean isAudioMuted(); + public boolean isVideoMuted(); + public int videoHeight(); + public int videoWidth(); + public Constants.AbrSubscriptionLayer abrSubscriptionLayer(); + public int audioSampleRate(); + public int audioChannels(); + public int audioBitsPerSample(); +} + + @interface AgoraRtePlayerInfo : NSObject +- (instancetype _Nonnull)init;//TODO +- (int)state; +- (long)duration; +- (int)streamCount; +- (BOOL)hasAudio; +- (BOOL)hasVideo; +- (BOOL)isAudioMuted; +- (BOOL)isVideoMuted; +- (int)videoHeight; +- (int)videoWidth; +- (AgoraRteAbrSubscriptionLayer)abrSubscriptionLayer; +- (int)audioSampleRate; +- (int)audioChannels; +- (int)audioBitsPerSample; +@end + typedef struct RtePlayerInfo { + RtePlayerState state; + size_t duration; + size_t stream_count; + bool has_audio; + bool has_video; + bool is_audio_muted; + bool is_video_muted; + int video_height; + int video_width; + RteAbrSubscriptionLayer abr_subscription_layer; + int audio_sample_rate; + int audio_channels; + int audio_bits_per_sample; +} RtePlayerInfo; + + + + +

+
+
+
+ +
自从
+
v4.5.0
+
+
+
+
+ <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property"/> + + + state + 播放器当前的状态,详见 + + + duration + 预留参数。 + + + stream_count + streamCount + 预留参数。 + + + has_audio + hasAudio + URL 媒体流中是否存在音频流。//TODO + + + has_video + hasVideo + URL 媒体流中是否存在视频流。//TODO + + + is_audio_muted + isAudioMuted + 音频流是否被静音。//TODO + + + is_video_muted + isVideoMuted + 视频流是否被静音。//TODO + + + video_height + videoHeight + 视频的高度(px)。 + + + video_width + videoWidth + 视频的宽度(px)。 + + + abr_subscription_layer + abrSubscriptionLayer + 订阅的视频流的质量级别。在自适应码率(ABR)视频流中,不同的质量级别对应不同的分辨率和码率,详见 + + + audio_sample_rate + audioSampleRate + 音频采样率(Hz)。 + + + audio_channels + audioChannels + 音频声道数。 + + + audio_bits_per_sample + audioBitsPerSample + 每个音频样本使用的位数(位深)。//TODO 16位、24位 还是 32位? + +
+
+ 方法 + + + + + +
+
+
diff --git a/dita/RTC-NG/API/enum_rteplayerstate.dita b/dita/RTC-NG/API/enum_rteplayerstate.dita new file mode 100644 index 00000000000..c3eb0f1de8e --- /dev/null +++ b/dita/RTC-NG/API/enum_rteplayerstate.dita @@ -0,0 +1,24 @@ + + + + <ph keyref="RtePlayerState"/> + 播放器的状态。 + +
+
+ +
自从
+
v4.5.0
+
+
+
+
+ 枚举值 + + + + + + +
+
diff --git a/dita/RTC-NG/RTC_NG_API_CPP.ditamap b/dita/RTC-NG/RTC_NG_API_CPP.ditamap index aabd405115c..a7dcabaa095 100644 --- a/dita/RTC-NG/RTC_NG_API_CPP.ditamap +++ b/dita/RTC-NG/RTC_NG_API_CPP.ditamap @@ -455,27 +455,37 @@ + + + + + + + + + + diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap index 895f61a0692..2e8bce5bf74 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap @@ -1071,17 +1071,38 @@ + + + + MuteAudio + + + + + + + MuteVideo + + + - SetConfigs [1/2] + SetConfigs [1/3] + + + + + + + SetConfigs [2/3] - SetConfigs [2/2] + SetConfigs [3/3] @@ -1095,14 +1116,35 @@ - GetConfigs [1/2] + GetConfigs [1/3] + + + + + + + GetConfigs [2/3] - GetConfigs [2/2] + GetConfigs [3/3] + + + + + + + GetInfo + + + + + + + Pause @@ -1127,6 +1169,20 @@ + + + + RegisterObserver_Player + + + + + + + Stop + + + @@ -1134,6 +1190,22 @@ + + + + UnregisterObserver + + + + + + + + + onStateChanged + + + diff --git a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap index fab455b5fde..0aae2d7c5eb 100644 --- a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap +++ b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap @@ -3329,16 +3329,32 @@ + + + + + - + + + + + + + + + + + +