agora-electron-sdk 4.5.2 → 4.5.3-dev.2
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/CHANGELOG.md +39 -0
- package/README.md +6 -3
- package/js/example/src/renderer/examples/advanced/VideoEffect/videoEffectHelpers.js +395 -0
- package/js/{AgoraSdk.js → ts/AgoraSdk.js} +2 -12
- package/js/{Decoder → ts/Decoder}/index.js +1 -1
- package/js/{Private → ts/Private}/AgoraBase.js +829 -674
- package/js/{Private → ts/Private}/AgoraMediaBase.js +154 -151
- package/js/{Private → ts/Private}/AgoraMediaPlayerTypes.js +58 -54
- package/js/{Private → ts/Private}/IAgoraLog.js +13 -13
- package/js/{Private → ts/Private}/IAgoraMediaEngine.js +4 -4
- package/js/{Private → ts/Private}/IAgoraMediaPlayer.js +2 -2
- package/js/{Private → ts/Private}/IAgoraMusicContentCenter.js +1 -1
- package/js/{Private → ts/Private}/IAgoraRhythmPlayer.js +13 -13
- package/js/{Private → ts/Private}/IAgoraRtcEngine.js +150 -94
- package/js/{Private → ts/Private}/IAgoraRtcEngineEx.js +3 -3
- package/js/{Private → ts/Private}/IAgoraSpatialAudio.js +4 -4
- package/js/{Private → ts/Private}/IAudioDeviceManager.js +2 -2
- package/js/{Private → ts/Private}/impl/IAgoraMediaPlayerImpl.js +10 -0
- package/js/{Private → ts/Private}/impl/IAgoraRtcEngineExImpl.js +74 -0
- package/js/{Private → ts/Private}/impl/IAgoraRtcEngineImpl.js +233 -1
- package/js/{Private → ts/Private}/internal/IrisApiEngine.js +45 -0
- package/js/{Private → ts/Private}/internal/RtcEngineExInternal.js +74 -4
- package/js/ts/Private/internal/VideoEffectObjectInternal.js +14 -0
- package/js/{Private → ts/Private}/ti/IAgoraRtcEngine-ti.js +2 -0
- package/js/{Renderer → ts/Renderer}/AgoraView.js +19 -2
- package/js/{Renderer → ts/Renderer}/IRenderer.js +7 -4
- package/js/{Renderer → ts/Renderer}/IRendererCache.js +17 -1
- package/js/ts/Renderer/RendererCache.js +252 -0
- package/js/{Renderer → ts/Renderer}/RendererManager.js +13 -64
- package/js/{Renderer → ts/Renderer}/WebCodecsRenderer/index.js +5 -5
- package/js/{Renderer → ts/Renderer}/WebCodecsRendererCache.js +13 -1
- package/js/{Renderer → ts/Renderer}/WebGLRenderer/index.js +179 -26
- package/js/{Renderer → ts/Renderer}/YUVCanvasRenderer/index.js +12 -5
- package/js/{Utils.js → ts/Utils.js} +7 -7
- package/package.json +25 -12
- package/scripts/checkElectron.js +4 -2
- package/scripts/download.js +102 -0
- package/scripts/downloadPrebuild.js +2 -1
- package/scripts/synclib.js +2 -2
- package/ts/AgoraSdk.ts +2 -12
- package/ts/Decoder/index.ts +5 -1
- package/ts/Private/AgoraBase.ts +1259 -1060
- package/ts/Private/AgoraMediaBase.ts +351 -324
- package/ts/Private/AgoraMediaPlayerTypes.ts +94 -91
- package/ts/Private/IAgoraLog.ts +20 -18
- package/ts/Private/IAgoraMediaEngine.ts +86 -81
- package/ts/Private/IAgoraMediaPlayer.ts +196 -181
- package/ts/Private/IAgoraMediaPlayerSource.ts +40 -40
- package/ts/Private/IAgoraMusicContentCenter.ts +3 -3
- package/ts/Private/IAgoraRhythmPlayer.ts +15 -15
- package/ts/Private/IAgoraRtcEngine.ts +2492 -2047
- package/ts/Private/IAgoraRtcEngineEx.ts +434 -335
- package/ts/Private/IAgoraSpatialAudio.ts +43 -45
- package/ts/Private/IAudioDeviceManager.ts +106 -97
- package/ts/Private/impl/IAgoraMediaPlayerImpl.ts +12 -0
- package/ts/Private/impl/IAgoraRtcEngineExImpl.ts +138 -0
- package/ts/Private/impl/IAgoraRtcEngineImpl.ts +331 -0
- package/ts/Private/internal/IrisApiEngine.ts +47 -0
- package/ts/Private/internal/RtcEngineExInternal.ts +106 -9
- package/ts/Private/internal/VideoEffectObjectInternal.ts +14 -0
- package/ts/Private/ti/IAgoraRtcEngine-ti.ts +2 -0
- package/ts/Renderer/AgoraView.ts +32 -3
- package/ts/Renderer/IRenderer.ts +8 -3
- package/ts/Renderer/IRendererCache.ts +33 -0
- package/ts/Renderer/RendererCache.ts +211 -12
- package/ts/Renderer/RendererManager.ts +21 -99
- package/ts/Renderer/WebCodecsRenderer/index.ts +9 -6
- package/ts/Renderer/WebCodecsRendererCache.ts +17 -1
- package/ts/Renderer/WebGLRenderer/index.ts +246 -40
- package/ts/Renderer/YUVCanvasRenderer/index.ts +29 -16
- package/ts/Types.ts +14 -9
- package/ts/Utils.ts +8 -7
- package/types/example/src/renderer/examples/advanced/VideoEffect/videoEffectHelpers.d.ts +168 -0
- package/types/example/src/renderer/examples/advanced/VideoEffect/videoEffectHelpers.d.ts.map +1 -0
- package/types/{AgoraSdk.d.ts → ts/AgoraSdk.d.ts} +2 -12
- package/types/ts/AgoraSdk.d.ts.map +1 -0
- package/types/ts/Decoder/gpu-utils.d.ts.map +1 -0
- package/types/ts/Decoder/index.d.ts.map +1 -0
- package/types/ts/Private/AgoraBase.d.ts +5504 -0
- package/types/ts/Private/AgoraBase.d.ts.map +1 -0
- package/types/ts/Private/AgoraMediaBase.d.ts +1695 -0
- package/types/ts/Private/AgoraMediaBase.d.ts.map +1 -0
- package/types/ts/Private/AgoraMediaPlayerTypes.d.ts +456 -0
- package/types/ts/Private/AgoraMediaPlayerTypes.d.ts.map +1 -0
- package/types/ts/Private/IAgoraH265Transcoder.d.ts.map +1 -0
- package/types/ts/Private/IAgoraLog.d.ts +91 -0
- package/types/ts/Private/IAgoraLog.d.ts.map +1 -0
- package/types/ts/Private/IAgoraMediaEngine.d.ts +255 -0
- package/types/ts/Private/IAgoraMediaEngine.d.ts.map +1 -0
- package/types/ts/Private/IAgoraMediaPlayer.d.ts +662 -0
- package/types/ts/Private/IAgoraMediaPlayer.d.ts.map +1 -0
- package/types/ts/Private/IAgoraMediaPlayerSource.d.ts +109 -0
- package/types/ts/Private/IAgoraMediaPlayerSource.d.ts.map +1 -0
- package/types/ts/Private/IAgoraMediaRecorder.d.ts.map +1 -0
- package/types/ts/Private/IAgoraMediaStreamingSource.d.ts.map +1 -0
- package/types/{Private → ts/Private}/IAgoraMusicContentCenter.d.ts +3 -3
- package/types/ts/Private/IAgoraMusicContentCenter.d.ts.map +1 -0
- package/types/ts/Private/IAgoraRhythmPlayer.d.ts +65 -0
- package/types/ts/Private/IAgoraRhythmPlayer.d.ts.map +1 -0
- package/types/ts/Private/IAgoraRtcEngine.d.ts +6504 -0
- package/types/ts/Private/IAgoraRtcEngine.d.ts.map +1 -0
- package/types/ts/Private/IAgoraRtcEngineEx.d.ts +817 -0
- package/types/ts/Private/IAgoraRtcEngineEx.d.ts.map +1 -0
- package/types/ts/Private/IAgoraSpatialAudio.d.ts +194 -0
- package/types/ts/Private/IAgoraSpatialAudio.d.ts.map +1 -0
- package/types/ts/Private/IAudioDeviceManager.d.ts +321 -0
- package/types/ts/Private/IAudioDeviceManager.d.ts.map +1 -0
- package/types/ts/Private/extension/AgoraBaseExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/AgoraMediaBaseExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/AgoraMediaPlayerTypesExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraH265TranscoderExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraLogExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraMediaEngineExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraMediaPlayerExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraMediaPlayerSourceExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraMediaRecorderExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraMusicContentCenterExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraRhythmPlayerExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraRtcEngineExExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraRtcEngineExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAgoraSpatialAudioExtension.d.ts.map +1 -0
- package/types/ts/Private/extension/IAudioDeviceManagerExtension.d.ts.map +1 -0
- package/types/ts/Private/impl/AgoraBaseImpl.d.ts.map +1 -0
- package/types/ts/Private/impl/AgoraMediaBaseImpl.d.ts.map +1 -0
- package/types/ts/Private/impl/IAgoraH265TranscoderImpl.d.ts.map +1 -0
- package/types/ts/Private/impl/IAgoraMediaEngineImpl.d.ts.map +1 -0
- package/types/{Private → ts/Private}/impl/IAgoraMediaPlayerImpl.d.ts +2 -0
- package/types/ts/Private/impl/IAgoraMediaPlayerImpl.d.ts.map +1 -0
- package/types/ts/Private/impl/IAgoraMediaPlayerSourceImpl.d.ts.map +1 -0
- package/types/ts/Private/impl/IAgoraMediaRecorderImpl.d.ts.map +1 -0
- package/types/ts/Private/impl/IAgoraMusicContentCenterImpl.d.ts.map +1 -0
- package/types/{Private → ts/Private}/impl/IAgoraRtcEngineExImpl.d.ts +7 -1
- package/types/ts/Private/impl/IAgoraRtcEngineExImpl.d.ts.map +1 -0
- package/types/{Private → ts/Private}/impl/IAgoraRtcEngineImpl.d.ts +27 -1
- package/types/ts/Private/impl/IAgoraRtcEngineImpl.d.ts.map +1 -0
- package/types/ts/Private/impl/IAgoraSpatialAudioImpl.d.ts.map +1 -0
- package/types/ts/Private/impl/IAudioDeviceManagerImpl.d.ts.map +1 -0
- package/types/ts/Private/internal/AgoraH265TranscoderInternal.d.ts.map +1 -0
- package/types/ts/Private/internal/AgoraMediaBaseInternal.d.ts.map +1 -0
- package/types/ts/Private/internal/AudioDeviceManagerInternal.d.ts.map +1 -0
- package/types/ts/Private/internal/IrisApiEngine.d.ts.map +1 -0
- package/types/ts/Private/internal/LocalSpatialAudioEngineInternal.d.ts.map +1 -0
- package/types/ts/Private/internal/MediaEngineInternal.d.ts.map +1 -0
- package/types/ts/Private/internal/MediaPlayerInternal.d.ts.map +1 -0
- package/types/ts/Private/internal/MediaRecorderInternal.d.ts.map +1 -0
- package/types/ts/Private/internal/MusicContentCenterInternal.d.ts.map +1 -0
- package/types/{Private → ts/Private}/internal/RtcEngineExInternal.d.ts +10 -4
- package/types/ts/Private/internal/RtcEngineExInternal.d.ts.map +1 -0
- package/types/ts/Private/internal/VideoEffectObjectInternal.d.ts +7 -0
- package/types/ts/Private/internal/VideoEffectObjectInternal.d.ts.map +1 -0
- package/types/{Private → ts/Private}/ipc/main.d.ts.map +1 -1
- package/types/ts/Private/ipc/renderer.d.ts.map +1 -0
- package/types/ts/Private/ti/AgoraBase-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/AgoraMediaBase-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/AgoraMediaPlayerTypes-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraH265Transcoder-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraLog-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraMediaEngine-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraMediaPlayer-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraMediaPlayerSource-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraMediaRecorder-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraMediaStreamingSource-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraMusicContentCenter-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraRhythmPlayer-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraRtcEngine-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraRtcEngineEx-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAgoraSpatialAudio-ti.d.ts.map +1 -0
- package/types/ts/Private/ti/IAudioDeviceManager-ti.d.ts.map +1 -0
- package/types/{Renderer → ts/Renderer}/AgoraView.d.ts +6 -0
- package/types/ts/Renderer/AgoraView.d.ts.map +1 -0
- package/types/ts/Renderer/CapabilityManager.d.ts.map +1 -0
- package/types/{Renderer → ts/Renderer}/IRenderer.d.ts +2 -2
- package/types/ts/Renderer/IRenderer.d.ts.map +1 -0
- package/types/{Renderer → ts/Renderer}/IRendererCache.d.ts +21 -1
- package/types/ts/Renderer/IRendererCache.d.ts.map +1 -0
- package/types/{Renderer → ts/Renderer}/RendererCache.d.ts +27 -0
- package/types/ts/Renderer/RendererCache.d.ts.map +1 -0
- package/types/{Renderer → ts/Renderer}/RendererManager.d.ts +4 -17
- package/types/ts/Renderer/RendererManager.d.ts.map +1 -0
- package/types/{Renderer → ts/Renderer}/WebCodecsRenderer/index.d.ts +3 -3
- package/types/ts/Renderer/WebCodecsRenderer/index.d.ts.map +1 -0
- package/types/{Renderer → ts/Renderer}/WebCodecsRendererCache.d.ts +7 -0
- package/types/ts/Renderer/WebCodecsRendererCache.d.ts.map +1 -0
- package/types/{Renderer → ts/Renderer}/WebGLRenderer/index.d.ts +12 -2
- package/types/ts/Renderer/WebGLRenderer/index.d.ts.map +1 -0
- package/types/ts/Renderer/WebGLRenderer/webgl-utils.d.ts.map +1 -0
- package/types/ts/Renderer/YUVCanvasRenderer/index.d.ts +10 -0
- package/types/ts/Renderer/YUVCanvasRenderer/index.d.ts.map +1 -0
- package/types/ts/Renderer/index.d.ts.map +1 -0
- package/types/{Types.d.ts → ts/Types.d.ts} +11 -6
- package/types/ts/Types.d.ts.map +1 -0
- package/types/{Utils.d.ts → ts/Utils.d.ts} +1 -1
- package/types/ts/Utils.d.ts.map +1 -0
- package/js/Renderer/RendererCache.js +0 -100
- package/types/AgoraSdk.d.ts.map +0 -1
- package/types/Decoder/gpu-utils.d.ts.map +0 -1
- package/types/Decoder/index.d.ts.map +0 -1
- package/types/Private/AgoraBase.d.ts +0 -5310
- package/types/Private/AgoraBase.d.ts.map +0 -1
- package/types/Private/AgoraMediaBase.d.ts +0 -1668
- package/types/Private/AgoraMediaBase.d.ts.map +0 -1
- package/types/Private/AgoraMediaPlayerTypes.d.ts +0 -453
- package/types/Private/AgoraMediaPlayerTypes.d.ts.map +0 -1
- package/types/Private/IAgoraH265Transcoder.d.ts.map +0 -1
- package/types/Private/IAgoraLog.d.ts +0 -89
- package/types/Private/IAgoraLog.d.ts.map +0 -1
- package/types/Private/IAgoraMediaEngine.d.ts +0 -250
- package/types/Private/IAgoraMediaEngine.d.ts.map +0 -1
- package/types/Private/IAgoraMediaPlayer.d.ts +0 -648
- package/types/Private/IAgoraMediaPlayer.d.ts.map +0 -1
- package/types/Private/IAgoraMediaPlayerSource.d.ts +0 -109
- package/types/Private/IAgoraMediaPlayerSource.d.ts.map +0 -1
- package/types/Private/IAgoraMediaRecorder.d.ts.map +0 -1
- package/types/Private/IAgoraMediaStreamingSource.d.ts.map +0 -1
- package/types/Private/IAgoraMusicContentCenter.d.ts.map +0 -1
- package/types/Private/IAgoraRhythmPlayer.d.ts +0 -65
- package/types/Private/IAgoraRhythmPlayer.d.ts.map +0 -1
- package/types/Private/IAgoraRtcEngine.d.ts +0 -6103
- package/types/Private/IAgoraRtcEngine.d.ts.map +0 -1
- package/types/Private/IAgoraRtcEngineEx.d.ts +0 -741
- package/types/Private/IAgoraRtcEngineEx.d.ts.map +0 -1
- package/types/Private/IAgoraSpatialAudio.d.ts +0 -196
- package/types/Private/IAgoraSpatialAudio.d.ts.map +0 -1
- package/types/Private/IAudioDeviceManager.d.ts +0 -312
- package/types/Private/IAudioDeviceManager.d.ts.map +0 -1
- package/types/Private/extension/AgoraBaseExtension.d.ts.map +0 -1
- package/types/Private/extension/AgoraMediaBaseExtension.d.ts.map +0 -1
- package/types/Private/extension/AgoraMediaPlayerTypesExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraH265TranscoderExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraLogExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraMediaEngineExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraMediaPlayerExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraMediaPlayerSourceExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraMediaRecorderExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraMusicContentCenterExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraRhythmPlayerExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraRtcEngineExExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraRtcEngineExtension.d.ts.map +0 -1
- package/types/Private/extension/IAgoraSpatialAudioExtension.d.ts.map +0 -1
- package/types/Private/extension/IAudioDeviceManagerExtension.d.ts.map +0 -1
- package/types/Private/impl/AgoraBaseImpl.d.ts.map +0 -1
- package/types/Private/impl/AgoraMediaBaseImpl.d.ts.map +0 -1
- package/types/Private/impl/IAgoraH265TranscoderImpl.d.ts.map +0 -1
- package/types/Private/impl/IAgoraMediaEngineImpl.d.ts.map +0 -1
- package/types/Private/impl/IAgoraMediaPlayerImpl.d.ts.map +0 -1
- package/types/Private/impl/IAgoraMediaPlayerSourceImpl.d.ts.map +0 -1
- package/types/Private/impl/IAgoraMediaRecorderImpl.d.ts.map +0 -1
- package/types/Private/impl/IAgoraMusicContentCenterImpl.d.ts.map +0 -1
- package/types/Private/impl/IAgoraRtcEngineExImpl.d.ts.map +0 -1
- package/types/Private/impl/IAgoraRtcEngineImpl.d.ts.map +0 -1
- package/types/Private/impl/IAgoraSpatialAudioImpl.d.ts.map +0 -1
- package/types/Private/impl/IAudioDeviceManagerImpl.d.ts.map +0 -1
- package/types/Private/internal/AgoraH265TranscoderInternal.d.ts.map +0 -1
- package/types/Private/internal/AgoraMediaBaseInternal.d.ts.map +0 -1
- package/types/Private/internal/AudioDeviceManagerInternal.d.ts.map +0 -1
- package/types/Private/internal/IrisApiEngine.d.ts.map +0 -1
- package/types/Private/internal/LocalSpatialAudioEngineInternal.d.ts.map +0 -1
- package/types/Private/internal/MediaEngineInternal.d.ts.map +0 -1
- package/types/Private/internal/MediaPlayerInternal.d.ts.map +0 -1
- package/types/Private/internal/MediaRecorderInternal.d.ts.map +0 -1
- package/types/Private/internal/MusicContentCenterInternal.d.ts.map +0 -1
- package/types/Private/internal/RtcEngineExInternal.d.ts.map +0 -1
- package/types/Private/ipc/renderer.d.ts.map +0 -1
- package/types/Private/ti/AgoraBase-ti.d.ts.map +0 -1
- package/types/Private/ti/AgoraMediaBase-ti.d.ts.map +0 -1
- package/types/Private/ti/AgoraMediaPlayerTypes-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraH265Transcoder-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraLog-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraMediaEngine-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraMediaPlayer-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraMediaPlayerSource-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraMediaRecorder-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraMediaStreamingSource-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraMusicContentCenter-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraRhythmPlayer-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraRtcEngine-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraRtcEngineEx-ti.d.ts.map +0 -1
- package/types/Private/ti/IAgoraSpatialAudio-ti.d.ts.map +0 -1
- package/types/Private/ti/IAudioDeviceManager-ti.d.ts.map +0 -1
- package/types/Renderer/AgoraView.d.ts.map +0 -1
- package/types/Renderer/CapabilityManager.d.ts.map +0 -1
- package/types/Renderer/IRenderer.d.ts.map +0 -1
- package/types/Renderer/IRendererCache.d.ts.map +0 -1
- package/types/Renderer/RendererCache.d.ts.map +0 -1
- package/types/Renderer/RendererManager.d.ts.map +0 -1
- package/types/Renderer/WebCodecsRenderer/index.d.ts.map +0 -1
- package/types/Renderer/WebCodecsRendererCache.d.ts.map +0 -1
- package/types/Renderer/WebGLRenderer/index.d.ts.map +0 -1
- package/types/Renderer/WebGLRenderer/webgl-utils.d.ts.map +0 -1
- package/types/Renderer/YUVCanvasRenderer/index.d.ts +0 -9
- package/types/Renderer/YUVCanvasRenderer/index.d.ts.map +0 -1
- package/types/Renderer/index.d.ts.map +0 -1
- package/types/Types.d.ts.map +0 -1
- package/types/Utils.d.ts.map +0 -1
- /package/js/{Decoder → ts/Decoder}/gpu-utils.js +0 -0
- /package/js/{Private → ts/Private}/IAgoraH265Transcoder.js +0 -0
- /package/js/{Private → ts/Private}/IAgoraMediaPlayerSource.js +0 -0
- /package/js/{Private → ts/Private}/IAgoraMediaRecorder.js +0 -0
- /package/js/{Private → ts/Private}/IAgoraMediaStreamingSource.js +0 -0
- /package/js/{Private → ts/Private}/extension/AgoraBaseExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/AgoraMediaBaseExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/AgoraMediaPlayerTypesExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraH265TranscoderExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraLogExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraMediaEngineExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraMediaPlayerExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraMediaPlayerSourceExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraMediaRecorderExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraMusicContentCenterExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraRhythmPlayerExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraRtcEngineExExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraRtcEngineExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAgoraSpatialAudioExtension.js +0 -0
- /package/js/{Private → ts/Private}/extension/IAudioDeviceManagerExtension.js +0 -0
- /package/js/{Private → ts/Private}/impl/AgoraBaseImpl.js +0 -0
- /package/js/{Private → ts/Private}/impl/AgoraMediaBaseImpl.js +0 -0
- /package/js/{Private → ts/Private}/impl/IAgoraH265TranscoderImpl.js +0 -0
- /package/js/{Private → ts/Private}/impl/IAgoraMediaEngineImpl.js +0 -0
- /package/js/{Private → ts/Private}/impl/IAgoraMediaPlayerSourceImpl.js +0 -0
- /package/js/{Private → ts/Private}/impl/IAgoraMediaRecorderImpl.js +0 -0
- /package/js/{Private → ts/Private}/impl/IAgoraMusicContentCenterImpl.js +0 -0
- /package/js/{Private → ts/Private}/impl/IAgoraSpatialAudioImpl.js +0 -0
- /package/js/{Private → ts/Private}/impl/IAudioDeviceManagerImpl.js +0 -0
- /package/js/{Private → ts/Private}/internal/AgoraH265TranscoderInternal.js +0 -0
- /package/js/{Private → ts/Private}/internal/AgoraMediaBaseInternal.js +0 -0
- /package/js/{Private → ts/Private}/internal/AudioDeviceManagerInternal.js +0 -0
- /package/js/{Private → ts/Private}/internal/LocalSpatialAudioEngineInternal.js +0 -0
- /package/js/{Private → ts/Private}/internal/MediaEngineInternal.js +0 -0
- /package/js/{Private → ts/Private}/internal/MediaPlayerInternal.js +0 -0
- /package/js/{Private → ts/Private}/internal/MediaRecorderInternal.js +0 -0
- /package/js/{Private → ts/Private}/internal/MusicContentCenterInternal.js +0 -0
- /package/js/{Private → ts/Private}/ipc/main.js +0 -0
- /package/js/{Private → ts/Private}/ipc/renderer.js +0 -0
- /package/js/{Private → ts/Private}/ti/AgoraBase-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/AgoraMediaBase-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/AgoraMediaPlayerTypes-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraH265Transcoder-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraLog-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraMediaEngine-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraMediaPlayer-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraMediaPlayerSource-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraMediaRecorder-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraMediaStreamingSource-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraMusicContentCenter-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraRhythmPlayer-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraRtcEngineEx-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAgoraSpatialAudio-ti.js +0 -0
- /package/js/{Private → ts/Private}/ti/IAudioDeviceManager-ti.js +0 -0
- /package/js/{Renderer → ts/Renderer}/CapabilityManager.js +0 -0
- /package/js/{Renderer → ts/Renderer}/WebGLRenderer/webgl-utils.js +0 -0
- /package/js/{Renderer → ts/Renderer}/index.js +0 -0
- /package/js/{Types.js → ts/Types.js} +0 -0
- /package/types/{Decoder → ts/Decoder}/gpu-utils.d.ts +0 -0
- /package/types/{Decoder → ts/Decoder}/index.d.ts +0 -0
- /package/types/{Private → ts/Private}/IAgoraH265Transcoder.d.ts +0 -0
- /package/types/{Private → ts/Private}/IAgoraMediaRecorder.d.ts +0 -0
- /package/types/{Private → ts/Private}/IAgoraMediaStreamingSource.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/AgoraBaseExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/AgoraMediaBaseExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/AgoraMediaPlayerTypesExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraH265TranscoderExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraLogExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraMediaEngineExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraMediaPlayerExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraMediaPlayerSourceExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraMediaRecorderExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraMusicContentCenterExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraRhythmPlayerExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraRtcEngineExExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraRtcEngineExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAgoraSpatialAudioExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/extension/IAudioDeviceManagerExtension.d.ts +0 -0
- /package/types/{Private → ts/Private}/impl/AgoraBaseImpl.d.ts +0 -0
- /package/types/{Private → ts/Private}/impl/AgoraMediaBaseImpl.d.ts +0 -0
- /package/types/{Private → ts/Private}/impl/IAgoraH265TranscoderImpl.d.ts +0 -0
- /package/types/{Private → ts/Private}/impl/IAgoraMediaEngineImpl.d.ts +0 -0
- /package/types/{Private → ts/Private}/impl/IAgoraMediaPlayerSourceImpl.d.ts +0 -0
- /package/types/{Private → ts/Private}/impl/IAgoraMediaRecorderImpl.d.ts +0 -0
- /package/types/{Private → ts/Private}/impl/IAgoraMusicContentCenterImpl.d.ts +0 -0
- /package/types/{Private → ts/Private}/impl/IAgoraSpatialAudioImpl.d.ts +0 -0
- /package/types/{Private → ts/Private}/impl/IAudioDeviceManagerImpl.d.ts +0 -0
- /package/types/{Private → ts/Private}/internal/AgoraH265TranscoderInternal.d.ts +0 -0
- /package/types/{Private → ts/Private}/internal/AgoraMediaBaseInternal.d.ts +0 -0
- /package/types/{Private → ts/Private}/internal/AudioDeviceManagerInternal.d.ts +0 -0
- /package/types/{Private → ts/Private}/internal/IrisApiEngine.d.ts +0 -0
- /package/types/{Private → ts/Private}/internal/LocalSpatialAudioEngineInternal.d.ts +0 -0
- /package/types/{Private → ts/Private}/internal/MediaEngineInternal.d.ts +0 -0
- /package/types/{Private → ts/Private}/internal/MediaPlayerInternal.d.ts +0 -0
- /package/types/{Private → ts/Private}/internal/MediaRecorderInternal.d.ts +0 -0
- /package/types/{Private → ts/Private}/internal/MusicContentCenterInternal.d.ts +0 -0
- /package/types/{Private → ts/Private}/ipc/main.d.ts +0 -0
- /package/types/{Private → ts/Private}/ipc/renderer.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/AgoraBase-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/AgoraMediaBase-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/AgoraMediaPlayerTypes-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraH265Transcoder-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraLog-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraMediaEngine-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraMediaPlayer-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraMediaPlayerSource-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraMediaRecorder-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraMediaStreamingSource-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraMusicContentCenter-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraRhythmPlayer-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraRtcEngine-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraRtcEngineEx-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAgoraSpatialAudio-ti.d.ts +0 -0
- /package/types/{Private → ts/Private}/ti/IAudioDeviceManager-ti.d.ts +0 -0
- /package/types/{Renderer → ts/Renderer}/CapabilityManager.d.ts +0 -0
- /package/types/{Renderer → ts/Renderer}/WebGLRenderer/webgl-utils.d.ts +0 -0
- /package/types/{Renderer → ts/Renderer}/index.d.ts +0 -0
|
@@ -0,0 +1,1695 @@
|
|
|
1
|
+
import './extension/AgoraMediaBaseExtension';
|
|
2
|
+
import { EncodedVideoFrameInfo } from './AgoraBase';
|
|
3
|
+
/**
|
|
4
|
+
* Plugin context information.
|
|
5
|
+
*/
|
|
6
|
+
export declare class ExtensionContext {
|
|
7
|
+
/**
|
|
8
|
+
* Whether the uid reported in ExtensionContext is valid: true : uid is valid. false : uid is invalid.
|
|
9
|
+
*/
|
|
10
|
+
isValid?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* User ID. 0 represents the local user, values greater than 0 represent remote users.
|
|
13
|
+
*/
|
|
14
|
+
uid?: number;
|
|
15
|
+
/**
|
|
16
|
+
* Name of the plugin provider.
|
|
17
|
+
*/
|
|
18
|
+
providerName?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Name of the plugin.
|
|
21
|
+
*/
|
|
22
|
+
extensionName?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Type of video source.
|
|
26
|
+
*/
|
|
27
|
+
export declare enum VideoSourceType {
|
|
28
|
+
/**
|
|
29
|
+
* 0: (Default) The video source is the first camera.
|
|
30
|
+
*/
|
|
31
|
+
VideoSourceCameraPrimary = 0,
|
|
32
|
+
/**
|
|
33
|
+
* 0: (Default) The video source is the first camera.
|
|
34
|
+
*/
|
|
35
|
+
VideoSourceCamera = 0,
|
|
36
|
+
/**
|
|
37
|
+
* 1: The video source is the second camera.
|
|
38
|
+
*/
|
|
39
|
+
VideoSourceCameraSecondary = 1,
|
|
40
|
+
/**
|
|
41
|
+
* 2: The video source is the first screen.
|
|
42
|
+
*/
|
|
43
|
+
VideoSourceScreenPrimary = 2,
|
|
44
|
+
/**
|
|
45
|
+
* 2: The video source is the first screen.
|
|
46
|
+
*/
|
|
47
|
+
VideoSourceScreen = 2,
|
|
48
|
+
/**
|
|
49
|
+
* 3: The video source is the second screen.
|
|
50
|
+
*/
|
|
51
|
+
VideoSourceScreenSecondary = 3,
|
|
52
|
+
/**
|
|
53
|
+
* 4: Custom video source.
|
|
54
|
+
*/
|
|
55
|
+
VideoSourceCustom = 4,
|
|
56
|
+
/**
|
|
57
|
+
* 5: The video source is a media player.
|
|
58
|
+
*/
|
|
59
|
+
VideoSourceMediaPlayer = 5,
|
|
60
|
+
/**
|
|
61
|
+
* 6: The video source is a PNG image.
|
|
62
|
+
*/
|
|
63
|
+
VideoSourceRtcImagePng = 6,
|
|
64
|
+
/**
|
|
65
|
+
* 7: The video source is a JPEG image.
|
|
66
|
+
*/
|
|
67
|
+
VideoSourceRtcImageJpeg = 7,
|
|
68
|
+
/**
|
|
69
|
+
* 8: The video source is a GIF image.
|
|
70
|
+
*/
|
|
71
|
+
VideoSourceRtcImageGif = 8,
|
|
72
|
+
/**
|
|
73
|
+
* 9: The video source is remote video obtained over the network.
|
|
74
|
+
*/
|
|
75
|
+
VideoSourceRemote = 9,
|
|
76
|
+
/**
|
|
77
|
+
* 10: Transcoded video source.
|
|
78
|
+
*/
|
|
79
|
+
VideoSourceTranscoded = 10,
|
|
80
|
+
/**
|
|
81
|
+
* 11: The video source is the third camera.
|
|
82
|
+
*/
|
|
83
|
+
VideoSourceCameraThird = 11,
|
|
84
|
+
/**
|
|
85
|
+
* 12: The video source is the fourth camera.
|
|
86
|
+
*/
|
|
87
|
+
VideoSourceCameraFourth = 12,
|
|
88
|
+
/**
|
|
89
|
+
* 13: The video source is the third screen.
|
|
90
|
+
*/
|
|
91
|
+
VideoSourceScreenThird = 13,
|
|
92
|
+
/**
|
|
93
|
+
* 14: The video source is the fourth screen.
|
|
94
|
+
*/
|
|
95
|
+
VideoSourceScreenFourth = 14,
|
|
96
|
+
/**
|
|
97
|
+
* 15: The video source is video processed by a speech-driven plugin.
|
|
98
|
+
*/
|
|
99
|
+
VideoSourceSpeechDriven = 15,
|
|
100
|
+
/**
|
|
101
|
+
* 100: Unknown video source.
|
|
102
|
+
*/
|
|
103
|
+
VideoSourceUnknown = 100
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Audio source type.
|
|
107
|
+
*/
|
|
108
|
+
export declare enum AudioSourceType {
|
|
109
|
+
/**
|
|
110
|
+
* 0: (Default) Microphone.
|
|
111
|
+
*/
|
|
112
|
+
AudioSourceMicrophone = 0,
|
|
113
|
+
/**
|
|
114
|
+
* 1: Custom captured audio stream.
|
|
115
|
+
*/
|
|
116
|
+
AudioSourceCustom = 1,
|
|
117
|
+
/**
|
|
118
|
+
* 2: Media player.
|
|
119
|
+
*/
|
|
120
|
+
AudioSourceMediaPlayer = 2,
|
|
121
|
+
/**
|
|
122
|
+
* 3: System audio stream captured during screen sharing.
|
|
123
|
+
*/
|
|
124
|
+
AudioSourceLoopbackRecording = 3,
|
|
125
|
+
/**
|
|
126
|
+
* @ignore
|
|
127
|
+
*/
|
|
128
|
+
AudioSourceMixedStream = 4,
|
|
129
|
+
/**
|
|
130
|
+
* 5: Audio stream of a specified remote user.
|
|
131
|
+
*/
|
|
132
|
+
AudioSourceRemoteUser = 5,
|
|
133
|
+
/**
|
|
134
|
+
* 6: Mixed stream of all audio streams in the current channel.
|
|
135
|
+
*/
|
|
136
|
+
AudioSourceRemoteChannel = 6,
|
|
137
|
+
/**
|
|
138
|
+
* 100: Unknown audio source.
|
|
139
|
+
*/
|
|
140
|
+
AudioSourceUnknown = 100
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Types of audio routing.
|
|
144
|
+
*/
|
|
145
|
+
export declare enum AudioRoute {
|
|
146
|
+
/**
|
|
147
|
+
* -1: Use the default audio route.
|
|
148
|
+
*/
|
|
149
|
+
RouteDefault = -1,
|
|
150
|
+
/**
|
|
151
|
+
* 0: Audio routed to headset with microphone.
|
|
152
|
+
*/
|
|
153
|
+
RouteHeadset = 0,
|
|
154
|
+
/**
|
|
155
|
+
* 1: Audio routed to earpiece.
|
|
156
|
+
*/
|
|
157
|
+
RouteEarpiece = 1,
|
|
158
|
+
/**
|
|
159
|
+
* 2: Audio routed to headset without microphone.
|
|
160
|
+
*/
|
|
161
|
+
RouteHeadsetnomic = 2,
|
|
162
|
+
/**
|
|
163
|
+
* 3: Audio routed to built-in speaker.
|
|
164
|
+
*/
|
|
165
|
+
RouteSpeakerphone = 3,
|
|
166
|
+
/**
|
|
167
|
+
* 4: Audio routed to external speaker. (macOS only)
|
|
168
|
+
*/
|
|
169
|
+
RouteLoudspeaker = 4,
|
|
170
|
+
/**
|
|
171
|
+
* 5: Audio routed to Bluetooth device using HFP protocol.
|
|
172
|
+
*/
|
|
173
|
+
RouteBluetoothDeviceHfp = 5,
|
|
174
|
+
/**
|
|
175
|
+
* 6: Audio routed to USB peripheral device. (macOS only)
|
|
176
|
+
*/
|
|
177
|
+
RouteUsb = 6,
|
|
178
|
+
/**
|
|
179
|
+
* 7: Audio routed to HDMI peripheral device. (macOS only)
|
|
180
|
+
*/
|
|
181
|
+
RouteHdmi = 7,
|
|
182
|
+
/**
|
|
183
|
+
* 8: Audio routed to DisplayPort peripheral device. (macOS only)
|
|
184
|
+
*/
|
|
185
|
+
RouteDisplayport = 8,
|
|
186
|
+
/**
|
|
187
|
+
* 9: Audio routed to Apple AirPlay. (macOS only)
|
|
188
|
+
*/
|
|
189
|
+
RouteAirplay = 9,
|
|
190
|
+
/**
|
|
191
|
+
* 10: Audio routed to Bluetooth device using A2DP protocol.
|
|
192
|
+
*/
|
|
193
|
+
RouteBluetoothDeviceA2dp = 10
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* @ignore
|
|
197
|
+
*/
|
|
198
|
+
export declare enum BytesPerSample {
|
|
199
|
+
/**
|
|
200
|
+
* @ignore
|
|
201
|
+
*/
|
|
202
|
+
TwoBytesPerSample = 2
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* @ignore
|
|
206
|
+
*/
|
|
207
|
+
export declare class AudioParameters {
|
|
208
|
+
/**
|
|
209
|
+
* @ignore
|
|
210
|
+
*/
|
|
211
|
+
sample_rate?: number;
|
|
212
|
+
/**
|
|
213
|
+
* @ignore
|
|
214
|
+
*/
|
|
215
|
+
channels?: number;
|
|
216
|
+
/**
|
|
217
|
+
* @ignore
|
|
218
|
+
*/
|
|
219
|
+
frames_per_buffer?: number;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Usage mode of audio data.
|
|
223
|
+
*/
|
|
224
|
+
export declare enum RawAudioFrameOpModeType {
|
|
225
|
+
/**
|
|
226
|
+
* 0: (Default) Read-only mode. You only retrieve the raw data returned by the SDK without making any modifications. For example, if you collect data via the SDK and perform your own CDN streaming, you can use this mode.
|
|
227
|
+
*/
|
|
228
|
+
RawAudioFrameOpModeReadOnly = 0,
|
|
229
|
+
/**
|
|
230
|
+
* 2: Read-write mode. You modify the raw audio returned by the SDK and send it back to the SDK for encoding and transmission. For example, if you have your own audio effects module and want to pre-process the data (e.g., voice changing), you can use this mode.
|
|
231
|
+
*/
|
|
232
|
+
RawAudioFrameOpModeReadWrite = 2
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Media source types.
|
|
236
|
+
*/
|
|
237
|
+
export declare enum MediaSourceType {
|
|
238
|
+
/**
|
|
239
|
+
* 0: Audio playback device.
|
|
240
|
+
*/
|
|
241
|
+
AudioPlayoutSource = 0,
|
|
242
|
+
/**
|
|
243
|
+
* 1: Audio recording device.
|
|
244
|
+
*/
|
|
245
|
+
AudioRecordingSource = 1,
|
|
246
|
+
/**
|
|
247
|
+
* 2: Primary camera.
|
|
248
|
+
*/
|
|
249
|
+
PrimaryCameraSource = 2,
|
|
250
|
+
/**
|
|
251
|
+
* 3: Secondary camera.
|
|
252
|
+
*/
|
|
253
|
+
SecondaryCameraSource = 3,
|
|
254
|
+
/**
|
|
255
|
+
* @ignore
|
|
256
|
+
*/
|
|
257
|
+
PrimaryScreenSource = 4,
|
|
258
|
+
/**
|
|
259
|
+
* @ignore
|
|
260
|
+
*/
|
|
261
|
+
SecondaryScreenSource = 5,
|
|
262
|
+
/**
|
|
263
|
+
* 6: Custom video source.
|
|
264
|
+
*/
|
|
265
|
+
CustomVideoSource = 6,
|
|
266
|
+
/**
|
|
267
|
+
* @ignore
|
|
268
|
+
*/
|
|
269
|
+
MediaPlayerSource = 7,
|
|
270
|
+
/**
|
|
271
|
+
* @ignore
|
|
272
|
+
*/
|
|
273
|
+
RtcImagePngSource = 8,
|
|
274
|
+
/**
|
|
275
|
+
* @ignore
|
|
276
|
+
*/
|
|
277
|
+
RtcImageJpegSource = 9,
|
|
278
|
+
/**
|
|
279
|
+
* @ignore
|
|
280
|
+
*/
|
|
281
|
+
RtcImageGifSource = 10,
|
|
282
|
+
/**
|
|
283
|
+
* @ignore
|
|
284
|
+
*/
|
|
285
|
+
RemoteVideoSource = 11,
|
|
286
|
+
/**
|
|
287
|
+
* @ignore
|
|
288
|
+
*/
|
|
289
|
+
TranscodedVideoSource = 12,
|
|
290
|
+
/**
|
|
291
|
+
* 13: Video source processed by speech-driven plugin.
|
|
292
|
+
*/
|
|
293
|
+
SpeechDrivenVideoSource = 13,
|
|
294
|
+
/**
|
|
295
|
+
* 100: Unknown media source.
|
|
296
|
+
*/
|
|
297
|
+
UnknownMediaSource = 100
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* @ignore
|
|
301
|
+
*/
|
|
302
|
+
export declare class PacketOptions {
|
|
303
|
+
/**
|
|
304
|
+
* @ignore
|
|
305
|
+
*/
|
|
306
|
+
timestamp?: number;
|
|
307
|
+
/**
|
|
308
|
+
* @ignore
|
|
309
|
+
*/
|
|
310
|
+
audioLevelIndication?: number;
|
|
311
|
+
}
|
|
312
|
+
/**
|
|
313
|
+
* @ignore
|
|
314
|
+
*/
|
|
315
|
+
export declare class AudioEncodedFrameInfo {
|
|
316
|
+
/**
|
|
317
|
+
* @ignore
|
|
318
|
+
*/
|
|
319
|
+
sendTs?: number;
|
|
320
|
+
/**
|
|
321
|
+
* @ignore
|
|
322
|
+
*/
|
|
323
|
+
codec?: number;
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* Information of external PCM format audio frame.
|
|
327
|
+
*/
|
|
328
|
+
export declare class AudioPcmFrame {
|
|
329
|
+
/**
|
|
330
|
+
* Timestamp of the audio frame (ms).
|
|
331
|
+
*/
|
|
332
|
+
capture_timestamp?: number;
|
|
333
|
+
/**
|
|
334
|
+
* Number of samples per channel.
|
|
335
|
+
*/
|
|
336
|
+
samples_per_channel_?: number;
|
|
337
|
+
/**
|
|
338
|
+
* Audio sampling rate (Hz).
|
|
339
|
+
*/
|
|
340
|
+
sample_rate_hz_?: number;
|
|
341
|
+
/**
|
|
342
|
+
* Number of audio channels.
|
|
343
|
+
*/
|
|
344
|
+
num_channels_?: number;
|
|
345
|
+
/**
|
|
346
|
+
* @ignore
|
|
347
|
+
*/
|
|
348
|
+
audio_track_number_?: number;
|
|
349
|
+
/**
|
|
350
|
+
* Number of bytes per audio sample.
|
|
351
|
+
*/
|
|
352
|
+
bytes_per_sample?: BytesPerSample;
|
|
353
|
+
/**
|
|
354
|
+
* Audio frame data.
|
|
355
|
+
*/
|
|
356
|
+
data_?: number[];
|
|
357
|
+
/**
|
|
358
|
+
* @ignore
|
|
359
|
+
*/
|
|
360
|
+
is_stereo_?: boolean;
|
|
361
|
+
}
|
|
362
|
+
/**
|
|
363
|
+
* Channel mode.
|
|
364
|
+
*/
|
|
365
|
+
export declare enum AudioDualMonoMode {
|
|
366
|
+
/**
|
|
367
|
+
* 0: Original mode.
|
|
368
|
+
*/
|
|
369
|
+
AudioDualMonoStereo = 0,
|
|
370
|
+
/**
|
|
371
|
+
* 1: Left channel mode. Replaces the right channel audio with the left channel audio, so users only hear the left channel.
|
|
372
|
+
*/
|
|
373
|
+
AudioDualMonoL = 1,
|
|
374
|
+
/**
|
|
375
|
+
* 2: Right channel mode. Replaces the left channel audio with the right channel audio, so users only hear the right channel.
|
|
376
|
+
*/
|
|
377
|
+
AudioDualMonoR = 2,
|
|
378
|
+
/**
|
|
379
|
+
* 3: Mixed mode. Combines left and right channel audio so users hear both channels simultaneously.
|
|
380
|
+
*/
|
|
381
|
+
AudioDualMonoMix = 3
|
|
382
|
+
}
|
|
383
|
+
/**
|
|
384
|
+
* Video pixel format.
|
|
385
|
+
*/
|
|
386
|
+
export declare enum VideoPixelFormat {
|
|
387
|
+
/**
|
|
388
|
+
* 0: Original video pixel format.
|
|
389
|
+
*/
|
|
390
|
+
VideoPixelDefault = 0,
|
|
391
|
+
/**
|
|
392
|
+
* 1: I420 format.
|
|
393
|
+
*/
|
|
394
|
+
VideoPixelI420 = 1,
|
|
395
|
+
/**
|
|
396
|
+
* @ignore
|
|
397
|
+
*/
|
|
398
|
+
VideoPixelBgra = 2,
|
|
399
|
+
/**
|
|
400
|
+
* @ignore
|
|
401
|
+
*/
|
|
402
|
+
VideoPixelNv21 = 3,
|
|
403
|
+
/**
|
|
404
|
+
* 4: RGBA format.
|
|
405
|
+
*/
|
|
406
|
+
VideoPixelRgba = 4,
|
|
407
|
+
/**
|
|
408
|
+
* @ignore
|
|
409
|
+
*/
|
|
410
|
+
VideoPixelNv12 = 8,
|
|
411
|
+
/**
|
|
412
|
+
* @ignore
|
|
413
|
+
*/
|
|
414
|
+
VideoTexture2d = 10,
|
|
415
|
+
/**
|
|
416
|
+
* @ignore
|
|
417
|
+
*/
|
|
418
|
+
VideoTextureOes = 11,
|
|
419
|
+
/**
|
|
420
|
+
* @ignore
|
|
421
|
+
*/
|
|
422
|
+
VideoCvpixelNv12 = 12,
|
|
423
|
+
/**
|
|
424
|
+
* @ignore
|
|
425
|
+
*/
|
|
426
|
+
VideoCvpixelI420 = 13,
|
|
427
|
+
/**
|
|
428
|
+
* @ignore
|
|
429
|
+
*/
|
|
430
|
+
VideoCvpixelBgra = 14,
|
|
431
|
+
/**
|
|
432
|
+
* @ignore
|
|
433
|
+
*/
|
|
434
|
+
VideoCvpixelP010 = 15,
|
|
435
|
+
/**
|
|
436
|
+
* 16: I422 format.
|
|
437
|
+
*/
|
|
438
|
+
VideoPixelI422 = 16,
|
|
439
|
+
/**
|
|
440
|
+
* @ignore
|
|
441
|
+
*/
|
|
442
|
+
VideoTextureId3d11texture2d = 17,
|
|
443
|
+
/**
|
|
444
|
+
* @ignore
|
|
445
|
+
*/
|
|
446
|
+
VideoPixelI010 = 18
|
|
447
|
+
}
|
|
448
|
+
/**
|
|
449
|
+
* Video display mode.
|
|
450
|
+
*/
|
|
451
|
+
export declare enum RenderModeType {
|
|
452
|
+
/**
|
|
453
|
+
* 1: The video is scaled proportionally. Priority is given to filling the view. Excess video beyond the view due to size mismatch is cropped.
|
|
454
|
+
*/
|
|
455
|
+
RenderModeHidden = 1,
|
|
456
|
+
/**
|
|
457
|
+
* 2: The video is scaled proportionally. Priority is given to displaying the entire video content. Black bars are added to fill the view if the video size does not match the view size.
|
|
458
|
+
*/
|
|
459
|
+
RenderModeFit = 2,
|
|
460
|
+
/**
|
|
461
|
+
* @ignore
|
|
462
|
+
*/
|
|
463
|
+
RenderModeAdaptive = 3
|
|
464
|
+
}
|
|
465
|
+
/**
|
|
466
|
+
* @ignore
|
|
467
|
+
*/
|
|
468
|
+
export declare enum CameraVideoSourceType {
|
|
469
|
+
/**
|
|
470
|
+
* @ignore
|
|
471
|
+
*/
|
|
472
|
+
CameraSourceFront = 0,
|
|
473
|
+
/**
|
|
474
|
+
* @ignore
|
|
475
|
+
*/
|
|
476
|
+
CameraSourceBack = 1,
|
|
477
|
+
/**
|
|
478
|
+
* @ignore
|
|
479
|
+
*/
|
|
480
|
+
VideoSourceUnspecified = 2
|
|
481
|
+
}
|
|
482
|
+
/**
|
|
483
|
+
* @ignore
|
|
484
|
+
*/
|
|
485
|
+
export declare enum MetaInfoKey {
|
|
486
|
+
/**
|
|
487
|
+
* @ignore
|
|
488
|
+
*/
|
|
489
|
+
KeyFaceCapture = 0
|
|
490
|
+
}
|
|
491
|
+
/**
|
|
492
|
+
* @ignore
|
|
493
|
+
*/
|
|
494
|
+
export declare abstract class IVideoFrameMetaInfo {
|
|
495
|
+
/**
|
|
496
|
+
* @ignore
|
|
497
|
+
*/
|
|
498
|
+
abstract getMetaInfoStr(key: MetaInfoKey): string;
|
|
499
|
+
}
|
|
500
|
+
/**
|
|
501
|
+
* @ignore
|
|
502
|
+
*/
|
|
503
|
+
export declare enum PrimaryID {
|
|
504
|
+
/**
|
|
505
|
+
* @ignore
|
|
506
|
+
*/
|
|
507
|
+
PrimaryidBt709 = 1,
|
|
508
|
+
/**
|
|
509
|
+
* @ignore
|
|
510
|
+
*/
|
|
511
|
+
PrimaryidUnspecified = 2,
|
|
512
|
+
/**
|
|
513
|
+
* @ignore
|
|
514
|
+
*/
|
|
515
|
+
PrimaryidBt470m = 4,
|
|
516
|
+
/**
|
|
517
|
+
* @ignore
|
|
518
|
+
*/
|
|
519
|
+
PrimaryidBt470bg = 5,
|
|
520
|
+
/**
|
|
521
|
+
* @ignore
|
|
522
|
+
*/
|
|
523
|
+
PrimaryidSmpte170m = 6,
|
|
524
|
+
/**
|
|
525
|
+
* @ignore
|
|
526
|
+
*/
|
|
527
|
+
PrimaryidSmpte240m = 7,
|
|
528
|
+
/**
|
|
529
|
+
* @ignore
|
|
530
|
+
*/
|
|
531
|
+
PrimaryidFilm = 8,
|
|
532
|
+
/**
|
|
533
|
+
* @ignore
|
|
534
|
+
*/
|
|
535
|
+
PrimaryidBt2020 = 9,
|
|
536
|
+
/**
|
|
537
|
+
* @ignore
|
|
538
|
+
*/
|
|
539
|
+
PrimaryidSmptest428 = 10,
|
|
540
|
+
/**
|
|
541
|
+
* @ignore
|
|
542
|
+
*/
|
|
543
|
+
PrimaryidSmptest431 = 11,
|
|
544
|
+
/**
|
|
545
|
+
* @ignore
|
|
546
|
+
*/
|
|
547
|
+
PrimaryidSmptest432 = 12,
|
|
548
|
+
/**
|
|
549
|
+
* @ignore
|
|
550
|
+
*/
|
|
551
|
+
PrimaryidJedecp22 = 22
|
|
552
|
+
}
|
|
553
|
+
/**
|
|
554
|
+
* @ignore
|
|
555
|
+
*/
|
|
556
|
+
export declare enum RangeID {
|
|
557
|
+
/**
|
|
558
|
+
* @ignore
|
|
559
|
+
*/
|
|
560
|
+
RangeidInvalid = 0,
|
|
561
|
+
/**
|
|
562
|
+
* @ignore
|
|
563
|
+
*/
|
|
564
|
+
RangeidLimited = 1,
|
|
565
|
+
/**
|
|
566
|
+
* @ignore
|
|
567
|
+
*/
|
|
568
|
+
RangeidFull = 2,
|
|
569
|
+
/**
|
|
570
|
+
* @ignore
|
|
571
|
+
*/
|
|
572
|
+
RangeidDerived = 3
|
|
573
|
+
}
|
|
574
|
+
/**
|
|
575
|
+
* @ignore
|
|
576
|
+
*/
|
|
577
|
+
export declare enum MatrixID {
|
|
578
|
+
/**
|
|
579
|
+
* @ignore
|
|
580
|
+
*/
|
|
581
|
+
MatrixidRgb = 0,
|
|
582
|
+
/**
|
|
583
|
+
* @ignore
|
|
584
|
+
*/
|
|
585
|
+
MatrixidBt709 = 1,
|
|
586
|
+
/**
|
|
587
|
+
* @ignore
|
|
588
|
+
*/
|
|
589
|
+
MatrixidUnspecified = 2,
|
|
590
|
+
/**
|
|
591
|
+
* @ignore
|
|
592
|
+
*/
|
|
593
|
+
MatrixidFcc = 4,
|
|
594
|
+
/**
|
|
595
|
+
* @ignore
|
|
596
|
+
*/
|
|
597
|
+
MatrixidBt470bg = 5,
|
|
598
|
+
/**
|
|
599
|
+
* @ignore
|
|
600
|
+
*/
|
|
601
|
+
MatrixidSmpte170m = 6,
|
|
602
|
+
/**
|
|
603
|
+
* @ignore
|
|
604
|
+
*/
|
|
605
|
+
MatrixidSmpte240m = 7,
|
|
606
|
+
/**
|
|
607
|
+
* @ignore
|
|
608
|
+
*/
|
|
609
|
+
MatrixidYcocg = 8,
|
|
610
|
+
/**
|
|
611
|
+
* @ignore
|
|
612
|
+
*/
|
|
613
|
+
MatrixidBt2020Ncl = 9,
|
|
614
|
+
/**
|
|
615
|
+
* @ignore
|
|
616
|
+
*/
|
|
617
|
+
MatrixidBt2020Cl = 10,
|
|
618
|
+
/**
|
|
619
|
+
* @ignore
|
|
620
|
+
*/
|
|
621
|
+
MatrixidSmpte2085 = 11,
|
|
622
|
+
/**
|
|
623
|
+
* @ignore
|
|
624
|
+
*/
|
|
625
|
+
MatrixidCdncls = 12,
|
|
626
|
+
/**
|
|
627
|
+
* @ignore
|
|
628
|
+
*/
|
|
629
|
+
MatrixidCdcls = 13,
|
|
630
|
+
/**
|
|
631
|
+
* @ignore
|
|
632
|
+
*/
|
|
633
|
+
MatrixidBt2100Ictcp = 14
|
|
634
|
+
}
|
|
635
|
+
/**
|
|
636
|
+
* @ignore
|
|
637
|
+
*/
|
|
638
|
+
export declare enum TransferID {
|
|
639
|
+
/**
|
|
640
|
+
* @ignore
|
|
641
|
+
*/
|
|
642
|
+
TransferidBt709 = 1,
|
|
643
|
+
/**
|
|
644
|
+
* @ignore
|
|
645
|
+
*/
|
|
646
|
+
TransferidUnspecified = 2,
|
|
647
|
+
/**
|
|
648
|
+
* @ignore
|
|
649
|
+
*/
|
|
650
|
+
TransferidGamma22 = 4,
|
|
651
|
+
/**
|
|
652
|
+
* @ignore
|
|
653
|
+
*/
|
|
654
|
+
TransferidGamma28 = 5,
|
|
655
|
+
/**
|
|
656
|
+
* @ignore
|
|
657
|
+
*/
|
|
658
|
+
TransferidSmpte170m = 6,
|
|
659
|
+
/**
|
|
660
|
+
* @ignore
|
|
661
|
+
*/
|
|
662
|
+
TransferidSmpte240m = 7,
|
|
663
|
+
/**
|
|
664
|
+
* @ignore
|
|
665
|
+
*/
|
|
666
|
+
TransferidLinear = 8,
|
|
667
|
+
/**
|
|
668
|
+
* @ignore
|
|
669
|
+
*/
|
|
670
|
+
TransferidLog = 9,
|
|
671
|
+
/**
|
|
672
|
+
* @ignore
|
|
673
|
+
*/
|
|
674
|
+
TransferidLogSqrt = 10,
|
|
675
|
+
/**
|
|
676
|
+
* @ignore
|
|
677
|
+
*/
|
|
678
|
+
TransferidIec6196624 = 11,
|
|
679
|
+
/**
|
|
680
|
+
* @ignore
|
|
681
|
+
*/
|
|
682
|
+
TransferidBt1361Ecg = 12,
|
|
683
|
+
/**
|
|
684
|
+
* @ignore
|
|
685
|
+
*/
|
|
686
|
+
TransferidIec6196621 = 13,
|
|
687
|
+
/**
|
|
688
|
+
* @ignore
|
|
689
|
+
*/
|
|
690
|
+
TransferidBt202010 = 14,
|
|
691
|
+
/**
|
|
692
|
+
* @ignore
|
|
693
|
+
*/
|
|
694
|
+
TransferidBt202012 = 15,
|
|
695
|
+
/**
|
|
696
|
+
* @ignore
|
|
697
|
+
*/
|
|
698
|
+
TransferidSmptest2084 = 16,
|
|
699
|
+
/**
|
|
700
|
+
* @ignore
|
|
701
|
+
*/
|
|
702
|
+
TransferidSmptest428 = 17,
|
|
703
|
+
/**
|
|
704
|
+
* @ignore
|
|
705
|
+
*/
|
|
706
|
+
TransferidAribStdB67 = 18
|
|
707
|
+
}
|
|
708
|
+
/**
|
|
709
|
+
* @ignore
|
|
710
|
+
*/
|
|
711
|
+
export declare class ColorSpace {
|
|
712
|
+
/**
|
|
713
|
+
* @ignore
|
|
714
|
+
*/
|
|
715
|
+
primaries?: PrimaryID;
|
|
716
|
+
/**
|
|
717
|
+
* @ignore
|
|
718
|
+
*/
|
|
719
|
+
transfer?: TransferID;
|
|
720
|
+
/**
|
|
721
|
+
* @ignore
|
|
722
|
+
*/
|
|
723
|
+
matrix?: MatrixID;
|
|
724
|
+
/**
|
|
725
|
+
* @ignore
|
|
726
|
+
*/
|
|
727
|
+
range?: RangeID;
|
|
728
|
+
}
|
|
729
|
+
/**
|
|
730
|
+
* @ignore
|
|
731
|
+
*/
|
|
732
|
+
export declare class Hdr10MetadataInfo {
|
|
733
|
+
/**
|
|
734
|
+
* @ignore
|
|
735
|
+
*/
|
|
736
|
+
redPrimaryX?: number;
|
|
737
|
+
/**
|
|
738
|
+
* @ignore
|
|
739
|
+
*/
|
|
740
|
+
redPrimaryY?: number;
|
|
741
|
+
/**
|
|
742
|
+
* @ignore
|
|
743
|
+
*/
|
|
744
|
+
greenPrimaryX?: number;
|
|
745
|
+
/**
|
|
746
|
+
* @ignore
|
|
747
|
+
*/
|
|
748
|
+
greenPrimaryY?: number;
|
|
749
|
+
/**
|
|
750
|
+
* @ignore
|
|
751
|
+
*/
|
|
752
|
+
bluePrimaryX?: number;
|
|
753
|
+
/**
|
|
754
|
+
* @ignore
|
|
755
|
+
*/
|
|
756
|
+
bluePrimaryY?: number;
|
|
757
|
+
/**
|
|
758
|
+
* @ignore
|
|
759
|
+
*/
|
|
760
|
+
whitePointX?: number;
|
|
761
|
+
/**
|
|
762
|
+
* @ignore
|
|
763
|
+
*/
|
|
764
|
+
whitePointY?: number;
|
|
765
|
+
/**
|
|
766
|
+
* @ignore
|
|
767
|
+
*/
|
|
768
|
+
maxMasteringLuminance?: number;
|
|
769
|
+
/**
|
|
770
|
+
* @ignore
|
|
771
|
+
*/
|
|
772
|
+
minMasteringLuminance?: number;
|
|
773
|
+
/**
|
|
774
|
+
* @ignore
|
|
775
|
+
*/
|
|
776
|
+
maxContentLightLevel?: number;
|
|
777
|
+
/**
|
|
778
|
+
* @ignore
|
|
779
|
+
*/
|
|
780
|
+
maxFrameAverageLightLevel?: number;
|
|
781
|
+
}
|
|
782
|
+
/**
|
|
783
|
+
* The relative position of alphaBuffer and the video frame.
|
|
784
|
+
*/
|
|
785
|
+
export declare enum AlphaStitchMode {
|
|
786
|
+
/**
|
|
787
|
+
* 0: (Default) Only the video frame is used, i.e., alphaBuffer is not stitched with the video frame.
|
|
788
|
+
*/
|
|
789
|
+
NoAlphaStitch = 0,
|
|
790
|
+
/**
|
|
791
|
+
* 1: alphaBuffer is above the video frame.
|
|
792
|
+
*/
|
|
793
|
+
AlphaStitchUp = 1,
|
|
794
|
+
/**
|
|
795
|
+
* 2: alphaBuffer is below the video frame.
|
|
796
|
+
*/
|
|
797
|
+
AlphaStitchBelow = 2,
|
|
798
|
+
/**
|
|
799
|
+
* 3: alphaBuffer is to the left of the video frame.
|
|
800
|
+
*/
|
|
801
|
+
AlphaStitchLeft = 3,
|
|
802
|
+
/**
|
|
803
|
+
* 4: alphaBuffer is to the right of the video frame.
|
|
804
|
+
*/
|
|
805
|
+
AlphaStitchRight = 4
|
|
806
|
+
}
|
|
807
|
+
/**
|
|
808
|
+
* @ignore
|
|
809
|
+
*/
|
|
810
|
+
export declare enum EglContextType {
|
|
811
|
+
/**
|
|
812
|
+
* @ignore
|
|
813
|
+
*/
|
|
814
|
+
EglContext10 = 0,
|
|
815
|
+
/**
|
|
816
|
+
* @ignore
|
|
817
|
+
*/
|
|
818
|
+
EglContext14 = 1
|
|
819
|
+
}
|
|
820
|
+
/**
|
|
821
|
+
* Video buffer type.
|
|
822
|
+
*/
|
|
823
|
+
export declare enum VideoBufferType {
|
|
824
|
+
/**
|
|
825
|
+
* 1: Type is raw data.
|
|
826
|
+
*/
|
|
827
|
+
VideoBufferRawData = 1,
|
|
828
|
+
/**
|
|
829
|
+
* 2: Type is raw data.
|
|
830
|
+
*/
|
|
831
|
+
VideoBufferArray = 2,
|
|
832
|
+
/**
|
|
833
|
+
* 3: Type is Texture.
|
|
834
|
+
*/
|
|
835
|
+
VideoBufferTexture = 3
|
|
836
|
+
}
|
|
837
|
+
/**
|
|
838
|
+
* External video frame.
|
|
839
|
+
*/
|
|
840
|
+
export declare class ExternalVideoFrame {
|
|
841
|
+
/**
|
|
842
|
+
* Video type. See VideoBufferType.
|
|
843
|
+
*/
|
|
844
|
+
type?: VideoBufferType;
|
|
845
|
+
/**
|
|
846
|
+
* Pixel format. See VideoPixelFormat.
|
|
847
|
+
*/
|
|
848
|
+
format?: VideoPixelFormat;
|
|
849
|
+
/**
|
|
850
|
+
* Video buffer.
|
|
851
|
+
*/
|
|
852
|
+
buffer?: Uint8Array;
|
|
853
|
+
/**
|
|
854
|
+
* Stride of the input video frame in pixels (not bytes). For Texture, this value refers to the width of the Texture.
|
|
855
|
+
*/
|
|
856
|
+
stride?: number;
|
|
857
|
+
/**
|
|
858
|
+
* Height of the input video frame.
|
|
859
|
+
*/
|
|
860
|
+
height?: number;
|
|
861
|
+
/**
|
|
862
|
+
* This parameter applies only to raw video data.
|
|
863
|
+
*/
|
|
864
|
+
cropLeft?: number;
|
|
865
|
+
/**
|
|
866
|
+
* This parameter applies only to raw video data.
|
|
867
|
+
*/
|
|
868
|
+
cropTop?: number;
|
|
869
|
+
/**
|
|
870
|
+
* This parameter applies only to raw video data.
|
|
871
|
+
*/
|
|
872
|
+
cropRight?: number;
|
|
873
|
+
/**
|
|
874
|
+
* This parameter applies only to raw video data.
|
|
875
|
+
*/
|
|
876
|
+
cropBottom?: number;
|
|
877
|
+
/**
|
|
878
|
+
* Field related to raw data. Specifies whether to rotate the input video group clockwise. Available values: 0, 90, 180, 270. Default is 0.
|
|
879
|
+
*/
|
|
880
|
+
rotation?: number;
|
|
881
|
+
/**
|
|
882
|
+
* Timestamp of the input video frame in milliseconds. Incorrect timestamps may cause frame drops or audio-video desynchronization.
|
|
883
|
+
*/
|
|
884
|
+
timestamp?: number;
|
|
885
|
+
/**
|
|
886
|
+
* This parameter applies only to video data in Texture format. Refers to the Texture ID of the video frame.
|
|
887
|
+
*/
|
|
888
|
+
eglType?: EglContextType;
|
|
889
|
+
/**
|
|
890
|
+
* This parameter applies only to video data in Texture format. Refers to an input 4x4 transformation matrix, typically an identity matrix.
|
|
891
|
+
*/
|
|
892
|
+
textureId?: number;
|
|
893
|
+
/**
|
|
894
|
+
* @ignore
|
|
895
|
+
*/
|
|
896
|
+
fenceObject?: number;
|
|
897
|
+
/**
|
|
898
|
+
* This parameter applies only to video data in Texture format. Refers to an input 4x4 transformation matrix, typically an identity matrix.
|
|
899
|
+
*/
|
|
900
|
+
matrix?: number[];
|
|
901
|
+
/**
|
|
902
|
+
* This parameter applies only to video data in Texture format. Refers to the metadata buffer. Default value is NULL.
|
|
903
|
+
*/
|
|
904
|
+
metadataBuffer?: Uint8Array;
|
|
905
|
+
/**
|
|
906
|
+
* This parameter applies only to video data in Texture format. Refers to the size of the metadata. Default value is 0.
|
|
907
|
+
*/
|
|
908
|
+
metadataSize?: number;
|
|
909
|
+
/**
|
|
910
|
+
* Alpha channel data output by portrait segmentation algorithm. This data matches the size of the video frame, with pixel values ranging from [0,255], where 0 indicates background and 255 indicates foreground (portrait).
|
|
911
|
+
* You can use this parameter to render the video background into various effects such as transparent, solid color, image, video, etc. In custom video rendering scenarios, ensure that both the input video frame and alphaBuffer are of Full Range type; other types may cause incorrect rendering of alpha data.
|
|
912
|
+
*/
|
|
913
|
+
alphaBuffer?: Uint8Array;
|
|
914
|
+
/**
|
|
915
|
+
* For video data in BGRA or RGBA format, you can set the alpha channel data in either of the following ways:
|
|
916
|
+
* Automatically fill by setting this parameter to true.
|
|
917
|
+
* Set via the alphaBuffer parameter. This parameter applies only to video data in BGRA or RGBA format. Specifies whether to extract the alpha channel data from the video frame and automatically fill it into alphaBuffer : true : Extract and fill alpha channel data. false : (Default) Do not extract and fill alpha channel data.
|
|
918
|
+
*/
|
|
919
|
+
fillAlphaBuffer?: boolean;
|
|
920
|
+
/**
|
|
921
|
+
* When the video frame contains alpha channel data, sets the relative position of alphaBuffer and the video frame. See AlphaStitchMode.
|
|
922
|
+
*/
|
|
923
|
+
alphaStitchMode?: AlphaStitchMode;
|
|
924
|
+
/**
|
|
925
|
+
* This parameter applies only to video data in Windows Texture format. Refers to a pointer to an object of type ID3D11Texture2D used by the video frame.
|
|
926
|
+
*/
|
|
927
|
+
d3d11Texture2d?: any;
|
|
928
|
+
/**
|
|
929
|
+
* This parameter applies only to video data in Windows Texture format. Refers to the index of the ID3D11Texture2D texture object used by the video frame in the ID3D11Texture2D array.
|
|
930
|
+
*/
|
|
931
|
+
textureSliceIndex?: number;
|
|
932
|
+
/**
|
|
933
|
+
* @ignore
|
|
934
|
+
*/
|
|
935
|
+
hdr10MetadataInfo?: Hdr10MetadataInfo;
|
|
936
|
+
/**
|
|
937
|
+
* Color space properties of the video frame. By default, Full Range and BT.709 standard configurations are applied. You can customize the settings based on your requirements for custom capture and rendering. See [VideoColorSpace](https://developer.mozilla.org/en-US/docs/Web/API/VideoColorSpace).
|
|
938
|
+
*/
|
|
939
|
+
colorSpace?: ColorSpace;
|
|
940
|
+
}
|
|
941
|
+
/**
|
|
942
|
+
* Video frame property settings.
|
|
943
|
+
*
|
|
944
|
+
* The buffer is provided as a pointer to a pointer. This interface cannot modify the buffer pointer, only the buffer content.
|
|
945
|
+
*/
|
|
946
|
+
export declare class VideoFrame {
|
|
947
|
+
/**
|
|
948
|
+
* Pixel format. See VideoPixelFormat.
|
|
949
|
+
*/
|
|
950
|
+
type?: VideoPixelFormat;
|
|
951
|
+
/**
|
|
952
|
+
* Video pixel width.
|
|
953
|
+
*/
|
|
954
|
+
width?: number;
|
|
955
|
+
/**
|
|
956
|
+
* Video pixel height.
|
|
957
|
+
*/
|
|
958
|
+
height?: number;
|
|
959
|
+
/**
|
|
960
|
+
* For YUV data, indicates the row stride of the Y buffer; for RGBA data, indicates the total data length. When processing video data, you need to handle the offset between rows of pixel data according to this parameter, otherwise image distortion may occur.
|
|
961
|
+
*/
|
|
962
|
+
yStride?: number;
|
|
963
|
+
/**
|
|
964
|
+
* For YUV data, indicates the row stride of the U buffer; for RGBA data, the value is 0. When processing video data, you need to handle the offset between rows of pixel data according to this parameter, otherwise image distortion may occur.
|
|
965
|
+
*/
|
|
966
|
+
uStride?: number;
|
|
967
|
+
/**
|
|
968
|
+
* For YUV data, indicates the row stride of the V buffer; for RGBA data, the value is 0. When processing video data, you need to handle the offset between rows of pixel data according to this parameter, otherwise image distortion may occur.
|
|
969
|
+
*/
|
|
970
|
+
vStride?: number;
|
|
971
|
+
/**
|
|
972
|
+
* For YUV data, indicates the pointer to the Y buffer; for RGBA data, indicates the data buffer.
|
|
973
|
+
*/
|
|
974
|
+
yBuffer?: Uint8Array;
|
|
975
|
+
/**
|
|
976
|
+
* For YUV data, indicates the pointer to the U buffer; for RGBA data, the value is empty.
|
|
977
|
+
*/
|
|
978
|
+
uBuffer?: Uint8Array;
|
|
979
|
+
/**
|
|
980
|
+
* For YUV data, indicates the pointer to the V buffer; for RGBA data, the value is empty.
|
|
981
|
+
*/
|
|
982
|
+
vBuffer?: Uint8Array;
|
|
983
|
+
/**
|
|
984
|
+
* Sets the clockwise rotation angle of the frame before rendering the video. Currently supports 0, 90, 180, and 270 degrees.
|
|
985
|
+
*/
|
|
986
|
+
rotation?: number;
|
|
987
|
+
/**
|
|
988
|
+
* The Unix timestamp (in milliseconds) when the video frame is rendered. This timestamp can be used to guide video frame rendering. This parameter is required.
|
|
989
|
+
*/
|
|
990
|
+
renderTimeMs?: number;
|
|
991
|
+
/**
|
|
992
|
+
* Reserved parameter.
|
|
993
|
+
*/
|
|
994
|
+
avsync_type?: number;
|
|
995
|
+
/**
|
|
996
|
+
* This parameter applies only to video data in Texture format. Indicates the data buffer of MetaData. Default is NULL.
|
|
997
|
+
*/
|
|
998
|
+
metadata_buffer?: Uint8Array;
|
|
999
|
+
/**
|
|
1000
|
+
* This parameter applies only to video data in Texture format. Indicates the size of MetaData. Default is 0.
|
|
1001
|
+
*/
|
|
1002
|
+
metadata_size?: number;
|
|
1003
|
+
/**
|
|
1004
|
+
* This parameter applies only to video data in Texture format. Texture ID.
|
|
1005
|
+
*/
|
|
1006
|
+
textureId?: number;
|
|
1007
|
+
/**
|
|
1008
|
+
* This parameter applies only to video data in Texture format. A 4x4 transformation matrix input, typically an identity matrix.
|
|
1009
|
+
*/
|
|
1010
|
+
matrix?: number[];
|
|
1011
|
+
/**
|
|
1012
|
+
* Alpha channel data output by the portrait segmentation algorithm. This data matches the size of the video frame. Each pixel value ranges from [0, 255], where 0 represents the background and 255 represents the foreground (portrait).
|
|
1013
|
+
* You can use this parameter to render the video background with various effects, such as transparency, solid color, image, video, etc.
|
|
1014
|
+
* In custom video rendering scenarios, ensure that both the video frame and alphaBuffer are of Full Range type; other types may cause abnormal Alpha data rendering.
|
|
1015
|
+
* Make sure that alphaBuffer matches the video frame size (width × height) exactly, otherwise the app may crash.
|
|
1016
|
+
*/
|
|
1017
|
+
alphaBuffer?: Uint8Array;
|
|
1018
|
+
/**
|
|
1019
|
+
* When the video frame contains Alpha channel data, sets the relative position between alphaBuffer and the video frame. See AlphaStitchMode.
|
|
1020
|
+
*/
|
|
1021
|
+
alphaStitchMode?: AlphaStitchMode;
|
|
1022
|
+
/**
|
|
1023
|
+
* @ignore
|
|
1024
|
+
*/
|
|
1025
|
+
pixelBuffer?: Uint8Array;
|
|
1026
|
+
/**
|
|
1027
|
+
* Metadata in the video frame. This parameter requires [contacting technical support](https://www.agora.io/cn/contact/) to use.
|
|
1028
|
+
*/
|
|
1029
|
+
metaInfo?: IVideoFrameMetaInfo;
|
|
1030
|
+
/**
|
|
1031
|
+
* @ignore
|
|
1032
|
+
*/
|
|
1033
|
+
hdr10MetadataInfo?: Hdr10MetadataInfo;
|
|
1034
|
+
/**
|
|
1035
|
+
* The color space property of the video frame. By default, Full Range and BT.709 standard configuration is applied. You can customize this setting based on your custom capture and rendering needs. See [VideoColorSpace](https://developer.mozilla.org/en-US/docs/Web/API/VideoColorSpace).
|
|
1036
|
+
*/
|
|
1037
|
+
colorSpace?: ColorSpace;
|
|
1038
|
+
}
|
|
1039
|
+
/**
|
|
1040
|
+
* @ignore
|
|
1041
|
+
*/
|
|
1042
|
+
export declare enum MediaPlayerSourceType {
|
|
1043
|
+
/**
|
|
1044
|
+
* @ignore
|
|
1045
|
+
*/
|
|
1046
|
+
MediaPlayerSourceDefault = 0,
|
|
1047
|
+
/**
|
|
1048
|
+
* @ignore
|
|
1049
|
+
*/
|
|
1050
|
+
MediaPlayerSourceFullFeatured = 1,
|
|
1051
|
+
/**
|
|
1052
|
+
* @ignore
|
|
1053
|
+
*/
|
|
1054
|
+
MediaPlayerSourceSimple = 2
|
|
1055
|
+
}
|
|
1056
|
+
/**
|
|
1057
|
+
* Video observation position.
|
|
1058
|
+
*/
|
|
1059
|
+
export declare enum VideoModulePosition {
|
|
1060
|
+
/**
|
|
1061
|
+
* 1: Position after local video capture and preprocessing, corresponding to the onCaptureVideoFrame callback. The video observed here includes video preprocessing effects, which can be verified by enabling beauty effects, virtual background, or watermark.
|
|
1062
|
+
*/
|
|
1063
|
+
PositionPostCapturer = 1,
|
|
1064
|
+
/**
|
|
1065
|
+
* 2: Position before rendering of received remote video, corresponding to the onRenderVideoFrame callback.
|
|
1066
|
+
*/
|
|
1067
|
+
PositionPreRenderer = 2,
|
|
1068
|
+
/**
|
|
1069
|
+
* 4: Position before local video encoding, corresponding to the onPreEncodeVideoFrame callback. The video observed here includes preprocessing and pre-encoding effects:
|
|
1070
|
+
* For preprocessing effects, you can verify by enabling beauty effects, virtual background, or watermark.
|
|
1071
|
+
* For pre-encoding effects, you can verify by setting a low frame rate (e.g., 5 fps).
|
|
1072
|
+
*/
|
|
1073
|
+
PositionPreEncoder = 4,
|
|
1074
|
+
/**
|
|
1075
|
+
* 8: Position after local video capture and before preprocessing. The video observed here does not include preprocessing effects, which can be verified by enabling beauty effects, virtual background, or watermark.
|
|
1076
|
+
*/
|
|
1077
|
+
PositionPostCapturerOrigin = 8
|
|
1078
|
+
}
|
|
1079
|
+
/**
|
|
1080
|
+
* @ignore
|
|
1081
|
+
*/
|
|
1082
|
+
export declare enum ContentInspectResult {
|
|
1083
|
+
/**
|
|
1084
|
+
* @ignore
|
|
1085
|
+
*/
|
|
1086
|
+
ContentInspectNeutral = 1,
|
|
1087
|
+
/**
|
|
1088
|
+
* @ignore
|
|
1089
|
+
*/
|
|
1090
|
+
ContentInspectSexy = 2,
|
|
1091
|
+
/**
|
|
1092
|
+
* @ignore
|
|
1093
|
+
*/
|
|
1094
|
+
ContentInspectPorn = 3
|
|
1095
|
+
}
|
|
1096
|
+
/**
|
|
1097
|
+
* The type of video content moderation module.
|
|
1098
|
+
*/
|
|
1099
|
+
export declare enum ContentInspectType {
|
|
1100
|
+
/**
|
|
1101
|
+
* 0: (Default) This module has no actual function. Do not set type to this value.
|
|
1102
|
+
*/
|
|
1103
|
+
ContentInspectInvalid = 0,
|
|
1104
|
+
/**
|
|
1105
|
+
* @ignore
|
|
1106
|
+
*/
|
|
1107
|
+
ContentInspectModeration = 1,
|
|
1108
|
+
/**
|
|
1109
|
+
* 2: Uses Agora's self-developed plugin to capture and upload screenshots. The SDK captures and uploads screenshots of the video stream.
|
|
1110
|
+
*/
|
|
1111
|
+
ContentInspectSupervision = 2,
|
|
1112
|
+
/**
|
|
1113
|
+
* 3: Uses a Marketplace plugin to capture and upload screenshots. The SDK uses a Marketplace video moderation plugin to capture and upload screenshots of the video stream.
|
|
1114
|
+
*/
|
|
1115
|
+
ContentInspectImageModeration = 3
|
|
1116
|
+
}
|
|
1117
|
+
/**
|
|
1118
|
+
* ContentInspectModule structure used to configure the frequency of local screenshot uploads.
|
|
1119
|
+
*/
|
|
1120
|
+
export declare class ContentInspectModule {
|
|
1121
|
+
/**
|
|
1122
|
+
* Type of function module. See ContentInspectType.
|
|
1123
|
+
*/
|
|
1124
|
+
type?: ContentInspectType;
|
|
1125
|
+
/**
|
|
1126
|
+
* Interval for local screenshot uploads in seconds. The value must be greater than 0. Default is 0, which means no screenshot upload. Recommended value is 10 seconds, but you can adjust it based on your business needs.
|
|
1127
|
+
*/
|
|
1128
|
+
interval?: number;
|
|
1129
|
+
/**
|
|
1130
|
+
* Position of the video observer. See VideoModulePosition.
|
|
1131
|
+
*/
|
|
1132
|
+
position?: VideoModulePosition;
|
|
1133
|
+
}
|
|
1134
|
+
/**
|
|
1135
|
+
* Local screenshot upload configuration.
|
|
1136
|
+
*/
|
|
1137
|
+
export declare class ContentInspectConfig {
|
|
1138
|
+
/**
|
|
1139
|
+
* Additional information, maximum length is 1024 bytes.
|
|
1140
|
+
* The SDK uploads this information along with the screenshot to the Agora server; after the screenshot is complete, the Agora server sends the additional information to your server along with the callback notification.
|
|
1141
|
+
*/
|
|
1142
|
+
extraInfo?: string;
|
|
1143
|
+
/**
|
|
1144
|
+
* @ignore
|
|
1145
|
+
*/
|
|
1146
|
+
serverConfig?: string;
|
|
1147
|
+
/**
|
|
1148
|
+
* Function modules. See ContentInspectModule.
|
|
1149
|
+
* You can configure up to 32 ContentInspectModule instances. The value range of MAX_CONTENT_INSPECT_MODULE_COUNT is an integer in [1,32]. Only one instance can be configured per function module. Currently, only screenshot upload is supported.
|
|
1150
|
+
*/
|
|
1151
|
+
modules?: ContentInspectModule[];
|
|
1152
|
+
/**
|
|
1153
|
+
* Number of function modules, i.e., the number of configured ContentInspectModule instances. Must match the number of instances configured in modules. Maximum value is 32.
|
|
1154
|
+
*/
|
|
1155
|
+
moduleCount?: number;
|
|
1156
|
+
}
|
|
1157
|
+
/**
|
|
1158
|
+
* Video snapshot settings.
|
|
1159
|
+
*/
|
|
1160
|
+
export declare class SnapshotConfig {
|
|
1161
|
+
/**
|
|
1162
|
+
* Make sure the directory exists and is writable. Local path to save the snapshot, including file name and format. For example:
|
|
1163
|
+
* Windows: C:\Users\<user_name>\AppData\Local\Agora\<process_name>\example.jpg
|
|
1164
|
+
* macOS: ~/Library/Logs/example.jpg
|
|
1165
|
+
*/
|
|
1166
|
+
filePath?: string;
|
|
1167
|
+
/**
|
|
1168
|
+
* The position of the video frame in the video pipeline for the snapshot. See VideoModulePosition.
|
|
1169
|
+
*/
|
|
1170
|
+
position?: VideoModulePosition;
|
|
1171
|
+
}
|
|
1172
|
+
/**
|
|
1173
|
+
* This class is used to obtain raw PCM audio data.
|
|
1174
|
+
*
|
|
1175
|
+
* You can inherit this class and implement the onFrame callback to get PCM audio data.
|
|
1176
|
+
*/
|
|
1177
|
+
export interface IAudioPcmFrameSink {
|
|
1178
|
+
/**
|
|
1179
|
+
* Callback when an audio frame is received.
|
|
1180
|
+
*
|
|
1181
|
+
* After registering the audio data observer, this callback is triggered each time an audio frame is received to report the audio frame information.
|
|
1182
|
+
*
|
|
1183
|
+
* @param frame Audio frame information. See AudioPcmFrame.
|
|
1184
|
+
*/
|
|
1185
|
+
onFrame?(frame: AudioPcmFrame): void;
|
|
1186
|
+
}
|
|
1187
|
+
/**
|
|
1188
|
+
* Audio frame type.
|
|
1189
|
+
*/
|
|
1190
|
+
export declare enum AudioFrameType {
|
|
1191
|
+
/**
|
|
1192
|
+
* 0: PCM 16
|
|
1193
|
+
*/
|
|
1194
|
+
FrameTypePcm16 = 0
|
|
1195
|
+
}
|
|
1196
|
+
/**
|
|
1197
|
+
* Raw audio data.
|
|
1198
|
+
*/
|
|
1199
|
+
export declare class AudioFrame {
|
|
1200
|
+
/**
|
|
1201
|
+
* Audio frame type. See AudioFrameType.
|
|
1202
|
+
*/
|
|
1203
|
+
type?: AudioFrameType;
|
|
1204
|
+
/**
|
|
1205
|
+
* Number of samples per channel.
|
|
1206
|
+
*/
|
|
1207
|
+
samplesPerChannel?: number;
|
|
1208
|
+
/**
|
|
1209
|
+
* Number of bytes per sample. For PCM, 16-bit (2 bytes) is typically used.
|
|
1210
|
+
*/
|
|
1211
|
+
bytesPerSample?: BytesPerSample;
|
|
1212
|
+
/**
|
|
1213
|
+
* Number of channels (if stereo, the data is interleaved).
|
|
1214
|
+
* 1: Mono
|
|
1215
|
+
* 2: Stereo
|
|
1216
|
+
*/
|
|
1217
|
+
channels?: number;
|
|
1218
|
+
/**
|
|
1219
|
+
* Number of samples per second per channel.
|
|
1220
|
+
*/
|
|
1221
|
+
samplesPerSec?: number;
|
|
1222
|
+
/**
|
|
1223
|
+
* Audio data buffer (if stereo, the data is interleaved).
|
|
1224
|
+
* Buffer data size buffer = samples × channels × bytesPerSample.
|
|
1225
|
+
*/
|
|
1226
|
+
buffer?: Uint8Array;
|
|
1227
|
+
/**
|
|
1228
|
+
* Render timestamp of the external audio frame.
|
|
1229
|
+
* You can use this timestamp to restore the order of audio frames; in scenarios with video (including those using external video sources), this parameter can be used to achieve audio-video synchronization.
|
|
1230
|
+
*/
|
|
1231
|
+
renderTimeMs?: number;
|
|
1232
|
+
/**
|
|
1233
|
+
* Reserved parameter.
|
|
1234
|
+
*/
|
|
1235
|
+
avsync_type?: number;
|
|
1236
|
+
/**
|
|
1237
|
+
* @ignore
|
|
1238
|
+
*/
|
|
1239
|
+
presentationMs?: number;
|
|
1240
|
+
/**
|
|
1241
|
+
* @ignore
|
|
1242
|
+
*/
|
|
1243
|
+
audioTrackNumber?: number;
|
|
1244
|
+
/**
|
|
1245
|
+
* @ignore
|
|
1246
|
+
*/
|
|
1247
|
+
rtpTimestamp?: number;
|
|
1248
|
+
}
|
|
1249
|
+
/**
|
|
1250
|
+
* @ignore
|
|
1251
|
+
*/
|
|
1252
|
+
export declare enum AudioFramePosition {
|
|
1253
|
+
/**
|
|
1254
|
+
* @ignore
|
|
1255
|
+
*/
|
|
1256
|
+
AudioFramePositionNone = 0,
|
|
1257
|
+
/**
|
|
1258
|
+
* @ignore
|
|
1259
|
+
*/
|
|
1260
|
+
AudioFramePositionPlayback = 1,
|
|
1261
|
+
/**
|
|
1262
|
+
* @ignore
|
|
1263
|
+
*/
|
|
1264
|
+
AudioFramePositionRecord = 2,
|
|
1265
|
+
/**
|
|
1266
|
+
* @ignore
|
|
1267
|
+
*/
|
|
1268
|
+
AudioFramePositionMixed = 4,
|
|
1269
|
+
/**
|
|
1270
|
+
* @ignore
|
|
1271
|
+
*/
|
|
1272
|
+
AudioFramePositionBeforeMixing = 8,
|
|
1273
|
+
/**
|
|
1274
|
+
* @ignore
|
|
1275
|
+
*/
|
|
1276
|
+
AudioFramePositionEarMonitoring = 16
|
|
1277
|
+
}
|
|
1278
|
+
/**
|
|
1279
|
+
* Audio data format.
|
|
1280
|
+
*
|
|
1281
|
+
* The SDK sets the audio data format in the following callbacks based on AudioParams : onRecordAudioFrame onPlaybackAudioFrame onMixedAudioFrame
|
|
1282
|
+
* The SDK calculates the sampling interval using the samplesPerCall, sampleRate, and channel parameters in AudioParams, and triggers the onRecordAudioFrame, onPlaybackAudioFrame, onMixedAudioFrame, and onEarMonitoringAudioFrame callbacks based on that interval.
|
|
1283
|
+
* Sampling interval = samplesPerCall / (sampleRate × channel).
|
|
1284
|
+
* Ensure the sampling interval is not less than 0.01 (s).
|
|
1285
|
+
*/
|
|
1286
|
+
export declare class AudioParams {
|
|
1287
|
+
/**
|
|
1288
|
+
* Sampling rate of the data in Hz. Supported values:
|
|
1289
|
+
* 8000
|
|
1290
|
+
* 16000 (default)
|
|
1291
|
+
* 32000
|
|
1292
|
+
* 44100
|
|
1293
|
+
* 48000
|
|
1294
|
+
*/
|
|
1295
|
+
sample_rate?: number;
|
|
1296
|
+
/**
|
|
1297
|
+
* Number of audio channels. Supported values:
|
|
1298
|
+
* 1: Mono (default)
|
|
1299
|
+
* 2: Stereo
|
|
1300
|
+
*/
|
|
1301
|
+
channels?: number;
|
|
1302
|
+
/**
|
|
1303
|
+
* Usage mode of the data. See RawAudioFrameOpModeType.
|
|
1304
|
+
*/
|
|
1305
|
+
mode?: RawAudioFrameOpModeType;
|
|
1306
|
+
/**
|
|
1307
|
+
* Number of samples per call, typically 1024 in scenarios like media push.
|
|
1308
|
+
*/
|
|
1309
|
+
samples_per_call?: number;
|
|
1310
|
+
}
|
|
1311
|
+
/**
|
|
1312
|
+
* Audio frame observer.
|
|
1313
|
+
*
|
|
1314
|
+
* You can call registerAudioFrameObserver to register or unregister the IAudioFrameObserverBase audio observer.
|
|
1315
|
+
*/
|
|
1316
|
+
export interface IAudioFrameObserverBase {
|
|
1317
|
+
/**
|
|
1318
|
+
* Receives the raw audio data for recording.
|
|
1319
|
+
*
|
|
1320
|
+
* To ensure the recorded audio data format meets expectations, you can set the format as follows: Call setRecordingAudioFrameParameters to set the audio format, then call registerAudioFrameObserver to register the audio frame observer. The SDK calculates the sampling interval based on the parameters in this method and triggers the onRecordAudioFrame callback accordingly.
|
|
1321
|
+
*
|
|
1322
|
+
* @param channelId The channel ID.
|
|
1323
|
+
* @param audioFrame The raw audio data. See AudioFrame.
|
|
1324
|
+
*/
|
|
1325
|
+
onRecordAudioFrame?(channelId: string, audioFrame: AudioFrame): void;
|
|
1326
|
+
/**
|
|
1327
|
+
* Receives the raw audio data for playback.
|
|
1328
|
+
*
|
|
1329
|
+
* To ensure the playback audio data format meets expectations, you can set the format as follows: Call setPlaybackAudioFrameParameters to set the audio format, then call registerAudioFrameObserver to register the audio frame observer. The SDK calculates the sampling interval based on the parameters in this method and triggers the onPlaybackAudioFrame callback accordingly.
|
|
1330
|
+
*
|
|
1331
|
+
* @param channelId The channel ID.
|
|
1332
|
+
* @param audioFrame The raw audio data. See AudioFrame.
|
|
1333
|
+
*/
|
|
1334
|
+
onPlaybackAudioFrame?(channelId: string, audioFrame: AudioFrame): void;
|
|
1335
|
+
/**
|
|
1336
|
+
* Retrieves the audio data after mixing the captured and playback audio.
|
|
1337
|
+
*
|
|
1338
|
+
* To ensure that the format of the mixed audio data from capture and playback meets expectations, you can set the audio data format using the following method: After calling setMixedAudioFrameParameters to set the audio data format, call registerAudioFrameObserver to register the audio observer object. The SDK calculates the sampling interval based on the parameters in this method and triggers the onMixedAudioFrame callback accordingly.
|
|
1339
|
+
*
|
|
1340
|
+
* @param channelId Channel ID.
|
|
1341
|
+
* @param audioFrame Raw audio data. See AudioFrame.
|
|
1342
|
+
*/
|
|
1343
|
+
onMixedAudioFrame?(channelId: string, audioFrame: AudioFrame): void;
|
|
1344
|
+
/**
|
|
1345
|
+
* Receives the raw audio data for ear monitoring.
|
|
1346
|
+
*
|
|
1347
|
+
* To ensure the ear monitoring audio data format meets expectations, you can set it as follows: Call setEarMonitoringAudioFrameParameters to set the audio format, then call registerAudioFrameObserver to register the audio frame observer. The SDK calculates the sampling interval based on the parameters in this method and triggers the onEarMonitoringAudioFrame callback accordingly.
|
|
1348
|
+
*
|
|
1349
|
+
* @param audioFrame The raw audio data. See AudioFrame.
|
|
1350
|
+
*/
|
|
1351
|
+
onEarMonitoringAudioFrame?(audioFrame: AudioFrame): void;
|
|
1352
|
+
}
|
|
1353
|
+
/**
|
|
1354
|
+
* Audio frame observer.
|
|
1355
|
+
*
|
|
1356
|
+
* You can call registerAudioFrameObserver to register or unregister the IAudioFrameObserver.
|
|
1357
|
+
*/
|
|
1358
|
+
export interface IAudioFrameObserver extends IAudioFrameObserverBase {
|
|
1359
|
+
/**
|
|
1360
|
+
* Receives the audio of subscribed remote users before mixing.
|
|
1361
|
+
*
|
|
1362
|
+
* Due to framework limitations, this callback does not support sending processed audio data back to the SDK.
|
|
1363
|
+
*
|
|
1364
|
+
* @param channelId The channel ID.
|
|
1365
|
+
* @param uid The ID of the subscribed remote user.
|
|
1366
|
+
* @param audioFrame The raw audio data. See AudioFrame.
|
|
1367
|
+
*/
|
|
1368
|
+
onPlaybackAudioFrameBeforeMixing?(channelId: string, uid: number, audioFrame: AudioFrame): void;
|
|
1369
|
+
}
|
|
1370
|
+
/**
|
|
1371
|
+
* Audio spectrum data.
|
|
1372
|
+
*/
|
|
1373
|
+
export declare class AudioSpectrumData {
|
|
1374
|
+
/**
|
|
1375
|
+
* Audio spectrum data. The SDK divides the sound frequency into 256 bands and reports the energy value of each band through this parameter. Each energy value ranges from [-300, 1], in dBFS.
|
|
1376
|
+
*/
|
|
1377
|
+
audioSpectrumData?: number[];
|
|
1378
|
+
/**
|
|
1379
|
+
* The length of the audio spectrum data is 256.
|
|
1380
|
+
*/
|
|
1381
|
+
dataLength?: number;
|
|
1382
|
+
}
|
|
1383
|
+
/**
|
|
1384
|
+
* Audio spectrum information of a remote user.
|
|
1385
|
+
*/
|
|
1386
|
+
export declare class UserAudioSpectrumInfo {
|
|
1387
|
+
/**
|
|
1388
|
+
* Remote user ID.
|
|
1389
|
+
*/
|
|
1390
|
+
uid?: number;
|
|
1391
|
+
/**
|
|
1392
|
+
* Audio spectrum data of the remote user. See AudioSpectrumData.
|
|
1393
|
+
*/
|
|
1394
|
+
spectrumData?: AudioSpectrumData;
|
|
1395
|
+
}
|
|
1396
|
+
/**
|
|
1397
|
+
* Audio spectrum observer.
|
|
1398
|
+
*/
|
|
1399
|
+
export interface IAudioSpectrumObserver {
|
|
1400
|
+
/**
|
|
1401
|
+
* Gets the local audio spectrum.
|
|
1402
|
+
*
|
|
1403
|
+
* After successfully calling registerAudioSpectrumObserver to implement the onLocalAudioSpectrum callback in IAudioSpectrumObserver and calling enableAudioSpectrumMonitor to enable audio spectrum monitoring, the SDK triggers this callback at the interval you set to report the spectrum of local audio data before encoding.
|
|
1404
|
+
*
|
|
1405
|
+
* @param data The local user's audio spectrum data. See AudioSpectrumData.
|
|
1406
|
+
*/
|
|
1407
|
+
onLocalAudioSpectrum?(data: AudioSpectrumData): void;
|
|
1408
|
+
/**
|
|
1409
|
+
* Gets the remote audio spectrum.
|
|
1410
|
+
*
|
|
1411
|
+
* After successfully calling registerAudioSpectrumObserver to implement the onRemoteAudioSpectrum callback in IAudioSpectrumObserver and calling enableAudioSpectrumMonitor to enable audio spectrum monitoring, the SDK triggers this callback at the interval you set to report the spectrum of received remote audio data.
|
|
1412
|
+
*
|
|
1413
|
+
* @param spectrums The audio spectrum information of remote users. See UserAudioSpectrumInfo. The number of elements in the array equals the number of remote users monitored by the SDK. An empty array indicates no remote user audio spectrum is detected.
|
|
1414
|
+
* @param spectrumNumber The number of remote users.
|
|
1415
|
+
*/
|
|
1416
|
+
onRemoteAudioSpectrum?(spectrums: UserAudioSpectrumInfo[], spectrumNumber: number): void;
|
|
1417
|
+
}
|
|
1418
|
+
/**
|
|
1419
|
+
* Class used to receive encoded video frames.
|
|
1420
|
+
*/
|
|
1421
|
+
export interface IVideoEncodedFrameObserver {
|
|
1422
|
+
/**
|
|
1423
|
+
* Reports that a remote encoded video frame has been received.
|
|
1424
|
+
*
|
|
1425
|
+
* When you call setRemoteVideoSubscriptionOptions and set encodedFrameOnly to true, the SDK triggers this callback locally to report the received encoded video frame information.
|
|
1426
|
+
*
|
|
1427
|
+
* @param channelId Channel name.
|
|
1428
|
+
* @param uid Remote user ID.
|
|
1429
|
+
* @param imageBuffer Video image buffer.
|
|
1430
|
+
* @param length Length of the video image data.
|
|
1431
|
+
* @param videoEncodedFrameInfo Encoded video frame information. See EncodedVideoFrameInfo.
|
|
1432
|
+
*/
|
|
1433
|
+
onEncodedVideoFrameReceived?(uid: number, imageBuffer: Uint8Array, length: number, videoEncodedFrameInfo: EncodedVideoFrameInfo): void;
|
|
1434
|
+
}
|
|
1435
|
+
/**
|
|
1436
|
+
* Video frame processing mode.
|
|
1437
|
+
*/
|
|
1438
|
+
export declare enum VideoFrameProcessMode {
|
|
1439
|
+
/**
|
|
1440
|
+
* Read-only mode.
|
|
1441
|
+
* In read-only mode, you do not modify the video frame. The video observer acts as a renderer.
|
|
1442
|
+
*/
|
|
1443
|
+
ProcessModeReadOnly = 0,
|
|
1444
|
+
/**
|
|
1445
|
+
* Read-write mode.
|
|
1446
|
+
* In read-write mode, you modify the video frame. The video observer acts as a video filter.
|
|
1447
|
+
*/
|
|
1448
|
+
ProcessModeReadWrite = 1
|
|
1449
|
+
}
|
|
1450
|
+
/**
|
|
1451
|
+
* Video frame observer.
|
|
1452
|
+
*
|
|
1453
|
+
* You can call registerVideoFrameObserver to register or unregister the IVideoFrameObserver video observer.
|
|
1454
|
+
*/
|
|
1455
|
+
export interface IVideoFrameObserver {
|
|
1456
|
+
/**
|
|
1457
|
+
* Gets the video data captured by the local device.
|
|
1458
|
+
*
|
|
1459
|
+
* You can get the raw video data captured by the local device in this callback.
|
|
1460
|
+
* If the video data format you receive is RGBA, the SDK does not support processing the Alpha channel.
|
|
1461
|
+
* When modifying parameters in videoFrame, ensure they match the actual video frame data in the buffer. Otherwise, unexpected rotation or distortion may occur in the local preview or remote video.
|
|
1462
|
+
* It is recommended to implement this callback using the C++ API.
|
|
1463
|
+
* Due to framework limitations, this callback does not support sending the processed video data back to the SDK.
|
|
1464
|
+
*
|
|
1465
|
+
* @param sourceType Type of video source, which may include camera, screen, or media player. See VideoSourceType.
|
|
1466
|
+
* @param videoFrame Video frame data. See VideoFrame. The default format of the video frame data obtained through this callback is:
|
|
1467
|
+
* macOS: I420
|
|
1468
|
+
* Windows: YUV420
|
|
1469
|
+
*/
|
|
1470
|
+
onCaptureVideoFrame?(sourceType: VideoSourceType, videoFrame: VideoFrame): void;
|
|
1471
|
+
/**
|
|
1472
|
+
* Gets the video data before local encoding.
|
|
1473
|
+
*
|
|
1474
|
+
* After successfully registering the video data observer, the SDK triggers this callback when each video frame is captured. You can get the video data before encoding and process it as needed.
|
|
1475
|
+
* After processing, you can pass the processed video data back to the SDK in this callback.
|
|
1476
|
+
* It is recommended to implement this callback using the C++ API.
|
|
1477
|
+
* Due to framework limitations, this callback does not support sending the processed video data back to the SDK.
|
|
1478
|
+
* The video data obtained here has already been pre-processed, such as cropping, rotation, beautification, etc.
|
|
1479
|
+
* When modifying parameters in videoFrame, ensure they match the actual video frame data in the buffer. Otherwise, unexpected rotation or distortion may occur in the local preview or remote video.
|
|
1480
|
+
*
|
|
1481
|
+
* @param sourceType Type of video source. See VideoSourceType.
|
|
1482
|
+
* @param videoFrame Video frame data. See VideoFrame. The default format of the video frame data obtained through this callback is:
|
|
1483
|
+
* macOS: I420
|
|
1484
|
+
* Windows: YUV420
|
|
1485
|
+
*/
|
|
1486
|
+
onPreEncodeVideoFrame?(sourceType: VideoSourceType, videoFrame: VideoFrame): void;
|
|
1487
|
+
/**
|
|
1488
|
+
* @ignore
|
|
1489
|
+
*/
|
|
1490
|
+
onMediaPlayerVideoFrame?(videoFrame: VideoFrame, mediaPlayerId: number): void;
|
|
1491
|
+
/**
|
|
1492
|
+
* Gets the video data sent by the remote user.
|
|
1493
|
+
*
|
|
1494
|
+
* After successfully registering the video data observer, the SDK triggers this callback when each video frame is captured. You can get the video data sent by the remote user before rendering and process it as needed.
|
|
1495
|
+
* If the video data format you receive is RGBA, the SDK does not support processing the Alpha channel.
|
|
1496
|
+
* It is recommended to implement this callback using the C++ API.
|
|
1497
|
+
* Due to framework limitations, this callback does not support sending the processed video data back to the SDK.
|
|
1498
|
+
* When modifying parameters in videoFrame, ensure they match the actual video frame data in the buffer. Otherwise, unexpected rotation or distortion may occur in the local preview or remote video.
|
|
1499
|
+
*
|
|
1500
|
+
* @param channelId Channel ID.
|
|
1501
|
+
* @param remoteUid The user ID of the remote user who sent the video frame.
|
|
1502
|
+
* @param videoFrame Video frame data. See VideoFrame. The default format of the video frame data obtained through this callback is:
|
|
1503
|
+
* macOS: I420
|
|
1504
|
+
* Windows: YUV420
|
|
1505
|
+
*/
|
|
1506
|
+
onRenderVideoFrame?(channelId: string, remoteUid: number, videoFrame: VideoFrame): void;
|
|
1507
|
+
/**
|
|
1508
|
+
* @ignore
|
|
1509
|
+
*/
|
|
1510
|
+
onTranscodedVideoFrame?(videoFrame: VideoFrame): void;
|
|
1511
|
+
}
|
|
1512
|
+
/**
|
|
1513
|
+
* Encoding type of external video frames.
|
|
1514
|
+
*/
|
|
1515
|
+
export declare enum ExternalVideoSourceType {
|
|
1516
|
+
/**
|
|
1517
|
+
* 0: Unencoded video frame.
|
|
1518
|
+
*/
|
|
1519
|
+
VideoFrame = 0,
|
|
1520
|
+
/**
|
|
1521
|
+
* 1: Encoded video frame.
|
|
1522
|
+
*/
|
|
1523
|
+
EncodedVideoFrame = 1
|
|
1524
|
+
}
|
|
1525
|
+
/**
|
|
1526
|
+
* @ignore
|
|
1527
|
+
*/
|
|
1528
|
+
export declare enum MediaRecorderContainerFormat {
|
|
1529
|
+
/**
|
|
1530
|
+
* @ignore
|
|
1531
|
+
*/
|
|
1532
|
+
FormatMp4 = 1
|
|
1533
|
+
}
|
|
1534
|
+
/**
|
|
1535
|
+
* @ignore
|
|
1536
|
+
*/
|
|
1537
|
+
export declare enum MediaRecorderStreamType {
|
|
1538
|
+
/**
|
|
1539
|
+
* @ignore
|
|
1540
|
+
*/
|
|
1541
|
+
StreamTypeAudio = 1,
|
|
1542
|
+
/**
|
|
1543
|
+
* @ignore
|
|
1544
|
+
*/
|
|
1545
|
+
StreamTypeVideo = 2,
|
|
1546
|
+
/**
|
|
1547
|
+
* @ignore
|
|
1548
|
+
*/
|
|
1549
|
+
StreamTypeBoth = 3
|
|
1550
|
+
}
|
|
1551
|
+
/**
|
|
1552
|
+
* Current recording state.
|
|
1553
|
+
*/
|
|
1554
|
+
export declare enum RecorderState {
|
|
1555
|
+
/**
|
|
1556
|
+
* -1: Audio/video stream recording error. See RecorderReasonCode for details.
|
|
1557
|
+
*/
|
|
1558
|
+
RecorderStateError = -1,
|
|
1559
|
+
/**
|
|
1560
|
+
* 2: Audio/video stream recording started.
|
|
1561
|
+
*/
|
|
1562
|
+
RecorderStateStart = 2,
|
|
1563
|
+
/**
|
|
1564
|
+
* 3: Audio/video stream recording stopped.
|
|
1565
|
+
*/
|
|
1566
|
+
RecorderStateStop = 3
|
|
1567
|
+
}
|
|
1568
|
+
/**
|
|
1569
|
+
* Reason for recording state error.
|
|
1570
|
+
*/
|
|
1571
|
+
export declare enum RecorderReasonCode {
|
|
1572
|
+
/**
|
|
1573
|
+
* 0: Everything is normal.
|
|
1574
|
+
*/
|
|
1575
|
+
RecorderReasonNone = 0,
|
|
1576
|
+
/**
|
|
1577
|
+
* @ignore
|
|
1578
|
+
*/
|
|
1579
|
+
RecorderReasonWriteFailed = 1,
|
|
1580
|
+
/**
|
|
1581
|
+
* @ignore
|
|
1582
|
+
*/
|
|
1583
|
+
RecorderReasonNoStream = 2,
|
|
1584
|
+
/**
|
|
1585
|
+
* @ignore
|
|
1586
|
+
*/
|
|
1587
|
+
RecorderReasonOverMaxDuration = 3,
|
|
1588
|
+
/**
|
|
1589
|
+
* @ignore
|
|
1590
|
+
*/
|
|
1591
|
+
RecorderReasonConfigChanged = 4
|
|
1592
|
+
}
|
|
1593
|
+
/**
|
|
1594
|
+
* @ignore
|
|
1595
|
+
*/
|
|
1596
|
+
export declare class MediaRecorderConfiguration {
|
|
1597
|
+
/**
|
|
1598
|
+
* @ignore
|
|
1599
|
+
*/
|
|
1600
|
+
storagePath?: string;
|
|
1601
|
+
/**
|
|
1602
|
+
* @ignore
|
|
1603
|
+
*/
|
|
1604
|
+
containerFormat?: MediaRecorderContainerFormat;
|
|
1605
|
+
/**
|
|
1606
|
+
* @ignore
|
|
1607
|
+
*/
|
|
1608
|
+
streamType?: MediaRecorderStreamType;
|
|
1609
|
+
/**
|
|
1610
|
+
* @ignore
|
|
1611
|
+
*/
|
|
1612
|
+
maxDurationMs?: number;
|
|
1613
|
+
/**
|
|
1614
|
+
* @ignore
|
|
1615
|
+
*/
|
|
1616
|
+
recorderInfoUpdateInterval?: number;
|
|
1617
|
+
/**
|
|
1618
|
+
* @ignore
|
|
1619
|
+
*/
|
|
1620
|
+
width?: number;
|
|
1621
|
+
/**
|
|
1622
|
+
* @ignore
|
|
1623
|
+
*/
|
|
1624
|
+
height?: number;
|
|
1625
|
+
/**
|
|
1626
|
+
* @ignore
|
|
1627
|
+
*/
|
|
1628
|
+
fps?: number;
|
|
1629
|
+
/**
|
|
1630
|
+
* @ignore
|
|
1631
|
+
*/
|
|
1632
|
+
sample_rate?: number;
|
|
1633
|
+
/**
|
|
1634
|
+
* @ignore
|
|
1635
|
+
*/
|
|
1636
|
+
channel_num?: number;
|
|
1637
|
+
/**
|
|
1638
|
+
* @ignore
|
|
1639
|
+
*/
|
|
1640
|
+
videoSourceType?: VideoSourceType;
|
|
1641
|
+
}
|
|
1642
|
+
/**
|
|
1643
|
+
* Face information observer.
|
|
1644
|
+
*
|
|
1645
|
+
* You can call registerFaceInfoObserver to register the IFaceInfoObserver observer.
|
|
1646
|
+
*/
|
|
1647
|
+
export interface IFaceInfoObserver {
|
|
1648
|
+
/**
|
|
1649
|
+
* Reports face information processed by the voice driver plugin.
|
|
1650
|
+
*
|
|
1651
|
+
* @param outFaceInfo Output parameter. A JSON string of the face information processed by the voice driver plugin, containing the following fields:
|
|
1652
|
+
* faces: An array of objects. Each object contains information about a detected face.
|
|
1653
|
+
* blendshapes: Object. A set of blendshape coefficients named according to the ARKit standard. Each key-value pair represents a blendshape coefficient. The coefficient is a float in the range [0.0, 1.0].
|
|
1654
|
+
* rotation: An array of objects. Head rotation values, including the following key-value pairs with float values in the range [-180.0, 180.0]:
|
|
1655
|
+
* pitch: Head pitch angle. Positive when looking down, negative when looking up.
|
|
1656
|
+
* yaw: Head yaw angle. Positive when turning left, negative when turning right.
|
|
1657
|
+
* roll: Head roll angle. Positive when tilting right, negative when tilting left.
|
|
1658
|
+
* timestamp: String. The timestamp of the output result in milliseconds. Example JSON: { "faces":[{ "blendshapes":{ "eyeBlinkLeft":0.9, "eyeLookDownLeft":0.0, "eyeLookInLeft":0.0, "eyeLookOutLeft":0.0, "eyeLookUpLeft":0.0, "eyeSquintLeft":0.0, "eyeWideLeft":0.0, "eyeBlinkRight":0.0, "eyeLookDownRight":0.0, "eyeLookInRight":0.0, "eyeLookOutRight":0.0, "eyeLookUpRight":0.0, "eyeSquintRight":0.0, "eyeWideRight":0.0, "jawForward":0.0, "jawLeft":0.0, "jawRight":0.0, "jawOpen":0.0, "mouthClose":0.0, "mouthFunnel":0.0, "mouthPucker":0.0, "mouthLeft":0.0, "mouthRight":0.0, "mouthSmileLeft":0.0, "mouthSmileRight":0.0, "mouthFrownLeft":0.0, "mouthFrownRight":0.0, "mouthDimpleLeft":0.0, "mouthDimpleRight":0.0, "mouthStretchLeft":0.0, "mouthStretchRight":0.0, "mouthRollLower":0.0, "mouthRollUpper":0.0, "mouthShrugLower":0.0, "mouthShrugUpper":0.0, "mouthPressLeft":0.0, "mouthPressRight":0.0, "mouthLowerDownLeft":0.0, "mouthLowerDownRight":0.0, "mouthUpperUpLeft":0.0, "mouthUpperUpRight":0.0, "browDownLeft":0.0, "browDownRight":0.0, "browInnerUp":0.0, "browOuterUpLeft":0.0, "browOuterUpRight":0.0, "cheekPuff":0.0, "cheekSquintLeft":0.0, "cheekSquintRight":0.0, "noseSneerLeft":0.0, "noseSneerRight":0.0, "tongueOut":0.0 }, "rotation":{"pitch":30.0, "yaw":25.5, "roll":-15.5}, }], "timestamp":"654879876546" }
|
|
1659
|
+
*
|
|
1660
|
+
* @returns
|
|
1661
|
+
* true : Successfully parsed the face information JSON. false : Failed to parse the face information JSON.
|
|
1662
|
+
*/
|
|
1663
|
+
onFaceInfo?(outFaceInfo: string): void;
|
|
1664
|
+
}
|
|
1665
|
+
/**
|
|
1666
|
+
* @ignore
|
|
1667
|
+
*/
|
|
1668
|
+
export declare class RecorderInfo {
|
|
1669
|
+
/**
|
|
1670
|
+
* @ignore
|
|
1671
|
+
*/
|
|
1672
|
+
fileName?: string;
|
|
1673
|
+
/**
|
|
1674
|
+
* @ignore
|
|
1675
|
+
*/
|
|
1676
|
+
durationMs?: number;
|
|
1677
|
+
/**
|
|
1678
|
+
* @ignore
|
|
1679
|
+
*/
|
|
1680
|
+
fileSize?: number;
|
|
1681
|
+
}
|
|
1682
|
+
/**
|
|
1683
|
+
* @ignore
|
|
1684
|
+
*/
|
|
1685
|
+
export interface IMediaRecorderObserver {
|
|
1686
|
+
/**
|
|
1687
|
+
* @ignore
|
|
1688
|
+
*/
|
|
1689
|
+
onRecorderStateChanged?(channelId: string, uid: number, state: RecorderState, reason: RecorderReasonCode): void;
|
|
1690
|
+
/**
|
|
1691
|
+
* @ignore
|
|
1692
|
+
*/
|
|
1693
|
+
onRecorderInfoUpdated?(channelId: string, uid: number, info: RecorderInfo): void;
|
|
1694
|
+
}
|
|
1695
|
+
//# sourceMappingURL=AgoraMediaBase.d.ts.map
|