Skip to content

Commit

Permalink
Merge pull request #3405 from AgoraIO/4.2.3-bugfix-1026
Browse files Browse the repository at this point in the history
4.2.3 bugfix 1026
  • Loading branch information
Cilla-luodan authored Oct 26, 2023
2 parents 04d3f7a + 26b8200 commit 4b03a30
Show file tree
Hide file tree
Showing 20 changed files with 98 additions and 60 deletions.
2 changes: 1 addition & 1 deletion dita/RTC-NG/API/api_irtcengine_enablemulticamera.dita
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
<li>如果在 <apiname keyref="startPreview2"/> 之后开启,SDK 会先停止当前的摄像头采集,然后再开启原摄像头和第二个摄像头,本地视频预览会出现短暂黑屏、然后自动恢复正常。</li>
</ul></p>
</note>
<p props="cpp unreal bp">该方法仅适用于 iOS。</p>
<p props="cpp unreal bp flutter unity rn">该方法仅适用于 iOS。</p>
<p>使用多路摄像头采集视频时,请确保系统版本为 13.0 及以上。</p>
<p>支持多路摄像头采集的最低 iOS 设备类型如下所示:

Expand Down
7 changes: 6 additions & 1 deletion dita/RTC-NG/API/api_irtcengine_setvideoscenario.dita
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,12 @@
<p props="flutter">方法成功调用时,无返回值;方法调用失败时,会抛出 <xref keyref="AgoraRtcException"/> 异常,你需要捕获异常并进行处理。<ph props="cn">详见<xref keyref="error-code-link"/>了解详情和解决建议。</ph></p>
<ul id="ul_h2p_syl_3qb">
<li props="native unreal bp electron unity cs rn">0: 方法调用成功。</li>
<li>&lt; 0: 方法调用失败。<ph props="cn">详见<xref keyref="error-code-link"/>了解详情和解决建议。</ph></li>
<li>&lt; 0: 方法调用失败。<ph props="cn">详见<xref keyref="error-code-link"/>了解详情和解决建议。</ph><ul>
<li>-1:一般性的错误(未明确归类)。</li>
<li>-4:不支持设置视频业务场景。可能的原因是当前使用的是音频 SDK。</li>
<li>-7:<apiname keyref="IRtcEngine" /> 对象尚未初始化。你需要在调用该方法前成功初始化 <apiname keyref="IRtcEngine" /> 对象。</li>
</ul>
</li>
</ul>
</section>
</refbody>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,10 @@
</plentry>
<plentry id="rotation">
<pt>rotation</pt>
<pd>旋转信息,取值范围 [0,360)。</pd>
<pd>旋转信息,取值范围 [0,360)。
<note type="note" props="cpp unity flutter rn unreal bp">在 iOS 平台上,该参数值始终为 0。</note>
<note type="note" props="ios">该参数值始终为 0。</note>
</pd>
</plentry>
</parml> </section>
</refbody>
Expand Down
14 changes: 0 additions & 14 deletions dita/RTC-NG/API/class_audiorecordingconfiguration.dita
Original file line number Diff line number Diff line change
Expand Up @@ -195,10 +195,6 @@ struct FAudioRecordingConfiguration
<plentry id="filepath">
<pt>filePath</pt>
<pd>录音文件在本地保存的绝对路径,需精确到文件名及格式。例如:<codeph><ph keyref="recordingPath-example" /></codeph>。




<note id="note_scm_klz_mqb" type="attention">
<p>请确保你指定的路径存在并且可写。</p>
</note> </pd>
Expand All @@ -207,9 +203,6 @@ struct FAudioRecordingConfiguration
<pt props="cpp unreal bp unity electron rn flutter cs">encode</pt>
<pt props="android">codec</pt>
<pd>设置是否编码音频数据:



