@xmaxai/web-sdk 1.0.6 → 1.0.8
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/README.md +2 -290
- package/dist/{chunk-NWNRFTLE.cjs → chunk-24VPU65T.cjs} +644 -282
- package/dist/chunk-24VPU65T.cjs.map +1 -0
- package/dist/{chunk-PLFWPS5A.js → chunk-JGDZ3RD3.js} +411 -49
- package/dist/chunk-JGDZ3RD3.js.map +1 -0
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +32 -8
- package/dist/index.d.ts +32 -8
- package/dist/index.js +1 -1
- package/dist/react/index.cjs +3 -3
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-NWNRFTLE.cjs.map +0 -1
- package/dist/chunk-PLFWPS5A.js.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
|
|
36
|
-
var
|
|
36
|
+
var _chunk24VPU65Tcjs = require('./chunk-24VPU65T.cjs');
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
|
|
@@ -69,5 +69,5 @@ var _chunkNWNRFTLEcjs = require('./chunk-NWNRFTLE.cjs');
|
|
|
69
69
|
|
|
70
70
|
|
|
71
71
|
|
|
72
|
-
exports.CameraPosition =
|
|
72
|
+
exports.CameraPosition = _chunk24VPU65Tcjs.CameraPosition; exports.MediaService = _chunk24VPU65Tcjs.MediaService; exports.NonRealtimeQuality = _chunk24VPU65Tcjs.NonRealtimeQuality; exports.NonRealtimeTaskError = _chunk24VPU65Tcjs.NonRealtimeTaskError; exports.NonRealtimeTaskStatus = _chunk24VPU65Tcjs.NonRealtimeTaskStatus; exports.RealtimeConfiguration = _chunk24VPU65Tcjs.RealtimeConfiguration; exports.RealtimeConnectionState = _chunk24VPU65Tcjs.RealtimeConnectionState; exports.RealtimeContext = _chunk24VPU65Tcjs.RealtimeContext; exports.RealtimeMediaStream = _chunk24VPU65Tcjs.RealtimeMediaStream; exports.RealtimeModel = _chunk24VPU65Tcjs.RealtimeModel; exports.RealtimeReason = _chunk24VPU65Tcjs.RealtimeReason; exports.RealtimeState = _chunk24VPU65Tcjs.RealtimeState; exports.RealtimeVideoEncoderPreference = _chunk24VPU65Tcjs.RealtimeVideoEncoderPreference; exports.RealtimeVideoFormat = _chunk24VPU65Tcjs.RealtimeVideoFormat; exports.RealtimeVideoSampleMethod = _chunk24VPU65Tcjs.RealtimeVideoSampleMethod; exports.RealtimeVideoTrack = _chunk24VPU65Tcjs.RealtimeVideoTrack; exports.RtcProvider = _chunk24VPU65Tcjs.RtcProvider; exports.StorageService = _chunk24VPU65Tcjs.StorageService; exports.StoredFile = _chunk24VPU65Tcjs.StoredFile; exports.VideoContentMode = _chunk24VPU65Tcjs.VideoContentMode; exports.XmaxClient = _chunk24VPU65Tcjs.XmaxClient; exports.XmaxConfiguration = _chunk24VPU65Tcjs.XmaxConfiguration; exports.XmaxEnvironment = _chunk24VPU65Tcjs.XmaxEnvironment; exports.XmaxError = _chunk24VPU65Tcjs.XmaxError; exports.XmaxErrorCode = _chunk24VPU65Tcjs.XmaxErrorCode; exports.XmaxLogger = _chunk24VPU65Tcjs.XmaxLogger; exports.XmaxLoggerOption = _chunk24VPU65Tcjs.XmaxLoggerOption; exports.XmaxRealtimeVideoView = _chunk24VPU65Tcjs.XmaxRealtimeVideoView; exports.XmaxVideoView = _chunk24VPU65Tcjs.XmaxVideoView; exports.apiBaseURL = _chunk24VPU65Tcjs.apiBaseURL; exports.defaultCameraVideoFormat = _chunk24VPU65Tcjs.defaultCameraVideoFormat; exports.defaultFrameRate = _chunk24VPU65Tcjs.defaultFrameRate; exports.modelDisplayName = _chunk24VPU65Tcjs.modelDisplayName; exports.supportedRtcProviders = _chunk24VPU65Tcjs.supportedRtcProviders;
|
|
73
73
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/private/var/folders/5j/p3g3j18x2w3byrl5wtnk94tc0000gn/T/xmax-web-release-
|
|
1
|
+
{"version":3,"sources":["/private/var/folders/5j/p3g3j18x2w3byrl5wtnk94tc0000gn/T/xmax-web-release-NxUj61/source/packages/xmax-sdk/dist/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,unEAAC","file":"/private/var/folders/5j/p3g3j18x2w3byrl5wtnk94tc0000gn/T/xmax-web-release-NxUj61/source/packages/xmax-sdk/dist/index.cjs"}
|
package/dist/index.d.cts
CHANGED
|
@@ -25,7 +25,8 @@ declare enum RtcProvider {
|
|
|
25
25
|
declare enum RealtimeModel {
|
|
26
26
|
x2_0 = "x2.0",
|
|
27
27
|
x2_0_trtc = "x2.0-trtc",
|
|
28
|
-
x2_1_preview = "x2.1-preview"
|
|
28
|
+
x2_1_preview = "x2.1-preview",
|
|
29
|
+
x2_1_preview_1014 = "x2.1-preview-1014"
|
|
29
30
|
}
|
|
30
31
|
/** 内置模型或服务端新增的模型标识;自定义名称原样传给服务端。 */
|
|
31
32
|
type RealtimeModelName = RealtimeModel | (string & {});
|
|
@@ -201,6 +202,9 @@ declare class RealtimeConfiguration {
|
|
|
201
202
|
});
|
|
202
203
|
}
|
|
203
204
|
|
|
205
|
+
/** 输入帧顺时针旋转角度;与前置摄像头的水平镜像独立。 */
|
|
206
|
+
type CameraRotation = 0 | 90 | 180 | 270;
|
|
207
|
+
|
|
204
208
|
/**
|
|
205
209
|
* RTC 网络质量等级:未知、极好、良好、一般、差、极差、断网。
|
|
206
210
|
*/
|
|
@@ -710,6 +714,11 @@ interface XmaxRealtimeManaging {
|
|
|
710
714
|
*
|
|
711
715
|
* 将返回的轨道绑定到预览视图;收到有效帧且视图已绑定后进入 `ready`。
|
|
712
716
|
*
|
|
717
|
+
* @param options.videoFormat 旋转后的目标规格,尺寸按模型规则解析。
|
|
718
|
+
* @param options.position 前置或后置摄像头。
|
|
719
|
+
* @param options.useMicrophone 是否采集并发布麦克风音频。
|
|
720
|
+
* @param options.rotation 输入帧顺时针旋转角度,默认 0;非零角度目前仅支持 Agora,预览和上传均校正方向,镜像保持独立。
|
|
721
|
+
* @param options.enableFrameValidation 是否在发布前等待相机预热(固定 200ms),默认 true;false 跳过等待,不产生预热耗时。
|
|
713
722
|
* @returns 包含本地相机视频轨道的媒体流。
|
|
714
723
|
* @throws 模型不支持相机输入、配置无效、权限或采集启动失败时抛出错误。
|
|
715
724
|
*/
|
|
@@ -717,15 +726,14 @@ interface XmaxRealtimeManaging {
|
|
|
717
726
|
videoFormat: RealtimeVideoFormat;
|
|
718
727
|
position: CameraPosition;
|
|
719
728
|
useMicrophone: boolean;
|
|
720
|
-
|
|
721
|
-
* 是否在发布前等待相机预热(固定 200ms),默认 true;false 跳过等待,不产生预热耗时。
|
|
722
|
-
*/
|
|
729
|
+
rotation?: CameraRotation;
|
|
723
730
|
enableFrameValidation?: boolean;
|
|
724
731
|
}): Promise<RealtimeMediaStream>;
|
|
725
732
|
/**
|
|
726
733
|
* 创建服务端直接读取的 HTTP/HTTPS 网络视频源,不采集或发布本地音视频。
|
|
727
734
|
* 本地预览静音播放一次,独立于服务端进度;创建源不会开始生成。
|
|
728
735
|
* 地址必须可由服务端直接访问,不转发浏览器 Cookie 或自定义鉴权头。
|
|
736
|
+
* @param options.url 服务端可直接访问的 HTTP/HTTPS 视频地址。
|
|
729
737
|
* @param options.videoFormat 模型输入及生成画面规格,不是上行编码参数。
|
|
730
738
|
* @param options.sampleMethod 服务端采样方式,默认 time。
|
|
731
739
|
* @param options.onFinish 当前任务收到服务端完成消息且生成就绪后调用一次,不代表尾帧已播放完。
|
|
@@ -741,6 +749,7 @@ interface XmaxRealtimeManaging {
|
|
|
741
749
|
* 从本地 File/Blob 创建文件视频源,支持 TRTC、Agora 和 VeRTC,不访问摄像头或麦克风。
|
|
742
750
|
* 通过 Canvas 等比缩放补黑边,文件音频独立上行,本地预览始终静音。
|
|
743
751
|
* 应从用户点击事件直接调用以解锁播放;创建后停在首帧,startGeneration 时开始播放。
|
|
752
|
+
* @param options.file 包含可解码视频的本地 File 或 Blob。
|
|
744
753
|
* @param options.videoFormat 期望的视频规格;尺寸自动匹配最接近宽高比的模型档位,等距时优先横屏。
|
|
745
754
|
* @param options.loop 是否循环播放文件音视频,默认 true。
|
|
746
755
|
* @param options.includeAudio 是否发送文件音频,默认 true;无音轨文件输出静音,false 不创建音频轨。
|
|
@@ -752,6 +761,19 @@ interface XmaxRealtimeManaging {
|
|
|
752
761
|
loop?: boolean;
|
|
753
762
|
includeAudio?: boolean;
|
|
754
763
|
}): Promise<RealtimeMediaStream>;
|
|
764
|
+
/**
|
|
765
|
+
* 接收用户自行采集或处理的实时视频轨,仅视频,不采集或发送音频。
|
|
766
|
+
* 不要求绑定 SDK 预览;旋转、裁剪及本地预览由调用方负责,后端 mirror 固定 false。
|
|
767
|
+
* SDK 持有轨道副本:disconnect 保留输入,close 释放副本,不停止调用方原始轨道。
|
|
768
|
+
* 副本共享底层媒体源;调用方仍负责停止原始采集。设备源结束时 SDK 上报错误并关闭。
|
|
769
|
+
* @param options.videoTrack 用户自行采集或处理的 live 视频轨,原始轨道归调用方所有。
|
|
770
|
+
* @param options.videoFormat 期望的上传及生成规格,须符合模型规则;不代表修改输入像素。
|
|
771
|
+
* @throws 非 live 视频轨、不支持的格式、已有活动媒体源或 RTC 初始化失败时抛错。
|
|
772
|
+
*/
|
|
773
|
+
createExternalVideoStream(options: {
|
|
774
|
+
videoTrack: MediaStreamTrack;
|
|
775
|
+
videoFormat: RealtimeVideoFormat;
|
|
776
|
+
}): Promise<RealtimeMediaStream>;
|
|
755
777
|
/**
|
|
756
778
|
* 更新当前本地流的上行视频格式,立即应用于 RTC 编码器,不重连或重启生成。
|
|
757
779
|
* 传入完整格式;未指定的码率和编码偏好按 RealtimeVideoFormat 默认规则解析。
|
|
@@ -761,7 +783,7 @@ interface XmaxRealtimeManaging {
|
|
|
761
783
|
* Agora 上行自适应以本次成功应用的完整格式作为新的 L1 基准,后续五档按比例调整尺寸和帧率。
|
|
762
784
|
*
|
|
763
785
|
* @param videoFormat 本次完整的上行尺寸、帧率和编码配置。
|
|
764
|
-
* @throws
|
|
786
|
+
* @throws 无本地相机、外部或文件视频流、其他操作进行中、参数无效或 RTC 更新失败时抛错。
|
|
765
787
|
*/
|
|
766
788
|
updateUplinkVideoFormat(videoFormat: RealtimeVideoFormat): Promise<void>;
|
|
767
789
|
/**
|
|
@@ -791,7 +813,7 @@ interface XmaxRealtimeManaging {
|
|
|
791
813
|
* 启用帧检测时,发布前并行等待相机预热(固定 200ms),避免把黑帧推给 RTC。
|
|
792
814
|
* 返回的远端媒体流在生成开始后承载远端生成画面。
|
|
793
815
|
*
|
|
794
|
-
* @param localStream 由当前 Manager
|
|
816
|
+
* @param localStream 由当前 Manager 创建的摄像头、外部视频轨、本地文件或网络视频源。
|
|
795
817
|
* @returns 远端生成结果占位的媒体流。
|
|
796
818
|
* @throws 本地流不属于当前 Manager、已有活动连接、会话创建或进房
|
|
797
819
|
* 发布失败时抛出错误;失败时自动释放连接资源并恢复本地预览。
|
|
@@ -812,8 +834,9 @@ interface XmaxRealtimeManaging {
|
|
|
812
834
|
* 尚未连接时先建立实时连接;已在生成时仅更新生成条件,不重启生成。
|
|
813
835
|
* 首次生成必须提供条件上下文,之后缺省时复用最近一次缓存的上下文。
|
|
814
836
|
*
|
|
815
|
-
* @param options.localStream 由当前 Manager
|
|
837
|
+
* @param options.localStream 由当前 Manager 创建的摄像头、外部视频轨、本地文件或网络视频源。
|
|
816
838
|
* @param options.context 本次生成使用的条件上下文;缺省时复用缓存。
|
|
839
|
+
* @param options.faceRestoration 是否启用原始人脸回贴,默认 false;正在生成时通过 change_condition 更新。
|
|
817
840
|
* @returns 承载远端生成画面的媒体流。
|
|
818
841
|
* @throws 本地流不属于当前 Manager、缺少可用的条件上下文、信令发送
|
|
819
842
|
* 或生成确认失败时抛出错误;失败时自动停止生成任务并释放连接资源。
|
|
@@ -821,6 +844,7 @@ interface XmaxRealtimeManaging {
|
|
|
821
844
|
startGeneration(options: {
|
|
822
845
|
localStream: RealtimeMediaStream;
|
|
823
846
|
context?: RealtimeContext;
|
|
847
|
+
faceRestoration?: boolean;
|
|
824
848
|
}): Promise<RealtimeMediaStream>;
|
|
825
849
|
}
|
|
826
850
|
|
|
@@ -1691,4 +1715,4 @@ declare class XmaxRealtimeVideoView {
|
|
|
1691
1715
|
private showRemoteVideo;
|
|
1692
1716
|
}
|
|
1693
1717
|
|
|
1694
|
-
export { CameraPosition, MediaService, type MediaServicing, type NetworkQualityLevel, type NetworkStatistics, type NetworkStatisticsListener, NonRealtimeQuality, type NonRealtimeResult, type NonRealtimeTask, NonRealtimeTaskError, type NonRealtimeTaskListOptions, type NonRealtimeTaskOptions, type NonRealtimeTaskPage, NonRealtimeTaskStatus, type NonRealtimeWaitOptions, RealtimeConfiguration, RealtimeConnectionState, RealtimeContext, type RealtimeContextInit, type RealtimeLaunchTiming, type RealtimeLaunchTimingListener, RealtimeMediaStream, RealtimeModel, type RealtimeModelName, RealtimeReason, type RealtimeReferenceVideo, RealtimeState, type RealtimeStateListener, RealtimeVideoFormat, RealtimeVideoSampleMethod, RealtimeVideoTrack, type RemoteVideoStatistics, type RemoteVideoStatisticsListener, RtcProvider, StorageService, type StorageServicing, type StorageUploadOptions, StoredFile, VideoContentMode, VideoRenderStatistics, type VideoStatistics, type VideoStatisticsListener, XmaxClient, XmaxConfiguration, type XmaxConfigurationInit, XmaxEnvironment, XmaxError, XmaxErrorCode, type XmaxErrorListener, XmaxLogger, XmaxLoggerOption, type XmaxNonRealtimeManaging, type XmaxRealtimeManaging, XmaxRealtimeVideoView, XmaxVideoView, apiBaseURL, defaultCameraVideoFormat, defaultFrameRate, modelDisplayName, supportedRtcProviders };
|
|
1718
|
+
export { CameraPosition, type CameraRotation, MediaService, type MediaServicing, type NetworkQualityLevel, type NetworkStatistics, type NetworkStatisticsListener, NonRealtimeQuality, type NonRealtimeResult, type NonRealtimeTask, NonRealtimeTaskError, type NonRealtimeTaskListOptions, type NonRealtimeTaskOptions, type NonRealtimeTaskPage, NonRealtimeTaskStatus, type NonRealtimeWaitOptions, RealtimeConfiguration, RealtimeConnectionState, RealtimeContext, type RealtimeContextInit, type RealtimeLaunchTiming, type RealtimeLaunchTimingListener, RealtimeMediaStream, RealtimeModel, type RealtimeModelName, RealtimeReason, type RealtimeReferenceVideo, RealtimeState, type RealtimeStateListener, RealtimeVideoFormat, RealtimeVideoSampleMethod, RealtimeVideoTrack, type RemoteVideoStatistics, type RemoteVideoStatisticsListener, RtcProvider, StorageService, type StorageServicing, type StorageUploadOptions, StoredFile, VideoContentMode, VideoRenderStatistics, type VideoStatistics, type VideoStatisticsListener, XmaxClient, XmaxConfiguration, type XmaxConfigurationInit, XmaxEnvironment, XmaxError, XmaxErrorCode, type XmaxErrorListener, XmaxLogger, XmaxLoggerOption, type XmaxNonRealtimeManaging, type XmaxRealtimeManaging, XmaxRealtimeVideoView, XmaxVideoView, apiBaseURL, defaultCameraVideoFormat, defaultFrameRate, modelDisplayName, supportedRtcProviders };
|
package/dist/index.d.ts
CHANGED
|
@@ -25,7 +25,8 @@ declare enum RtcProvider {
|
|
|
25
25
|
declare enum RealtimeModel {
|
|
26
26
|
x2_0 = "x2.0",
|
|
27
27
|
x2_0_trtc = "x2.0-trtc",
|
|
28
|
-
x2_1_preview = "x2.1-preview"
|
|
28
|
+
x2_1_preview = "x2.1-preview",
|
|
29
|
+
x2_1_preview_1014 = "x2.1-preview-1014"
|
|
29
30
|
}
|
|
30
31
|
/** 内置模型或服务端新增的模型标识;自定义名称原样传给服务端。 */
|
|
31
32
|
type RealtimeModelName = RealtimeModel | (string & {});
|
|
@@ -201,6 +202,9 @@ declare class RealtimeConfiguration {
|
|
|
201
202
|
});
|
|
202
203
|
}
|
|
203
204
|
|
|
205
|
+
/** 输入帧顺时针旋转角度;与前置摄像头的水平镜像独立。 */
|
|
206
|
+
type CameraRotation = 0 | 90 | 180 | 270;
|
|
207
|
+
|
|
204
208
|
/**
|
|
205
209
|
* RTC 网络质量等级:未知、极好、良好、一般、差、极差、断网。
|
|
206
210
|
*/
|
|
@@ -710,6 +714,11 @@ interface XmaxRealtimeManaging {
|
|
|
710
714
|
*
|
|
711
715
|
* 将返回的轨道绑定到预览视图;收到有效帧且视图已绑定后进入 `ready`。
|
|
712
716
|
*
|
|
717
|
+
* @param options.videoFormat 旋转后的目标规格,尺寸按模型规则解析。
|
|
718
|
+
* @param options.position 前置或后置摄像头。
|
|
719
|
+
* @param options.useMicrophone 是否采集并发布麦克风音频。
|
|
720
|
+
* @param options.rotation 输入帧顺时针旋转角度,默认 0;非零角度目前仅支持 Agora,预览和上传均校正方向,镜像保持独立。
|
|
721
|
+
* @param options.enableFrameValidation 是否在发布前等待相机预热(固定 200ms),默认 true;false 跳过等待,不产生预热耗时。
|
|
713
722
|
* @returns 包含本地相机视频轨道的媒体流。
|
|
714
723
|
* @throws 模型不支持相机输入、配置无效、权限或采集启动失败时抛出错误。
|
|
715
724
|
*/
|
|
@@ -717,15 +726,14 @@ interface XmaxRealtimeManaging {
|
|
|
717
726
|
videoFormat: RealtimeVideoFormat;
|
|
718
727
|
position: CameraPosition;
|
|
719
728
|
useMicrophone: boolean;
|
|
720
|
-
|
|
721
|
-
* 是否在发布前等待相机预热(固定 200ms),默认 true;false 跳过等待,不产生预热耗时。
|
|
722
|
-
*/
|
|
729
|
+
rotation?: CameraRotation;
|
|
723
730
|
enableFrameValidation?: boolean;
|
|
724
731
|
}): Promise<RealtimeMediaStream>;
|
|
725
732
|
/**
|
|
726
733
|
* 创建服务端直接读取的 HTTP/HTTPS 网络视频源,不采集或发布本地音视频。
|
|
727
734
|
* 本地预览静音播放一次,独立于服务端进度;创建源不会开始生成。
|
|
728
735
|
* 地址必须可由服务端直接访问,不转发浏览器 Cookie 或自定义鉴权头。
|
|
736
|
+
* @param options.url 服务端可直接访问的 HTTP/HTTPS 视频地址。
|
|
729
737
|
* @param options.videoFormat 模型输入及生成画面规格,不是上行编码参数。
|
|
730
738
|
* @param options.sampleMethod 服务端采样方式,默认 time。
|
|
731
739
|
* @param options.onFinish 当前任务收到服务端完成消息且生成就绪后调用一次,不代表尾帧已播放完。
|
|
@@ -741,6 +749,7 @@ interface XmaxRealtimeManaging {
|
|
|
741
749
|
* 从本地 File/Blob 创建文件视频源,支持 TRTC、Agora 和 VeRTC,不访问摄像头或麦克风。
|
|
742
750
|
* 通过 Canvas 等比缩放补黑边,文件音频独立上行,本地预览始终静音。
|
|
743
751
|
* 应从用户点击事件直接调用以解锁播放;创建后停在首帧,startGeneration 时开始播放。
|
|
752
|
+
* @param options.file 包含可解码视频的本地 File 或 Blob。
|
|
744
753
|
* @param options.videoFormat 期望的视频规格;尺寸自动匹配最接近宽高比的模型档位,等距时优先横屏。
|
|
745
754
|
* @param options.loop 是否循环播放文件音视频,默认 true。
|
|
746
755
|
* @param options.includeAudio 是否发送文件音频,默认 true;无音轨文件输出静音,false 不创建音频轨。
|
|
@@ -752,6 +761,19 @@ interface XmaxRealtimeManaging {
|
|
|
752
761
|
loop?: boolean;
|
|
753
762
|
includeAudio?: boolean;
|
|
754
763
|
}): Promise<RealtimeMediaStream>;
|
|
764
|
+
/**
|
|
765
|
+
* 接收用户自行采集或处理的实时视频轨,仅视频,不采集或发送音频。
|
|
766
|
+
* 不要求绑定 SDK 预览;旋转、裁剪及本地预览由调用方负责,后端 mirror 固定 false。
|
|
767
|
+
* SDK 持有轨道副本:disconnect 保留输入,close 释放副本,不停止调用方原始轨道。
|
|
768
|
+
* 副本共享底层媒体源;调用方仍负责停止原始采集。设备源结束时 SDK 上报错误并关闭。
|
|
769
|
+
* @param options.videoTrack 用户自行采集或处理的 live 视频轨,原始轨道归调用方所有。
|
|
770
|
+
* @param options.videoFormat 期望的上传及生成规格,须符合模型规则;不代表修改输入像素。
|
|
771
|
+
* @throws 非 live 视频轨、不支持的格式、已有活动媒体源或 RTC 初始化失败时抛错。
|
|
772
|
+
*/
|
|
773
|
+
createExternalVideoStream(options: {
|
|
774
|
+
videoTrack: MediaStreamTrack;
|
|
775
|
+
videoFormat: RealtimeVideoFormat;
|
|
776
|
+
}): Promise<RealtimeMediaStream>;
|
|
755
777
|
/**
|
|
756
778
|
* 更新当前本地流的上行视频格式,立即应用于 RTC 编码器,不重连或重启生成。
|
|
757
779
|
* 传入完整格式;未指定的码率和编码偏好按 RealtimeVideoFormat 默认规则解析。
|
|
@@ -761,7 +783,7 @@ interface XmaxRealtimeManaging {
|
|
|
761
783
|
* Agora 上行自适应以本次成功应用的完整格式作为新的 L1 基准,后续五档按比例调整尺寸和帧率。
|
|
762
784
|
*
|
|
763
785
|
* @param videoFormat 本次完整的上行尺寸、帧率和编码配置。
|
|
764
|
-
* @throws
|
|
786
|
+
* @throws 无本地相机、外部或文件视频流、其他操作进行中、参数无效或 RTC 更新失败时抛错。
|
|
765
787
|
*/
|
|
766
788
|
updateUplinkVideoFormat(videoFormat: RealtimeVideoFormat): Promise<void>;
|
|
767
789
|
/**
|
|
@@ -791,7 +813,7 @@ interface XmaxRealtimeManaging {
|
|
|
791
813
|
* 启用帧检测时,发布前并行等待相机预热(固定 200ms),避免把黑帧推给 RTC。
|
|
792
814
|
* 返回的远端媒体流在生成开始后承载远端生成画面。
|
|
793
815
|
*
|
|
794
|
-
* @param localStream 由当前 Manager
|
|
816
|
+
* @param localStream 由当前 Manager 创建的摄像头、外部视频轨、本地文件或网络视频源。
|
|
795
817
|
* @returns 远端生成结果占位的媒体流。
|
|
796
818
|
* @throws 本地流不属于当前 Manager、已有活动连接、会话创建或进房
|
|
797
819
|
* 发布失败时抛出错误;失败时自动释放连接资源并恢复本地预览。
|
|
@@ -812,8 +834,9 @@ interface XmaxRealtimeManaging {
|
|
|
812
834
|
* 尚未连接时先建立实时连接;已在生成时仅更新生成条件,不重启生成。
|
|
813
835
|
* 首次生成必须提供条件上下文,之后缺省时复用最近一次缓存的上下文。
|
|
814
836
|
*
|
|
815
|
-
* @param options.localStream 由当前 Manager
|
|
837
|
+
* @param options.localStream 由当前 Manager 创建的摄像头、外部视频轨、本地文件或网络视频源。
|
|
816
838
|
* @param options.context 本次生成使用的条件上下文;缺省时复用缓存。
|
|
839
|
+
* @param options.faceRestoration 是否启用原始人脸回贴,默认 false;正在生成时通过 change_condition 更新。
|
|
817
840
|
* @returns 承载远端生成画面的媒体流。
|
|
818
841
|
* @throws 本地流不属于当前 Manager、缺少可用的条件上下文、信令发送
|
|
819
842
|
* 或生成确认失败时抛出错误;失败时自动停止生成任务并释放连接资源。
|
|
@@ -821,6 +844,7 @@ interface XmaxRealtimeManaging {
|
|
|
821
844
|
startGeneration(options: {
|
|
822
845
|
localStream: RealtimeMediaStream;
|
|
823
846
|
context?: RealtimeContext;
|
|
847
|
+
faceRestoration?: boolean;
|
|
824
848
|
}): Promise<RealtimeMediaStream>;
|
|
825
849
|
}
|
|
826
850
|
|
|
@@ -1691,4 +1715,4 @@ declare class XmaxRealtimeVideoView {
|
|
|
1691
1715
|
private showRemoteVideo;
|
|
1692
1716
|
}
|
|
1693
1717
|
|
|
1694
|
-
export { CameraPosition, MediaService, type MediaServicing, type NetworkQualityLevel, type NetworkStatistics, type NetworkStatisticsListener, NonRealtimeQuality, type NonRealtimeResult, type NonRealtimeTask, NonRealtimeTaskError, type NonRealtimeTaskListOptions, type NonRealtimeTaskOptions, type NonRealtimeTaskPage, NonRealtimeTaskStatus, type NonRealtimeWaitOptions, RealtimeConfiguration, RealtimeConnectionState, RealtimeContext, type RealtimeContextInit, type RealtimeLaunchTiming, type RealtimeLaunchTimingListener, RealtimeMediaStream, RealtimeModel, type RealtimeModelName, RealtimeReason, type RealtimeReferenceVideo, RealtimeState, type RealtimeStateListener, RealtimeVideoFormat, RealtimeVideoSampleMethod, RealtimeVideoTrack, type RemoteVideoStatistics, type RemoteVideoStatisticsListener, RtcProvider, StorageService, type StorageServicing, type StorageUploadOptions, StoredFile, VideoContentMode, VideoRenderStatistics, type VideoStatistics, type VideoStatisticsListener, XmaxClient, XmaxConfiguration, type XmaxConfigurationInit, XmaxEnvironment, XmaxError, XmaxErrorCode, type XmaxErrorListener, XmaxLogger, XmaxLoggerOption, type XmaxNonRealtimeManaging, type XmaxRealtimeManaging, XmaxRealtimeVideoView, XmaxVideoView, apiBaseURL, defaultCameraVideoFormat, defaultFrameRate, modelDisplayName, supportedRtcProviders };
|
|
1718
|
+
export { CameraPosition, type CameraRotation, MediaService, type MediaServicing, type NetworkQualityLevel, type NetworkStatistics, type NetworkStatisticsListener, NonRealtimeQuality, type NonRealtimeResult, type NonRealtimeTask, NonRealtimeTaskError, type NonRealtimeTaskListOptions, type NonRealtimeTaskOptions, type NonRealtimeTaskPage, NonRealtimeTaskStatus, type NonRealtimeWaitOptions, RealtimeConfiguration, RealtimeConnectionState, RealtimeContext, type RealtimeContextInit, type RealtimeLaunchTiming, type RealtimeLaunchTimingListener, RealtimeMediaStream, RealtimeModel, type RealtimeModelName, RealtimeReason, type RealtimeReferenceVideo, RealtimeState, type RealtimeStateListener, RealtimeVideoFormat, RealtimeVideoSampleMethod, RealtimeVideoTrack, type RemoteVideoStatistics, type RemoteVideoStatisticsListener, RtcProvider, StorageService, type StorageServicing, type StorageUploadOptions, StoredFile, VideoContentMode, VideoRenderStatistics, type VideoStatistics, type VideoStatisticsListener, XmaxClient, XmaxConfiguration, type XmaxConfigurationInit, XmaxEnvironment, XmaxError, XmaxErrorCode, type XmaxErrorListener, XmaxLogger, XmaxLoggerOption, type XmaxNonRealtimeManaging, type XmaxRealtimeManaging, XmaxRealtimeVideoView, XmaxVideoView, apiBaseURL, defaultCameraVideoFormat, defaultFrameRate, modelDisplayName, supportedRtcProviders };
|
package/dist/index.js
CHANGED
package/dist/react/index.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunk24VPU65Tcjs = require('../chunk-24VPU65T.cjs');
|
|
5
5
|
|
|
6
6
|
// src/react/XmaxRealtimeVideo.tsx
|
|
7
7
|
|
|
@@ -17,7 +17,7 @@ function XmaxRealtimeVideo(props) {
|
|
|
17
17
|
if (!container) {
|
|
18
18
|
return;
|
|
19
19
|
}
|
|
20
|
-
const view = new (0,
|
|
20
|
+
const view = new (0, _chunk24VPU65Tcjs.XmaxRealtimeVideoView)();
|
|
21
21
|
view.element.style.width = "100%";
|
|
22
22
|
view.element.style.height = "100%";
|
|
23
23
|
view.attach(container);
|
|
@@ -71,7 +71,7 @@ function XmaxVideo(props) {
|
|
|
71
71
|
if (!container) {
|
|
72
72
|
return;
|
|
73
73
|
}
|
|
74
|
-
const view = new (0,
|
|
74
|
+
const view = new (0, _chunk24VPU65Tcjs.XmaxVideoView)();
|
|
75
75
|
view.element.style.width = "100%";
|
|
76
76
|
view.element.style.height = "100%";
|
|
77
77
|
view.attach(container);
|
package/dist/react/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/private/var/folders/5j/p3g3j18x2w3byrl5wtnk94tc0000gn/T/xmax-web-release-
|
|
1
|
+
{"version":3,"sources":["/private/var/folders/5j/p3g3j18x2w3byrl5wtnk94tc0000gn/T/xmax-web-release-NxUj61/source/packages/xmax-sdk/dist/react/index.cjs","../../src/react/XmaxRealtimeVideo.tsx","../../src/react/XmaxVideo.tsx"],"names":["useRef","useEffect","jsx"],"mappings":"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","file":"/private/var/folders/5j/p3g3j18x2w3byrl5wtnk94tc0000gn/T/xmax-web-release-NxUj61/source/packages/xmax-sdk/dist/react/index.cjs","sourcesContent":[null,"import {\n VideoContentMode,\n XmaxRealtimeVideoView,\n type RealtimeVideoTrack,\n} from \"../index\";\nimport {\n useEffect,\n useRef,\n type CSSProperties,\n} from \"react\";\n\nexport interface XmaxRealtimeVideoProps {\n /**\n * 当前显示的本地视频轨道。\n */\n localTrack?: RealtimeVideoTrack;\n\n /**\n * 当前显示的远端生成视频轨道;首帧提交后自动渐入。\n */\n remoteTrack?: RealtimeVideoTrack;\n\n /**\n * 视频内容在容器中的显示模式,默认 fill。\n */\n videoContentMode?: VideoContentMode;\n\n /**\n * 容器类名。\n */\n className?: string;\n\n /**\n * 容器样式。\n */\n style?: CSSProperties;\n}\n\n/**\n * 本地预览和远端生成画面自动切换的 React 组件。\n */\nexport function XmaxRealtimeVideo(props: XmaxRealtimeVideoProps) {\n const containerRef = useRef<HTMLDivElement>(null);\n const viewRef = useRef<XmaxRealtimeVideoView | undefined>(undefined);\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container) {\n return;\n }\n\n const view = new XmaxRealtimeVideoView();\n view.element.style.width = \"100%\";\n view.element.style.height = \"100%\";\n view.attach(container);\n viewRef.current = view;\n return () => {\n viewRef.current = undefined;\n view.localTrack = undefined;\n view.remoteTrack = undefined;\n view.detach();\n };\n }, []);\n\n useEffect(() => {\n const view = viewRef.current;\n if (view) {\n view.localTrack = props.localTrack;\n }\n }, [props.localTrack]);\n\n useEffect(() => {\n const view = viewRef.current;\n if (view) {\n view.remoteTrack = props.remoteTrack;\n }\n }, [props.remoteTrack]);\n\n useEffect(() => {\n const view = viewRef.current;\n if (view && props.videoContentMode) {\n view.videoContentMode = props.videoContentMode;\n }\n }, [props.videoContentMode]);\n\n return (\n <div\n ref={containerRef}\n className={props.className}\n style={{ position: \"relative\", overflow: \"hidden\", ...props.style }}\n />\n );\n}\n","import {\n VideoContentMode,\n XmaxVideoView,\n type RealtimeVideoTrack,\n type VideoRenderStatistics,\n} from \"../index\";\nimport {\n useEffect,\n useRef,\n type CSSProperties,\n} from \"react\";\n\nexport interface XmaxVideoProps {\n /**\n * 当前显示的视频轨道;置空时清空画面。\n */\n track?: RealtimeVideoTrack;\n\n /**\n * 视频内容在容器中的显示模式,默认 fill。\n */\n videoContentMode?: VideoContentMode;\n\n /**\n * 是否镜像显示(仅影响显示,不影响发布流)。\n */\n mirrored?: boolean;\n\n /**\n * 当前视图的呈现帧率统计;换流或卸载时清空,不受统计面板显示开关影响。\n */\n onRenderStatistics?: (statistics?: VideoRenderStatistics) => void;\n\n /**\n * 容器类名。\n */\n className?: string;\n\n /**\n * 容器样式。\n */\n style?: CSSProperties;\n}\n\n/**\n * 单轨视频 React 组件:把一路视频轨渲染到容器。\n */\nexport function XmaxVideo(props: XmaxVideoProps) {\n const containerRef = useRef<HTMLDivElement>(null);\n const viewRef = useRef<XmaxVideoView | undefined>(undefined);\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container) {\n return;\n }\n\n const view = new XmaxVideoView();\n view.element.style.width = \"100%\";\n view.element.style.height = \"100%\";\n view.attach(container);\n viewRef.current = view;\n return () => {\n viewRef.current = undefined;\n view.track = undefined;\n view.detach();\n };\n }, []);\n\n useEffect(() => {\n if (viewRef.current) viewRef.current.renderStatisticsHandler = props.onRenderStatistics;\n }, [props.onRenderStatistics]);\n\n useEffect(() => {\n const view = viewRef.current;\n if (view) {\n view.track = props.track;\n }\n }, [props.track]);\n\n useEffect(() => {\n const view = viewRef.current;\n if (view && props.videoContentMode) {\n view.videoContentMode = props.videoContentMode;\n }\n }, [props.videoContentMode]);\n\n useEffect(() => {\n const view = viewRef.current;\n if (view && props.mirrored !== undefined) {\n view.isMirrored = props.mirrored;\n }\n }, [props.mirrored]);\n\n return (\n <div\n ref={containerRef}\n className={props.className}\n style={{ position: \"relative\", overflow: \"hidden\", ...props.style }}\n />\n );\n}\n"]}
|
package/dist/react/index.js
CHANGED