@@ -11,6 +11,7 @@ import type {
1111 StreamOutput ,
1212} from '@livekit/protocol' ;
1313import {
14+ AudioMixing ,
1415 EgressInfo ,
1516 ListEgressRequest ,
1617 ListEgressResponse ,
@@ -50,6 +51,10 @@ export interface RoomCompositeOptions {
5051 * custom template url. optional
5152 */
5253 customBaseUrl ?: string ;
54+ /**
55+ * audio mixing options. optional
56+ */
57+ audioMixing ?: AudioMixing ;
5358}
5459
5560export interface WebOptions {
@@ -151,6 +156,7 @@ export class EgressClient extends ServiceBase {
151156 audioOnly ?: boolean ,
152157 videoOnly ?: boolean ,
153158 customBaseUrl ?: string ,
159+ audioMixing ?: AudioMixing ,
154160 ) : Promise < EgressInfo > ;
155161 async startRoomCompositeEgress (
156162 roomName : string ,
@@ -160,6 +166,7 @@ export class EgressClient extends ServiceBase {
160166 audioOnly ?: boolean ,
161167 videoOnly ?: boolean ,
162168 customBaseUrl ?: string ,
169+ audioMixing ?: AudioMixing ,
163170 ) : Promise < EgressInfo > {
164171 let layout : string | undefined ;
165172 if ( optsOrLayout !== undefined ) {
@@ -172,13 +179,15 @@ export class EgressClient extends ServiceBase {
172179 audioOnly = opts . audioOnly ;
173180 videoOnly = opts . videoOnly ;
174181 customBaseUrl = opts . customBaseUrl ;
182+ audioMixing = opts . audioMixing ;
175183 }
176184 }
177185
178186 layout ??= '' ;
179187 audioOnly ??= false ;
180188 videoOnly ??= false ;
181189 customBaseUrl ??= '' ;
190+ audioMixing ??= AudioMixing . DEFAULT_MIXING ;
182191
183192 const {
184193 output : legacyOutput ,
@@ -193,6 +202,7 @@ export class EgressClient extends ServiceBase {
193202 roomName,
194203 layout,
195204 audioOnly,
205+ audioMixing,
196206 videoOnly,
197207 customBaseUrl,
198208 output : legacyOutput ,
0 commit comments