@livo-tv/sdk 1.5.0 → 1.6.0
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/dist/studio/index.cjs +1038 -259
- package/dist/studio/index.cjs.map +1 -1
- package/dist/studio/index.d.cts +51 -2
- package/dist/studio/index.d.ts +51 -2
- package/dist/studio/index.js +1039 -261
- package/dist/studio/index.js.map +1 -1
- package/package.json +3 -2
package/dist/studio/index.d.cts
CHANGED
|
@@ -9,6 +9,7 @@ type StudioStreamSummary = {
|
|
|
9
9
|
title: string;
|
|
10
10
|
status: string;
|
|
11
11
|
encoderLostAt?: number | null;
|
|
12
|
+
captionsEnabled?: boolean;
|
|
12
13
|
};
|
|
13
14
|
type StudioSession = {
|
|
14
15
|
authToken: string;
|
|
@@ -113,6 +114,15 @@ declare class StudioControlClient {
|
|
|
113
114
|
declare function createStudioControlClient(options: StudioControlClientOptions): StudioControlClient;
|
|
114
115
|
declare function controlActionsFromClient(client: StudioControlClient): StudioControlActions;
|
|
115
116
|
|
|
117
|
+
type StudioVideoFilter = "none" | "grayscale" | "sepia" | "warm" | "cool" | "bright";
|
|
118
|
+
type StudioVideoBackground = "none" | "blur" | "image";
|
|
119
|
+
type StudioVideoEffectsConfig = {
|
|
120
|
+
background: StudioVideoBackground;
|
|
121
|
+
blurStrength: number;
|
|
122
|
+
imageUrl?: string;
|
|
123
|
+
filter: StudioVideoFilter;
|
|
124
|
+
};
|
|
125
|
+
|
|
116
126
|
type StudioDeviceKind = "audio" | "video" | "speaker";
|
|
117
127
|
type StudioDeviceOption = {
|
|
118
128
|
deviceId: string;
|
|
@@ -212,6 +222,8 @@ type StudioMeetingHandle = {
|
|
|
212
222
|
listDevices: () => Promise<StudioDevices>;
|
|
213
223
|
setDevice: (kind: StudioDeviceKind, deviceId: string) => Promise<void>;
|
|
214
224
|
setDisplayName: (name: string) => Promise<void>;
|
|
225
|
+
setVideoEffects: (config: StudioVideoEffectsConfig) => Promise<void>;
|
|
226
|
+
videoEffects: () => StudioVideoEffectsConfig;
|
|
215
227
|
livestreamState: () => string | null;
|
|
216
228
|
roomState: () => string | null;
|
|
217
229
|
startLivestream: () => Promise<void>;
|
|
@@ -388,6 +400,36 @@ declare function studioRoomLabels(t: (key: string, values?: Record<string, strin
|
|
|
388
400
|
chatUnpin: string;
|
|
389
401
|
chatSave: string;
|
|
390
402
|
waitingSkeleton: string;
|
|
403
|
+
more: string;
|
|
404
|
+
captions: string;
|
|
405
|
+
captionsOn: string;
|
|
406
|
+
captionsOff: string;
|
|
407
|
+
captionsNotReady: string;
|
|
408
|
+
captionsDelayed: string;
|
|
409
|
+
captionsLanguage: string;
|
|
410
|
+
captionsSize: string;
|
|
411
|
+
captionsSizeS: string;
|
|
412
|
+
captionsSizeM: string;
|
|
413
|
+
captionsSizeL: string;
|
|
414
|
+
settingsGeneral: string;
|
|
415
|
+
settingsAudio: string;
|
|
416
|
+
settingsVideo: string;
|
|
417
|
+
settingsEffects: string;
|
|
418
|
+
settingsSubtitles: string;
|
|
419
|
+
effectNone: string;
|
|
420
|
+
effectBlur: string;
|
|
421
|
+
effectBlurStrong: string;
|
|
422
|
+
effectBackgrounds: string;
|
|
423
|
+
effectFilters: string;
|
|
424
|
+
effectFilterNone: string;
|
|
425
|
+
effectFilterGrayscale: string;
|
|
426
|
+
effectFilterSepia: string;
|
|
427
|
+
effectFilterWarm: string;
|
|
428
|
+
effectFilterCool: string;
|
|
429
|
+
effectFilterBright: string;
|
|
430
|
+
localeEn: string;
|
|
431
|
+
localeEs: string;
|
|
432
|
+
localePt: string;
|
|
391
433
|
};
|
|
392
434
|
|
|
393
435
|
type StudioDeviceSelection = {
|
|
@@ -396,7 +438,7 @@ type StudioDeviceSelection = {
|
|
|
396
438
|
speaker: string;
|
|
397
439
|
};
|
|
398
440
|
|
|
399
|
-
declare function StudioRoom({ session, meeting, control, onRefreshStatus, onRejoin, labels, reducedMotion, embed, chrome, playerOrigin, windowGate, initialCameraOn, initialMuted, initialDevices, appDownloadUrl, }: {
|
|
441
|
+
declare function StudioRoom({ session, meeting, control, onRefreshStatus, onRejoin, labels, reducedMotion, embed, chrome, playerOrigin, windowGate, initialCameraOn, initialMuted, initialDevices, appDownloadUrl, captionsBaseUrl, apiUrl, cdnBase, }: {
|
|
400
442
|
session: StudioSession;
|
|
401
443
|
meeting: StudioMeetingHandle;
|
|
402
444
|
control: StudioControlActions;
|
|
@@ -414,6 +456,9 @@ declare function StudioRoom({ session, meeting, control, onRefreshStatus, onRejo
|
|
|
414
456
|
initialMuted?: boolean;
|
|
415
457
|
initialDevices?: StudioDeviceSelection;
|
|
416
458
|
appDownloadUrl?: string;
|
|
459
|
+
captionsBaseUrl?: string;
|
|
460
|
+
apiUrl?: string;
|
|
461
|
+
cdnBase?: string;
|
|
417
462
|
}): react.JSX.Element;
|
|
418
463
|
|
|
419
464
|
declare function StudioSkeleton(): react.JSX.Element;
|
|
@@ -532,5 +577,9 @@ declare function getStudioJoinStatus(token: string, apiUrl?: string, fetchFn?: t
|
|
|
532
577
|
streamStatus: string | null;
|
|
533
578
|
} | "ended">;
|
|
534
579
|
declare function getPublicStreamStatus(streamId: string, apiUrl?: string, fetchFn?: typeof fetch): Promise<string | null>;
|
|
580
|
+
declare function getPublicStreamMeta(streamId: string, apiUrl?: string, fetchFn?: typeof fetch): Promise<{
|
|
581
|
+
status: string;
|
|
582
|
+
captionsEnabled: boolean;
|
|
583
|
+
} | null>;
|
|
535
584
|
|
|
536
|
-
export { LivoGuestStudio, LivoHostStudio, StudioApiError, type StudioControlActions, StudioControlClient, type StudioControlClientOptions, StudioControlError, StudioGuestLobby, type StudioLobbyLabels, type StudioMeetingHandle, type StudioRole, StudioRoom, type StudioRoomLabels, type StudioSession, StudioSkeleton, StudioWindowGate, StudioWindowGateContext, controlActionsFromClient, createStudioControlClient, getPublicStreamStatus, getStudioJoinStatus, joinStudioGuest, redeemStudioHost, studioErrorCode, studioRoomLabels, usePrefersReducedMotion, useRealtimeKitMeeting, useStudioWindowGate };
|
|
585
|
+
export { LivoGuestStudio, LivoHostStudio, StudioApiError, type StudioControlActions, StudioControlClient, type StudioControlClientOptions, StudioControlError, StudioGuestLobby, type StudioLobbyLabels, type StudioMeetingHandle, type StudioRole, StudioRoom, type StudioRoomLabels, type StudioSession, StudioSkeleton, StudioWindowGate, StudioWindowGateContext, controlActionsFromClient, createStudioControlClient, getPublicStreamMeta, getPublicStreamStatus, getStudioJoinStatus, joinStudioGuest, redeemStudioHost, studioErrorCode, studioRoomLabels, usePrefersReducedMotion, useRealtimeKitMeeting, useStudioWindowGate };
|
package/dist/studio/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ type StudioStreamSummary = {
|
|
|
9
9
|
title: string;
|
|
10
10
|
status: string;
|
|
11
11
|
encoderLostAt?: number | null;
|
|
12
|
+
captionsEnabled?: boolean;
|
|
12
13
|
};
|
|
13
14
|
type StudioSession = {
|
|
14
15
|
authToken: string;
|
|
@@ -113,6 +114,15 @@ declare class StudioControlClient {
|
|
|
113
114
|
declare function createStudioControlClient(options: StudioControlClientOptions): StudioControlClient;
|
|
114
115
|
declare function controlActionsFromClient(client: StudioControlClient): StudioControlActions;
|
|
115
116
|
|
|
117
|
+
type StudioVideoFilter = "none" | "grayscale" | "sepia" | "warm" | "cool" | "bright";
|
|
118
|
+
type StudioVideoBackground = "none" | "blur" | "image";
|
|
119
|
+
type StudioVideoEffectsConfig = {
|
|
120
|
+
background: StudioVideoBackground;
|
|
121
|
+
blurStrength: number;
|
|
122
|
+
imageUrl?: string;
|
|
123
|
+
filter: StudioVideoFilter;
|
|
124
|
+
};
|
|
125
|
+
|
|
116
126
|
type StudioDeviceKind = "audio" | "video" | "speaker";
|
|
117
127
|
type StudioDeviceOption = {
|
|
118
128
|
deviceId: string;
|
|
@@ -212,6 +222,8 @@ type StudioMeetingHandle = {
|
|
|
212
222
|
listDevices: () => Promise<StudioDevices>;
|
|
213
223
|
setDevice: (kind: StudioDeviceKind, deviceId: string) => Promise<void>;
|
|
214
224
|
setDisplayName: (name: string) => Promise<void>;
|
|
225
|
+
setVideoEffects: (config: StudioVideoEffectsConfig) => Promise<void>;
|
|
226
|
+
videoEffects: () => StudioVideoEffectsConfig;
|
|
215
227
|
livestreamState: () => string | null;
|
|
216
228
|
roomState: () => string | null;
|
|
217
229
|
startLivestream: () => Promise<void>;
|
|
@@ -388,6 +400,36 @@ declare function studioRoomLabels(t: (key: string, values?: Record<string, strin
|
|
|
388
400
|
chatUnpin: string;
|
|
389
401
|
chatSave: string;
|
|
390
402
|
waitingSkeleton: string;
|
|
403
|
+
more: string;
|
|
404
|
+
captions: string;
|
|
405
|
+
captionsOn: string;
|
|
406
|
+
captionsOff: string;
|
|
407
|
+
captionsNotReady: string;
|
|
408
|
+
captionsDelayed: string;
|
|
409
|
+
captionsLanguage: string;
|
|
410
|
+
captionsSize: string;
|
|
411
|
+
captionsSizeS: string;
|
|
412
|
+
captionsSizeM: string;
|
|
413
|
+
captionsSizeL: string;
|
|
414
|
+
settingsGeneral: string;
|
|
415
|
+
settingsAudio: string;
|
|
416
|
+
settingsVideo: string;
|
|
417
|
+
settingsEffects: string;
|
|
418
|
+
settingsSubtitles: string;
|
|
419
|
+
effectNone: string;
|
|
420
|
+
effectBlur: string;
|
|
421
|
+
effectBlurStrong: string;
|
|
422
|
+
effectBackgrounds: string;
|
|
423
|
+
effectFilters: string;
|
|
424
|
+
effectFilterNone: string;
|
|
425
|
+
effectFilterGrayscale: string;
|
|
426
|
+
effectFilterSepia: string;
|
|
427
|
+
effectFilterWarm: string;
|
|
428
|
+
effectFilterCool: string;
|
|
429
|
+
effectFilterBright: string;
|
|
430
|
+
localeEn: string;
|
|
431
|
+
localeEs: string;
|
|
432
|
+
localePt: string;
|
|
391
433
|
};
|
|
392
434
|
|
|
393
435
|
type StudioDeviceSelection = {
|
|
@@ -396,7 +438,7 @@ type StudioDeviceSelection = {
|
|
|
396
438
|
speaker: string;
|
|
397
439
|
};
|
|
398
440
|
|
|
399
|
-
declare function StudioRoom({ session, meeting, control, onRefreshStatus, onRejoin, labels, reducedMotion, embed, chrome, playerOrigin, windowGate, initialCameraOn, initialMuted, initialDevices, appDownloadUrl, }: {
|
|
441
|
+
declare function StudioRoom({ session, meeting, control, onRefreshStatus, onRejoin, labels, reducedMotion, embed, chrome, playerOrigin, windowGate, initialCameraOn, initialMuted, initialDevices, appDownloadUrl, captionsBaseUrl, apiUrl, cdnBase, }: {
|
|
400
442
|
session: StudioSession;
|
|
401
443
|
meeting: StudioMeetingHandle;
|
|
402
444
|
control: StudioControlActions;
|
|
@@ -414,6 +456,9 @@ declare function StudioRoom({ session, meeting, control, onRefreshStatus, onRejo
|
|
|
414
456
|
initialMuted?: boolean;
|
|
415
457
|
initialDevices?: StudioDeviceSelection;
|
|
416
458
|
appDownloadUrl?: string;
|
|
459
|
+
captionsBaseUrl?: string;
|
|
460
|
+
apiUrl?: string;
|
|
461
|
+
cdnBase?: string;
|
|
417
462
|
}): react.JSX.Element;
|
|
418
463
|
|
|
419
464
|
declare function StudioSkeleton(): react.JSX.Element;
|
|
@@ -532,5 +577,9 @@ declare function getStudioJoinStatus(token: string, apiUrl?: string, fetchFn?: t
|
|
|
532
577
|
streamStatus: string | null;
|
|
533
578
|
} | "ended">;
|
|
534
579
|
declare function getPublicStreamStatus(streamId: string, apiUrl?: string, fetchFn?: typeof fetch): Promise<string | null>;
|
|
580
|
+
declare function getPublicStreamMeta(streamId: string, apiUrl?: string, fetchFn?: typeof fetch): Promise<{
|
|
581
|
+
status: string;
|
|
582
|
+
captionsEnabled: boolean;
|
|
583
|
+
} | null>;
|
|
535
584
|
|
|
536
|
-
export { LivoGuestStudio, LivoHostStudio, StudioApiError, type StudioControlActions, StudioControlClient, type StudioControlClientOptions, StudioControlError, StudioGuestLobby, type StudioLobbyLabels, type StudioMeetingHandle, type StudioRole, StudioRoom, type StudioRoomLabels, type StudioSession, StudioSkeleton, StudioWindowGate, StudioWindowGateContext, controlActionsFromClient, createStudioControlClient, getPublicStreamStatus, getStudioJoinStatus, joinStudioGuest, redeemStudioHost, studioErrorCode, studioRoomLabels, usePrefersReducedMotion, useRealtimeKitMeeting, useStudioWindowGate };
|
|
585
|
+
export { LivoGuestStudio, LivoHostStudio, StudioApiError, type StudioControlActions, StudioControlClient, type StudioControlClientOptions, StudioControlError, StudioGuestLobby, type StudioLobbyLabels, type StudioMeetingHandle, type StudioRole, StudioRoom, type StudioRoomLabels, type StudioSession, StudioSkeleton, StudioWindowGate, StudioWindowGateContext, controlActionsFromClient, createStudioControlClient, getPublicStreamMeta, getPublicStreamStatus, getStudioJoinStatus, joinStudioGuest, redeemStudioHost, studioErrorCode, studioRoomLabels, usePrefersReducedMotion, useRealtimeKitMeeting, useStudioWindowGate };
|