<ul id="ul_bnv_mlz_mqb">
<li><codeph><ph keyref="true" /></codeph>: 将音频数据用 AAC 编码。</li>
<li><codeph><ph keyref="false" /></codeph>:(默认)不编码音频数据,直接保存录制的音频数据。</li>
Expand All @@ -218,9 +211,6 @@ struct FAudioRecordingConfiguration
<plentry>
<pt>sampleRate</pt>
<pd>录音采样率(Hz)。



<ul id="ul_pqs_slz_mqb">
<li>16000</li>
<li>32000 (默认)</li>
Expand All @@ -237,10 +227,6 @@ struct FAudioRecordingConfiguration
<pd>
<p props="ios mac cpp unreal bp unity flutter electron rn cs">录音内容。详见 <xref keyref="AUDIO_FILE_RECORDING_TYPE" />。</p>
<p props="android">录音内容:




<ul>
<li><ph keyref="AUDIO_FILE_RECORDING_MIC" /> (1):仅录制本地用户的音频。</li>
<li><ph keyref="AUDIO_FILE_RECORDING_PLAYBACK" /> (2):仅录制所有远端用户的音频。</li>
Expand Down
2 changes: 1 addition & 1 deletion dita/RTC-NG/API/rtc_api_overview.dita
Original file line number Diff line number Diff line change
Expand Up @@ -2183,7 +2183,7 @@
</sthead>
<strow props="ios cpp unreal bp flutter unity rn">
<stentry><xref keyref="enableMultiCamera"/></stentry>
<stentry><ph conkeyref="enableMultiCamera/shortdesc"/><ph>(仅适用于 iOS)</ph></stentry>
<stentry><ph conkeyref="enableMultiCamera/shortdesc"/><ph props="cpp unreal bp flutter unity rn">(仅适用于 iOS)</ph></stentry>
</strow>
<strow>
<stentry><xref keyref="switchCamera"/></stentry>
Expand Down
1 change: 0 additions & 1 deletion dita/RTC-NG/RTC_NG_API_Electron.ditamap
Original file line number Diff line number Diff line change
Expand Up @@ -607,7 +607,6 @@
<topicref keyref="onAudioRoutingChanged" toc="no"/>
</topicref>
<topicref href="API/toc_mobile_camera.dita" chunk="to-content">
<topicref keyref="enableMultiCamera" toc="no"/>
<topicref keyref="setCameraDeviceOrientation" toc="no"/>
<topicref keyref="onCameraReady" toc="no"/>
</topicref>
Expand Down
7 changes: 0 additions & 7 deletions dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap
Original file line number Diff line number Diff line change
Expand Up @@ -2345,13 +2345,6 @@
</keydef>
</topichead>
<topichead navtitle="多设备采集">
<keydef keys="enableMultiCamera" href="../API/api_irtcengine_enablemulticamera.dita">
<topicmeta>
<keywords>
<keyword>enableMultiCamera</keyword>
</keywords>
</topicmeta>
</keydef>
<keydef keys="startCameraCapture" href="../API/api_irtcengine_startcameracapture.dita">
<topicmeta>
<keywords>
Expand Down
4 changes: 2 additions & 2 deletions dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap
Original file line number Diff line number Diff line change
Expand Up @@ -1288,7 +1288,7 @@
<keydef keys="pushVideoFrameEx" href="../API/api_irtcengineex_pushvideoframeex.dita">
<topicmeta>
<keywords>
<keyword>pushExternalVideoFrame</keyword>
<keyword>pushExternalVideoFrame [2/2]</keyword>
</keywords>
</topicmeta>
</keydef>
Expand Down Expand Up @@ -2455,7 +2455,7 @@
<keydef keys="pushVideoFrame" href="../API/api_imediaengine_pushvideoframe.dita">
<topicmeta>
<keywords>
<keyword>pushExternalVideoFrame</keyword>
<keyword>pushExternalVideoFrame [1/2]</keyword>
</keywords>
</topicmeta>
</keydef>
Expand Down
4 changes: 2 additions & 2 deletions dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap
Original file line number Diff line number Diff line change
Expand Up @@ -1246,7 +1246,7 @@
<keydef keys="pushVideoFrameEx" href="../API/api_irtcengineex_pushvideoframeex.dita">
<topicmeta>
<keywords>
<keyword>pushExternalVideoFrame</keyword>
<keyword>pushExternalVideoFrame [2/2]</keyword>
</keywords>
</topicmeta>
</keydef>
Expand Down Expand Up @@ -2430,7 +2430,7 @@
<keydef keys="pushVideoFrame" href="../API/api_imediaengine_pushvideoframe.dita">
<topicmeta>
<keywords>
<keyword>pushExternalVideoFrame</keyword>
<keyword>pushExternalVideoFrame [1/2]</keyword>
</keywords>
</topicmeta>
</keydef>
Expand Down
3 changes: 2 additions & 1 deletion dita/RTC-NG/config/relations-rtc-ng-api.ditamap
Original file line number Diff line number Diff line change
Expand Up @@ -2243,7 +2243,7 @@
<topicref keyref="enableLocalVideo"/>
<topicref keyref="enableLoopbackRecording" props="mac cpp unreal bp unity electron flutter"/>
<topicref keyref="enableMainQueueDispatch" props="apple"/>
<topicref keyref="enableMultiCamera" props="cpp ios framework"/>
<topicref keyref="enableMultiCamera" props="cpp ios unreal bp unity rn flutter"/>
<topicref keyref="enableSoundPositionIndication"/>
<topicref keyref="enableSpatialAudio"/>
<topicref keyref="enableVideo"/>
Expand Down Expand Up @@ -2334,6 +2334,7 @@
<topicref keyref="pushExternalAudioFrameSampleBuffer1" props="apple"/>
<topicref keyref="pushReverseAudioFrame1" props="hide"/>
<topicref keyref="pushVideoFrame" props="android apple"/>
<topicref keyref="pushVideoFrameEx" props="apple"/>
<topicref keyref="pushVideoFrame" props="unity"/>
<topicref keyref="pushVideoFrame2" props="android"/>
<topicref keyref="queryInterface" props="cpp unreal bp"/>
Expand Down
7 changes: 0 additions & 7 deletions en-US/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap
Original file line number Diff line number Diff line change
Expand Up @@ -2345,13 +2345,6 @@
</keydef>
</topichead>
<topichead navtitle="多设备采集">
<keydef keys="enableMultiCamera" href="../API/api_irtcengine_enablemulticamera.dita">
<topicmeta>
<keywords>
<keyword>enableMultiCamera</keyword>
</keywords>
</topicmeta>
</keydef>
<keydef keys="startCameraCapture" href="../API/api_irtcengine_startcameracapture.dita">
<topicmeta>
<keywords>
Expand Down
4 changes: 2 additions & 2 deletions en-US/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap
Original file line number Diff line number Diff line change
Expand Up @@ -1288,7 +1288,7 @@
<keydef keys="pushVideoFrameEx" href="../API/api_irtcengineex_pushvideoframeex.dita">
<topicmeta>
<keywords>
<keyword>pushExternalVideoFrame</keyword>
<keyword>pushExternalVideoFrame [2/2]</keyword>
</keywords>
</topicmeta>
</keydef>
Expand Down Expand Up @@ -2455,7 +2455,7 @@
<keydef keys="pushVideoFrame" href="../API/api_imediaengine_pushvideoframe.dita">
<topicmeta>
<keywords>
<keyword>pushExternalVideoFrame</keyword>
<keyword>pushExternalVideoFrame [1/2]</keyword>
</keywords>
</topicmeta>
</keydef>
Expand Down
4 changes: 2 additions & 2 deletions en-US/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap
Original file line number Diff line number Diff line change
Expand Up @@ -1246,7 +1246,7 @@
<keydef keys="pushVideoFrameEx" href="../API/api_irtcengineex_pushvideoframeex.dita">
<topicmeta>
<keywords>
<keyword>pushExternalVideoFrame</keyword>
<keyword>pushExternalVideoFrame [2/2]</keyword>
</keywords>
</topicmeta>
</keydef>
Expand Down Expand Up @@ -2430,7 +2430,7 @@
<keydef keys="pushVideoFrame" href="../API/api_imediaengine_pushvideoframe.dita">
<topicmeta>
<keywords>
<keyword>pushExternalVideoFrame</keyword>
<keyword>pushExternalVideoFrame [1/2]</keyword>
</keywords>
</topicmeta>
</keydef>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,13 @@ The behavior differences of Agora SDK between v3.7.0 and v4.0.0 are listed as fo
- In v3.7.0, the local user receives the `onRemoteAudioStateChanged` or `onRemoteVideoStateChanged` callback, which reports the status changes of the remote host's audio or video streams.
- In v4.0.0, instead of the `onRemoteAudioStateChanged` or `onRemoteVideoStateChanged` callback, the local user receives the `onUserMuteAudio` or `onUserMuteVideo` callback, which reports the changes in the remote host's publishing status.

