diff --git a/openvidu-testapp/src/app/components/dialogs/room-api-dialog/room-api-dialog.component.html b/openvidu-testapp/src/app/components/dialogs/room-api-dialog/room-api-dialog.component.html index fee9ce6e..db0e1d51 100644 --- a/openvidu-testapp/src/app/components/dialogs/room-api-dialog/room-api-dialog.component.html +++ b/openvidu-testapp/src/app/components/dialogs/room-api-dialog/room-api-dialog.component.html @@ -197,6 +197,16 @@ Transcoding + + + URL type + + + {{urlType}} + + + + diff --git a/openvidu-testapp/src/app/components/dialogs/room-api-dialog/room-api-dialog.component.ts b/openvidu-testapp/src/app/components/dialogs/room-api-dialog/room-api-dialog.component.ts index 3654196f..d7c937fa 100644 --- a/openvidu-testapp/src/app/components/dialogs/room-api-dialog/room-api-dialog.component.ts +++ b/openvidu-testapp/src/app/components/dialogs/room-api-dialog/room-api-dialog.component.ts @@ -68,6 +68,9 @@ export class RoomApiDialogComponent { ingressEnableTranscoding: boolean = false; ingressVideoEncodingPresetSelected?: IngressVideoEncodingPreset = undefined; + INGRESS_URL_TYPES: string[] = ['HTTP', 'SRT', 'RTSP']; + ingressUrlType: string = 'HTTP'; + response: string; INGRESS_INPUT_TYPES: { value: IngressInput; viewValue: string }[] = [ @@ -303,6 +306,7 @@ export class RoomApiDialogComponent { const ingress = await this.roomApiService.createIngress( this.ingressRoomName, this.inputTypeSelected, + this.ingressUrlType, this.ingressWithAudio, this.ingressWithVideo, this.ingressVideoCodecSelected, diff --git a/openvidu-testapp/src/app/services/room-api.service.ts b/openvidu-testapp/src/app/services/room-api.service.ts index 8907c92c..19d76b4a 100644 --- a/openvidu-testapp/src/app/services/room-api.service.ts +++ b/openvidu-testapp/src/app/services/room-api.service.ts @@ -208,6 +208,7 @@ export class RoomApiService { async createIngress( room_name: string, inputType: IngressInput, + urlInputType: string, withAudio: boolean, withVideo: boolean, codec: VideoCodec, @@ -216,13 +217,23 @@ export class RoomApiService { preset?: IngressVideoEncodingPreset ): Promise { let url; - if (!withVideo) { - url = - 'https://s3.eu-west-1.amazonaws.com/public.openvidu.io/bbb_sunflower_1080p_60fps_normal_onlyaudio.mp3'; - } else { - url = withAudio - ? 'https://s3.eu-west-1.amazonaws.com/public.openvidu.io/bbb_sunflower_1080p_60fps_normal.mp4' - : 'https://s3.eu-west-1.amazonaws.com/public.openvidu.io/bbb_sunflower_1080p_60fps_normal_noaudio.mp4'; + switch (urlInputType) { + case 'HTTP': + if (!withVideo) { + url = + 'https://s3.eu-west-1.amazonaws.com/public.openvidu.io/bbb_sunflower_1080p_60fps_normal_onlyaudio.mp3'; + } else { + url = withAudio + ? 'https://s3.eu-west-1.amazonaws.com/public.openvidu.io/bbb_sunflower_1080p_60fps_normal.mp4' + : 'https://s3.eu-west-1.amazonaws.com/public.openvidu.io/bbb_sunflower_1080p_60fps_normal_noaudio.mp4'; + } + break; + case 'SRT': + url = 'srt://127.0.0.1:8554/'; + break; + case 'RTSP': + url = 'rtsp://127.0.0.1:8554/'; + break; } let options: CreateIngressOptions = { name: inputType + '-' + room_name,