Skip to content
This repository was archived by the owner on Oct 23, 2024. It is now read-only.

Commit da18c1a

Browse files
authored
Update client protocol document (#654)
1 parent 19c67e1 commit da18c1a

File tree

1 file changed

+43
-70
lines changed

1 file changed

+43
-70
lines changed

doc/Client-Portal Protocol.md

Lines changed: 43 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -189,20 +189,29 @@ This a format for client reconnects.
189189
190190
object(MediaInfo)::
191191
{
192-
audio: object(AudioInfo) | undefined,
193-
video: object(VideoInfo) | undefined
192+
tracks: [object(TrackInfo)]
194193
}
195194
196-
object(AudioInfo)::
195+
object(TrackInfo)::
197196
{
198-
status: "active" | "inactive" | undefined,
199-
source: "mic" | "screen-cast" | "raw-file" | "encoded-file" | undefined,
200-
format: object(AudioFormat),
201-
optional:
197+
id: string(TrackId),
198+
type: "audio" | "video",
199+
format: object(AudioFormat) | object(VideoFormat),
200+
parameters: undefined | object(VideoParameters),
201+
status: "active" | "inactive" | undefined,
202+
source: "mic" | "camera" | "screen-cast" | "raw-file" | "encoded-file" | undefined,
203+
mid: string(mid) | undefined,
204+
rid: string(rid) | undefined,
205+
optional:
202206
{
203-
format: [object(AudioFormat)] | undefined
204-
}
205-
| undefined
207+
format: [object(AudioFormat)] | [object(VideoFormat)] | undefined,
208+
parameters: {
209+
resolution: [object(Resolution)] | undefined,
210+
framerate: [number(FramerateFPS)] | undefined,
211+
bitrate: [number(BitrateKbps)] | [string(BitrateMultiple)] | undefined,
212+
keyFrameInterval: [number(KeyFrameIntervalSecond)] | undefined
213+
} | undefined,
214+
} | undefined,
206215
}
207216
208217
object(AudioFormat)::
@@ -212,30 +221,6 @@ This a format for client reconnects.
212221
channelNum: number(ChannelNumber) | undefined
213222
}
214223
215-
object(VideoInfo)::
216-
{
217-
status: "active" | "inactive" | undefined,
218-
source: "camera" | "screen-cast" | "raw-file" | "encoded-file" | undefined,
219-
original: [{
220-
format: object(VideoFormat),
221-
parameters: object(VideoParameters) | undefined,
222-
simulcastRid: string(SimulcastRid) | undefined
223-
}],
224-
optional:
225-
{
226-
format: [object(VideoFormat)] | undefined,
227-
parameters:
228-
{
229-
resolution: [object(Resolution)] | undefined,
230-
framerate: [number(FramerateFPS)] | undefined,
231-
bitrate: [number(BitrateKbps)] | [string(BitrateMultiple)] | undefined,
232-
keyFrameInterval: [number(KeyFrameIntervalSecond)] | undefined
233-
}
234-
| undefined
235-
}
236-
| undefined
237-
}
238-
239224
object(VideoFormat)::
240225
{
241226
codec: "h264" | "h265" | "vp8" | "vp9",
@@ -388,20 +373,15 @@ A publication can send either media or data, but a QUIC *transport* channel can
388373

389374
```
390375
object(WebRTCMediaOptions)::
391-
{
392-
audio: {
393-
source: "mic" | "screen-cast" | "raw-file" | "encoded-file"
394-
}
395-
| false,
396-
video: {
397-
source: "camera"| "screen-cast" | "raw-file" | "encoded-file",
398-
parameters:
399-
{
400-
resolution: object(Resolution),
401-
framerate: number(FramerateFPS)
402-
}
403-
}
404-
| false
376+
{
377+
tracks: [
378+
{
379+
type: "audio" | "video",
380+
mid: string(MID),
381+
source: "mic" | "screen-cast" | ... | "encoded-file",
382+
}
383+
]
384+
}
405385
}
406386
```
407387

@@ -466,30 +446,23 @@ A publication can send either media or data, but a QUIC *transport* channel can
466446

467447
object(MediaSubOptions)::
468448
{
469-
audio: object(AudioSubOptions) | false,
470-
video: object(VideoSubOptions) | false
471-
}
472-
473-
object(AudioSubOptions)::
474-
{
475-
from: string(StreamId)
476-
}
477-
478-
object(VideoSubOptions)::
479-
{
480-
from: string(StreamId),
481-
parameters: object(VideoParametersSpecification)/*If specific video parameters are wanted*/
482-
| undefined/*If default video parameters are wanted*/,
483-
simulcastRid: string(rid) /* if simulcastRid is used, parameters will be ignored */
484-
}
485-
486-
object(VideoParametersSpecification)::
449+
tracks: [
487450
{
488-
resolution: object(Resolution) | undefined,
489-
framerate: number(WantedFrameRateFPS) | undefined,
490-
bitrate: number(WantedBitrateKbps) | string(WantedBitrateMultiple) | undefined,
491-
keyFrameInterval: number(WantedKeyFrameIntervalSecond) | undefined
451+
type: "audio" | "video",
452+
mid: string(MID),
453+
from: string(TrackID) | string(StreamID),
454+
parameters: object(VideoParametersSpecification) | undefined,
492455
}
456+
]
457+
}
458+
459+
object(VideoParametersSpecification)::
460+
{
461+
resolution: object(Resolution) | undefined,
462+
framerate: number(WantedFrameRateFPS) | undefined,
463+
bitrate: number(WantedBitrateKbps) | string(WantedBitrateMultiple) | undefined,
464+
keyFrameInterval: number(WantedKeyFrameIntervalSecond) | undefined
465+
}
493466
**ResponseData**: The SubscriptionResult object with following definition if **ResponseStatus** is “ok”:
494467

495468
object(SubscriptionResult)::

0 commit comments

Comments
 (0)