larksr_websdk 3.2.331 → 3.2.332

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.
@@ -56,14 +56,19 @@ export default class Application extends EventBase<APP_EVENT_TYPE, AppEvent> {
56
56
  private websocketProxy;
57
57
  private testPixelStreaming;
58
58
  private peerConnection;
59
+ private sharePeerConnection;
59
60
  get peerConnectionCreated(): boolean;
60
61
  get state(): APP_STATE;
61
62
  set state(state: APP_STATE);
62
63
  private _state;
63
64
  get audioDeviceId(): string | undefined;
64
- get audioTrack(): MediaStreamTrack | undefined;
65
+ get audioTrack(): MediaStreamTrack | {
66
+ enabled: boolean;
67
+ } | undefined;
65
68
  get videoDeviceId(): string | undefined;
66
- get videoTrack(): MediaStreamTrack | undefined;
69
+ get videoTrack(): MediaStreamTrack | {
70
+ enabled: boolean;
71
+ } | undefined;
67
72
  private retryTime;
68
73
  private larksr;
69
74
  get voiceId(): number;
@@ -71,8 +76,10 @@ export default class Application extends EventBase<APP_EVENT_TYPE, AppEvent> {
71
76
  private recoder;
72
77
  constructor(larksr: LarkSR);
73
78
  init(): void;
79
+ initSharePc(): void;
74
80
  initPc(): void;
75
81
  releasePc(): void;
82
+ releaseSharePc(): void;
76
83
  clear(): void;
77
84
  changeOperater(uid: number): void;
78
85
  inputText(text: string): void;
@@ -124,18 +131,21 @@ export default class Application extends EventBase<APP_EVENT_TYPE, AppEvent> {
124
131
  setAudioEnable(enable: boolean): void | undefined;
125
132
  setVideoEnable(enable: boolean): void | undefined;
126
133
  setShareEnable(enable: boolean): void | undefined;
127
- closeAudio(): boolean | undefined;
128
- closeVideo(): boolean | undefined;
129
- closeShare(): boolean | undefined;
134
+ closeAudio(): RTCMediaTrackBinding[] | undefined;
135
+ closeVideo(): RTCMediaTrackBinding[] | undefined;
136
+ closeShare(): RTCMediaTrackBinding[] | undefined;
130
137
  openAudio(deviceId?: string): Promise<{
131
138
  streams: MediaStream;
132
139
  rtcRtpSenders: RTCMediaTrackBinding[];
133
140
  } | undefined>;
134
- openVideo(audio?: boolean, cameraId?: string): Promise<{
141
+ openVideo(audio?: boolean, cameraId?: string, width?: number, height?: number): Promise<{
142
+ streams: MediaStream;
143
+ rtcRtpSenders: RTCMediaTrackBinding[];
144
+ } | undefined>;
145
+ openDefaultMedia(video?: boolean, audio?: boolean): Promise<{
135
146
  streams: MediaStream;
136
147
  rtcRtpSenders: RTCMediaTrackBinding[];
137
148
  } | undefined>;
138
- openDefaultMedia(video?: boolean, audio?: boolean): Promise<void | undefined>;
139
149
  openShareMediaDevice(): Promise<void | undefined>;
140
150
  getConnectedAudioinputDevices(): Promise<MediaDeviceInfo[] | undefined>;
141
151
  getConnectedAudioOutputDevices(): Promise<MediaDeviceInfo[] | undefined>;
@@ -149,7 +159,7 @@ export default class Application extends EventBase<APP_EVENT_TYPE, AppEvent> {
149
159
  streams: MediaStream;
150
160
  rtcRtpSenders: RTCMediaTrackBinding[];
151
161
  } | undefined>;
152
- openUserMeida(constraints?: MediaStreamConstraints): Promise<{
162
+ openUserMeida(constraints?: MediaStreamConstraints, reset?: boolean): Promise<{
153
163
  streams: MediaStream;
154
164
  rtcRtpSenders: RTCMediaTrackBinding[];
155
165
  } | undefined>;
@@ -10,6 +10,8 @@ export default class Message {
10
10
  static startMonitorStreamReqeuest(request: Msg.CloudLark.IVrMonitorRequest): Msg.CloudLark.ToServerMessage;
11
11
  static rtcOfferMsg(type: string, sdp: string): Msg.CloudLark.ToServerMessage;
12
12
  static iceMsg(sdpmid: string, sdpMlineindex: number, candidate: string): Msg.CloudLark.ToServerMessage;
13
+ static mediaShareRtcOfferMsg(type: string, sdp: string): Msg.CloudLark.ToServerMessage;
14
+ static mediaShareIceMsg(sdpmid: string, sdpMlineindex: number, candidate: string): Msg.CloudLark.ToServerMessage;
13
15
  static restartApp(): Msg.CloudLark.ToServerMessage;
14
16
  static getTaskResponseMsg(ressponse: Msg.CloudLark.TaskResponse.Response): string;
15
17
  static getStartStreamResponseMsg(ressponse: Msg.CloudLark.StartStreamResponse.Response): string;
@@ -0,0 +1,89 @@
1
+ import { EventBase, LocalEvent } from '../event/event_base';
2
+ import { LarkSR } from '../larksr';
3
+ import { RTCMediaTrackBinding } from './peer_connection';
4
+ export declare enum WEBRTC_MEDIA_SHARE_EVENT_TYPE {
5
+ RTC_SDP = 0,
6
+ RTC_ICECANDIDATE = 1,
7
+ ICE_STATE_CHANGE = 2,
8
+ ERROR = 3,
9
+ INFO = 4
10
+ }
11
+ export interface WebRTCMediaShareEvent extends LocalEvent<WEBRTC_MEDIA_SHARE_EVENT_TYPE> {
12
+ data?: any;
13
+ }
14
+ export interface WebRTCConfig {
15
+ serverIP: string;
16
+ preferPubOutIp: string;
17
+ }
18
+ export default class PeerConnectionMediaShare extends EventBase<WEBRTC_MEDIA_SHARE_EVENT_TYPE, WebRTCMediaShareEvent> {
19
+ get audioDeviceId(): string;
20
+ get audioTrack(): MediaStreamTrack | {
21
+ enabled: boolean;
22
+ };
23
+ get videoDeviceId(): string;
24
+ get videoTrack(): MediaStreamTrack | {
25
+ enabled: boolean;
26
+ };
27
+ private larksr;
28
+ private offerOptions;
29
+ private pcConfig;
30
+ private pc;
31
+ private sdpCreateSuccess;
32
+ private rtcRtpSenders;
33
+ constructor(larksr: LarkSR);
34
+ create(): Promise<void>;
35
+ createOffer(): void;
36
+ close(): void;
37
+ setAudioEnable(enable: boolean): void;
38
+ setVideoEnable(enable: boolean): void;
39
+ setShareEnable(enable: boolean): void;
40
+ closeAudio(): RTCMediaTrackBinding[];
41
+ closeVideo(): RTCMediaTrackBinding[];
42
+ closeShare(): RTCMediaTrackBinding[];
43
+ private stopLocalTrackBing;
44
+ openAudio(deviceId?: string): Promise<{
45
+ streams: MediaStream;
46
+ rtcRtpSenders: RTCMediaTrackBinding[];
47
+ }>;
48
+ openVideo(audio?: boolean, cameraId?: string, width?: number, height?: number): Promise<{
49
+ streams: MediaStream;
50
+ rtcRtpSenders: RTCMediaTrackBinding[];
51
+ }>;
52
+ openDefaultMedia(video?: boolean, audio?: boolean): Promise<{
53
+ streams: MediaStream;
54
+ rtcRtpSenders: RTCMediaTrackBinding[];
55
+ }>;
56
+ openShareMediaDevice(): Promise<void>;
57
+ getConnectedAudioinputDevices(): Promise<MediaDeviceInfo[]>;
58
+ getConnectedAudioOutputDevices(): Promise<MediaDeviceInfo[]>;
59
+ getConnectedVideoinputDevices(): Promise<MediaDeviceInfo[]>;
60
+ getConnectedDevices(type: MediaDeviceKind): Promise<MediaDeviceInfo[]>;
61
+ openAudioDevice(deviceId: string, kind?: "audioinput" | "audiooutput"): Promise<{
62
+ streams: MediaStream;
63
+ rtcRtpSenders: RTCMediaTrackBinding[];
64
+ }>;
65
+ openCamera(cameraId: string, width?: number, height?: number, audio?: boolean): Promise<{
66
+ streams: MediaStream;
67
+ rtcRtpSenders: RTCMediaTrackBinding[];
68
+ }>;
69
+ openUserMeida(constraints?: MediaStreamConstraints, reset?: boolean): Promise<{
70
+ streams: MediaStream;
71
+ rtcRtpSenders: RTCMediaTrackBinding[];
72
+ }>;
73
+ addMediaTrack(track: MediaStreamTrack, ...streams: MediaStream[]): boolean;
74
+ removeMediaTrack(track: RTCRtpSender): boolean;
75
+ requestUserMediaPermission(constraints?: MediaStreamConstraints): Promise<MediaStream>;
76
+ /**
77
+ * 接收到sdp
78
+ * @param des sdp
79
+ */
80
+ onRemoteDescription(des: RTCSessionDescriptionInit): void;
81
+ onReceiveCandidate(candateInit: RTCIceCandidateInit): void;
82
+ private addIceCandidate;
83
+ private onCreateOfferSuccess;
84
+ private onIceCandidate;
85
+ private onIceStateChange;
86
+ private iceStateChange;
87
+ private $emit;
88
+ private createEvent;
89
+ }
@@ -615,7 +615,9 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
615
615
  /**
616
616
  * 当前打开音频的track对象,未打开状态为空
617
617
  */
618
- get audioTrack(): MediaStreamTrack | undefined;
618
+ get audioTrack(): MediaStreamTrack | {
619
+ enabled: boolean;
620
+ } | undefined;
619
621
  /**
620
622
  * 当前打开视频设备 ID,如果打开时没指定特设备id为空
621
623
  */
@@ -623,7 +625,9 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
623
625
  /**
624
626
  * 当前打开视频track对象,未打开状态为空
625
627
  */
626
- get videoTrack(): MediaStreamTrack | undefined;
628
+ get videoTrack(): MediaStreamTrack | {
629
+ enabled: boolean;
630
+ } | undefined;
627
631
  /**
628
632
  * LarkSR 客户端。所有操作和事件通过该类传递
629
633
  * @param config 本地配置,优先级最高
@@ -1004,9 +1008,9 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
1004
1008
  * 关闭当前的音频设备
1005
1009
  * @returns
1006
1010
  */
1007
- closeAudio(): boolean | undefined;
1008
- closeVideo(): boolean | undefined;
1009
- closeShare(): boolean | undefined;
1011
+ closeAudio(): import("./lark/peer_connection").RTCMediaTrackBinding[] | undefined;
1012
+ closeVideo(): import("./lark/peer_connection").RTCMediaTrackBinding[] | undefined;
1013
+ closeShare(): import("./lark/peer_connection").RTCMediaTrackBinding[] | undefined;
1010
1014
  /**
1011
1015
  * 打开一个音频设备,要注意浏览器限制在 https 或者 localhost 下才能打开音频
1012
1016
  * @param deviceId 音频设备id,如果不传将打开默认设备。@see getConnectedAudioinputDevices
@@ -1022,7 +1026,7 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
1022
1026
  * @param cameraId 视频设备id,如果不传将打开默认设备。@see getConnectedVideoinputDevices
1023
1027
  * @returns Promise
1024
1028
  */
1025
- openVideo(audio?: boolean, cameraId?: string): Promise<{
1029
+ openVideo(audio?: boolean, cameraId?: string, width?: number, height?: number): Promise<{
1026
1030
  streams: MediaStream;
1027
1031
  rtcRtpSenders: import("./lark/peer_connection").RTCMediaTrackBinding[];
1028
1032
  } | undefined>;
@@ -1033,7 +1037,10 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
1033
1037
  * @param audio 是否包含音频
1034
1038
  * @returns Promise
1035
1039
  */
1036
- openDefaultMedia(video?: boolean, audio?: boolean): Promise<void | undefined>;
1040
+ openDefaultMedia(video?: boolean, audio?: boolean): Promise<{
1041
+ streams: MediaStream;
1042
+ rtcRtpSenders: import("./lark/peer_connection").RTCMediaTrackBinding[];
1043
+ } | undefined>;
1037
1044
  openShareMediaDevice(): Promise<void | undefined>;
1038
1045
  /**
1039
1046
  * 返回已连接的音频设备列表,设备列表中的设备的 deviceId 可用来打开某个音频设备
@@ -1055,7 +1062,7 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
1055
1062
  streams: MediaStream;
1056
1063
  rtcRtpSenders: import("./lark/peer_connection").RTCMediaTrackBinding[];
1057
1064
  } | undefined>;
1058
- openUserMeida(constraints?: MediaStreamConstraints): Promise<{
1065
+ openUserMeida(constraints?: MediaStreamConstraints, reset?: boolean): Promise<{
1059
1066
  streams: MediaStream;
1060
1067
  rtcRtpSenders: import("./lark/peer_connection").RTCMediaTrackBinding[];
1061
1068
  } | undefined>;