#### Media options

There are differences in the behavior of the SDK when setting channel media options while joining a channel between agora_rtc_engine: ^5.x and agora_rtc_engine: ^6.0.0:

- In agora_rtc_engine: ^5.x, if you set `publishLocalAudio` in `ChannelMediaOptions` to `false`, it will stop publishing the local audio stream within the channel.
- In agora_rtc_engine: ^6.0.0, if you set `publishMicrophoneTrack` in `ChannelMediaOptions` to `false`, it will not only stop publishing the local audio stream within the channel but also stop local microphone capture.

### Function gaps

This section introduces functions that were supported in v3.7.0 but are no longer supported or behave inconsistently in v4.0.0. Plans exist to support them or make them consistent in a future release, however.
Expand Down
14 changes: 14 additions & 0 deletions markdown/RTC 4.x/migration-guide/en-US/migration_gude_ios_ng.md
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,20 @@ The behavior differences of Agora SDK between v3.7.0 and v4.0.0 are listed as fo
- In v3.7.0, the local user receives the `remoteAudioStateChangedOfUid` or `remoteVideoStateChangedOfUid` callback, which reports the status changes of the remote host's audio or video streams.
- In v4.0.0, instead of the `remoteAudioStateChangedOfUid` or `remoteVideoStateChangedOfUid` callback, the local user receives the `didAudioMuted` or `didVideoMuted` callback, which reports the changes in the remote host's publishing status.

