Skip to content

Commit 51c8816

Browse files
authored
GA optimal video count (#3539)
* Add optimal video count feature to stable * Change files * Duplicate change files for beta release * updated beta api * fix conditional compilation --------- Signed-off-by: mgamis-msft <79475487+mgamis-msft@users.noreply.github.com>
1 parent 26450ca commit 51c8816

11 files changed

Lines changed: 40 additions & 6 deletions

File tree

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"type": "prerelease",
3+
"area": "feature",
4+
"workstream": "Optimal video count",
5+
"comment": "Add optimal video count feature to stable",
6+
"packageName": "@azure/communication-react",
7+
"email": "79475487+mgamis-msft@users.noreply.github.com",
8+
"dependentChangeType": "patch"
9+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"type": "prerelease",
3+
"area": "feature",
4+
"workstream": "Optimal video count",
5+
"comment": "Add optimal video count feature to stable",
6+
"packageName": "@azure/communication-react",
7+
"email": "79475487+mgamis-msft@users.noreply.github.com",
8+
"dependentChangeType": "patch"
9+
}

common/config/babel/.babelrc.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,9 @@ process.env['COMMUNICATION_REACT_FLAVOR'] !== 'beta' &&
100100
// Do not use in production code.
101101
'stabilizedDemo',
102102
// Pinned Participants
103-
'pinned-participants'
103+
'pinned-participants',
104+
// Optimal Video Count
105+
'optimal-video-count'
104106
]
105107
}
106108
]);

packages/calling-component-bindings/review/stable/calling-component-bindings.api.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -245,6 +245,7 @@ export type VideoGallerySelector = (state: CallClientState, props: CallingBaseSe
245245
localParticipant: VideoGalleryLocalParticipant;
246246
remoteParticipants: VideoGalleryRemoteParticipant[];
247247
dominantSpeakers?: string[];
248+
optimalVideoCount?: number;
248249
};
249250

250251
// (No @packageDocumentation comment for this package)

packages/calling-stateful-client/review/beta/calling-stateful-client.api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ export interface NetworkDiagnosticsState {
254254
latest: LatestNetworkDiagnostics;
255255
}
256256

257-
// @beta
257+
// @public
258258
export interface OptimalVideoCountFeatureState {
259259
maxRemoteVideoStreams: number;
260260
}

packages/calling-stateful-client/review/stable/calling-stateful-client.api.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ export interface CallState {
9393
isMuted: boolean;
9494
isScreenSharingOn: boolean;
9595
localVideoStreams: LocalVideoStreamState[];
96+
optimalVideoCount: OptimalVideoCountFeatureState;
9697
recording: RecordingCallFeature;
9798
remoteParticipants: {
9899
[keys: string]: RemoteParticipantState;
@@ -177,6 +178,11 @@ export interface NetworkDiagnosticsState {
177178
latest: LatestNetworkDiagnostics;
178179
}
179180

181+
// @public
182+
export interface OptimalVideoCountFeatureState {
183+
maxRemoteVideoStreams: number;
184+
}
185+
180186
// @public
181187
export interface RecordingCallFeature {
182188
isRecordingActive: boolean;

packages/calling-stateful-client/src/CallClientState.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ export interface LocalVideoStreamVideoEffectsState {
239239
/**
240240
* State only version of Optimal Video Count Feature {@link @azure/communication-calling#OptimalVideoCountCallFeature}.
241241
*
242-
* @beta
242+
* @public
243243
*/
244244
export interface OptimalVideoCountFeatureState {
245245
/**

packages/calling-stateful-client/src/Converter.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import { CaptionsInfo } from './CallClientState';
2727
import { _isACSCall } from './TypeGuards';
2828
import { CallCommon, IncomingCallCommon } from './BetaToStableTypes';
2929

30-
/* @conditional-compile-remove(video-background-effects) */
30+
/* @conditional-compile-remove(video-background-effects) */ /* @conditional-compile-remove(optimal-video-count) */
3131
import { Features } from '@azure/communication-calling';
3232
/* @conditional-compile-remove(video-background-effects) */
3333
import { VideoEffectName } from '@azure/communication-calling';

packages/communication-react/review/beta/communication-react.api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3269,7 +3269,7 @@ export const onResolveVideoEffectDependency: () => Promise<VideoBackgroundEffect
32693269
// @beta
32703270
export const onResolveVideoEffectDependencyLazy: () => Promise<VideoBackgroundEffectsDependency>;
32713271

3272-
// @beta
3272+
// @public
32733273
export interface OptimalVideoCountFeatureState {
32743274
maxRemoteVideoStreams: number;
32753275
}

packages/communication-react/review/stable/communication-react.api.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -557,6 +557,7 @@ export interface CallState {
557557
isMuted: boolean;
558558
isScreenSharingOn: boolean;
559559
localVideoStreams: LocalVideoStreamState[];
560+
optimalVideoCount: OptimalVideoCountFeatureState;
560561
recording: RecordingCallFeature;
561562
remoteParticipants: {
562563
[keys: string]: RemoteParticipantState;
@@ -2160,6 +2161,11 @@ export type OnRenderAvatarCallback = (
21602161
userId?: string, options?: CustomAvatarOptions,
21612162
defaultOnRender?: (props: CustomAvatarOptions) => JSX.Element) => JSX.Element;
21622163

2164+
// @public
2165+
export interface OptimalVideoCountFeatureState {
2166+
maxRemoteVideoStreams: number;
2167+
}
2168+
21632169
// @public
21642170
export interface OptionsDevice {
21652171
id: string;
@@ -2662,6 +2668,7 @@ export type VideoGallerySelector = (state: CallClientState, props: CallingBaseSe
26622668
localParticipant: VideoGalleryLocalParticipant;
26632669
remoteParticipants: VideoGalleryRemoteParticipant[];
26642670
dominantSpeakers?: string[];
2671+
optimalVideoCount?: number;
26652672
};
26662673

26672674
// @public

0 commit comments

Comments
 (0)