@tencent-rtc/mcp 1.4.6 → 1.6.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cursor-setting.png +0 -0
- package/knowledge/bm25-cache.js +74 -0
- package/knowledge/bm25-cache.js.map +1 -0
- package/knowledge/bm25.js +148 -0
- package/knowledge/bm25.js.map +1 -0
- package/knowledge/build-index.js +70 -0
- package/knowledge/build-index.js.map +1 -0
- package/knowledge/chunker.js +168 -0
- package/knowledge/chunker.js.map +1 -0
- package/knowledge/content-loader.js +40 -0
- package/knowledge/content-loader.js.map +1 -0
- package/knowledge/doc-url-resolver.js +143 -0
- package/knowledge/doc-url-resolver.js.map +1 -0
- package/knowledge/extractors.js +26 -0
- package/knowledge/extractors.js.map +1 -0
- package/knowledge/path-meta.js +185 -0
- package/knowledge/path-meta.js.map +1 -0
- package/knowledge/search/exact-lookup.js +498 -0
- package/knowledge/search/exact-lookup.js.map +1 -0
- package/knowledge/search/filter-pool.js +105 -0
- package/knowledge/search/filter-pool.js.map +1 -0
- package/knowledge/search/product-scope-intent.js +41 -0
- package/knowledge/search/product-scope-intent.js.map +1 -0
- package/knowledge/search/requires-framework.js +82 -0
- package/knowledge/search/requires-framework.js.map +1 -0
- package/knowledge/search/search-knowledge.js +230 -0
- package/knowledge/search/search-knowledge.js.map +1 -0
- package/mcp-server-prompt.png +0 -0
- package/package.json +1 -1
- package/resource/_schema/feature-aliases.yaml +10 -0
- package/resource/_schema/goal-tags.yaml +72 -0
- package/resource/_schema/products.yaml +19 -0
- package/resource/_schema/trtc-intents.yaml +27 -0
- package/resource/_schema/types.yaml +43 -0
- package/resource/index/component-slugs.json +1 -0
- package/resource/index/doc-source-urls.json +1 -0
- package/resource/index/manifest.json +1 -0
- package/resource/{doc → integration}/callkit/preset/android/integration.md +34 -28
- package/resource/integration/callkit/preset/flutter/integration.md +346 -0
- package/resource/integration/callkit/preset/ios/integration.md +408 -0
- package/resource/integration/callkit/preset/react/integration.md +362 -0
- package/resource/integration/callkit/preset/vue/integration.md +356 -0
- package/resource/integration/chat/preset/android/integration.md +500 -0
- package/resource/integration/chat/preset/flutter/integration.md +370 -0
- package/resource/integration/chat/preset/ios/integration.md +566 -0
- package/resource/integration/chat/preset/react/integration.md +490 -0
- package/resource/integration/chat/preset/vue/integration.md +504 -0
- package/resource/{doc → integration}/livekit/preset/live/vue/live-list-integration.md +26 -22
- package/resource/{doc → integration}/livekit/preset/live/vue/live-player-desk-integration.md +22 -18
- package/resource/integration/livekit/preset/live/vue/live-player-h5-integration.md +309 -0
- package/resource/{doc → integration}/livekit/preset/live/vue/live-pusher-integration.md +47 -39
- package/resource/integration/roomkit/preset/vue/integration.md +562 -0
- package/resource/knowledge/callkit/core-sdk/android/answer-call.md +828 -0
- package/resource/knowledge/callkit/core-sdk/android/make-call.md +897 -0
- package/resource/knowledge/callkit/core-sdk/android/offline-push.md +363 -0
- package/resource/knowledge/callkit/core-sdk/flutter/answer-call.md +1111 -0
- package/resource/knowledge/callkit/core-sdk/flutter/make-call.md +1132 -0
- package/resource/{doc → knowledge}/callkit/core-sdk/flutter/offline-push.md +174 -151
- package/resource/knowledge/callkit/core-sdk/ios/answer-call.md +1084 -0
- package/resource/knowledge/callkit/core-sdk/ios/make-call.md +1252 -0
- package/resource/knowledge/callkit/core-sdk/ios/offline-push.md +534 -0
- package/resource/knowledge/callkit/core-sdk/uni-app/answer-call.md +953 -0
- package/resource/knowledge/callkit/core-sdk/uni-app/make-call.md +1061 -0
- package/resource/knowledge/callkit/faq/android.md +92 -0
- package/resource/{doc/callkit/faq/android-faq.md → knowledge/callkit/faq/common.md} +11 -12
- package/resource/knowledge/callkit/faq/error-code.md +67 -0
- package/resource/knowledge/callkit/faq/flutter.md +52 -0
- package/resource/knowledge/callkit/faq/ios.md +104 -0
- package/resource/knowledge/callkit/faq/web.md +74 -0
- package/resource/knowledge/callkit/preset/android/api.md +412 -0
- package/resource/knowledge/callkit/preset/flutter/api.md +22 -0
- package/resource/knowledge/callkit/preset/ios/api.md +234 -0
- package/resource/knowledge/callkit/preset/web/api.md +83 -0
- package/resource/knowledge/chat/preset/android/features/chat-setting.md +74 -0
- package/resource/knowledge/chat/preset/android/features/contact-list.md +43 -0
- package/resource/knowledge/chat/preset/android/features/conversation-list.md +117 -0
- package/resource/knowledge/chat/preset/android/features/language.md +136 -0
- package/resource/knowledge/chat/preset/android/features/message-input.md +57 -0
- package/resource/knowledge/chat/preset/android/features/message-list.md +142 -0
- package/resource/knowledge/chat/preset/android/features/search.md +64 -0
- package/resource/knowledge/chat/preset/android/features/theme.md +222 -0
- package/resource/knowledge/chat/preset/android-view/integration.md +300 -0
- package/resource/knowledge/chat/preset/flutter/features/chat-setting.md +64 -0
- package/resource/knowledge/chat/preset/flutter/features/contact-list.md +40 -0
- package/resource/knowledge/chat/preset/flutter/features/conversation-list.md +129 -0
- package/resource/knowledge/chat/preset/flutter/features/language.md +104 -0
- package/resource/knowledge/chat/preset/flutter/features/message-input.md +54 -0
- package/resource/knowledge/chat/preset/flutter/features/message-list.md +158 -0
- package/resource/knowledge/chat/preset/flutter/features/search.md +59 -0
- package/resource/knowledge/chat/preset/flutter/features/theme.md +261 -0
- package/resource/knowledge/chat/preset/ios/features/chat-setting.md +94 -0
- package/resource/knowledge/chat/preset/ios/features/contact-list.md +119 -0
- package/resource/knowledge/chat/preset/ios/features/conversation-list.md +134 -0
- package/resource/knowledge/chat/preset/ios/features/language.md +125 -0
- package/resource/knowledge/chat/preset/ios/features/message-input.md +69 -0
- package/resource/knowledge/chat/preset/ios/features/message-list.md +162 -0
- package/resource/knowledge/chat/preset/ios/features/search.md +93 -0
- package/resource/knowledge/chat/preset/ios/features/theme.md +270 -0
- package/resource/{doc/chatkit/ios → knowledge/chat/preset/ios-uikit}/integration.md +160 -158
- package/resource/knowledge/chat/preset/react/features/chat-setting.md +101 -0
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/contact-list.md +43 -41
- package/resource/knowledge/chat/preset/react/features/conversation-actions.md +215 -0
- package/resource/knowledge/chat/preset/react/features/conversation-list.md +339 -0
- package/resource/knowledge/chat/preset/react/features/conversation-preview.md +101 -0
- package/resource/knowledge/chat/preset/react/features/conversation-search.md +61 -0
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/message-input.md +117 -156
- package/resource/knowledge/chat/preset/react/features/message-list.md +297 -0
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/search.md +65 -59
- package/resource/knowledge/chat/preset/react/features/theme.md +93 -0
- package/resource/knowledge/chat/preset/vue/features/chat-header.md +331 -0
- package/resource/knowledge/chat/preset/vue/features/chat-setting.md +79 -0
- package/resource/knowledge/chat/preset/vue/features/contact-list.md +277 -0
- package/resource/knowledge/chat/preset/vue/features/conversation-actions.md +234 -0
- package/resource/knowledge/chat/preset/vue/features/conversation-list.md +331 -0
- package/resource/knowledge/chat/preset/vue/features/conversation-preview.md +216 -0
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-search.md +13 -13
- package/resource/knowledge/chat/preset/vue/features/message-input.md +551 -0
- package/resource/knowledge/chat/preset/vue/features/message-list.md +350 -0
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/search.md +79 -73
- package/resource/knowledge/chat/preset/vue/features/theme.md +136 -0
- package/resource/knowledge/chat/urls/error-code.md +17 -0
- package/resource/knowledge/chat/urls/product.md +43 -0
- package/resource/knowledge/chat/urls/restapi.md +204 -0
- package/resource/knowledge/chat/urls/sdk/android.md +80 -0
- package/resource/knowledge/chat/urls/sdk/flutter.md +71 -0
- package/resource/knowledge/chat/urls/sdk/ios.md +80 -0
- package/resource/knowledge/chat/urls/sdk/web.md +80 -0
- package/resource/knowledge/chat/urls/webhook.md +68 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/AudioEffectStore.md +286 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/BarrageStore.md +174 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/BattleStore.md +329 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/CameraView.md +55 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/CoGuestStore.md +434 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/CoHostStore.md +362 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/DeviceStore.md +466 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/GiftStore.md +173 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LikeStore.md +51 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveAudienceStore.md +291 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveCoreView.md +78 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveSeatStore.md +488 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LoginStore.md +219 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/AudioEffectStore.md +282 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BarrageStore.md +212 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BaseBeautyStore.md +153 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BattleStore.md +312 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoGuestStore.md +404 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoHostStore.md +334 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/DeviceStore.md +426 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/GiftStore.md +166 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LikeStore.md +52 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveAudienceStore.md +281 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveCoreView.md +150 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveSeatStore.md +438 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LoginStore.md +190 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/AudioEffectStore.md +291 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BarrageStore.md +192 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BaseBeautyStore.md +146 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BattleStore.md +309 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoGuestStore.md +370 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoHostStore.md +339 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/DeviceStore.md +503 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/GiftStore.md +188 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LikeStore.md +51 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveAudienceStore.md +289 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveCoreView.md +78 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveSeatStore.md +487 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LoginStore.md +183 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/web/index.md +736 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audience-list.md +53 -47
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audio-effect.md +28 -24
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-barrage.md +22 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-base-beauty.md +17 -15
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-co-guest-interaction.md +19 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-gift.md +102 -89
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-host-interaction.md +41 -37
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-integration.md +45 -43
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-live-list.md +23 -20
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audience-list.md +41 -41
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audio-effect.md +70 -69
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-barrage.md +68 -71
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-base-beauty.md +43 -47
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-co-guest-interaction.md +59 -56
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-gift.md +103 -105
- package/resource/knowledge/livekit/core-sdk/live/flutter/live-host-interaction.md +869 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-integration.md +84 -87
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-live-list.md +43 -40
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audience-list.md +11 -10
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audio-effect.md +28 -24
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-barrage.md +22 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-base-beauty.md +15 -14
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-co-guest-interaction.md +19 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-gift.md +54 -50
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-host-interaction.md +41 -37
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-integration.md +40 -40
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-live-list.md +19 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audience-list.md +53 -47
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audio-effect.md +28 -24
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-barrage.md +22 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +41 -33
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-gift.md +94 -81
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-host-interaction.md +35 -30
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-integration.md +45 -42
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-room-list.md +23 -20
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audience-list.md +260 -0
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audio-effect.md +598 -0
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-barrage.md +490 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +65 -59
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-gift.md +424 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-integration.md +69 -76
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-room-list.md +726 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audience-list.md +11 -10
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audio-effect.md +28 -24
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-barrage.md +22 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +41 -33
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-gift.md +54 -50
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-host-interaction.md +35 -30
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-integration.md +49 -46
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-room-list.md +19 -18
- package/resource/knowledge/livekit/faq/error-code.md +193 -0
- package/resource/{doc/livekit/preset/live/vue/components → knowledge/livekit/preset/live/vue/features}/barrage.md +56 -53
- package/resource/{doc/livekit/preset/live/vue/components → knowledge/livekit/preset/live/vue/features}/live-audience-list.md +22 -21
- package/resource/{doc/livekit/preset/live/vue/components → knowledge/livekit/preset/live/vue/features}/live-view.md +34 -32
- package/resource/knowledge/push/config/android.md +92 -0
- package/resource/knowledge/push/config/harmonyos.md +83 -0
- package/resource/knowledge/push/config/ios.md +254 -0
- package/resource/knowledge/push/config/react-native.md +254 -0
- package/resource/knowledge/push/config/unity.md +209 -0
- package/resource/knowledge/push/config/unreal-engine.md +194 -0
- package/resource/knowledge/push/integration/android.md +404 -0
- package/resource/knowledge/push/integration/flutter.md +465 -0
- package/resource/knowledge/push/integration/harmonyos.md +63 -0
- package/resource/knowledge/push/integration/ios.md +246 -0
- package/resource/knowledge/push/integration/react-native.md +366 -0
- package/resource/knowledge/push/integration/uni-app.md +208 -0
- package/resource/knowledge/push/integration/unity.md +389 -0
- package/resource/knowledge/push/integration/unreal-engine.md +390 -0
- package/resource/knowledge/push/overview/prepare.md +60 -0
- package/resource/knowledge/roomkit/core-sdk/android/call-user-to-room.md +241 -0
- package/resource/knowledge/roomkit/core-sdk/android/room-participant-state.md +588 -0
- package/resource/knowledge/roomkit/core-sdk/android/room-state.md +364 -0
- package/resource/knowledge/roomkit/core-sdk/android/schedule-room.md +340 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/call-user-to-room.md +230 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/room-participant-state.md +797 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/room-state.md +325 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/schedule-room.md +325 -0
- package/resource/knowledge/roomkit/core-sdk/ios/call-user-to-room.md +233 -0
- package/resource/knowledge/roomkit/core-sdk/ios/room-participant-state.md +569 -0
- package/resource/knowledge/roomkit/core-sdk/ios/room-state.md +325 -0
- package/resource/knowledge/roomkit/core-sdk/ios/schedule-room.md +322 -0
- package/resource/knowledge/roomkit/core-sdk/vue/call-user-to-room.md +221 -0
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/device-detection.md +49 -48
- package/resource/knowledge/roomkit/core-sdk/vue/device-state.md +461 -0
- package/resource/knowledge/roomkit/core-sdk/vue/free-beauty-panel.md +216 -0
- package/resource/knowledge/roomkit/core-sdk/vue/room-chat.md +370 -0
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/room-participant-state.md +61 -60
- package/resource/knowledge/roomkit/core-sdk/vue/room-state.md +280 -0
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/room-view.md +57 -56
- package/resource/knowledge/roomkit/core-sdk/vue/schedule-room.md +319 -0
- package/resource/knowledge/roomkit/core-sdk/vue/screen-share.md +267 -0
- package/resource/knowledge/roomkit/core-sdk/vue/virtual-background.md +261 -0
- package/resource/knowledge/roomkit/preset/android/integration.md +396 -0
- package/resource/knowledge/roomkit/preset/flutter/integration.md +404 -0
- package/resource/knowledge/roomkit/preset/ios/integration.md +369 -0
- package/resource/knowledge/roomkit/preset/react/integration.md +576 -0
- package/resource/knowledge/rtcengine/web/how_to_run_web_sdk_demo.md +44 -0
- package/resource/{doc → knowledge}/rtcengine/web/plugin/21-advanced-auto-play-policy.md +8 -2
- package/resource/{doc → knowledge}/rtcengine/web/plugin/22-advanced-audio-mixer.md +19 -1
- package/resource/{doc → knowledge}/rtcengine/web/plugin/23-advanced-support-detection.md +1 -1
- package/resource/{doc → knowledge}/rtcengine/web/plugin/24-advanced-network-quality.md +8 -8
- package/resource/{doc → knowledge}/rtcengine/web/plugin/25-advanced-device-change.md +1 -1
- package/resource/{doc → knowledge}/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +6 -6
- package/resource/{doc → knowledge}/rtcengine/web/plugin/27-advanced-small-stream.md +3 -3
- package/resource/{doc → knowledge}/rtcengine/web/plugin/29-advanced-water-mark.md +18 -0
- package/resource/{doc → knowledge}/rtcengine/web/plugin/31-advanced-plugins-overview.md +1 -1
- package/resource/{doc → knowledge}/rtcengine/web/plugin/34-advanced-proxy.md +2 -2
- package/resource/{doc → knowledge}/rtcengine/web/plugin/35-advanced-ai-denoiser.md +1 -1
- package/resource/knowledge/trtc/android/TRTCCloud.md +1915 -0
- package/resource/knowledge/trtc/android/TRTCCloudDef.md +1029 -0
- package/resource/knowledge/trtc/android/TRTCCloudListener.md +1095 -0
- package/resource/knowledge/trtc/android/TRTCStatistics.md +68 -0
- package/resource/knowledge/trtc/android/TXAudioEffectManager.md +502 -0
- package/resource/knowledge/trtc/android/TXBeautyManager.md +415 -0
- package/resource/knowledge/trtc/android/TXDeviceManager.md +169 -0
- package/resource/knowledge/trtc/android/TXLiteAVCode.md +125 -0
- package/resource/knowledge/trtc/c++/ITRTCCloud.md +2069 -0
- package/resource/knowledge/trtc/c++/ITRTCStatistics.md +73 -0
- package/resource/knowledge/trtc/c++/ITXAudioEffectManager.md +502 -0
- package/resource/knowledge/trtc/c++/ITXDeviceManager.md +391 -0
- package/resource/knowledge/trtc/c++/TRTCCloudCallback.md +1191 -0
- package/resource/knowledge/trtc/c++/TRTCTypeDef.md +931 -0
- package/resource/knowledge/trtc/c++/TXLiteAVCode.md +127 -0
- package/resource/knowledge/trtc/ios/TRTCCloud.md +2118 -0
- package/resource/knowledge/trtc/ios/TRTCCloudDef.md +975 -0
- package/resource/knowledge/trtc/ios/TRTCCloudDelegate.md +1131 -0
- package/resource/knowledge/trtc/ios/TRTCStatistics.md +68 -0
- package/resource/knowledge/trtc/ios/TXAudioEffectManager.md +423 -0
- package/resource/knowledge/trtc/ios/TXBeautyManager.md +416 -0
- package/resource/knowledge/trtc/ios/TXDeviceManager.md +387 -0
- package/resource/knowledge/trtc/ios/TXLiteAVCode.md +127 -0
- package/server.js +35 -10
- package/server.js.map +1 -1
- package/tools/call/get_native_call_uikit_integration.js +2 -3
- package/tools/call/get_native_call_uikit_integration.js.map +1 -1
- package/tools/call/get_native_callkit_core_integration.js +2 -5
- package/tools/call/get_native_callkit_core_integration.js.map +1 -1
- package/tools/call/get_web_call_uikit_integration.js +2 -3
- package/tools/call/get_web_call_uikit_integration.js.map +1 -1
- package/tools/chat/get_native_chat_uikit_integration.js +2 -3
- package/tools/chat/get_native_chat_uikit_integration.js.map +1 -1
- package/tools/chat/get_web_chat_uikit_integration.js +2 -3
- package/tools/chat/get_web_chat_uikit_integration.js.map +1 -1
- package/tools/common/present_framework_choice.js +19 -13
- package/tools/common/present_framework_choice.js.map +1 -1
- package/tools/common/record_answer.js +19 -25
- package/tools/common/record_answer.js.map +1 -1
- package/tools/common/record_feedback.js +17 -30
- package/tools/common/record_feedback.js.map +1 -1
- package/tools/common/search_trtc_knowledge.js +45 -0
- package/tools/common/search_trtc_knowledge.js.map +1 -0
- package/tools/definitions/get_native_call_uikit_integration_def.js +3 -1
- package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_callkit_core_integration_def.js +5 -3
- package/tools/definitions/get_native_callkit_core_integration_def.js.map +1 -1
- package/tools/definitions/get_native_chat_uikit_integration_def.js +5 -2
- package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_livekit_core_integration_def.js +6 -5
- package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -1
- package/tools/definitions/get_web_call_uikit_integration_def.js +4 -2
- package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_integration_def.js +2 -0
- package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js +5 -5
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_room_core_integration_def.js +50 -0
- package/tools/definitions/get_web_room_core_integration_def.js.map +1 -0
- package/tools/definitions/get_web_room_uikit_integration_def.js +5 -4
- package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
- package/tools/definitions/integration-boundary.js +6 -0
- package/tools/definitions/integration-boundary.js.map +1 -0
- package/tools/definitions/present_framework_choice_def.js +12 -10
- package/tools/definitions/present_framework_choice_def.js.map +1 -1
- package/tools/definitions/record_answer_def.js +19 -17
- package/tools/definitions/record_answer_def.js.map +1 -1
- package/tools/definitions/record_feedback_def.js +14 -13
- package/tools/definitions/record_feedback_def.js.map +1 -1
- package/tools/definitions/search_trtc_knowledge_def.js +40 -0
- package/tools/definitions/search_trtc_knowledge_def.js.map +1 -0
- package/tools/index.js +5 -36
- package/tools/index.js.map +1 -1
- package/tools/live/get_native_livekit_core_integration.js +1 -3
- package/tools/live/get_native_livekit_core_integration.js.map +1 -1
- package/tools/live/get_web_live_uikit_integration.js +2 -4
- package/tools/live/get_web_live_uikit_integration.js.map +1 -1
- package/tools/room/get_web_room_core_integration.js +48 -0
- package/tools/room/get_web_room_core_integration.js.map +1 -0
- package/tools/room/get_web_room_uikit_integration.js +2 -3
- package/tools/room/get_web_room_uikit_integration.js.map +1 -1
- package/utils/generate-structured-result.js +24 -30
- package/utils/generate-structured-result.js.map +1 -1
- package/utils/get-doc-content.js +14 -8
- package/utils/get-doc-content.js.map +1 -1
- package/utils/report-cls-client.js +18 -20
- package/utils/report-cls-client.js.map +1 -1
- package/utils/report-es-client.js +1 -1
- package/resource/doc/callkit/core-sdk/.gitkeep +0 -0
- package/resource/doc/callkit/core-sdk/android/answer-call.md +0 -852
- package/resource/doc/callkit/core-sdk/android/make-call.md +0 -954
- package/resource/doc/callkit/core-sdk/android/offline-push.md +0 -361
- package/resource/doc/callkit/core-sdk/flutter/answer-call.md +0 -1160
- package/resource/doc/callkit/core-sdk/flutter/make-call.md +0 -1205
- package/resource/doc/callkit/core-sdk/ios/answer-call.md +0 -1090
- package/resource/doc/callkit/core-sdk/ios/make-call.md +0 -1248
- package/resource/doc/callkit/core-sdk/ios/offline-push.md +0 -485
- package/resource/doc/callkit/core-sdk/uni-app/answer-call.md +0 -950
- package/resource/doc/callkit/core-sdk/uni-app/make-call.md +0 -1052
- package/resource/doc/callkit/faq/common/error-code.md +0 -47
- package/resource/doc/callkit/faq/flutter-faq.md +0 -115
- package/resource/doc/callkit/faq/ios-faq.md +0 -115
- package/resource/doc/callkit/faq/web-faq.md +0 -36
- package/resource/doc/callkit/preset/android/api.md +0 -296
- package/resource/doc/callkit/preset/flutter/api.md +0 -410
- package/resource/doc/callkit/preset/flutter/integration.md +0 -164
- package/resource/doc/callkit/preset/ios/api.md +0 -80
- package/resource/doc/callkit/preset/ios/integration.md +0 -187
- package/resource/doc/callkit/preset/react/api.md +0 -501
- package/resource/doc/callkit/preset/react/integration.md +0 -86
- package/resource/doc/callkit/preset/vue/api.md +0 -501
- package/resource/doc/callkit/preset/vue/integration.md +0 -83
- package/resource/doc/chatkit/android/faq.md +0 -111
- package/resource/doc/chatkit/android/features/theme.md +0 -219
- package/resource/doc/chatkit/android/integration.md +0 -490
- package/resource/doc/chatkit/faq/android_sdk/client-api.md +0 -281
- package/resource/doc/chatkit/faq/common/product.md +0 -7
- package/resource/doc/chatkit/faq/common/server.md +0 -44
- package/resource/doc/chatkit/faq/common/server_error_code.md +0 -74
- package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +0 -199
- package/resource/doc/chatkit/faq/flutter_sdk/faq.md +0 -53
- package/resource/doc/chatkit/faq/ios_sdk/client-api.md +0 -235
- package/resource/doc/chatkit/faq/web_sdk/error_code.md +0 -47
- package/resource/doc/chatkit/faq/web_sdk/faq.md +0 -287
- package/resource/doc/chatkit/flutter/faq.md +0 -23
- package/resource/doc/chatkit/flutter/features/theme.md +0 -235
- package/resource/doc/chatkit/flutter/integration.md +0 -344
- package/resource/doc/chatkit/ios/faq.md +0 -111
- package/resource/doc/chatkit/ios/features/theme.md +0 -267
- package/resource/doc/chatkit/react/components/avatar.md +0 -104
- package/resource/doc/chatkit/react/components/chat-header.md +0 -148
- package/resource/doc/chatkit/react/components/chat-setting.md +0 -57
- package/resource/doc/chatkit/react/components/chat.md +0 -38
- package/resource/doc/chatkit/react/components/component-list.md +0 -37
- package/resource/doc/chatkit/react/components/conversation-actions.md +0 -174
- package/resource/doc/chatkit/react/components/conversation-list.md +0 -333
- package/resource/doc/chatkit/react/components/conversation-preview.md +0 -118
- package/resource/doc/chatkit/react/components/conversation-search.md +0 -60
- package/resource/doc/chatkit/react/components/message-list.md +0 -293
- package/resource/doc/chatkit/react/components/tuikit.md +0 -34
- package/resource/doc/chatkit/react/faq.md +0 -26
- package/resource/doc/chatkit/react/integration.md +0 -416
- package/resource/doc/chatkit/vue/components/avatar.md +0 -104
- package/resource/doc/chatkit/vue/components/chat-header.md +0 -148
- package/resource/doc/chatkit/vue/components/chat-setting.md +0 -62
- package/resource/doc/chatkit/vue/components/chat.md +0 -45
- package/resource/doc/chatkit/vue/components/component-list.md +0 -87
- package/resource/doc/chatkit/vue/components/contact-list.md +0 -271
- package/resource/doc/chatkit/vue/components/conversation-actions.md +0 -228
- package/resource/doc/chatkit/vue/components/conversation-list.md +0 -320
- package/resource/doc/chatkit/vue/components/conversation-preview.md +0 -213
- package/resource/doc/chatkit/vue/components/message-input.md +0 -1054
- package/resource/doc/chatkit/vue/components/message-list.md +0 -433
- package/resource/doc/chatkit/vue/components/tuikit.md +0 -31
- package/resource/doc/chatkit/vue/components/userpicker.md +0 -256
- package/resource/doc/chatkit/vue/faq.md +0 -36
- package/resource/doc/chatkit/vue/integration.md +0 -428
- package/resource/doc/livekit/core-sdk/live/flutter/live-host-interaction.md +0 -866
- package/resource/doc/livekit/faq/common/error-code.md +0 -88
- package/resource/doc/livekit/preset/live/vue/api-reference/index.md +0 -780
- package/resource/doc/livekit/preset/live/vue/components/co-guest-panel.md +0 -91
- package/resource/doc/livekit/preset/live/vue/components/live-scene-panel.md +0 -112
- package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +0 -215
- package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +0 -300
- package/resource/doc/roomkit/faq/common/error-code.md +0 -67
- package/resource/doc/roomkit/vue/features/call-user-to-room.md +0 -220
- package/resource/doc/roomkit/vue/features/device-state.md +0 -460
- package/resource/doc/roomkit/vue/features/free-beauty-panel.md +0 -215
- package/resource/doc/roomkit/vue/features/room-chat.md +0 -369
- package/resource/doc/roomkit/vue/features/room-state.md +0 -282
- package/resource/doc/roomkit/vue/features/schedule-room.md +0 -318
- package/resource/doc/roomkit/vue/features/screen-share.md +0 -265
- package/resource/doc/roomkit/vue/features/virtual-background.md +0 -271
- package/resource/doc/roomkit/vue/integration.md +0 -315
- package/resource/doc/rtcengine/faq/common/error_code.md +0 -1
- package/resource/doc/rtcengine/faq/web_sdk/.gitkeep +0 -0
- package/resource/doc/rtcengine/web/.gitkeep +0 -0
- package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +0 -59
- package/resource/doc/trtc/C++/ITRTCCloud.md +0 -1970
- package/resource/doc/trtc/C++/ITRTCStatistics.md +0 -70
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +0 -469
- package/resource/doc/trtc/C++/ITXDeviceManager.md +0 -387
- package/resource/doc/trtc/C++/TRTCCloudCallback.md +0 -1082
- package/resource/doc/trtc/C++/TRTCTypeDef.md +0 -925
- package/resource/doc/trtc/C++/TXLiteAVCode.md +0 -129
- package/resource/doc/trtc/android/TRTCCloud.md +0 -1815
- package/resource/doc/trtc/android/TRTCCloudDef.md +0 -992
- package/resource/doc/trtc/android/TRTCCloudListener.md +0 -1004
- package/resource/doc/trtc/android/TRTCStatistics.md +0 -65
- package/resource/doc/trtc/android/TXAudioEffectManager.md +0 -469
- package/resource/doc/trtc/android/TXBeautyManager.md +0 -402
- package/resource/doc/trtc/android/TXDeviceManager.md +0 -173
- package/resource/doc/trtc/android/TXLiteAVCode.md +0 -127
- package/resource/doc/trtc/iOS/TRTCCloud.md +0 -2028
- package/resource/doc/trtc/iOS/TRTCCloudDef.md +0 -958
- package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +0 -1046
- package/resource/doc/trtc/iOS/TRTCStatistics.md +0 -65
- package/resource/doc/trtc/iOS/TXAudioEffectManager.md +0 -397
- package/resource/doc/trtc/iOS/TXBeautyManager.md +0 -403
- package/resource/doc/trtc/iOS/TXDeviceManager.md +0 -381
- package/resource/doc/trtc/iOS/TXLiteAVCode.md +0 -130
- package/tools/call/get_callkit_api.js +0 -33
- package/tools/call/get_callkit_api.js.map +0 -1
- package/tools/chat/get_native_chat_uikit_feature_detail.js +0 -35
- package/tools/chat/get_native_chat_uikit_feature_detail.js.map +0 -1
- package/tools/chat/get_web_chat_uikit_component_detail.js +0 -35
- package/tools/chat/get_web_chat_uikit_component_detail.js.map +0 -1
- package/tools/common/get_faq.js +0 -266
- package/tools/common/get_faq.js.map +0 -1
- package/tools/common/record_skill_session.js +0 -69
- package/tools/common/record_skill_session.js.map +0 -1
- package/tools/definitions/get_callkit_api_def.js +0 -29
- package/tools/definitions/get_callkit_api_def.js.map +0 -1
- package/tools/definitions/get_faq_def.js +0 -49
- package/tools/definitions/get_faq_def.js.map +0 -1
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +0 -31
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_native_livekit_core_features_def.js +0 -34
- package/tools/definitions/get_native_livekit_core_features_def.js.map +0 -1
- package/tools/definitions/get_native_trtc_sdk_docs_def.js +0 -32
- package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +0 -1
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js +0 -31
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_livekit_api_def.js +0 -30
- package/tools/definitions/get_web_livekit_api_def.js.map +0 -1
- package/tools/definitions/get_web_livekit_component_detail_def.js +0 -32
- package/tools/definitions/get_web_livekit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_roomkit_feature_detail_def.js +0 -31
- package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_web_trtc_sdk_api_def.js +0 -27
- package/tools/definitions/get_web_trtc_sdk_api_def.js.map +0 -1
- package/tools/definitions/get_web_trtc_sdk_integration_def.js +0 -27
- package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +0 -1
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js +0 -27
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +0 -1
- package/tools/definitions/record_skill_session_def.js +0 -31
- package/tools/definitions/record_skill_session_def.js.map +0 -1
- package/tools/live/get_native_livekit_core_features.js +0 -68
- package/tools/live/get_native_livekit_core_features.js.map +0 -1
- package/tools/live/get_web_livekit_api.js +0 -33
- package/tools/live/get_web_livekit_api.js.map +0 -1
- package/tools/live/get_web_livekit_component_detail.js +0 -35
- package/tools/live/get_web_livekit_component_detail.js.map +0 -1
- package/tools/room/get_web_roomkit_feature_detail.js +0 -69
- package/tools/room/get_web_roomkit_feature_detail.js.map +0 -1
- package/tools/rtcengine/get_web_trtc_sdk_api.js +0 -32
- package/tools/rtcengine/get_web_trtc_sdk_api.js.map +0 -1
- package/tools/rtcengine/get_web_trtc_sdk_integration.js +0 -32
- package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +0 -1
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js +0 -32
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +0 -1
- package/tools/trtc/get_native_trtc_sdk_docs.js +0 -74
- package/tools/trtc/get_native_trtc_sdk_docs.js.map +0 -1
- package/utils/build-session-directives.js +0 -120
- package/utils/build-session-directives.js.map +0 -1
- package/utils/handle-framework.js +0 -9
- package/utils/handle-framework.js.map +0 -1
- package/utils/handle-state-name.js +0 -29
- package/utils/handle-state-name.js.map +0 -1
- package/utils/report-runtime-error-cls-client.js +0 -91
- package/utils/report-runtime-error-cls-client.js.map +0 -1
- /package/resource/{doc/livekit/preset/live/vue/faq.md → knowledge/push/config/donut.md} +0 -0
- /package/resource/{doc/roomkit/vue/faq.md → knowledge/push/integration/donut.md} +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/api.md +0 -0
- /package/resource/{doc/rtcengine/faq/web/web.md → knowledge/rtcengine/web/faq.md} +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/how_to_integrated_web_sdk.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/28-advanced-beauty.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/30-advanced-cross-room-link.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/36-advanced-virtual-background.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/37-advanced-voice-changer.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/39-advanced-video-decoder.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/40-advanced-video-mixer.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/43-advanced-face-detection.md +0 -0
|
@@ -1,1815 +0,0 @@
|
|
|
1
|
-
# TRTC Real-Time Communication (TRTC SDK) Documentation
|
|
2
|
-
## Overview
|
|
3
|
-
`TRTCCloud.java` is the API reference for TRTC Real-Time Communication (TRTC SDK) on Android. It provides detailed documentation for features including stream publishing, stream playback, stream mixing, and recording.
|
|
4
|
-
|
|
5
|
-
## TRTCCloud
|
|
6
|
-
| Function List | Description |
|
|
7
|
-
| --- | --- |
|
|
8
|
-
| sharedInstance | Create a `TRTCCloud` Instance (Singleton Pattern) |
|
|
9
|
-
| destroySharedInstance | Terminate `TRTCCloud` Instance (Singleton Pattern) |
|
|
10
|
-
| addListener | Add TRTC Event Callback |
|
|
11
|
-
| removeListener | Remove TRTC Event Callback |
|
|
12
|
-
| setListenerHandler | Set the queue to drive TRTCCloudListener event callbacks |
|
|
13
|
-
| enterRoom | Enter Room |
|
|
14
|
-
| exitRoom | Leave Room |
|
|
15
|
-
| switchRole | Switch Role |
|
|
16
|
-
| switchRole | Switch Role (Supports Setting Permission Bit) |
|
|
17
|
-
| switchRoom | Switch Room |
|
|
18
|
-
| ConnectOtherRoom | Request Cross-room Communication |
|
|
19
|
-
| DisconnectOtherRoom | Exit Cross-room Communication |
|
|
20
|
-
| setDefaultStreamRecvMode | Set Subscription Mode (Needs to be set before entering the room to take effect) |
|
|
21
|
-
| createSubCloud | Create Sub-room Instances (For Multi-room Concurrent Viewing) |
|
|
22
|
-
| destroySubCloud | Terminate Sub-room Instances |
|
|
23
|
-
| updateOtherRoomForwardMode | Modify the uplink capability of cross-room broadcasters in this room |
|
|
24
|
-
| startPublishMediaStream | Start publishing media stream |
|
|
25
|
-
| updatePublishMediaStream | Update the published media stream. |
|
|
26
|
-
| stopPublishMediaStream | Stop publishing media stream. |
|
|
27
|
-
| startLocalPreview | Enable the preview screen of the local camera (Mobile Terminal) |
|
|
28
|
-
| updateLocalView | Update the preview screen of the local camera |
|
|
29
|
-
| stopLocalPreview | Stop camera preview |
|
|
30
|
-
| muteLocalVideo | Suspend/Resume publishing local video stream |
|
|
31
|
-
| setVideoMuteImage | Set the alternative image during the suspension of the local screen |
|
|
32
|
-
| startRemoteView | Subscribe to the video stream of a remote user and bind the video rendering control |
|
|
33
|
-
| updateRemoteView | Update the video rendering control of a remote user |
|
|
34
|
-
| stopRemoteView | Unsubscribe from the remote user's video stream and release the rendering control |
|
|
35
|
-
| stopAllRemoteView | Unsubscribe from all remote users' video streams and release all rendering resources |
|
|
36
|
-
| muteRemoteVideoStream | Suspend/Resume subscription of the remote user's video stream |
|
|
37
|
-
| muteAllRemoteVideoStreams | Suspend/Resume subscription of all remote users' video streams |
|
|
38
|
-
| setVideoEncoderParam | Set encoding parameters for the video encoder |
|
|
39
|
-
| setNetworkQosParam | Set network quality control parameters |
|
|
40
|
-
| setLocalRenderParams | Set rendering parameters for the local screen |
|
|
41
|
-
| setRemoteRenderParams | Set rendering mode for the remote screen |
|
|
42
|
-
| enableEncSmallVideoStream | Enable picture-in-picture dual-stream encoding mode |
|
|
43
|
-
| setRemoteVideoStreamType | Switch picture-in-picture for the specified remote user |
|
|
44
|
-
| snapshotVideo | Take a video screenshot |
|
|
45
|
-
| setPerspectiveCorrectionPoints | Set perspective correction coordinate settings for the video screen |
|
|
46
|
-
| setGravitySensorAdaptiveMode | Set gravity sensing adaptive mode (11.7 and above) |
|
|
47
|
-
| startLocalAudio | Enable collection and publishing of local audio |
|
|
48
|
-
| stopLocalAudio | Stop collection and publishing of local audio |
|
|
49
|
-
| muteLocalAudio | Pause/Resume publishing of the local audio stream |
|
|
50
|
-
| muteRemoteAudio | Pause/Resume playing of the remote audio stream |
|
|
51
|
-
| muteAllRemoteAudio | Pause/Resume playing of all remote users' audio streams |
|
|
52
|
-
| setAudioRoute | Sets audio routing. |
|
|
53
|
-
| setRemoteAudioVolume | Set the playback volume for a specific remote user |
|
|
54
|
-
| setAudioCaptureVolume | Sets the local audio capture volume. |
|
|
55
|
-
| getAudioCaptureVolume | Obtains the local audio capture volume. |
|
|
56
|
-
| setAudioPlayoutVolume | Sets the remote audio playback volume. |
|
|
57
|
-
| getAudioPlayoutVolume | Obtains the remote audio playback volume. |
|
|
58
|
-
| enableAudioVolumeEvaluation | Enable volume reminder |
|
|
59
|
-
| startAudioRecording | Start recording |
|
|
60
|
-
| stopAudioRecording | Stop recording |
|
|
61
|
-
| startLocalRecording | Enable local media recording |
|
|
62
|
-
| stopLocalRecording | Stop local media recording |
|
|
63
|
-
| setRemoteAudioParallelParams | Set intelligent concurrent playback strategy for remote audio streams |
|
|
64
|
-
| enable3DSpatialAudioEffect | Enable 3D audio |
|
|
65
|
-
| updateSelf3DSpatialPosition | Set self coordinates and orientation information in 3D audio |
|
|
66
|
-
| updateRemote3DSpatialPosition | Set remote user coordinate information in 3D audio |
|
|
67
|
-
| set3DSpatialReceivingRange | Set the receivable range of sounds emitted by a specified user |
|
|
68
|
-
| getDeviceManager | Get Device Management Class (TXDeviceManager) |
|
|
69
|
-
| getBeautyManager | Get Beauty Management Class (TXBeautyManager) |
|
|
70
|
-
| setWatermark | Watermarking |
|
|
71
|
-
| getAudioEffectManager | Get Audio Effect Management Class (TXAudioEffectManager) |
|
|
72
|
-
| startSystemAudioLoopback | Enable System Sound Capturing |
|
|
73
|
-
| stopSystemAudioLoopback | Stop System Sound Capture (iOS not yet supported) |
|
|
74
|
-
| startScreenCapture | Start Screen Sharing |
|
|
75
|
-
| stopScreenCapture | Stopping Screen Sharing |
|
|
76
|
-
| pauseScreenCapture | Pause Screen Sharing |
|
|
77
|
-
| resumeScreenCapture | Resume Screen Sharing |
|
|
78
|
-
| setSubStreamEncoderParam | Set Video Encoding Parameters for Screen Sharing (Sub-Stream) (Supported on Both Desktop and Mobile Systems) |
|
|
79
|
-
| enableCustomVideoCapture | Enable/Disable Custom Video Capturing Mode |
|
|
80
|
-
| sendCustomVideoData | Submit Self-collected Video Frames to the SDK |
|
|
81
|
-
| enableCustomAudioCapture | Enable Custom Audio Capturing Mode |
|
|
82
|
-
| sendCustomAudioData | Submit Self-collected Audio Data to the SDK |
|
|
83
|
-
| enableMixExternalAudioFrame | Enable/Disable Custom Audio Track |
|
|
84
|
-
| mixExternalAudioFrame | Mix Custom Audio Track into the SDK |
|
|
85
|
-
| setMixExternalAudioVolume | Set the Streaming Volume and Playback Volume for External Audio Mixed During Streaming |
|
|
86
|
-
| generateCustomPTS | Generate Timestamp for Custom Capturing |
|
|
87
|
-
| setLocalVideoProcessListener | Set Video Data Callback for Third-party Beauty Filter |
|
|
88
|
-
| setLocalVideoRenderListener | Set Local Video Custom Rendering Callback |
|
|
89
|
-
| setRemoteVideoRenderListener | Sets the rendering callback for remote video self-definition |
|
|
90
|
-
| setAudioFrameListener | Sets the audio data self-definition callback |
|
|
91
|
-
| setCapturedAudioFrameCallbackFormat | Sets the callback format for audio frames captured by the local microphone |
|
|
92
|
-
| setLocalProcessedAudioFrameCallbackFormat | Sets the callback format for local audio frames after preprocessing |
|
|
93
|
-
| setMixedPlayAudioFrameCallbackFormat | Sets the callback format for audio frames that will eventually be played by the system |
|
|
94
|
-
| enableCustomAudioRendering | Enable self-definition audio playback |
|
|
95
|
-
| getCustomAudioRenderingFrame | Get playable audio data |
|
|
96
|
-
| sendCustomCmdMsg | Sends a custom message using UDP channel to all users in a room |
|
|
97
|
-
| sendSEIMsg | Sends a custom message using SEI channel to all users in a room |
|
|
98
|
-
| startSpeedTest | Start internet speed test (use before entering the room) |
|
|
99
|
-
| stopSpeedTest | Stops network speed testing |
|
|
100
|
-
| getSDKVersion | Obtains the SDK version. |
|
|
101
|
-
| setLogLevel | Sets the log output level. |
|
|
102
|
-
| setConsoleEnabled | Enables/Disables console log print. |
|
|
103
|
-
| setLogCompressEnabled | Enables/Disables local log compression |
|
|
104
|
-
| setLogDirPath | Sets the save path for local logs |
|
|
105
|
-
| setLogListener | Log callback |
|
|
106
|
-
| showDebugView | Show Dashboard |
|
|
107
|
-
| TRTCViewMargin | Set the dashboard margin |
|
|
108
|
-
| callExperimentalAPI | Calls an experimental API. |
|
|
109
|
-
| enablePayloadPrivateEncryption | Enable or disable media stream private encryption |
|
|
110
|
-
|
|
111
|
-
## sharedInstance
|
|
112
|
-
|
|
113
|
-
#### Create a `TRTCCloud` Instance (Singleton Pattern)
|
|
114
|
-
| Parameters | Description |
|
|
115
|
-
| --- | --- |
|
|
116
|
-
| context | Only applies to the Android platform. The SDK internally converts it to the Android platform's ApplicationContext to call Android System API.<br>If the passed context parameter is NULL, the SDK will automatically obtain the current process's ApplicationContext. |
|
|
117
|
-
|
|
118
|
-
> **Note**
|
|
119
|
-
>
|
|
120
|
-
|
|
121
|
-
> 1. Using delete ITRTCCloud* will cause compilation errors. Please use destroyTRTCCloud to release the object pointer.
|
|
122
|
-
>
|
|
123
|
-
|
|
124
|
-
> 2. On Windows, Mac, and iOS platforms, please call the getTRTCShareInstance() interface.
|
|
125
|
-
>
|
|
126
|
-
|
|
127
|
-
> 3. On the Android platform, please call the getTRTCShareInstance(void *context) interface.
|
|
128
|
-
>
|
|
129
|
-
|
|
130
|
-
## destroySharedInstance
|
|
131
|
-
|
|
132
|
-
#### Terminate `TRTCCloud` Instance (Singleton Pattern)
|
|
133
|
-
|
|
134
|
-
## addListener
|
|
135
|
-
|
|
136
|
-
#### Add TRTC Event Callback
|
|
137
|
-
|
|
138
|
-
You can receive various event notifications from the SDK (such as error codes, warning codes, audio and video status parameters, etc.) through TRTCCloudListener.
|
|
139
|
-
|
|
140
|
-
## removeListener
|
|
141
|
-
|
|
142
|
-
#### Remove TRTC Event Callback
|
|
143
|
-
|
|
144
|
-
## setListenerHandler
|
|
145
|
-
|
|
146
|
-
#### Set the queue to drive TRTCCloudListener event callbacks
|
|
147
|
-
|
|
148
|
-
If you do not specify your own listenerHandler, MainQueue will be used as the default queue to drive TRTCCloudListener event callbacks.
|
|
149
|
-
|
|
150
|
-
This means that if you do not set the listenerHandler attribute, all callback functions in TRTCCloudListener are driven by MainQueue.
|
|
151
|
-
| Parameters | Description |
|
|
152
|
-
| --- | --- |
|
|
153
|
-
| listenerHandler | Event callback handler |
|
|
154
|
-
|
|
155
|
-
> **Note**
|
|
156
|
-
>
|
|
157
|
-
|
|
158
|
-
> If you specify your own listenerHandler, please do not operate the UI in the TRTCCloudListener callback functions, otherwise it will cause thread safety issues.
|
|
159
|
-
>
|
|
160
|
-
|
|
161
|
-
## enterRoom
|
|
162
|
-
|
|
163
|
-
#### Enter Room
|
|
164
|
-
|
|
165
|
-
All TRTC users must enter a room to "publish" or "subscribe" to audio and video streams. "Publish" means pushing your audio and video to the cloud, and "subscribe" means pulling audio and video streams from other users in the room from the cloud.
|
|
166
|
-
|
|
167
|
-
To call this interface, you need to specify your application scenario TRTCAppScene for the best audio and video transmission experience. These scenarios can be divided into two major categories:
|
|
168
|
-
|
|
169
|
-
**Real-time Call:**
|
|
170
|
-
|
|
171
|
-
Including the two options TRTC_APP_SCENE_VIDEOCALL and TRTC_APP_SCENE_AUDIOCALL, which are video call and voice call respectively. This mode is suitable for 1-on-1 audio and video calls or online meetings with fewer than 300 participants.
|
|
172
|
-
|
|
173
|
-
**Online Live Streaming:**
|
|
174
|
-
|
|
175
|
-
Including the two options TRTC_APP_SCENE_LIVE and TRTC_APP_SCENE_VOICE_CHATROOM, which are video live streaming and voice live streaming respectively. This mode is suitable for online live streaming scenarios with less than 100,000 participants. However, you need to specify the **role** field in the TRTCParams parameter introduced next, distinguishing users in the room as **Anchors** (TRTCRoleAnchor) and **Audience** (TRTCRoleAudience).
|
|
176
|
-
|
|
177
|
-
After calling this interface, you will receive the onEnterRoom(result) callback from TRTCCloudListener
|
|
178
|
-
- If entering the room is successful, the result parameter will be a positive number (result > 0), indicating the time taken from the function call to entering the room, in milliseconds (ms).
|
|
179
|
-
|
|
180
|
-
- If entering the room fails, the result parameter will be a negative number (result < 0), indicating the failure [Error Code](https://cloud.tencent.com/document/product/647/32257).
|
|
181
|
-
|
|
182
|
-
| Parameters | Description |
|
|
183
|
-
| --- | --- |
|
|
184
|
-
| param | Room entry parameters are used to specify the user's identity, role, and security token information. For details, please refer to TRTCParams. |
|
|
185
|
-
| scene | Application scenario parameters are used to specify your business scenario. All users in the same room need to set the same TRTCAppScene. |
|
|
186
|
-
|
|
187
|
-
> **Note**
|
|
188
|
-
>
|
|
189
|
-
|
|
190
|
-
> 1. All users in the same room need to set the same scene. Different scenes can occasionally lead to anomalies.
|
|
191
|
-
>
|
|
192
|
-
|
|
193
|
-
> 2. When you set the parameter scene to TRTC_APP_SCENE_LIVE or TRTC_APP_SCENE_VOICE_CHATROOM, you must specify the role of the current user in the room through the "role" field in TRTCParams.
|
|
194
|
-
>
|
|
195
|
-
|
|
196
|
-
> 3. Please ensure that enterRoom and exitRoom are paired before and after use, i.e., ensure "exit the previous room before entering the next room," otherwise, many anomalies may occur.
|
|
197
|
-
>
|
|
198
|
-
|
|
199
|
-
## exitRoom
|
|
200
|
-
|
|
201
|
-
#### Leave Room
|
|
202
|
-
|
|
203
|
-
Calling this interface will make the user leave the audio and video room they are in and release resources such as the camera, microphone, and speaker.
|
|
204
|
-
|
|
205
|
-
After the resources are released, the SDK will notify you through the TRTCCloudListener callback onExitRoom.
|
|
206
|
-
|
|
207
|
-
If you want to call enterRoom again or switch to another provider's SDK, it is recommended to wait for the onExitRoom callback before performing subsequent operations to avoid camera or microphone occupation issues.
|
|
208
|
-
|
|
209
|
-
## switchRole
|
|
210
|
-
|
|
211
|
-
#### Switch Role
|
|
212
|
-
|
|
213
|
-
This interface allows users to switch between the roles of `Anchor` and `Audience`.
|
|
214
|
-
|
|
215
|
-
Since video streaming and voice chat rooms need to support up to 100,000 viewers simultaneously, the rule is set that **only anchors can publish their audio and video**. Therefore, if some audience members wish to publish their audio and video streams (to interact with the anchors), they need to switch their role to **Anchor** first.
|
|
216
|
-
|
|
217
|
-
When entering a room, you can predefine the user's role using the role field in TRTCParams, or dynamically switch roles after entering the room using the switchRole interface.
|
|
218
|
-
| Parameters | Description |
|
|
219
|
-
| --- | --- |
|
|
220
|
-
| role | Role, defaults to **Anchor**.<br>- TRTCRoleAnchor: Anchor, can publish their own audio and video. A maximum of 50 anchors can simultaneously publish audio and video in the same room.<br>- TRTCRoleAudience: Audience, cannot publish their own audio and video streams, can only view audio and video of other anchors in the room. To publish their own audio and video, they need to switch to **Anchor** via the switchRole interface. A maximum of 100,000 audience members can be accommodated in the same room. |
|
|
221
|
-
|
|
222
|
-
> **Note**
|
|
223
|
-
>
|
|
224
|
-
|
|
225
|
-
> 1. This interface is only applicable to video live streaming (TRTC_APP_SCENE_LIVE) and voice chat rooms (TRTC_APP_SCENE_VOICE_CHATROOM).
|
|
226
|
-
>
|
|
227
|
-
|
|
228
|
-
> 2. If you specify the scene as TRTC_APP_SCENE_VIDEOCALL or TRTC_APP_SCENE_AUDIOCALL when calling enterRoom, do not call this interface.
|
|
229
|
-
>
|
|
230
|
-
|
|
231
|
-
## switchRole
|
|
232
|
-
|
|
233
|
-
#### Switch Role (Supports Setting Permission Bit)
|
|
234
|
-
|
|
235
|
-
This interface allows users to switch between the roles of `Anchor` and `Audience`.
|
|
236
|
-
|
|
237
|
-
Due to video live streaming and voice chat rooms needing to support up to 100,000 viewers simultaneously, a rule has been established that "only the host can publish their own audio and video".
|
|
238
|
-
|
|
239
|
-
Therefore, when some viewers wish to publish their own audio and video streams (in order to interact with the host), they need to first switch their role to "host".
|
|
240
|
-
|
|
241
|
-
When entering a room, you can predefine the user's role using the role field in TRTCParams, or dynamically switch roles after entering the room using the switchRole interface.
|
|
242
|
-
| Parameters | Description |
|
|
243
|
-
| --- | --- |
|
|
244
|
-
| privateMapKey | Permission tickets are used for permission control. When you want to restrict a specific room to allow only specific userIds to enter or upload videos, you need to use privateMapKey for permission protection.<br>- It is recommended only for customers with high-level security requirements. For more details, please refer to [Enabling Advanced Permission Control](https://cloud.tencent.com/document/product/647/32240). |
|
|
245
|
-
| role | Role, defaults to "Anchor":<br>- TRTCRoleAnchor: Anchor, can publish their own audio and video. A maximum of 50 anchors can simultaneously publish audio and video in the same room.<br>- TRTCRoleAudience: Audience cannot publish their own audio and video streams and can only watch other anchors' audio and video in the room. If you want to publish your own audio and video, you need to switch to "Anchor" through switchRole. A maximum of 100,000 audience members can be accommodated in the same room. |
|
|
246
|
-
|
|
247
|
-
> **Note**
|
|
248
|
-
>
|
|
249
|
-
|
|
250
|
-
> 1. This interface is only applicable to video live streaming (TRTC_APP_SCENE_LIVE) and voice chat rooms (TRTC_APP_SCENE_VOICE_CHATROOM).
|
|
251
|
-
>
|
|
252
|
-
|
|
253
|
-
> 2. If you specify the scene as TRTC_APP_SCENE_VIDEOCALL or TRTC_APP_SCENE_AUDIOCALL when calling enterRoom, do not call this interface.
|
|
254
|
-
>
|
|
255
|
-
|
|
256
|
-
## switchRoom
|
|
257
|
-
|
|
258
|
-
#### Switch Room
|
|
259
|
-
|
|
260
|
-
This interface allows users to quickly switch from one room to another.
|
|
261
|
-
- If the user's role is "Audience", the effect of calling this interface is equivalent to exitRoom (current room) + enterRoom (new room).
|
|
262
|
-
|
|
263
|
-
- If the user's role is "Anchor", this interface will maintain the user's audio and video publishing status while switching rooms. As a result, the preview of the camera and the collection of sound will not be interrupted during the room switching process.
|
|
264
|
-
|
|
265
|
-
This interface is suitable for scenarios in online education where supervising teachers need to switch quickly between multiple rooms. In this scenario, using switchRoom can achieve better smoothness and less code volume compared to using exitRoom + enterRoom.
|
|
266
|
-
|
|
267
|
-
The result of the interface call will be notified through the onSwitchRoom(errCode, errMsg) callback in TRTCCloudListener.
|
|
268
|
-
| Parameters | Description |
|
|
269
|
-
| --- | --- |
|
|
270
|
-
| config | For room parameters, please refer to TRTCSwitchRoomConfig. |
|
|
271
|
-
|
|
272
|
-
> **Note**
|
|
273
|
-
>
|
|
274
|
-
|
|
275
|
-
> Due to the need for compatibility with older SDK versions, the config parameters contain both roomId and strRoomId. The specifications for filling these parameters are particularly important, so please take note of the following:
|
|
276
|
-
>
|
|
277
|
-
|
|
278
|
-
> 1. If you choose strRoomId, then roomId needs to be set to 0. If both are filled, roomId will be selected by default.
|
|
279
|
-
>
|
|
280
|
-
|
|
281
|
-
> 2. All rooms must either use strRoomId or roomId consistently. Mixing both will result in unexpected bugs.
|
|
282
|
-
>
|
|
283
|
-
|
|
284
|
-
## ConnectOtherRoom
|
|
285
|
-
|
|
286
|
-
#### Request Cross-room Communication
|
|
287
|
-
|
|
288
|
-
By default, only users within the same room can make audio and video calls. Audio and video streams in different rooms are isolated.
|
|
289
|
-
|
|
290
|
-
However, you can use this interface to publish the audio and video streams of a host in another room to your own room. At the same time, this interface will also publish your own audio and video streams to the target host's room.
|
|
291
|
-
|
|
292
|
-
In other words, you can use this interface to enable cross-room audio and video stream sharing between hosts in two different rooms, allowing audiences in each room to watch the audio and video streams of both hosts. This feature can be used to implement a PK feature between hosts.
|
|
293
|
-
|
|
294
|
-
The result of the cross-room call request will be notified to you through the TRTCCloudListener callback onConnectOtherRoom.
|
|
295
|
-
|
|
296
|
-
For example, when Host A in room "101" establishes a cross-room call with Host B in room "102" using connectOtherRoom(),
|
|
297
|
-
- All users in room "101" will receive the two event callbacks onRemoteUserEnterRoom(B) and onUserVideoAvailable(B,true) for host B, meaning all users in room "101" can subscribe to host B's audio and video.
|
|
298
|
-
|
|
299
|
-
- Users in room "102" will receive the onRemoteUserEnterRoom(A) and onUserVideoAvailable(A,true) event callbacks for Anchor A. This means users in room "102" can subscribe to Anchor A's audio and video.
|
|
300
|
-
|
|
301
|
-
To consider compatibility issues with subsequent extension fields, the parameters for cross-room communication temporarily use JSON format:
|
|
302
|
-
|
|
303
|
-
**Case 1: Numeric Room Number**
|
|
304
|
-
|
|
305
|
-
If Host A in room '101' wants to connect with Host B in room '102', Host A needs to pass in the following when calling the interface: {"roomId": 102, "userId": "userB"}
|
|
306
|
-
|
|
307
|
-
Below is the sample code:
|
|
308
|
-
``` java
|
|
309
|
-
JSONObject jsonObj = new JSONObject();
|
|
310
|
-
jsonObj.put("roomId", 102);
|
|
311
|
-
jsonObj.put("userId", "userB");
|
|
312
|
-
trtc.ConnectOtherRoom(jsonObj.toString());
|
|
313
|
-
```
|
|
314
|
-
|
|
315
|
-
**Case 2: String Room Number**
|
|
316
|
-
|
|
317
|
-
If you are using a string room number, be sure to replace "roomId" in the JSON with "strRoomId": {"strRoomId": "102", "userId": "userB"}
|
|
318
|
-
|
|
319
|
-
Below is the sample code:
|
|
320
|
-
``` java
|
|
321
|
-
JSONObject jsonObj = new JSONObject();
|
|
322
|
-
jsonObj.put("strRoomId", "102");
|
|
323
|
-
jsonObj.put("userId", "userB");
|
|
324
|
-
trtc.ConnectOtherRoom(jsonObj.toString());
|
|
325
|
-
```
|
|
326
|
-
| Parameters | Description |
|
|
327
|
-
| --- | --- |
|
|
328
|
-
| param | You need to pass in a JSON-formatted string argument, where roomId represents the room number in numeric format, strRoomId represents the room number in string format, and userId represents the target broadcaster's user ID. |
|
|
329
|
-
|
|
330
|
-
## DisconnectOtherRoom
|
|
331
|
-
|
|
332
|
-
#### Exit Cross-room Communication
|
|
333
|
-
|
|
334
|
-
The exit result will be notified through the onDisconnectOtherRoom callback in TRTCCloudListener.
|
|
335
|
-
|
|
336
|
-
## setDefaultStreamRecvMode
|
|
337
|
-
|
|
338
|
-
#### Set Subscription Mode (Needs to be set before entering the room to take effect)
|
|
339
|
-
|
|
340
|
-
You can switch between "auto-subscribe" and "manual subscribe" modes via this interface:
|
|
341
|
-
- Automatic Subscription: Default mode where users receive audio and video streams from the room immediately after entering. Audio plays automatically and video starts decoding automatically (you still need to bind the rendering control through the startRemoteView interface).
|
|
342
|
-
|
|
343
|
-
- Manual subscription: After the user enters the room, they need to manually call the startRemoteView interface to start the subscription and decoding of the video stream. They need to manually call the muteRemoteAudio(false) interface to start the playback of the sound.
|
|
344
|
-
|
|
345
|
-
In most scenarios, users entering a room will subscribe to all the audio and video streams from the broadcasters within that room. Therefore, TRTC defaults to an automatic subscription mode to achieve the best "instant start experience".
|
|
346
|
-
|
|
347
|
-
If your application scenario involves many audio and video streams being published in each room and each user only wants to selectively subscribe to 1-2 of them, it is recommended to use the "manual subscription" mode to save on bandwidth costs.
|
|
348
|
-
| Parameters | Description |
|
|
349
|
-
| --- | --- |
|
|
350
|
-
| autoRecvAudio | true: Automatically subscribe to audio; false: You need to manually call muteRemoteAudio(false) to subscribe to audio. Default value: true. |
|
|
351
|
-
| autoRecvVideo | true: Automatically subscribe to video; false: You need to manually call startRemoteView to subscribe to video. Default value: true. |
|
|
352
|
-
|
|
353
|
-
> **Note**
|
|
354
|
-
>
|
|
355
|
-
|
|
356
|
-
> 1. This setting needs to be called before entering the room to take effect.
|
|
357
|
-
>
|
|
358
|
-
|
|
359
|
-
> 2. In automatic subscription mode, if the user does not call startRemoteView to subscribe to the video stream after entering the room, the SDK will automatically stop subscribing to the video stream to save traffic.
|
|
360
|
-
>
|
|
361
|
-
|
|
362
|
-
## createSubCloud
|
|
363
|
-
|
|
364
|
-
#### Create Sub-room Instances (For Multi-room Concurrent Viewing)
|
|
365
|
-
|
|
366
|
-
TRTCCloud was initially designed as a Singleton Pattern, limiting the ability to watch multiple rooms concurrently.
|
|
367
|
-
|
|
368
|
-
By calling this interface, you can create multiple TRTCCloud instances to watch audio and video streams from multiple rooms simultaneously.
|
|
369
|
-
|
|
370
|
-
However, please note that the ability to publish audio and video streams across multiple TRTCCloud instances is subject to certain restrictions.
|
|
371
|
-
|
|
372
|
-
This feature is primarily used in a business scenario called "super small class" in online education settings, aimed at addressing the limitation that "each TRTC room can only have up to 50 people broadcasting their audio and video streams simultaneously".
|
|
373
|
-
|
|
374
|
-
Below is the sample code:
|
|
375
|
-
``` java
|
|
376
|
-
//In the small room that needs interaction, enter the room as an anchor and push audio and video streams
|
|
377
|
-
TRTCCloud mainCloud = TRTCCloud.sharedInstance(mContext);
|
|
378
|
-
TRTCCloudDef.TRTCParams mainParams = new TRTCCloudDef.TRTCParams();
|
|
379
|
-
//Fill your params
|
|
380
|
-
mainParams.role = TRTCCloudDef.TRTCRoleAnchor;
|
|
381
|
-
mainCloud.enterRoom(mainParams, TRTCCloudDef.TRTC_APP_SCENE_LIVE);
|
|
382
|
-
//...
|
|
383
|
-
mainCloud.startLocalPreview(true, videoView);
|
|
384
|
-
mainCloud.startLocalAudio(TRTCCloudDef.TRTC_AUDIO_QUALITY_DEFAULT);
|
|
385
|
-
|
|
386
|
-
//In the large room that only needs to watch, enter the room as an audience and pull audio and video streams
|
|
387
|
-
TRTCCloud subCloud = mainCloud.createSubCloud();
|
|
388
|
-
TRTCCloudDef.TRTCParams subParams = new TRTCCloudDef.TRTCParams();
|
|
389
|
-
//Fill your params
|
|
390
|
-
subParams.role = TRTCCloudDef.TRTCRoleAudience;
|
|
391
|
-
subCloud.enterRoom(subParams, TRTCCloudDef.TRTC_APP_SCENE_LIVE);
|
|
392
|
-
//...
|
|
393
|
-
subCloud.startRemoteView(userId, TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_BIG, view);
|
|
394
|
-
//...
|
|
395
|
-
//Exit from new room and release it.
|
|
396
|
-
subCloud.exitRoom();
|
|
397
|
-
mainCloud.destroySubCloud(subCloud);
|
|
398
|
-
```
|
|
399
|
-
|
|
400
|
-
> **Note**
|
|
401
|
-
>
|
|
402
|
-
> - The same user can enter multiple rooms with different roomIds using the same userId.
|
|
403
|
-
> - Two different terminal devices cannot use the same userId to enter the same roomId simultaneously.
|
|
404
|
-
> - You can set different instances to receive their respective event notifications via TRTCCloudListener.
|
|
405
|
-
> - The same user can stream on multiple TRTCCloud instances and call interfaces related to local audio and video in sub-instances. However, please note:
|
|
406
|
-
> - The audio for multiple instances must be either microphone capture or custom data collection, and invoking interfaces related to audio devices will be based on the last call
|
|
407
|
-
> - Calls related to the camera will take the last one as definitive: startLocalPreview.
|
|
408
|
-
|
|
409
|
-
#### Return value description:
|
|
410
|
-
|
|
411
|
-
Sub TRTCCloud instances
|
|
412
|
-
|
|
413
|
-
## destroySubCloud
|
|
414
|
-
|
|
415
|
-
#### Terminate Sub-room Instances
|
|
416
|
-
| Parameters | Description |
|
|
417
|
-
| --- | --- |
|
|
418
|
-
| subCloud | Sub-room instances |
|
|
419
|
-
|
|
420
|
-
## updateOtherRoomForwardMode
|
|
421
|
-
|
|
422
|
-
#### Modify the uplink capability of cross-room broadcasters in this room
|
|
423
|
-
|
|
424
|
-
Usually, after calling the connectOtherRoom interface to conduct cross-room communication with another room's broadcaster, all viewers in this room will receive the audio and video stream published by that broadcaster.
|
|
425
|
-
|
|
426
|
-
You can call this interface to restrict the uplink capability of a cross-room broadcaster in this room, either forbidding or allowing them to publish audio/main video/auxiliary video. This action will affect all users in the room.
|
|
427
|
-
|
|
428
|
-
After disabling certain uplink capabilities of the cross-room broadcaster, all users in this room will not be able to receive the corresponding audio and video streams, nor will they be able to subscribe to them.
|
|
429
|
-
|
|
430
|
-
It should be noted that this interface can only be called by the broadcaster conducting cross-room communication, and the restrictions set through this interface will reset if the cross-room communication is interrupted or the corresponding broadcaster exits the room.
|
|
431
|
-
|
|
432
|
-
The result of this API call will be notified to you via the TRTCCloudListener in the onUpdateOtherRoomForwardMode callback.
|
|
433
|
-
|
|
434
|
-
For example:
|
|
435
|
-
|
|
436
|
-
In room "101", there is Host A and Audience B, while in room "102", there is Host C, who is normally publishing audio and video streams. Host A establishes a cross-room call with Host C using connectOtherRoom().
|
|
437
|
-
- At this time, both Anchor A and Viewer B will receive the onRemoteUserEnterRoom(C), onUserVideoAvailable(C,true), and onUserAudioAvailable(C,true) event callbacks for Anchor C and can subscribe to Anchor C's audio and video.
|
|
438
|
-
|
|
439
|
-
Later, Host A calls this interface to disable Host C's ability to publish audio in the current room.
|
|
440
|
-
- After that, Anchor C's audio stream cannot be published to room "101." Anchor A and Viewer B will receive the onUserAudioAvailable(C,false) event callback and can no longer subscribe to Anchor C's audio through muteRemoteAudio(C,false).
|
|
441
|
-
|
|
442
|
-
- Host C's video stream will not be affected. Other audience members in room "102" are also unaffected and can normally subscribe to Host C's audio.
|
|
443
|
-
|
|
444
|
-
To consider compatibility issues with subsequent extension fields, the parameters for this interface temporarily use JSON format. The example is as follows:
|
|
445
|
-
|
|
446
|
-
**Case 1: Numeric Room Number**
|
|
447
|
-
``` java
|
|
448
|
-
{
|
|
449
|
-
"roomId":102,
|
|
450
|
-
"userId":"userC",
|
|
451
|
-
"muteAudio":false,
|
|
452
|
-
"muteVideo":true,
|
|
453
|
-
"muteSubStream":false
|
|
454
|
-
}
|
|
455
|
-
```
|
|
456
|
-
|
|
457
|
-
**Case 2: String Room Number**
|
|
458
|
-
``` java
|
|
459
|
-
{
|
|
460
|
-
"strRoomId":"102",
|
|
461
|
-
"userId":"userC",
|
|
462
|
-
"muteAudio":false,
|
|
463
|
-
"muteVideo":true,
|
|
464
|
-
"muteSubStream":false
|
|
465
|
-
}
|
|
466
|
-
```
|
|
467
|
-
| Parameters | Description |
|
|
468
|
-
| --- | --- |
|
|
469
|
-
| param | You need to pass in a JSON-formatted string argument where roomId represents the room number in numeric format, strRoomId represents the room number in string format, userId represents the target broadcaster's user ID. The options muteAudio, muteVideo, and muteSubStream denote whether to disable or allow the cross-room broadcaster to publish audio, main stream video, and sub-stream video respectively. |
|
|
470
|
-
|
|
471
|
-
## startPublishMediaStream
|
|
472
|
-
|
|
473
|
-
#### Start publishing media stream
|
|
474
|
-
|
|
475
|
-
This interface sends an instruction to the TRTC server to relay/transcode the current user's audio and video streams to the Live CDN or push them back into the TRTC room. You can specify the publishing mode through TRTCPublishTarget configuration and TRTCPublishMode
|
|
476
|
-
| Parameters | Description |
|
|
477
|
-
| --- | --- |
|
|
478
|
-
| config | Media stream transcoding configuration parameters. Refer to TRTCStreamMixingConfig for detailed configuration. This is required when transcoding and pushing back to the TRTC room. You need to specify your desired transcoding configuration parameters. It is invalid in relay mode. |
|
|
479
|
-
| params | Media stream encoding output parameters. Refer to TRTCStreamEncoderParam for detailed configuration. This is required when transcoding and pushing back to the TRTC room. You need to specify your desired transcoding output parameters. For better relay stability and CDN compatibility, it is also recommended to configure this during relay. |
|
|
480
|
-
| target | The target address for media stream publishing. Refer to TRTCPublishTarget for detailed configuration. Supports relay/transcoding to Tencent or third-party CDNs, and also supports transcoding pushback to the TRTC room. |
|
|
481
|
-
|
|
482
|
-
> **Note**
|
|
483
|
-
>
|
|
484
|
-
|
|
485
|
-
> 1. The SDK will provide the task identifier (taskId) for the backend startup through the callback onStartPublishMediaStream.
|
|
486
|
-
>
|
|
487
|
-
|
|
488
|
-
> 2. The same task (both TRTCPublishMode and TRTCPublishCdnUrl are identical) can only be started once. If you need to update or stop this task later, you must record and use the returned taskId to operate through updatePublishMediaStream or stopPublishMediaStream.
|
|
489
|
-
>
|
|
490
|
-
|
|
491
|
-
> 3. The target supports configuring multiple CDN URLs simultaneously (up to 10). If the same relay/transcoding task needs to be published to multiple CDNs, you only need to configure multiple CDN URLs in the target. Even if there are multiple relay addresses for the same transcoding task, only one transcoding fee will be charged.
|
|
492
|
-
>
|
|
493
|
-
|
|
494
|
-
> 4. When using, do not push multiple tasks to the same URL addresses simultaneously to avoid abnormal streaming status. A recommended scheme is to use "sdkappid_roomid_userid_main" in the URL as a distinguishing identifier. This naming convention is easy to recognize and will not cause conflicts in your multiple applications.
|
|
495
|
-
>
|
|
496
|
-
|
|
497
|
-
## updatePublishMediaStream
|
|
498
|
-
|
|
499
|
-
#### Update the published media stream.
|
|
500
|
-
|
|
501
|
-
This interface will send directives to the TRTC server to update the media stream started by startPublishMediaStream
|
|
502
|
-
| Parameters | Description |
|
|
503
|
-
| --- | --- |
|
|
504
|
-
| config | Media stream transcoding configuration parameters. Refer to TRTCStreamMixingConfig for detailed configuration. This is required when transcoding and pushing back to the TRTC room. You need to specify your desired transcoding configuration parameters. It is invalid in relay mode. |
|
|
505
|
-
| params | Media stream encoding output parameters. Refer to TRTCStreamEncoderParam for detailed configuration. This is required when transcoding and pushing back to the TRTC room. You need to specify your desired transcoding output parameters. For better relay stability and CDN compatibility, it is also recommended to configure this during relay. |
|
|
506
|
-
| target | The target address for media stream publishing. Refer to TRTCPublishTarget for detailed configuration. Supports relay/transcoding to Tencent or third-party CDNs, and also supports transcoding pushback to the TRTC room. |
|
|
507
|
-
| taskId | It will provide you with the task identifier (i.e., taskId) for the background start task through the onStartPublishMediaStream callback |
|
|
508
|
-
|
|
509
|
-
> **Note**
|
|
510
|
-
>
|
|
511
|
-
|
|
512
|
-
> 1. You can use this interface to update the published CDN URL (supports add and delete, up to 10 at the same time), but ensure you do not push multiple tasks to the same URL addresses simultaneously to avoid abnormal streaming status.
|
|
513
|
-
>
|
|
514
|
-
|
|
515
|
-
> 2. You can update or adjust relay/transcoding tasks using taskId. For example, in PK business, you can initiate relay through startPublishMediaStream first, then use taskId and this interface to update the relay to a transcoding task when the anchor initiates PK. At this time, CDN playback will be continuous and without stream disconnection (you need to keep the media stream encoding output parameters consistent).
|
|
516
|
-
>
|
|
517
|
-
|
|
518
|
-
> 3. The same task does not support switching between Audio Only, Audio and Video, and Pure Video.
|
|
519
|
-
>
|
|
520
|
-
|
|
521
|
-
## stopPublishMediaStream
|
|
522
|
-
|
|
523
|
-
#### Stop publishing media stream.
|
|
524
|
-
|
|
525
|
-
This interface will send directives to the TRTC server to stop the media stream started by startPublishMediaStream
|
|
526
|
-
| Parameters | Description |
|
|
527
|
-
| --- | --- |
|
|
528
|
-
| taskId | It will provide you with the task identifier (i.e., taskId) for the background start task through the onStartPublishMediaStream callback |
|
|
529
|
-
|
|
530
|
-
> **Note**
|
|
531
|
-
>
|
|
532
|
-
|
|
533
|
-
> 1. If your business backend has not saved the taskId, after your host re-enters the room following an abnormal exit, you can call startPublishMediaStream again to start the task. TRTC backend will return a task start failure and provide you with the taskId from the last attempt
|
|
534
|
-
>
|
|
535
|
-
|
|
536
|
-
> 2. If the taskId is an empty string, all media streams started by startPublishMediaStream for that user will stop. If you have only started one media stream or want to stop all media streams you started, this method is recommended.
|
|
537
|
-
>
|
|
538
|
-
|
|
539
|
-
## startLocalPreview
|
|
540
|
-
|
|
541
|
-
#### Enable the preview screen of the local camera (Mobile Terminal)
|
|
542
|
-
|
|
543
|
-
Call this function before enterRoom. The SDK will only enable the camera and wait until you call enterRoom to start streaming.
|
|
544
|
-
|
|
545
|
-
Call this function after enterRoom. The SDK will turn on the camera and automatically start video push streaming. You will receive the onCameraDidReady callback notification in TRTCCloudListener when the first frame of the camera is rendered.
|
|
546
|
-
| Parameters | Description |
|
|
547
|
-
| --- | --- |
|
|
548
|
-
| frontCamera | true: Front-facing camera; false: Rear-facing camera. |
|
|
549
|
-
| view | Control carrying the video screen. |
|
|
550
|
-
|
|
551
|
-
> **Note**
|
|
552
|
-
>
|
|
553
|
-
|
|
554
|
-
> If you wish to preview the camera screen and use BeautyManager to adjust the beauty parameters before streaming, you can:
|
|
555
|
-
>
|
|
556
|
-
> - Option 1: Call startLocalPreview before enterRoom.
|
|
557
|
-
> - Option 2: Call startLocalPreview + muteLocalVideo(true) after enterRoom.
|
|
558
|
-
|
|
559
|
-
## updateLocalView
|
|
560
|
-
|
|
561
|
-
#### Update the preview screen of the local camera
|
|
562
|
-
|
|
563
|
-
## stopLocalPreview
|
|
564
|
-
|
|
565
|
-
#### Stop camera preview
|
|
566
|
-
|
|
567
|
-
## muteLocalVideo
|
|
568
|
-
|
|
569
|
-
#### Suspend/Resume publishing local video stream
|
|
570
|
-
|
|
571
|
-
This interface can suspend (or recover) the publishing of local video screens. After suspension, other users in the same room will not be able to see your screen.
|
|
572
|
-
|
|
573
|
-
This interface is equivalent to the start/stopLocalPreview interfaces when specifying TRTC_VIDEO_STREAM_TYPE_BIG, but with better response speed.
|
|
574
|
-
|
|
575
|
-
Because start/stopLocalPreview requires turning on and off the camera, and turning on and off the camera is a hardware-related operation, which is very time-consuming.
|
|
576
|
-
|
|
577
|
-
In comparison, muteLocalVideo only needs to suspend or pass the data stream at the software layer. Therefore, it is more efficient and more suitable for scenarios requiring frequent openings and closings.
|
|
578
|
-
|
|
579
|
-
When pausing/resuming the release of TRTC_VIDEO_STREAM_TYPE_BIG, other users in the same room will receive the onUserVideoAvailable callback notification.
|
|
580
|
-
|
|
581
|
-
When pausing/resuming the release of TRTC_VIDEO_STREAM_TYPE_SUB, other users in the same room will receive the onUserSubStreamAvailable callback notification.
|
|
582
|
-
| Parameters | Description |
|
|
583
|
-
| --- | --- |
|
|
584
|
-
| mute | true: pause; false: resume. |
|
|
585
|
-
| streamType | The type of video stream to pause/resume (only supports TRTC_VIDEO_STREAM_TYPE_BIG and TRTC_VIDEO_STREAM_TYPE_SUB). |
|
|
586
|
-
|
|
587
|
-
## setVideoMuteImage
|
|
588
|
-
|
|
589
|
-
#### Set the alternative image during the suspension of the local screen
|
|
590
|
-
|
|
591
|
-
When you call muteLocalVideo(true) to pause the local video, you can set a placeholder image through this interface. After setting, other users in the room will see this placeholder image instead of a black screen.
|
|
592
|
-
| Parameters | Description |
|
|
593
|
-
| --- | --- |
|
|
594
|
-
| fps | Set the frame rate for the alternative image, with a minimum value of 5 and a maximum value of 10. The default is 5. |
|
|
595
|
-
| image | Set the alternative image. A null value means no video stream data will be sent after muteLocalVideo. The default is null. |
|
|
596
|
-
|
|
597
|
-
## startRemoteView
|
|
598
|
-
|
|
599
|
-
#### Subscribe to the video stream of a remote user and bind the video rendering control
|
|
600
|
-
|
|
601
|
-
By calling this API, the SDK can pull the video stream of the specified user ID and render it on the rendering control specified by the parameter view. You can set the display mode of the screen through setRemoteRenderParams.
|
|
602
|
-
- If you already know the user ID of a user who has a video stream in the room, you can directly call startRemoteView to subscribe to that user's video feed.
|
|
603
|
-
|
|
604
|
-
- If you do not know which users in the room are publishing video, you can wait for a notification from onUserVideoAvailable after entering the room.
|
|
605
|
-
|
|
606
|
-
Calling this API only starts pulling the video stream, at this point the screen still needs to load and buffer. When buffering is complete, you will receive a notification from onFirstVideoFrame.
|
|
607
|
-
| Parameters | Description |
|
|
608
|
-
| --- | --- |
|
|
609
|
-
| streamType | Specify the type of video stream of the user you want to watch.<br>- HD main video stream: TRTC_VIDEO_STREAM_TYPE_BIG.<br>- Low-res sub video stream: TRTC_VIDEO_STREAM_TYPE_SMALL (effective only if the remote user has enabled dual encoding through enableEncSmallVideoStream).<br>- Substream video (typically used for screen sharing): TRTC_VIDEO_STREAM_TYPE_SUB. |
|
|
610
|
-
| userId | Specify the remote user's ID. |
|
|
611
|
-
| view | Rendering control used to display the video screen. |
|
|
612
|
-
|
|
613
|
-
> **Note**
|
|
614
|
-
>
|
|
615
|
-
|
|
616
|
-
> Note a few rules:
|
|
617
|
-
>
|
|
618
|
-
|
|
619
|
-
> 1. The SDK supports watching the main stream and substream of a certain user ID simultaneously, or watching the substream and small stream of a certain user ID simultaneously, but does not support watching the main stream and small stream simultaneously.
|
|
620
|
-
>
|
|
621
|
-
|
|
622
|
-
> 2. You can only watch the small stream of the specified user ID when dual-stream encoding is enabled through enableEncSmallVideoStream.
|
|
623
|
-
>
|
|
624
|
-
|
|
625
|
-
> 3. When the small stream of the specified user ID does not exist, the SDK will default to the user's main stream.
|
|
626
|
-
>
|
|
627
|
-
|
|
628
|
-
## updateRemoteView
|
|
629
|
-
|
|
630
|
-
#### Update the video rendering control of a remote user
|
|
631
|
-
|
|
632
|
-
This interface can be used to update the rendering control of a remote video image and is commonly used in scenarios that involve switching display areas.
|
|
633
|
-
| Parameters | Description |
|
|
634
|
-
| --- | --- |
|
|
635
|
-
| streamType | The type of stream to set the preview window for (only supports TRTC_VIDEO_STREAM_TYPE_BIG and TRTC_VIDEO_STREAM_TYPE_SUB). |
|
|
636
|
-
| userId | Specify the remote user's ID. |
|
|
637
|
-
| view | Control carrying the video screen. |
|
|
638
|
-
|
|
639
|
-
## stopRemoteView
|
|
640
|
-
|
|
641
|
-
#### Unsubscribe from the remote user's video stream and release the rendering control
|
|
642
|
-
|
|
643
|
-
Calling this interface will make the SDK stop receiving the video stream of the user and release the decoding and rendering resources of that video stream.
|
|
644
|
-
| Parameters | Description |
|
|
645
|
-
| --- | --- |
|
|
646
|
-
| streamType | Specify the type of video stream of the user you want to watch.<br>- HD main video stream: TRTC_VIDEO_STREAM_TYPE_BIG.<br>- Low-res sub video stream: TRTC_VIDEO_STREAM_TYPE_SMALL.<br>- Substream video (typically used for screen sharing): TRTC_VIDEO_STREAM_TYPE_SUB. |
|
|
647
|
-
| userId | Specify the remote user's ID. |
|
|
648
|
-
|
|
649
|
-
## stopAllRemoteView
|
|
650
|
-
|
|
651
|
-
#### Unsubscribe from all remote users' video streams and release all rendering resources
|
|
652
|
-
|
|
653
|
-
Calling this interface will make the SDK stop receiving all remote video streams and release all decoding and rendering resources.
|
|
654
|
-
|
|
655
|
-
> **Note**
|
|
656
|
-
>
|
|
657
|
-
|
|
658
|
-
> If there is a currently displayed substream (screen sharing), it will also be stopped.
|
|
659
|
-
>
|
|
660
|
-
|
|
661
|
-
## muteRemoteVideoStream
|
|
662
|
-
|
|
663
|
-
#### Suspend/Resume subscription of the remote user's video stream
|
|
664
|
-
|
|
665
|
-
This interface only pauses/resumes receiving the video stream of a designated user but does not release the display resources. The video image will be frozen on the last frame at the time of the interface call.
|
|
666
|
-
| Parameters | Description |
|
|
667
|
-
| --- | --- |
|
|
668
|
-
| mute | Pause receiving or not. |
|
|
669
|
-
| streamType | The video stream type to be paused/resumed.<br>- HD main video stream: TRTC_VIDEO_STREAM_TYPE_BIG.<br>- Low-res sub video stream: TRTC_VIDEO_STREAM_TYPE_SMALL.<br>- Substream video (typically used for screen sharing): TRTC_VIDEO_STREAM_TYPE_SUB. |
|
|
670
|
-
| userId | Specify the remote user's ID. |
|
|
671
|
-
|
|
672
|
-
> **Note**
|
|
673
|
-
>
|
|
674
|
-
|
|
675
|
-
> This interface supports calling before entering the room (enterRoom), and the paused state will be reset after leaving the room (exitRoom).
|
|
676
|
-
>
|
|
677
|
-
|
|
678
|
-
> After calling this interface to pause receiving a specified user's video stream, calling only the startRemoteView interface will not play the specified user's video. You need to call muteRemoteVideoStream(false) or muteAllRemoteVideoStreams(false) to recover.
|
|
679
|
-
>
|
|
680
|
-
|
|
681
|
-
## muteAllRemoteVideoStreams
|
|
682
|
-
|
|
683
|
-
#### Suspend/Resume subscription of all remote users' video streams
|
|
684
|
-
|
|
685
|
-
This interface only pauses/resumes receiving all users' video streams but does not release the display resources. The video image will be frozen on the last frame at the time of the interface call.
|
|
686
|
-
| Parameters | Description |
|
|
687
|
-
| --- | --- |
|
|
688
|
-
| mute | Pause receiving or not. |
|
|
689
|
-
|
|
690
|
-
> **Note**
|
|
691
|
-
>
|
|
692
|
-
|
|
693
|
-
> This interface supports calling before entering the room (enterRoom), and the paused state will be reset after leaving the room (exitRoom).
|
|
694
|
-
>
|
|
695
|
-
|
|
696
|
-
> After calling this interface to pause receiving all users' video streams, calling only the startRemoteView interface will not play a specified user's video. You need to call muteRemoteVideoStream(false) or muteAllRemoteVideoStreams(false) to recover.
|
|
697
|
-
>
|
|
698
|
-
|
|
699
|
-
## setVideoEncoderParam
|
|
700
|
-
|
|
701
|
-
#### Set encoding parameters for the video encoder
|
|
702
|
-
|
|
703
|
-
This setting determines the screen quality seen by remote users, and also affects the screen quality of the recorded video file on the cloud.
|
|
704
|
-
| Parameters | Description |
|
|
705
|
-
| --- | --- |
|
|
706
|
-
| param | Used to set the video encoder parameters. For details, see TRTCVideoEncParam. |
|
|
707
|
-
|
|
708
|
-
> **Note**
|
|
709
|
-
>
|
|
710
|
-
|
|
711
|
-
> Starting from version v11.5, the encoding output resolution will align with width 8 height 2 bytes, and it will be adjusted downwards; eg: input resolution 540x960, actual encoding output resolution 536x960.
|
|
712
|
-
>
|
|
713
|
-
|
|
714
|
-
## setNetworkQosParam
|
|
715
|
-
|
|
716
|
-
#### Set network quality control parameters
|
|
717
|
-
|
|
718
|
-
This setting determines the quality control strategy under poor network conditions, such as "Quality Priority" or "Smoothness Priority" strategies.
|
|
719
|
-
| Parameters | Description |
|
|
720
|
-
| --- | --- |
|
|
721
|
-
| param | Used to set the network quality control parameters. For details, see TRTCNetworkQosParam. |
|
|
722
|
-
|
|
723
|
-
## setLocalRenderParams
|
|
724
|
-
|
|
725
|
-
#### Set rendering parameters for the local screen
|
|
726
|
-
|
|
727
|
-
Configurable parameters include: rotation angle, fill mode, and left-right mirroring of the picture.
|
|
728
|
-
| Parameters | Description |
|
|
729
|
-
| --- | --- |
|
|
730
|
-
| params | Picture render parameters, see TRTCRenderParams for details. |
|
|
731
|
-
|
|
732
|
-
## setRemoteRenderParams
|
|
733
|
-
|
|
734
|
-
#### Set rendering mode for the remote screen
|
|
735
|
-
|
|
736
|
-
Configurable parameters include: rotation angle, fill mode, and left-right mirroring of the picture.
|
|
737
|
-
| Parameters | Description |
|
|
738
|
-
| --- | --- |
|
|
739
|
-
| params | Picture render parameters, see TRTCRenderParams for details. |
|
|
740
|
-
| streamType | It can be set as the main road picture (TRTC_VIDEO_STREAM_TYPE_BIG) or the auxiliary stream picture (TRTC_VIDEO_STREAM_TYPE_SUB). |
|
|
741
|
-
| userId | Specify the remote user's ID. |
|
|
742
|
-
|
|
743
|
-
## enableEncSmallVideoStream
|
|
744
|
-
|
|
745
|
-
#### Enable picture-in-picture dual-stream encoding mode
|
|
746
|
-
|
|
747
|
-
After enabling the dual-stream encoding mode, the current user's encoder will output both [HD large screen] and [low-definition small picture] video streams (but only one audio stream).
|
|
748
|
-
|
|
749
|
-
This way, other users in the room can choose to subscribe to [HD large screen] or [low-definition small screen] based on their network conditions or screen size.
|
|
750
|
-
| Parameters | Description |
|
|
751
|
-
| --- | --- |
|
|
752
|
-
| enable | Whether to enable small picture encoding, default value: false. |
|
|
753
|
-
| smallVideoEncParam | Video parameters for the substream. |
|
|
754
|
-
|
|
755
|
-
> **Note**
|
|
756
|
-
>
|
|
757
|
-
|
|
758
|
-
> When the dual-stream encoding mode is enabled, it consumes more CPU and network bandwidth. Therefore, it may be considered for use on Mac, Windows, or high-performance Pads. It is not recommended for mobile devices.
|
|
759
|
-
>
|
|
760
|
-
|
|
761
|
-
#### Return value description:
|
|
762
|
-
|
|
763
|
-
0: Success; -1: The current main screen has been set to lower quality, making dual-channel encoding unnecessary.
|
|
764
|
-
|
|
765
|
-
## setRemoteVideoStreamType
|
|
766
|
-
|
|
767
|
-
#### Switch picture-in-picture for the specified remote user
|
|
768
|
-
|
|
769
|
-
After a host in the room has enabled dual-channel encoding, the default screen subscribed by other users in the room through startRemoteView will be [HD large screen].
|
|
770
|
-
|
|
771
|
-
You can use this interface to select whether you want to subscribe to the large screen or small screen. This interface is effective whether called before or after startRemoteView.
|
|
772
|
-
| Parameters | Description |
|
|
773
|
-
| --- | --- |
|
|
774
|
-
| streamType | Video stream type, i.e., choose to watch the large screen or the small screen, default is large screen. |
|
|
775
|
-
| userId | Specify the remote user's ID. |
|
|
776
|
-
|
|
777
|
-
> **Note**
|
|
778
|
-
>
|
|
779
|
-
|
|
780
|
-
> This feature requires the target user to have already enabled dual-channel encoding mode through enableEncSmallVideoStream in advance; otherwise, this call has no actual effect.
|
|
781
|
-
>
|
|
782
|
-
|
|
783
|
-
## snapshotVideo
|
|
784
|
-
|
|
785
|
-
#### Take a video screenshot
|
|
786
|
-
|
|
787
|
-
You can use this interface to capture the local video footage, the main stream picture of a remote user, and the auxiliary stream (screen sharing) picture of a remote user.
|
|
788
|
-
| Parameters | Description |
|
|
789
|
-
| --- | --- |
|
|
790
|
-
| sourceType | Picture source can be chosen as video stream capture (TRTCSnapshotSourceTypeStream), video rendering picture (TRTCSnapshotSourceTypeView), or captured frame (TRTCSnapshotSourceTypeCapture). Captured frame screenshots are clearer. |
|
|
791
|
-
| streamType | Video stream type can be selected as the main road picture (TRTC_VIDEO_STREAM_TYPE_BIG, commonly used for the camera) or auxiliary stream picture (TRTC_VIDEO_STREAM_TYPE_SUB, commonly used for screen sharing). |
|
|
792
|
-
| userId | User ID, if left blank, indicates capturing the local video footage. |
|
|
793
|
-
|
|
794
|
-
> **Note**
|
|
795
|
-
>
|
|
796
|
-
|
|
797
|
-
> The Windows platform currently only supports capturing video pictures from TRTCSnapshotSourceTypeStream sources.
|
|
798
|
-
>
|
|
799
|
-
|
|
800
|
-
## setPerspectiveCorrectionPoints
|
|
801
|
-
|
|
802
|
-
#### Set perspective correction coordinate settings for the video screen
|
|
803
|
-
|
|
804
|
-
You can specify the coordinate area for perspective correction of the rendered image through this interface.
|
|
805
|
-
| Parameters | Description |
|
|
806
|
-
| --- | --- |
|
|
807
|
-
| dstPoints | The target coordinates area to be corrected to, consists of 4 vertex coordinates. They need to be passed in the order of top-left, bottom-left, top-right, and bottom-right. All coordinates need to be normalized to the [0,1] range based on the image width and height; passing null will stop the perspective correction. |
|
|
808
|
-
| srcPoints | The original image coordinate area consists of 4 vertex coordinates. They need to be passed in the order of top-left, bottom-left, top-right, and bottom-right. All coordinates need to be normalized to the [0,1] range based on the image width and height; passing null will stop the perspective correction. |
|
|
809
|
-
| userId | User ID, if left blank, indicates correcting the local video footage. |
|
|
810
|
-
|
|
811
|
-
## setGravitySensorAdaptiveMode
|
|
812
|
-
|
|
813
|
-
#### Set gravity sensing adaptive mode (11.7 and above)
|
|
814
|
-
|
|
815
|
-
After gravity sensing is enabled, if the collection end device rotates, both the collection end and audience side will render the image accordingly to ensure the image in the view is always upright.
|
|
816
|
-
|
|
817
|
-
It only takes effect in the SDK internal camera capture scene and only works on the mobile terminal.
|
|
818
|
-
|
|
819
|
-
1. This interface only affects the collection end. If you are just watching the image in the room, enabling this interface is ineffective
|
|
820
|
-
|
|
821
|
-
2. When the collection end device rotates 90 degrees or 270 degrees, the image seen by the collection end or audience side may be cropped to maintain aspect ratio coordination
|
|
822
|
-
| Parameters | Description |
|
|
823
|
-
| --- | --- |
|
|
824
|
-
| mode | Gravity sensing mode: for details, please refer to TRTC_GRAVITY_SENSOR_ADAPTIVE_MODE_DISABLE, TRTC_GRAVITY_SENSOR_ADAPTIVE_MODE_FILL_BY_CENTER_CROP, and TRTC_GRAVITY_SENSOR_ADAPTIVE_MODE_FIT_WITH_BLACK_BORDER. Default value: TRTC_GRAVITY_SENSOR_ADAPTIVE_MODE_DISABLE. |
|
|
825
|
-
|
|
826
|
-
## startLocalAudio
|
|
827
|
-
|
|
828
|
-
#### Enable collection and publishing of local audio
|
|
829
|
-
|
|
830
|
-
The SDK does not enable the microphone by default. When users need to publish local audio, they need to call this interface to enable microphone collection and encoding and publish the audio to the current room.
|
|
831
|
-
|
|
832
|
-
After enabling the collection and publishing of local audio, other users in the room will receive onUserAudioAvailable(userId, true) notification.
|
|
833
|
-
| Parameters | Description |
|
|
834
|
-
| --- | --- |
|
|
835
|
-
| quality | Sound quality<br>- TRTC_AUDIO_QUALITY_SPEECH, Smooth: Sample rate: 16k; Mono; Audio bitrate: 16kbps; Suitable for voice call-centric scenarios, such as online meetings and voice calls.<br>- TRTC_AUDIO_QUALITY_DEFAULT, Default: Sample rate: 48k; Mono; Audio bitrate: 50kbps; Default SDK audio quality, recommended if there are no special requirements.<br>- TRTC_AUDIO_QUALITY_MUSIC, High quality: Sample rate: 48k; Stereo + Full band; Audio bitrate: 128kbps; Suitable for high-fidelity music transmission scenarios, such as online karaoke and music live streaming. |
|
|
836
|
-
|
|
837
|
-
> **Note**
|
|
838
|
-
>
|
|
839
|
-
|
|
840
|
-
> This function checks the microphone permissions. If the current app does not have microphone permissions, the SDK will automatically request microphone permissions from the user.
|
|
841
|
-
>
|
|
842
|
-
|
|
843
|
-
## stopLocalAudio
|
|
844
|
-
|
|
845
|
-
#### Stop collection and publishing of local audio
|
|
846
|
-
|
|
847
|
-
After stopping the collection and publishing of local audio, other users in the room will receive onUserAudioAvailable(userId, false) notification.
|
|
848
|
-
|
|
849
|
-
## muteLocalAudio
|
|
850
|
-
|
|
851
|
-
#### Pause/Resume publishing of the local audio stream
|
|
852
|
-
|
|
853
|
-
When you pause the publishing of the local audio stream, other users in the room will receive onUserAudioAvailable(userId, false) notification.
|
|
854
|
-
|
|
855
|
-
When you resume the publishing of the local audio stream, other users in the room will receive onUserAudioAvailable(userId, true) notification.
|
|
856
|
-
|
|
857
|
-
The difference from stopLocalAudio is that muteLocalAudio(true) does not release the microphone permissions but continues to send a low-bit-rate silent packet.
|
|
858
|
-
|
|
859
|
-
This is very suitable for scenarios that require cloud recording because video files in formats like MP4 demand high continuity of audio data, and using stopLocalAudio will make the recorded MP4 files difficult to play.
|
|
860
|
-
|
|
861
|
-
Therefore, in scenarios where the quality of the recorded files is highly required, it is recommended to choose muteLocalAudio instead of stopLocalAudio.
|
|
862
|
-
| Parameters | Description |
|
|
863
|
-
| --- | --- |
|
|
864
|
-
| mute | true: Mute; false: Unmute. |
|
|
865
|
-
|
|
866
|
-
## muteRemoteAudio
|
|
867
|
-
|
|
868
|
-
#### Pause/Resume playing of the remote audio stream
|
|
869
|
-
|
|
870
|
-
When you mute a user's remote audio, the SDK will stop playing the specified user's sound and will also stop pulling that user's audio data.
|
|
871
|
-
| Parameters | Description |
|
|
872
|
-
| --- | --- |
|
|
873
|
-
| mute | true: Mute; false: Unmute. |
|
|
874
|
-
| userId | Used to specify the remote user's ID. |
|
|
875
|
-
|
|
876
|
-
> **Note**
|
|
877
|
-
>
|
|
878
|
-
|
|
879
|
-
> This interface is effective whether called before or after entering the room (enterRoom). The mute status will be reset to false after exiting the room (exitRoom).
|
|
880
|
-
>
|
|
881
|
-
|
|
882
|
-
## muteAllRemoteAudio
|
|
883
|
-
|
|
884
|
-
#### Pause/Resume playing of all remote users' audio streams
|
|
885
|
-
|
|
886
|
-
When you mute all users' remote audio, the SDK will stop playing all remote audio streams and will also stop pulling all users' audio data.
|
|
887
|
-
| Parameters | Description |
|
|
888
|
-
| --- | --- |
|
|
889
|
-
| mute | true: Mute; false: Unmute. |
|
|
890
|
-
|
|
891
|
-
> **Note**
|
|
892
|
-
>
|
|
893
|
-
|
|
894
|
-
> This interface is effective whether called before or after entering the room (enterRoom). The mute status will be reset to false after exiting the room (exitRoom).
|
|
895
|
-
>
|
|
896
|
-
|
|
897
|
-
## setAudioRoute
|
|
898
|
-
|
|
899
|
-
#### Sets audio routing.
|
|
900
|
-
|
|
901
|
-
Set "audio routing", i.e., whether the sound is played through the mobile phone's speaker or earpiece. Therefore, this interface is only applicable to mobile devices such as phones.
|
|
902
|
-
|
|
903
|
-
A mobile phone has two speakers: one is the earpiece located at the top of the phone, and the other is the stereo speaker located at the bottom.
|
|
904
|
-
|
|
905
|
-
When the audio routing is set to the earpiece, the sound is relatively low, and you need to bring your ear close to hear it clearly, ensuring better privacy. It is suitable for phone calls.
|
|
906
|
-
|
|
907
|
-
When the audio routing is set to the speaker, the sound is relatively loud. You can hear it clearly without holding the phone to your face, thus enabling the "hands-free" feature.
|
|
908
|
-
| Parameters | Description |
|
|
909
|
-
| --- | --- |
|
|
910
|
-
| route | Audio routing, i.e., where the sound is output (speaker, earpiece), default value: TRTC_AUDIO_ROUTE_SPEAKER. |
|
|
911
|
-
|
|
912
|
-
## setRemoteAudioVolume
|
|
913
|
-
|
|
914
|
-
#### Set the playback volume for a specific remote user
|
|
915
|
-
|
|
916
|
-
You can mute a remote user's sound by using setRemoteAudioVolume(userId, 0).
|
|
917
|
-
| Parameters | Description |
|
|
918
|
-
| --- | --- |
|
|
919
|
-
| userId | Used to specify the remote user's ID. |
|
|
920
|
-
| volume | Volume. Value range: 0-100. Default value: 100. |
|
|
921
|
-
|
|
922
|
-
> **Note**
|
|
923
|
-
>
|
|
924
|
-
|
|
925
|
-
> If you still feel the volume is too low after setting it to 100, you can set the maximum volume to 150. However, a volume above 100 carries a risk of pop noise, so proceed with caution.
|
|
926
|
-
>
|
|
927
|
-
|
|
928
|
-
## setAudioCaptureVolume
|
|
929
|
-
|
|
930
|
-
#### Sets the local audio capture volume.
|
|
931
|
-
| Parameters | Description |
|
|
932
|
-
| --- | --- |
|
|
933
|
-
| volume | Volume. Value range: 0-100. Default value: 100. |
|
|
934
|
-
|
|
935
|
-
> **Note**
|
|
936
|
-
>
|
|
937
|
-
|
|
938
|
-
> If you still feel the volume is too low after setting it to 100, you can set the maximum volume to 150. However, a volume above 100 carries a risk of pop noise, so proceed with caution.
|
|
939
|
-
>
|
|
940
|
-
|
|
941
|
-
## getAudioCaptureVolume
|
|
942
|
-
|
|
943
|
-
#### Obtains the local audio capture volume.
|
|
944
|
-
|
|
945
|
-
## setAudioPlayoutVolume
|
|
946
|
-
|
|
947
|
-
#### Sets the remote audio playback volume.
|
|
948
|
-
|
|
949
|
-
This interface controls the volume that the SDK finally delivers to the system for playback. The adjustment will affect the volume of the local audio recording file, but it will not affect the volume of the ear return.
|
|
950
|
-
| Parameters | Description |
|
|
951
|
-
| --- | --- |
|
|
952
|
-
| volume | Volume. Value range: 0-100. Default value: 100. |
|
|
953
|
-
|
|
954
|
-
> **Note**
|
|
955
|
-
>
|
|
956
|
-
|
|
957
|
-
> If you still feel the volume is too low after setting it to 100, you can set the maximum volume to 150. However, a volume above 100 carries a risk of pop noise, so proceed with caution.
|
|
958
|
-
>
|
|
959
|
-
|
|
960
|
-
## getAudioPlayoutVolume
|
|
961
|
-
|
|
962
|
-
#### Obtains the remote audio playback volume.
|
|
963
|
-
|
|
964
|
-
## enableAudioVolumeEvaluation
|
|
965
|
-
|
|
966
|
-
#### Enable volume reminder
|
|
967
|
-
|
|
968
|
-
After enabling this feature, the SDK will provide feedback on the audio volume evaluation information of local or remote users in the callback TRTCCloudListeneronUserVoiceVolume, including volume level, voice detection, audio spectrum, etc.
|
|
969
|
-
| Parameters | Description |
|
|
970
|
-
| --- | --- |
|
|
971
|
-
| enable | Whether to enable volume prompts, disabled by default. |
|
|
972
|
-
| params | For volume assessment and other related parameters, please refer to TRTCAudioVolumeEvaluateParams. |
|
|
973
|
-
|
|
974
|
-
## startAudioRecording
|
|
975
|
-
|
|
976
|
-
#### Start recording
|
|
977
|
-
|
|
978
|
-
When you call this interface, the SDK will mix and record all local and remote audio (including local audio, remote audio, background music, and sound effects) into a local file.
|
|
979
|
-
|
|
980
|
-
This interface can be called both before and after entering the room. If the recording task is not stopped by stopAudioRecording before exiting the room, the task will automatically stop after exiting the room.
|
|
981
|
-
|
|
982
|
-
The start and completion status of this recording will be notified through local recording-related callbacks. See the TRTCCloud related callbacks.
|
|
983
|
-
| Parameters | Description |
|
|
984
|
-
| --- | --- |
|
|
985
|
-
| param | For recording parameters, please refer to TRTCAudioRecordingParams. |
|
|
986
|
-
|
|
987
|
-
> **Note**
|
|
988
|
-
>
|
|
989
|
-
|
|
990
|
-
> Starting from version 11.5, the status results of audio recording are uniformly adjusted to asynchronous callback notifications. See the TRTCCloud related callbacks.
|
|
991
|
-
>
|
|
992
|
-
|
|
993
|
-
#### Return value description:
|
|
994
|
-
|
|
995
|
-
0: Success; -1: Recording has already started; -2: File or directory creation failed; -3: The audio format specified by the extension is not supported.
|
|
996
|
-
|
|
997
|
-
## stopAudioRecording
|
|
998
|
-
|
|
999
|
-
#### Stop recording
|
|
1000
|
-
|
|
1001
|
-
If the recording task is not stopped by this interface before exiting the room, the recording task will automatically stop after exiting the room.
|
|
1002
|
-
|
|
1003
|
-
## startLocalRecording
|
|
1004
|
-
|
|
1005
|
-
#### Enable local media recording
|
|
1006
|
-
|
|
1007
|
-
After enabling, the audio and video content during the live stream will be recorded to a local file.
|
|
1008
|
-
| Parameters | Description |
|
|
1009
|
-
| --- | --- |
|
|
1010
|
-
| params | For recording parameters, please refer to TRTCLocalRecordingParams. |
|
|
1011
|
-
|
|
1012
|
-
## stopLocalRecording
|
|
1013
|
-
|
|
1014
|
-
#### Stop local media recording
|
|
1015
|
-
|
|
1016
|
-
If the recording task is not stopped by this interface before exiting the room, the recording task will automatically stop after exiting the room.
|
|
1017
|
-
|
|
1018
|
-
## setRemoteAudioParallelParams
|
|
1019
|
-
|
|
1020
|
-
#### Set intelligent concurrent playback strategy for remote audio streams
|
|
1021
|
-
|
|
1022
|
-
Set intelligent concurrent playback strategy for remote audio streams, suitable for scenarios with a large number of people on the microphone.
|
|
1023
|
-
| Parameters | Description |
|
|
1024
|
-
| --- | --- |
|
|
1025
|
-
| params | For audio concurrency parameters, please refer to TRTCAudioParallelParams. |
|
|
1026
|
-
|
|
1027
|
-
## enable3DSpatialAudioEffect
|
|
1028
|
-
|
|
1029
|
-
#### Enable 3D audio
|
|
1030
|
-
|
|
1031
|
-
Enable 3D audio effects. Note that smooth audio quality TRTC_AUDIO_QUALITY_SPEECH or default audio quality TRTC_AUDIO_QUALITY_DEFAULT is required.
|
|
1032
|
-
| Parameters | Description |
|
|
1033
|
-
| --- | --- |
|
|
1034
|
-
| enabled | Whether to enable 3D audio effects, disabled by default. |
|
|
1035
|
-
|
|
1036
|
-
## updateSelf3DSpatialPosition
|
|
1037
|
-
|
|
1038
|
-
#### Set self coordinates and orientation information in 3D audio
|
|
1039
|
-
|
|
1040
|
-
Update your position and orientation in the world coordinate system. The SDK will calculate the relative position between yourself and remote users based on the parameters of this method and render spatial audio effects accordingly. Note that each parameter should be passed in as an array of length 3.
|
|
1041
|
-
| Parameters | Description |
|
|
1042
|
-
| --- | --- |
|
|
1043
|
-
| axisForward | The unit vector of the front axis of the local coordinate system in the world coordinate system, with three values representing the front, right, and up coordinate values, respectively. |
|
|
1044
|
-
| axisRight | The unit vector of the right axis of the local coordinate system in the world coordinate system, with three values representing the front, right, and up coordinate values, respectively. |
|
|
1045
|
-
| axisUp | The unit vector of the up axis of the local coordinate system in the world coordinate system, with three values representing the front, right, and up coordinate values, respectively. |
|
|
1046
|
-
| position | Your coordinate in the world coordinate system, with three values representing the front, right, and up coordinate values, respectively. |
|
|
1047
|
-
|
|
1048
|
-
> **Note**
|
|
1049
|
-
>
|
|
1050
|
-
|
|
1051
|
-
> Please appropriately limit the invocation frequency. It is recommended to set coordinates at intervals of at least 100ms.
|
|
1052
|
-
>
|
|
1053
|
-
|
|
1054
|
-
## updateRemote3DSpatialPosition
|
|
1055
|
-
|
|
1056
|
-
#### Set remote user coordinate information in 3D audio
|
|
1057
|
-
|
|
1058
|
-
Update the position of remote users in the world coordinate system. The SDK will render spatial audio effects based on the relative position between yourself and the remote users. Note that the parameter is an array of length 3.
|
|
1059
|
-
| Parameters | Description |
|
|
1060
|
-
| --- | --- |
|
|
1061
|
-
| position | The coordinate of the remote user in the world coordinate system, with three values representing the front, right, and up coordinate values, respectively. |
|
|
1062
|
-
| userId | Specify the remote user's ID. |
|
|
1063
|
-
|
|
1064
|
-
> **Note**
|
|
1065
|
-
>
|
|
1066
|
-
|
|
1067
|
-
> Please appropriately limit the invocation frequency. It is recommended to set coordinates for the same remote user at intervals of at least 100ms.
|
|
1068
|
-
>
|
|
1069
|
-
|
|
1070
|
-
## set3DSpatialReceivingRange
|
|
1071
|
-
|
|
1072
|
-
#### Set the receivable range of sounds emitted by a specified user
|
|
1073
|
-
|
|
1074
|
-
After setting this range size, the specified user's voice will be audible within this range, and any sound beyond this range will be attenuated to 0.
|
|
1075
|
-
| Parameters | Description |
|
|
1076
|
-
| --- | --- |
|
|
1077
|
-
| range | Maximum range at which the sound can be received. |
|
|
1078
|
-
| userId | Specify the remote user's ID. |
|
|
1079
|
-
|
|
1080
|
-
## getDeviceManager
|
|
1081
|
-
|
|
1082
|
-
#### Get Device Management Class (TXDeviceManager)
|
|
1083
|
-
|
|
1084
|
-
## getBeautyManager
|
|
1085
|
-
|
|
1086
|
-
#### Get Beauty Management Class (TXBeautyManager)
|
|
1087
|
-
|
|
1088
|
-
Through beauty management, you can use the following features:
|
|
1089
|
-
- Set beauty effects such as "Skin Smoothing", "Whitening", "Rosy".
|
|
1090
|
-
|
|
1091
|
-
- Set facial enhancement effects like "Big Eyes", "Slim Face", "V Face", "Chin", "Short Face", "Small Nose", "Bright Eyes", "White Teeth", "Remove Eye Bags", "Remove Wrinkles", "Remove Nasolabial Folds".
|
|
1092
|
-
|
|
1093
|
-
- Set facial enhancement effects such as "Hairline", "Eye Distance", "Eye Tilt", "Mouth Shape", "Nasal Sides", "Nose Position", "Lip Thickness", "Face Shape".
|
|
1094
|
-
|
|
1095
|
-
- Set makeup effects like "Eyeshadow", "Blush".
|
|
1096
|
-
|
|
1097
|
-
- Set dynamic stickers and face pendants for animation effects.
|
|
1098
|
-
|
|
1099
|
-
## setWatermark
|
|
1100
|
-
|
|
1101
|
-
#### Watermarking
|
|
1102
|
-
|
|
1103
|
-
The position of the watermark is specified through the rect parameter. Rect is a quadruplet parameter in the format (x, y, width, height)
|
|
1104
|
-
- x: Coordinate of the watermark, with a value range of 0-1 as a float.
|
|
1105
|
-
|
|
1106
|
-
- y: Coordinate of the watermark, with a value range of 0-1 as a float.
|
|
1107
|
-
|
|
1108
|
-
- width: Width of the watermark, with a value range of 0-1 as a float.
|
|
1109
|
-
|
|
1110
|
-
- height does not need to be set; the SDK will automatically calculate an appropriate height based on the aspect ratio of the watermark image.
|
|
1111
|
-
|
|
1112
|
-
Example of parameter settings:
|
|
1113
|
-
|
|
1114
|
-
If the current video encoding resolution is 540 × 960, and the rect parameter is set to (0.1, 0.1, 0.2, 0.0),
|
|
1115
|
-
|
|
1116
|
-
Then, the top-left coordinate of the watermark is (540 * 0.1, 960 * 0.1), which is (54, 96). The width of the watermark is 540 * 0.2 = 108px. The height of the watermark will be automatically calculated by the SDK based on the aspect ratio of the watermark image.
|
|
1117
|
-
| Parameters | Description |
|
|
1118
|
-
| --- | --- |
|
|
1119
|
-
| image | Watermark image, ** must be in png format with a transparent background **. |
|
|
1120
|
-
| rect | Normalized coordinates of the watermark relative to the encoding resolution: x, y, width, height. Value range: 0 - 1. |
|
|
1121
|
-
| streamType | Specify which stream to set the watermark for. For details, see TRTCVideoStreamType. |
|
|
1122
|
-
|
|
1123
|
-
> **Note**
|
|
1124
|
-
>
|
|
1125
|
-
|
|
1126
|
-
> If you need to set the watermark for both the main stream (usually the camera) and the auxiliary stream (usually used for screen sharing), you need to call this interface twice and set different streamTypes.
|
|
1127
|
-
>
|
|
1128
|
-
|
|
1129
|
-
## getAudioEffectManager
|
|
1130
|
-
|
|
1131
|
-
#### Get Audio Effect Management Class (TXAudioEffectManager)
|
|
1132
|
-
|
|
1133
|
-
TXAudioEffectManager is the audio effect management interface. Through this interface, you can implement the following features:
|
|
1134
|
-
- Background Music: Supports online and local music, variable speed, pitch shift, and other special effects. Supports native and accompaniment playback as well as loop playback.
|
|
1135
|
-
|
|
1136
|
-
- In-ear monitor feedback: The microphone captures the sound and plays it in real-time through the earphones, commonly used in music live streaming.
|
|
1137
|
-
|
|
1138
|
-
- Reverb Effect: KTV, small room, hall, deep, resonant....
|
|
1139
|
-
|
|
1140
|
-
- Voice changing effect: Lolita, uncle, heavy metal....
|
|
1141
|
-
|
|
1142
|
-
- Short sound effects: short sound effect files such as applause, laughter, etc. (for files less than 10 seconds, please set the isShortFile parameter to true).
|
|
1143
|
-
|
|
1144
|
-
## startSystemAudioLoopback
|
|
1145
|
-
|
|
1146
|
-
#### Enable System Sound Capturing
|
|
1147
|
-
|
|
1148
|
-
This interface will capture audio data from other applications and mix it into the current audio data stream of the SDK, so that other users in the room can also hear the sound played by the broadcaster's other applications.
|
|
1149
|
-
|
|
1150
|
-
In online education scenarios, teachers can use this feature to allow the SDK to capture the audio from educational videos and broadcast it to students in the same room.
|
|
1151
|
-
|
|
1152
|
-
In music live streaming scenarios, the host can use this feature to allow the SDK to capture audio from the music player to add background music to their live stream.
|
|
1153
|
-
|
|
1154
|
-
> **Note**
|
|
1155
|
-
>
|
|
1156
|
-
|
|
1157
|
-
> 1. This interface only takes effect on Android API 29 and above.
|
|
1158
|
-
>
|
|
1159
|
-
|
|
1160
|
-
> 2. You need to use this interface to enable system sound capture before the screen sharing interface can be effectively used.
|
|
1161
|
-
>
|
|
1162
|
-
|
|
1163
|
-
> 3. You need to add a foreground service to ensure that system sound capture is not silenced, and set android:foregroundServiceType="mediaProjection".
|
|
1164
|
-
>
|
|
1165
|
-
|
|
1166
|
-
> 4. The SDK only captures the application audio that meets the capture strategy and audio usage. Currently, the captured audio usage includes USAGE_MEDIA and USAGE_GAME.
|
|
1167
|
-
>
|
|
1168
|
-
|
|
1169
|
-
## stopSystemAudioLoopback
|
|
1170
|
-
|
|
1171
|
-
#### Stop System Sound Capture (iOS not yet supported)
|
|
1172
|
-
|
|
1173
|
-
## startScreenCapture
|
|
1174
|
-
|
|
1175
|
-
#### Start Screen Sharing
|
|
1176
|
-
|
|
1177
|
-
This interface supports capturing the entire Android system screen, enabling system-wide screen sharing similar to Tencent Meeting.
|
|
1178
|
-
|
|
1179
|
-
Refer to documentation: [Real-time Screen Sharing (Android)](https://cloud.tencent.com/document/product/647/45751)
|
|
1180
|
-
|
|
1181
|
-
Recommended screen sharing video encoding parameters for Android (TRTCVideoEncParam):
|
|
1182
|
-
- Resolution (videoResolution): 1280×720.
|
|
1183
|
-
|
|
1184
|
-
- Frame Rate (videoFps): 10 FPS.
|
|
1185
|
-
|
|
1186
|
-
- Bitrate (videoBitrate): 1200 kbps.
|
|
1187
|
-
|
|
1188
|
-
- Resolution Adaptation (enableAdjustRes): false.
|
|
1189
|
-
|
|
1190
|
-
| Parameters | Description |
|
|
1191
|
-
| --- | --- |
|
|
1192
|
-
| encParams | For encoding parameters, please refer to TRTCVideoEncParam. If you set encParams to null, the SDK will automatically use the previously set encoding parameters. |
|
|
1193
|
-
| shareParams | Please refer to TRTCScreenShareParams. You can pop up a floating window using the floatingView parameter (or use the Android system's WindowManager interface to pop it up yourself). |
|
|
1194
|
-
| streamType | The circuit used for screen sharing can be set to primary channel (TRTC_VIDEO_STREAM_TYPE_BIG) or secondary channel (TRTC_VIDEO_STREAM_TYPE_SUB). |
|
|
1195
|
-
|
|
1196
|
-
## stopScreenCapture
|
|
1197
|
-
|
|
1198
|
-
#### Stopping Screen Sharing
|
|
1199
|
-
|
|
1200
|
-
## pauseScreenCapture
|
|
1201
|
-
|
|
1202
|
-
#### Pause Screen Sharing
|
|
1203
|
-
|
|
1204
|
-
> **Note**
|
|
1205
|
-
>
|
|
1206
|
-
|
|
1207
|
-
> Starting from version 11.5, suspending screen capture will output the last frame at a frame rate of 1fps.
|
|
1208
|
-
>
|
|
1209
|
-
|
|
1210
|
-
## resumeScreenCapture
|
|
1211
|
-
|
|
1212
|
-
#### Resume Screen Sharing
|
|
1213
|
-
|
|
1214
|
-
## setSubStreamEncoderParam
|
|
1215
|
-
|
|
1216
|
-
#### Set Video Encoding Parameters for Screen Sharing (Sub-Stream) (Supported on Both Desktop and Mobile Systems)
|
|
1217
|
-
|
|
1218
|
-
This interface can set the screen sharing (sub-stream) quality seen by remote users, and also determine the screen sharing quality in the cloud-recorded video file.
|
|
1219
|
-
|
|
1220
|
-
Please note the differences between the following two interfaces:
|
|
1221
|
-
- setVideoEncoderParam is used to set video encoding parameters for the primary channel (TRTC_VIDEO_STREAM_TYPE_BIG, typically used for the camera).
|
|
1222
|
-
|
|
1223
|
-
- setSubStreamEncoderParam is used to set video encoding parameters for the secondary channel (TRTC_VIDEO_STREAM_TYPE_SUB, typically used for screen sharing).
|
|
1224
|
-
|
|
1225
|
-
| Parameters | Description |
|
|
1226
|
-
| --- | --- |
|
|
1227
|
-
| param | For auxiliary stream encoding parameters, please refer to TRTCVideoEncParam. |
|
|
1228
|
-
|
|
1229
|
-
## enableCustomVideoCapture
|
|
1230
|
-
|
|
1231
|
-
#### Enable/Disable Custom Video Capturing Mode
|
|
1232
|
-
|
|
1233
|
-
After enabling this mode, the SDK will stop running the original video capture process. It will no longer collect data from the camera and apply beauty filters, retaining only video encoding and sending capabilities.
|
|
1234
|
-
|
|
1235
|
-
You need to continuously send self-collected video frames to the SDK via sendCustomVideoData.
|
|
1236
|
-
| Parameters | Description |
|
|
1237
|
-
| --- | --- |
|
|
1238
|
-
| enable | Whether to enable, default value: false. |
|
|
1239
|
-
| streamType | Used to specify video stream type, TRTC_VIDEO_STREAM_TYPE_BIG: high-definition large image; TRTC_VIDEO_STREAM_TYPE_SUB: secondary channel image. |
|
|
1240
|
-
|
|
1241
|
-
## sendCustomVideoData
|
|
1242
|
-
|
|
1243
|
-
#### Submit Self-collected Video Frames to the SDK
|
|
1244
|
-
|
|
1245
|
-
This interface allows you to submit self-collected video frames to the SDK. The SDK will encode the video frames and transmit them through its network module.
|
|
1246
|
-
|
|
1247
|
-
There are two casting schemes on the Android platform:
|
|
1248
|
-
- Memory transfer scheme: simpler to integrate but performs poorly, not suitable for high-resolution scenarios.
|
|
1249
|
-
|
|
1250
|
-
- Video memory transfer scheme: requires some OpenGL basics but performs better; resolutions above 640 × 360 should use this scheme.
|
|
1251
|
-
|
|
1252
|
-
Refer to documentation: [Custom Collection and Rendering](https://cloud.tencent.com/document/product/647/34066).
|
|
1253
|
-
| Parameters | Description |
|
|
1254
|
-
| --- | --- |
|
|
1255
|
-
| frame | Video data, if using the memory transfer scheme, please set the data field; if using the video memory transfer scheme, please set the TRTCTexture field. For details, please refer to TRTCVideoFrame. |
|
|
1256
|
-
| streamType | Used to specify video stream type, TRTC_VIDEO_STREAM_TYPE_BIG: HD large screen; TRTC_VIDEO_STREAM_TYPE_SUB: secondary channel image. |
|
|
1257
|
-
|
|
1258
|
-
> **Note**
|
|
1259
|
-
>
|
|
1260
|
-
|
|
1261
|
-
> 1. It is recommended to call the generateCustomPTS interface to get the timestamp value of the frame after capturing a video frame, to achieve the best audio-video synchronization.
|
|
1262
|
-
>
|
|
1263
|
-
|
|
1264
|
-
> 2. The final frame rate of the encoded video by the SDK is determined by the FPS you set in setVideoEncoderParam, not by the frequency at which you call this interface.
|
|
1265
|
-
>
|
|
1266
|
-
|
|
1267
|
-
> 3. Please try to keep the intervals between calls to this interface uniform. Otherwise, it may cause unstable encoder output frame rates or audio-video asynchrony.
|
|
1268
|
-
>
|
|
1269
|
-
|
|
1270
|
-
## enableCustomAudioCapture
|
|
1271
|
-
|
|
1272
|
-
#### Enable Custom Audio Capturing Mode
|
|
1273
|
-
|
|
1274
|
-
After enabling this mode, the SDK will no longer run the original audio capture process, meaning it will stop capturing audio data from the microphone and only retain audio encoding and sending capabilities.
|
|
1275
|
-
|
|
1276
|
-
You need to continuously feed the SDK with your own collected audio data through sendCustomAudioData.
|
|
1277
|
-
| Parameters | Description |
|
|
1278
|
-
| --- | --- |
|
|
1279
|
-
| enable | Whether to enable, default value: false. |
|
|
1280
|
-
|
|
1281
|
-
> **Note**
|
|
1282
|
-
>
|
|
1283
|
-
|
|
1284
|
-
> As Echo Cancellation (AEC) requires strict control over the timing of audio capture and playback, enabling custom audio capture may result in AEC capabilities becoming ineffective.
|
|
1285
|
-
>
|
|
1286
|
-
|
|
1287
|
-
## sendCustomAudioData
|
|
1288
|
-
|
|
1289
|
-
#### Submit Self-collected Audio Data to the SDK
|
|
1290
|
-
|
|
1291
|
-
Parameter TRTCAudioFrame is recommended to be filled as follows (other fields do not need to be filled):
|
|
1292
|
-
- audioFormat: Audio data format, only supports TRTCAudioFrameFormatPCM.
|
|
1293
|
-
|
|
1294
|
-
- data: Audio frame buffer. Audio frame data only supports PCM format, with frame lengths ranging from [5ms ~ 100ms]. A frame length of 20ms is recommended. Calculation method: [48000 sampling rate, mono channel frame length: 48000 × 0.02s × 1 × 16bit = 15360bit = 1920 bytes].
|
|
1295
|
-
|
|
1296
|
-
- sampleRate: Sampling rate, supported values are 16000, 24000, 32000, 44100, 48000.
|
|
1297
|
-
|
|
1298
|
-
- channel: Number of channels (if stereo, data is interleaved), mono: 1; stereo: 2.
|
|
1299
|
-
|
|
1300
|
-
- timestamp: Timestamp, in milliseconds (ms). Please use the timestamp recorded when the audio frame is captured (you can get the timestamp by calling generateCustomPTS after capturing an audio frame).
|
|
1301
|
-
|
|
1302
|
-
Refer to documentation: [Custom Collection and Rendering](https://cloud.tencent.com/document/product/647/74692).
|
|
1303
|
-
| Parameters | Description |
|
|
1304
|
-
| --- | --- |
|
|
1305
|
-
| frame | Audio Data |
|
|
1306
|
-
|
|
1307
|
-
> **Note**
|
|
1308
|
-
>
|
|
1309
|
-
|
|
1310
|
-
> Please call this interface accurately at intervals corresponding to the duration of each frame. Feeding data at uneven intervals is likely to cause audio stutter.
|
|
1311
|
-
>
|
|
1312
|
-
|
|
1313
|
-
## enableMixExternalAudioFrame
|
|
1314
|
-
|
|
1315
|
-
#### Enable/Disable Custom Audio Track
|
|
1316
|
-
|
|
1317
|
-
Once enabled, you can use this interface to mix a Custom Audio Track into the SDK. With two boolean parameters, you can control whether the track should play remotely and locally.
|
|
1318
|
-
| Parameters | Description |
|
|
1319
|
-
| --- | --- |
|
|
1320
|
-
| enablePlayout | Control whether the mixed audio track should be played locally. Default value: false. |
|
|
1321
|
-
| enablePublish | Control whether the mixed audio track should be played remotely. Default value: false. |
|
|
1322
|
-
|
|
1323
|
-
> **Note**
|
|
1324
|
-
>
|
|
1325
|
-
|
|
1326
|
-
> If you set both enablePublish and enablePlayout parameters to false, it means you completely disable your custom audio track.
|
|
1327
|
-
>
|
|
1328
|
-
|
|
1329
|
-
## mixExternalAudioFrame
|
|
1330
|
-
|
|
1331
|
-
#### Mix Custom Audio Track into the SDK
|
|
1332
|
-
|
|
1333
|
-
Before calling this interface, you need to enable the Custom Audio Track with enableMixExternalAudioFrame first. After that, you can use this interface to mix your own audio track into the SDK in PCM format.
|
|
1334
|
-
|
|
1335
|
-
Ideally, we expect your code to provide track data to the SDK at a very consistent rate. However, we understand that maintaining perfect call intervals is a significant challenge.
|
|
1336
|
-
|
|
1337
|
-
Therefore, the SDK will initiate a buffer for audio track data internally. This buffer acts like a "reservoir", capable of temporarily storing the audio track data you input, smoothing out the jitter caused by intervals between interface calls.
|
|
1338
|
-
|
|
1339
|
-
The return value of this interface represents the size of this track buffer zone, measured in milliseconds (ms). For example: if this interface returns 50, it means the current track buffer zone has 50ms worth of track data. Therefore, as long as you call this interface again within 50ms, the SDK can ensure the continuity of your mixed track data.
|
|
1340
|
-
|
|
1341
|
-
When you call this interface, if you find the return value > 100ms, you can wait for one frame of audio playback time before calling again; if the return value < 100ms, it means the buffer is relatively small, you can mix in some more audio track data to ensure the size of the audio track buffer remains above the "safe level".
|
|
1342
|
-
|
|
1343
|
-
Parameter TRTCAudioFrame is recommended to be filled as follows (other fields do not need to be filled):
|
|
1344
|
-
- data: Audio frame buffer. Audio frame data only supports PCM format, with frame lengths ranging from [5ms ~ 100ms]. A frame length of 20ms is recommended. Calculation method: [48000 sampling rate, mono channel frame length: 48000 × 0.02s × 1 × 16bit = 15360bit = 1920 bytes].
|
|
1345
|
-
|
|
1346
|
-
- sampleRate: Sampling rate, supported values are 16000, 24000, 32000, 44100, 48000.
|
|
1347
|
-
|
|
1348
|
-
- channel: Number of channels (if stereo, data is interleaved), mono: 1; stereo: 2.
|
|
1349
|
-
|
|
1350
|
-
- timestamp: Timestamp, in milliseconds (ms). Please use the timestamp recorded when the audio frame is captured (you can get the timestamp by calling generateCustomPTS after capturing an audio frame).
|
|
1351
|
-
|
|
1352
|
-
| Parameters | Description |
|
|
1353
|
-
| --- | --- |
|
|
1354
|
-
| frame | Audio Data |
|
|
1355
|
-
|
|
1356
|
-
> **Note**
|
|
1357
|
-
>
|
|
1358
|
-
|
|
1359
|
-
> Please call this interface accurately at intervals corresponding to the duration of each frame. Feeding data at uneven intervals is likely to cause audio stutter.
|
|
1360
|
-
>
|
|
1361
|
-
|
|
1362
|
-
#### Return value description:
|
|
1363
|
-
|
|
1364
|
-
>= 0 Buffered length, unit: ms. < 0 Error (-1 mixExternalAudioFrame not enabled)
|
|
1365
|
-
|
|
1366
|
-
## setMixExternalAudioVolume
|
|
1367
|
-
|
|
1368
|
-
#### Set the Streaming Volume and Playback Volume for External Audio Mixed During Streaming
|
|
1369
|
-
| Parameters | Description |
|
|
1370
|
-
| --- | --- |
|
|
1371
|
-
| playoutVolume | Set the playback volume level, ranging from 0 to 100. -1 means no change. |
|
|
1372
|
-
| publishVolume | Set the streaming volume level, ranging from 0 to 100. -1 means no change. |
|
|
1373
|
-
|
|
1374
|
-
## generateCustomPTS
|
|
1375
|
-
|
|
1376
|
-
#### Generate Timestamp for Custom Capturing
|
|
1377
|
-
|
|
1378
|
-
This interface is only applicable to custom capturing mode, used to solve the issue of audio and video out of sync caused by the discrepancy between capture time and delivery time.
|
|
1379
|
-
|
|
1380
|
-
When you use interfaces such as sendCustomVideoData or sendCustomAudioData for custom video or audio capturing, please follow these steps to use this interface:
|
|
1381
|
-
|
|
1382
|
-
1. First, when capturing a video or audio frame, call this interface to obtain the PTS timestamp of that moment.
|
|
1383
|
-
|
|
1384
|
-
2. Then, you can send the video or audio frame to the preprocessing module you use (such as third-party beauty components or third-party audio effect components).
|
|
1385
|
-
|
|
1386
|
-
3. When actually calling sendCustomVideoData or sendCustomAudioData for streaming, please assign the PTS timestamp recorded during capture to the timestamp field in TRTCVideoFrame or TRTCAudioFrame.
|
|
1387
|
-
|
|
1388
|
-
#### Return value description:
|
|
1389
|
-
|
|
1390
|
-
Timestamp (unit: ms)
|
|
1391
|
-
|
|
1392
|
-
## setLocalVideoProcessListener
|
|
1393
|
-
|
|
1394
|
-
#### Set Video Data Callback for Third-party Beauty Filter
|
|
1395
|
-
|
|
1396
|
-
After setting this callback, the SDK will pass the collected video frames to the listener you set for third-party beauty filter components for secondary processing. After that, the SDK will encode and send the processed video frames.
|
|
1397
|
-
| Parameters | Description |
|
|
1398
|
-
| --- | --- |
|
|
1399
|
-
| bufferType | Specify the data format for the callback. Currently supported:<br>- TRTC_VIDEO_BUFFER_TYPE_TEXTURE: Suitable when pixelFormat is set to TRTC_VIDEO_PIXEL_FORMAT_Texture_2D.<br>- TRTC_VIDEO_BUFFER_TYPE_BYTE_BUFFER: Suitable when pixelFormat is set to TRTC_VIDEO_PIXEL_FORMAT_I420.<br>- TRTC_VIDEO_BUFFER_TYPE_BYTE_ARRAY: Suitable when pixelFormat is set to TRTC_VIDEO_PIXEL_FORMAT_I420. |
|
|
1400
|
-
| listener | Custom pre-processing callback, see TRTCVideoFrameListener for details. |
|
|
1401
|
-
| pixelFormat | Specify the pixel format for the callback. Currently supported:<br>- TRTC_VIDEO_PIXEL_FORMAT_Texture_2D: Graphics Memory Texture Solution.<br>- TRTC_VIDEO_PIXEL_FORMAT_I420: Memory Data Solution. |
|
|
1402
|
-
|
|
1403
|
-
#### Return value description:
|
|
1404
|
-
|
|
1405
|
-
0: Success; < 0: Error
|
|
1406
|
-
|
|
1407
|
-
## setLocalVideoRenderListener
|
|
1408
|
-
|
|
1409
|
-
#### Set Local Video Custom Rendering Callback
|
|
1410
|
-
|
|
1411
|
-
After setting this callback, the SDK will skip the original rendering process and return the captured data. You need to handle the rendering yourself.
|
|
1412
|
-
- pixelFormat specifies the data format for the callback. Currently supports Texture2D, I420, and RGBA formats.
|
|
1413
|
-
|
|
1414
|
-
- bufferType specifies the type of buffer. BYTE_BUFFER is suitable for use in the JNI layer, while BYTE_ARRAY can be used for direct operations in the Java layer.
|
|
1415
|
-
|
|
1416
|
-
Refer to documentation: [Custom Collection and Rendering](https://cloud.tencent.com/document/product/647/34066).
|
|
1417
|
-
| Parameters | Description |
|
|
1418
|
-
| --- | --- |
|
|
1419
|
-
| bufferType | Specify the data structure of the video frame:<br>- TRTC_VIDEO_BUFFER_TYPE_TEXTURE: Suitable when pixelFormat is set to TRTC_VIDEO_PIXEL_FORMAT_Texture_2D.<br>- TRTC_VIDEO_BUFFER_TYPE_BYTE_BUFFER: Suitable when pixelFormat is set to TRTC_VIDEO_PIXEL_FORMAT_I420 and TRTC_VIDEO_PIXEL_FORMAT_RGBA.<br>- TRTC_VIDEO_BUFFER_TYPE_BYTE_ARRAY: Suitable when pixelFormat is set to TRTC_VIDEO_PIXEL_FORMAT_I420 and TRTC_VIDEO_PIXEL_FORMAT_RGBA. |
|
|
1420
|
-
| listener | Custom video rendering callback, each video frame triggers a callback. |
|
|
1421
|
-
| pixelFormat | Specify the pixel format of the video frame, such as:<br>- TRTC_VIDEO_PIXEL_FORMAT_Texture_2D: OpenGL texture format, more suitable for GPU processing, high processing efficiency.<br>- TRTC_VIDEO_PIXEL_FORMAT_I420: Standard I420 format, more suitable for CPU processing, low processing efficiency.<br>- TRTC_VIDEO_PIXEL_FORMAT_RGBA: RGBA format, more suitable for CPU processing, low processing efficiency. |
|
|
1422
|
-
|
|
1423
|
-
#### Return value description:
|
|
1424
|
-
|
|
1425
|
-
0: Success; < 0: Error.
|
|
1426
|
-
|
|
1427
|
-
## setRemoteVideoRenderListener
|
|
1428
|
-
|
|
1429
|
-
#### Sets the rendering callback for remote video self-definition
|
|
1430
|
-
|
|
1431
|
-
After setting this callback, the SDK will skip the original rendering process and return the captured data. You need to handle the rendering yourself.
|
|
1432
|
-
- pixelFormat specifies the data format for the callback, such as NV12, i420, and 32BGRA.
|
|
1433
|
-
|
|
1434
|
-
- bufferType specifies the type of buffer. Using PixelBuffer has the highest efficiency; using NSData involves an internal memory conversion within the SDK, resulting in additional performance loss.
|
|
1435
|
-
|
|
1436
|
-
Refer to documentation: [Custom Collection and Rendering](https://cloud.tencent.com/document/product/647/34066).
|
|
1437
|
-
| Parameters | Description |
|
|
1438
|
-
| --- | --- |
|
|
1439
|
-
| bufferType | Specify the data structure of the video frame, such as TRTC_VIDEO_BUFFER_TYPE_BYTE_BUFFER, TRTC_VIDEO_BUFFER_TYPE_BYTE_ARRAY. |
|
|
1440
|
-
| listener | Custom video rendering callback, each video frame triggers a callback. |
|
|
1441
|
-
| pixelFormat | Specify the pixel format of the video frame. Currently supports TRTC_VIDEO_PIXEL_FORMAT_I420, TRTC_VIDEO_PIXEL_FORMAT_RGBA. |
|
|
1442
|
-
| userId | Specify the remote user's ID. |
|
|
1443
|
-
|
|
1444
|
-
> **Note**
|
|
1445
|
-
>
|
|
1446
|
-
|
|
1447
|
-
> In actual use, you need to first call startRemoteView(userid, null) to start the remote video stream pulling and set view to null; otherwise, no data callback will occur.
|
|
1448
|
-
>
|
|
1449
|
-
|
|
1450
|
-
#### Return value description:
|
|
1451
|
-
|
|
1452
|
-
0: Success; < 0: Error.
|
|
1453
|
-
|
|
1454
|
-
## setAudioFrameListener
|
|
1455
|
-
|
|
1456
|
-
#### Sets the audio data self-definition callback
|
|
1457
|
-
|
|
1458
|
-
After setting this callback, the SDK will internally callback the audio data (PCM format), including:
|
|
1459
|
-
- onCapturedAudioFrame: Audio data callback captured by the local microphone
|
|
1460
|
-
|
|
1461
|
-
- onLocalProcessedAudioFrame: Audio data callback captured locally and preprocessed by the audio module
|
|
1462
|
-
|
|
1463
|
-
- onRemoteUserAudioFrame: Audio data of each remote user before mixing
|
|
1464
|
-
|
|
1465
|
-
- onMixedPlayAudioFrame: Audio data callback after mixing various audio streams and finally to be played by the system
|
|
1466
|
-
|
|
1467
|
-
> **Note**
|
|
1468
|
-
>
|
|
1469
|
-
|
|
1470
|
-
> Setting the callback to null means stopping the Definition audio callback; vice versa, setting the callback to non-null means starting the Definition audio callback.
|
|
1471
|
-
>
|
|
1472
|
-
|
|
1473
|
-
## setCapturedAudioFrameCallbackFormat
|
|
1474
|
-
|
|
1475
|
-
#### Sets the callback format for audio frames captured by the local microphone
|
|
1476
|
-
|
|
1477
|
-
This interface is used to set the format of the AudioFrame callback for onCapturedAudioFrame:
|
|
1478
|
-
- sampleRate: Sampling rate, supported values are 16000, 32000, 44100, 48000.
|
|
1479
|
-
|
|
1480
|
-
- channel: Number of channels (if stereo, data is interleaved), mono: 1; stereo: 2.
|
|
1481
|
-
|
|
1482
|
-
- samplesPerCall: Number of sampling points, Definition callback data frame length. The frame length must be an integer multiple of 10ms.
|
|
1483
|
-
|
|
1484
|
-
If you want to calculate the callback frame length in milliseconds, the formula to convert milliseconds to sampling points is: sampling points = milliseconds * sampling rate / 1000.
|
|
1485
|
-
|
|
1486
|
-
Example: For a 48000 sampling rate and a desired callback frame length of 20ms, the number of sampling points should be: 960 = 20 * 48000 / 1000.
|
|
1487
|
-
| Parameters | Description |
|
|
1488
|
-
| --- | --- |
|
|
1489
|
-
| format | Audio Data Callback Format. |
|
|
1490
|
-
|
|
1491
|
-
> **Note**
|
|
1492
|
-
>
|
|
1493
|
-
|
|
1494
|
-
> The final callback frame length is in bytes. The formula to convert sampling points to bytes is: Byte Count = Sampling Points * Channels * 2 (Bit Width). Example: For a 48000 sampling rate, stereo, and 20ms frame length, the number of sampling points is 960, and the byte count is 3840 = 960 * 2 * 2
|
|
1495
|
-
>
|
|
1496
|
-
|
|
1497
|
-
#### Return value description:
|
|
1498
|
-
|
|
1499
|
-
0: Success; <0: Error
|
|
1500
|
-
|
|
1501
|
-
## setLocalProcessedAudioFrameCallbackFormat
|
|
1502
|
-
|
|
1503
|
-
#### Sets the callback format for local audio frames after preprocessing
|
|
1504
|
-
|
|
1505
|
-
This interface is used to set the format of the AudioFrame callback for onLocalProcessedAudioFrame:
|
|
1506
|
-
- sampleRate: Sampling rate, supported values are 16000, 32000, 44100, 48000.
|
|
1507
|
-
|
|
1508
|
-
- channel: Number of channels (if stereo, data is interleaved), mono: 1; stereo: 2.
|
|
1509
|
-
|
|
1510
|
-
- samplesPerCall: Number of sampling points, Definition callback data frame length. The frame length must be an integer multiple of 10ms.
|
|
1511
|
-
|
|
1512
|
-
If you want to calculate the callback frame length in milliseconds, the formula to convert milliseconds to sampling points is: sampling points = milliseconds * sampling rate / 1000.
|
|
1513
|
-
|
|
1514
|
-
Example: For a 48000 sampling rate and a desired callback frame length of 20ms, the number of sampling points should be: 960 = 20 * 48000 / 1000.
|
|
1515
|
-
| Parameters | Description |
|
|
1516
|
-
| --- | --- |
|
|
1517
|
-
| format | Audio Data Callback Format. |
|
|
1518
|
-
|
|
1519
|
-
> **Note**
|
|
1520
|
-
>
|
|
1521
|
-
|
|
1522
|
-
> The final callback frame length is in bytes. The formula to convert sampling points to bytes is: Byte Count = Sampling Points * Channels * 2 (Bit Width). Example: For a 48000 sampling rate, stereo, and 20ms frame length, the number of sampling points is 960, and the byte count is 3840 = 960 * 2 * 2
|
|
1523
|
-
>
|
|
1524
|
-
|
|
1525
|
-
#### Return value description:
|
|
1526
|
-
|
|
1527
|
-
0: Success; <0: Error
|
|
1528
|
-
|
|
1529
|
-
## setMixedPlayAudioFrameCallbackFormat
|
|
1530
|
-
|
|
1531
|
-
#### Sets the callback format for audio frames that will eventually be played by the system
|
|
1532
|
-
|
|
1533
|
-
This interface is used to set the format of the AudioFrame callback for onMixedPlayAudioFrame:
|
|
1534
|
-
- sampleRate: Sampling rate, supported values are 16000, 32000, 44100, 48000.
|
|
1535
|
-
|
|
1536
|
-
- channel: Number of channels (if stereo, data is interleaved), mono: 1; stereo: 2.
|
|
1537
|
-
|
|
1538
|
-
- samplesPerCall: Number of sampling points, Definition callback data frame length. The frame length must be an integer multiple of 10ms.
|
|
1539
|
-
|
|
1540
|
-
If you want to calculate the callback frame length in milliseconds, the formula to convert milliseconds to sampling points is: sampling points = milliseconds * sampling rate / 1000.
|
|
1541
|
-
|
|
1542
|
-
Example: For a 48000 sampling rate and a desired callback frame length of 20ms, the number of sampling points should be: 960 = 20 * 48000 / 1000.
|
|
1543
|
-
| Parameters | Description |
|
|
1544
|
-
| --- | --- |
|
|
1545
|
-
| format | Audio Data Callback Format. |
|
|
1546
|
-
|
|
1547
|
-
> **Note**
|
|
1548
|
-
>
|
|
1549
|
-
|
|
1550
|
-
> The final callback frame length is in bytes. The formula to convert sampling points to bytes is: Byte Count = Sampling Points * Channels * 2 (Bit Width). Example: For a 48000 sampling rate, stereo, and 20ms frame length, the number of sampling points is 960, and the byte count is 3840 = 960 * 2 * 2
|
|
1551
|
-
>
|
|
1552
|
-
|
|
1553
|
-
#### Return value description:
|
|
1554
|
-
|
|
1555
|
-
0: Success; <0: Error
|
|
1556
|
-
|
|
1557
|
-
## enableCustomAudioRendering
|
|
1558
|
-
|
|
1559
|
-
#### Enable self-definition audio playback
|
|
1560
|
-
|
|
1561
|
-
If you need to connect specific audio devices or want to control the audio playback logic yourself, you can enable Custom Playback through this interface.
|
|
1562
|
-
|
|
1563
|
-
After enabling Custom Playback, the SDK will no longer use the system's audio interface to play data. You need to get the audio frame that the SDK wants to play through getCustomAudioRenderingFrame and play it yourself.
|
|
1564
|
-
| Parameters | Description |
|
|
1565
|
-
| --- | --- |
|
|
1566
|
-
| enable | Whether to enable Custom Playback is off by default. |
|
|
1567
|
-
|
|
1568
|
-
> **Note**
|
|
1569
|
-
>
|
|
1570
|
-
|
|
1571
|
-
> You need to set it before entering the room for it to take effect. It is not supported to set it after entering the room.
|
|
1572
|
-
>
|
|
1573
|
-
|
|
1574
|
-
## getCustomAudioRenderingFrame
|
|
1575
|
-
|
|
1576
|
-
#### Get playable audio data
|
|
1577
|
-
|
|
1578
|
-
Before calling this interface, you need to enable Custom Playback through enableCustomAudioRendering first.
|
|
1579
|
-
|
|
1580
|
-
Parameter TRTCAudioFrame is recommended to be filled as follows (other fields do not need to be filled):
|
|
1581
|
-
- sampleRate: Sampling rate, required, supported values are 16000, 24000, 32000, 44100, 48000.
|
|
1582
|
-
|
|
1583
|
-
- channel: Number of channels, required. Fill in 1 for mono, 2 for stereo. The data is interleaved for stereo.
|
|
1584
|
-
|
|
1585
|
-
- data: Buffer for obtaining audio data. You need to allocate the memory size of data according to the frame length of an audio frame. The obtained PCM data supports frame lengths of 10ms or 20ms. It is recommended to use a frame length of 20ms.
|
|
1586
|
-
|
|
1587
|
-
Calculation formula: Sampling rate x Playback duration x Number of channels x 2 (bytes per sample). For example, for a frame of audio with a sampling rate of 48000, mono channel, and a playback duration of 20ms, the buffer size is 48000 × 0.02s × 1 × 16bit = 15360bit = 1920 bytes.
|
|
1588
|
-
| Parameters | Description |
|
|
1589
|
-
| --- | --- |
|
|
1590
|
-
| audioFrame | Audio data frame. |
|
|
1591
|
-
|
|
1592
|
-
> **Note**
|
|
1593
|
-
>
|
|
1594
|
-
|
|
1595
|
-
> 1. Parameters sampleRate and channel in audioFrame should be set in advance, and the data space required for the frame length to be read should be allocated.
|
|
1596
|
-
>
|
|
1597
|
-
|
|
1598
|
-
> 2. The SDK will automatically fill the data according to sampleRate and channel.
|
|
1599
|
-
>
|
|
1600
|
-
|
|
1601
|
-
> 3. It is recommended to call this function driven by the system's audio playback thread. After playing one frame of audio, call this API to get the next playable frame of audio data.
|
|
1602
|
-
>
|
|
1603
|
-
|
|
1604
|
-
## sendCustomCmdMsg
|
|
1605
|
-
|
|
1606
|
-
#### Sends a custom message using UDP channel to all users in a room
|
|
1607
|
-
|
|
1608
|
-
This interface allows you to use TRTC's UDP Channel to broadcast custom data to other users in the room, achieving the purpose of transmitting signaling.
|
|
1609
|
-
|
|
1610
|
-
Other users in the room can receive messages through the onRecvCustomCmdMsg callback in TRTCCloudListener.
|
|
1611
|
-
| Parameters | Description |
|
|
1612
|
-
| --- | --- |
|
|
1613
|
-
| cmdID | Message ID, the value range is 1 - 10. |
|
|
1614
|
-
| data | Message to be sent, the maximum length of a single message is limited to 1KB. |
|
|
1615
|
-
| ordered | Whether orderly sending is enabled, i.e., whether the order of data packets at the receiver matches the order at the sender (this will cause some reception delay). |
|
|
1616
|
-
| reliable | Whether reliable transmission is enabled. Reliable transmission offers a higher success rate but will cause higher reception delays compared to unreliable transmission. |
|
|
1617
|
-
|
|
1618
|
-
> **Note**
|
|
1619
|
-
>
|
|
1620
|
-
|
|
1621
|
-
> 1. Sending messages to all users in the room (currently not supporting Web/Mini program end), up to 30 messages per second.
|
|
1622
|
-
>
|
|
1623
|
-
|
|
1624
|
-
> 2. Each data packet can be up to 1KB. If it exceeds this size, it is very likely to be discarded by intermediate routers or servers.
|
|
1625
|
-
>
|
|
1626
|
-
|
|
1627
|
-
> 3. Each client can send up to 8 KB of data per second.
|
|
1628
|
-
>
|
|
1629
|
-
|
|
1630
|
-
> Please set both reliable and ordered to true or both to false. Interleaved settings are not supported.
|
|
1631
|
-
>
|
|
1632
|
-
|
|
1633
|
-
> 5. It is strongly recommended to set different types of messages with different cmdIDs. This can reduce message latency when ordering is required.
|
|
1634
|
-
>
|
|
1635
|
-
|
|
1636
|
-
> 6. Currently, only anchor roles are supported.
|
|
1637
|
-
>
|
|
1638
|
-
|
|
1639
|
-
#### Return value description:
|
|
1640
|
-
|
|
1641
|
-
true: Message has been sent; false: Message sending failed.
|
|
1642
|
-
|
|
1643
|
-
## sendSEIMsg
|
|
1644
|
-
|
|
1645
|
-
#### Sends a custom message using SEI channel to all users in a room
|
|
1646
|
-
|
|
1647
|
-
This interface allows you to broadcast self-defined data to other users in the current room using TRTC's SEI channel to achieve signaling transmission.
|
|
1648
|
-
|
|
1649
|
-
There is a header data block called SEI in the video frame header. The principle of this interface is to use this SEI header data block to embed the self-defined signaling you want to send, so it is sent out along with the video frame.
|
|
1650
|
-
|
|
1651
|
-
Therefore, compared to sendCustomCmdMsg, signaling transmitted via the SEI channel has better compatibility: the signaling can be transmitted along with the video frame all the way to the live CDN.
|
|
1652
|
-
|
|
1653
|
-
However, because the data block in the video frame header cannot be too large, it is recommended to control the signaling size to just a few bytes when using this interface.
|
|
1654
|
-
|
|
1655
|
-
The most common usage is to embed a self-defined timestamp (timestamp) into the video frame using this interface to achieve perfect alignment of messages and screen (e.g., in educational scenarios for aligning courseware and video signals).
|
|
1656
|
-
|
|
1657
|
-
Other users in the room can receive messages through the onRecvSEIMsg callback in TRTCCloudListener.
|
|
1658
|
-
| Parameters | Description |
|
|
1659
|
-
| --- | --- |
|
|
1660
|
-
| data | Data to be sent, which can contain up to 1 KB (1,000 bytes) of data |
|
|
1661
|
-
| repeatCount | Number of data sends |
|
|
1662
|
-
|
|
1663
|
-
> **Note**
|
|
1664
|
-
>
|
|
1665
|
-
|
|
1666
|
-
> This interface has the following limitations:
|
|
1667
|
-
>
|
|
1668
|
-
|
|
1669
|
-
> 1. Data will not be sent immediately after the API invocation, but will be sent along with the next video frame.
|
|
1670
|
-
>
|
|
1671
|
-
|
|
1672
|
-
> 2. Send messages to all users in the room, up to 30 messages per second (shared limit with sendCustomCmdMsg).
|
|
1673
|
-
>
|
|
1674
|
-
|
|
1675
|
-
> 3. Each package is a maximum of 1 KB. Sending large amounts of data will increase the video bitrate and possibly cause reduced image quality or lag (shared limit with sendCustomCmdMsg).
|
|
1676
|
-
>
|
|
1677
|
-
|
|
1678
|
-
> 4. Each client can send up to 8 KB of data per second (shared limit with sendCustomCmdMsg).
|
|
1679
|
-
>
|
|
1680
|
-
|
|
1681
|
-
> 5. If multiple sends are specified (repeatCount > 1), the data will be sent with the subsequent repeatCount number of video frames, which will also increase the video bitrate.
|
|
1682
|
-
>
|
|
1683
|
-
|
|
1684
|
-
> 6. If repeatCount > 1 and there are multiple sends, the onRecvSEIMsg callback may receive the same message multiple times, and deduplication is needed.
|
|
1685
|
-
>
|
|
1686
|
-
|
|
1687
|
-
#### Return value description:
|
|
1688
|
-
|
|
1689
|
-
true: Message has passed the restriction, waiting for subsequent video frame to be sent; false: Message is restricted from being sent
|
|
1690
|
-
|
|
1691
|
-
## startSpeedTest
|
|
1692
|
-
|
|
1693
|
-
#### Start internet speed test (use before entering the room)
|
|
1694
|
-
| Parameters | Description |
|
|
1695
|
-
| --- | --- |
|
|
1696
|
-
| params | Speed Test Options |
|
|
1697
|
-
|
|
1698
|
-
> **Note**
|
|
1699
|
-
>
|
|
1700
|
-
|
|
1701
|
-
> 1. The speed test process will incur a small basic service fee. For details, refer to [Billing Overview > Basic Service](https://cloud.tencent.com/document/product/647/17157#.E5.9F.BA.E7.A1.80.E6.9C.8D.E5.8A.A1) documentation.
|
|
1702
|
-
>
|
|
1703
|
-
|
|
1704
|
-
> 2. Please perform the internet speed test before entering the room. Conducting the test in the room will affect normal audio and video transmission and will also be inaccurate due to too much interference.
|
|
1705
|
-
>
|
|
1706
|
-
|
|
1707
|
-
> 3. Only one internet speed test task is allowed to run at the same time.
|
|
1708
|
-
>
|
|
1709
|
-
|
|
1710
|
-
#### Return value description:
|
|
1711
|
-
|
|
1712
|
-
API Invocation Result, < 0: Failure
|
|
1713
|
-
|
|
1714
|
-
## stopSpeedTest
|
|
1715
|
-
|
|
1716
|
-
#### Stops network speed testing
|
|
1717
|
-
|
|
1718
|
-
## getSDKVersion
|
|
1719
|
-
|
|
1720
|
-
#### Obtains the SDK version.
|
|
1721
|
-
|
|
1722
|
-
## setLogLevel
|
|
1723
|
-
|
|
1724
|
-
#### Sets the log output level.
|
|
1725
|
-
| Parameters | Description |
|
|
1726
|
-
| --- | --- |
|
|
1727
|
-
| level | Refer to TRTCLogLevel, default value: TRTCLogLevelNone |
|
|
1728
|
-
|
|
1729
|
-
## setConsoleEnabled
|
|
1730
|
-
|
|
1731
|
-
#### Enables/Disables console log print.
|
|
1732
|
-
| Parameters | Description |
|
|
1733
|
-
| --- | --- |
|
|
1734
|
-
| enabled | Specify whether to enable it. Default: Disabled. |
|
|
1735
|
-
|
|
1736
|
-
## setLogCompressEnabled
|
|
1737
|
-
|
|
1738
|
-
#### Enables/Disables local log compression
|
|
1739
|
-
|
|
1740
|
-
After enabling compression, the log storage volume is significantly reduced, but you need to use a Python script provided by Tencent Cloud to decompress and read it.
|
|
1741
|
-
|
|
1742
|
-
After disabling compression, logs are stored in plaintext, which can be opened and read directly with Notepad but occupy more space.
|
|
1743
|
-
| Parameters | Description |
|
|
1744
|
-
| --- | --- |
|
|
1745
|
-
| enabled | Specify whether to enable it. Default: Enabled |
|
|
1746
|
-
|
|
1747
|
-
## setLogDirPath
|
|
1748
|
-
|
|
1749
|
-
#### Sets the save path for local logs
|
|
1750
|
-
|
|
1751
|
-
This interface allows you to change the default storage path of SDK local logs. The default local log storage locations are:
|
|
1752
|
-
- Windows platform: C:/Users/[system username]/AppData/Roaming/liteav/log, i.e., %appdata%/liteav/log.
|
|
1753
|
-
|
|
1754
|
-
- iOS or Mac platform: sandbox Documents/log.
|
|
1755
|
-
|
|
1756
|
-
- Android platform: /app private directory/files/log/liteav/.
|
|
1757
|
-
|
|
1758
|
-
| Parameters | Description |
|
|
1759
|
-
| --- | --- |
|
|
1760
|
-
| path | Storage path for logs |
|
|
1761
|
-
|
|
1762
|
-
> **Note**
|
|
1763
|
-
>
|
|
1764
|
-
|
|
1765
|
-
> Make sure to call this before all other interfaces and ensure that the specified directory exists and that your application has read and write permissions for that directory.
|
|
1766
|
-
>
|
|
1767
|
-
|
|
1768
|
-
## setLogListener
|
|
1769
|
-
|
|
1770
|
-
#### Log callback
|
|
1771
|
-
|
|
1772
|
-
## showDebugView
|
|
1773
|
-
|
|
1774
|
-
#### Show Dashboard
|
|
1775
|
-
|
|
1776
|
-
The "Dashboard" is a semi-transparent debug information overlay located above the video rendering control, used to display audio and video information and event information, aiding in integration and debugging.
|
|
1777
|
-
| Parameters | Description |
|
|
1778
|
-
| --- | --- |
|
|
1779
|
-
| showType | 0: Do not display; 1: Display simplified edition (audio and video information only); 2: Display full version (including audio and video information and event information). |
|
|
1780
|
-
|
|
1781
|
-
## TRTCViewMargin
|
|
1782
|
-
|
|
1783
|
-
#### Set the dashboard margin
|
|
1784
|
-
|
|
1785
|
-
Used to adjust the position of the dashboard within the video rendering control. Must be called before showDebugView to take effect.
|
|
1786
|
-
| Parameters | Description |
|
|
1787
|
-
| --- | --- |
|
|
1788
|
-
| margin | Dashboard inner padding. Note that here it is based on the percentage of the parentView. Margin value range is 0 - 1. |
|
|
1789
|
-
| userId | User ID. |
|
|
1790
|
-
|
|
1791
|
-
## callExperimentalAPI
|
|
1792
|
-
|
|
1793
|
-
#### Calls an experimental API.
|
|
1794
|
-
|
|
1795
|
-
## enablePayloadPrivateEncryption
|
|
1796
|
-
|
|
1797
|
-
#### Enable or disable media stream private encryption
|
|
1798
|
-
|
|
1799
|
-
In scenarios with high security requirements, TRTC recommends calling the enablePayloadPrivateEncryption method to enable media stream private encryption before joining a room.
|
|
1800
|
-
|
|
1801
|
-
After the user leaves the room, the SDK will automatically disable private encryption. If you need to re-enable private encryption, you must call this method before the user rejoins the room.
|
|
1802
|
-
| Parameters | Description |
|
|
1803
|
-
| --- | --- |
|
|
1804
|
-
| config | For configuring the media stream private encryption algorithm and key, refer to TRTCPayloadPrivateEncryptionConfig. |
|
|
1805
|
-
| enabled | Whether to enable media stream private encryption. |
|
|
1806
|
-
|
|
1807
|
-
> **Note**
|
|
1808
|
-
>
|
|
1809
|
-
|
|
1810
|
-
> TRTC already encrypts media streams before transmission. When media stream private encryption is enabled, it will use the key and initialization vector you provided for additional encryption.
|
|
1811
|
-
>
|
|
1812
|
-
|
|
1813
|
-
#### Return value description:
|
|
1814
|
-
|
|
1815
|
-
API invocation results: 0: Method call successful, -1: Invalid input parameter, -2: Feature expired. To unlock: Please visit the Chinese mainland site to activate the [TRTC Enterprise Edition Package](https://buy.cloud.tencent.com/trtc?tab=month&trtcversion=ultimate), and submit an [application](https://cloud.tencent.com/apply/p/diifjcmffhw). You can use it upon approval.
|