#### Media options

There are differences in the behavior of the SDK when setting channel media options while joining a channel between v3.7.0 and v4.0.0:

- In v3.7.0, if you set `publishLocalAudio` in `AgoraRtcChannelMediaOptions` to `NO`, it will stop publishing the local audio stream within the channel.
- In v4.0.0, if you set `publishMicrophoneTrack` in `AgoraRtcChannelMediaOptions` to `NO`, it will not only stop publishing the local audio stream within the channel but also stop local microphone capture.

#### Video information change event

If the video capture device is adjusted to landscape or portrait mode during video capture, in v3.7.0 and v4.0.0, the following differences exit in the video information change events reported by the SDK:

- In v3.7.0, the `rotation` parameter in the `videoSizeChangedOfUid` callback displays the current device rotation information.
- In v4.0.0, the `rotation` parameter in the `videoSizeChangedOfSourceType` callback is always `0`.

### Function gaps

This section introduces functions that were supported in v3.7.0 but are no longer supported or behave inconsistently in v4.0.0. Plans exist to support them or make them consistent in a future release, however.
Expand Down
14 changes: 14 additions & 0 deletions markdown/RTC 4.x/migration-guide/en-US/migration_gude_mac_ng.md
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,20 @@ The behavior differences of Agora SDK between v3.7.0 and v4.0.0 are listed as fo
- In v3.7.0, the local user receives the `remoteAudioStateChangedOfUid` or `remoteVideoStateChangedOfUid` callback, which reports the status changes of the remote host's audio or video streams.
- In v4.0.0, instead of the `remoteAudioStateChangedOfUid` or `remoteVideoStateChangedOfUid` callback, the local user receives the `didAudioMuted` or `didVideoMuted` callback, which reports the changes in the remote host's publishing status.

