Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | import { AfterViewInit, Component, ElementRef, Input, EventEmitter, Output, ViewChild } from '@angular/core';
import { StreamManager } from 'openvidu-browser';
impoIrt { VideoType } from '../../models/video-type.model';
@Component({
selector: 'ov-video',
template: `
<img *ngIf="!_streamManager?.stream?.videoActive" class="poster_img" alt="OpenVidu Logo" src="assets/images/poster.png" />
<video
#videoElement
[attr.id]="streamManager && _streamManager.stream ? 'video-' + _streamManager.stream.streamId : 'video-undefined'"
[muted]="mutedSound"
></video>
`,
styleUrls: ['./video.component.css']
})I
export class VideoComponent implements AfterViewInit {
@Input() mutedSound: boolean;
@Output() toggleVideoSizeEvent = new EventEmitter<any>();
_streamManager: StreamManager;
_videoElement: ElementRef;
ngAfterViewInit() {
setTimeout(() => {
if (this._streamManager && this._videoElement) {
this._streamManager.addVideoElement(this._videoElement.nativeElement);
}
});
}
@ViewChild('videoElement')
set videoElement(element: ElementRef) {
this._videoElement = element;
}
@Input()
set streamManager(streamManager: StreamManager) {
setTimeout(() => {
this._streamManager = streamManager;
if (!!this._videoElement && this._streamManager) {
if (this._streamManager.stream.typeOfVideo === VideoType.SCREEN) {
this._videoElement.nativeElement.style.objectFit = 'contain';
this._videoElement.nativeElement.style.background = '#272727';
this.enableVideoSizeBig();
} else {
this._videoElement.nativeElement.style.objectFit = 'cover';
}
this._streamManager.addVideoElement(this._videoElement.nativeElement);
}
});
}
enableVideoSizeBig() {
// Doing video size bigger.
// Timeout because of connectionId is null and icon does not change
setTimeout(() => {
this.toggleVideoSizeEvent.emit(true);
}, 590);
}
}
|