#### Media options

There are differences in the behavior of the SDK when setting channel media options while joining a channel between v3.7.0 and v4.0.0:

- In v3.7.0, if you set `publishLocalAudio` in `AgoraRtcChannelMediaOptions` to `NO`, it will stop publishing the local audio stream within the channel.
- In v4.0.0, if you set `publishMicrophoneTrack` in `AgoraRtcChannelMediaOptions` to `NO`, it will not only stop publishing the local audio stream within the channel but also stop local microphone capture.

#### Video information change event

If the video capture device is adjusted to landscape or portrait mode during video capture, in v3.7.0 and v4.0.0, the following differences exit in the video information change events reported by the SDK:

- In v3.7.0, the `rotation` parameter in the `videoSizeChangedOfUid` callback displays the current device rotation information.
- In v4.0.0, the `rotation` parameter in the `videoSizeChangedOfSourceType` callback is always `0`.

### Function gaps

This section introduces functions that were supported in v3.7.0 but are no longer supported or behave inconsistently in v4.0.0. Plans exist to support them or make them consistent in a future release, however.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,13 @@ The behavior differences of Agora SDK between v3.7.0 and v4.0.0 are listed as fo
- In v3.7.0, the local user receives the `onRemoteAudioStateChanged` or `onRemoteVideoStateChanged` callback, which reports the status changes of the remote host's audio or video streams.
- In v4.0.0, instead of the `onRemoteAudioStateChanged` or `onRemoteVideoStateChanged` callback, the local user receives the `onUserMuteAudio` or `onUserMuteVideo` callback, which reports the changes in the remote host's publishing status.

#### Media options

There are differences in the behavior of the SDK when setting channel media options while joining a channel between v3.7.0 and v4.0.0:

- In v3.7.0, if you set `publishLocalAudio` in `ChannelMediaOptions` to `false`, it will stop publishing the local audio stream within the channel.
- In v4.0.0, if you set `publishMicrophoneTrack` in `ChannelMediaOptions` to `false`, it will not only stop publishing the local audio stream within the channel but also stop local microphone capture.

### Function gaps

This section introduces functions that were supported in v3.7.0 but are no longer supported or behave inconsistently in v4.0.0. Plans exist to support them or make them consistent in a future release, however.
Expand All @@ -206,32 +213,20 @@ v4.0.0 reconstructs the audio application scenarios, which can replace most of t
| `AUDIO_SCENARIO_IOT` | `AUDIO_SCENARIO_DEFAULT` |
| `AUDIO_SCENARIO_MEETING` | `AUDIO_SCENARIO_MEETING` |



#### Unsupported functions



Compared to v3.7.0, some features are not supported or only partially supported in v4.0.0. This section shows the APIs currently unsupported but for which support is planned in a future release.



Remote video stream fallback:



- `setRemoteUserPriority`



Screen sharing:

- `onScreenCaptureInfoUpdated`

### Removed APIs



The v4.0.0 removes deprecated or unrecommended APIs. Alternatives to the removed API or reasons for their removal are shown as follows:

- `virtualBackgroundSourceEnabled`: Use the return value of `enableVirtualBackground` instead.
Expand Down Expand Up @@ -259,16 +254,10 @@ The v4.0.0 removes deprecated or unrecommended APIs. Alternatives to the removed

### Naming changes



The naming changes in v4.0.0 cause error messages in the IDE when you compile your project, and you need to update the code of your app according to each error message.



The main API and parameter name changes are as follows:



- `adjustLoopbackRecordingSignalVolume` is changed to `adjustLoopbackRecordingVolume`.
- `onFirstLocalAudioFrame` is changed to `onFirstLocalAudioFramePublished.`
- The `fileSize` member in `LogConfig` is renamed to `fileSizeInKB`.
Expand Down
Loading

0 comments on commit 4b03a30

Please sign in to comment.