openvidu-components: Used proxy for requesting the recording thumbnail

pull/672/merge
csantosm 2022-08-03 18:38:37 +02:00
parent 6b27a44542
commit dbf8a84981
3 changed files with 21 additions and 2 deletions

View File

@ -72,7 +72,7 @@
(recording.properties.outputMode === 'COMPOSED' || (recording.properties.outputMode === 'COMPOSED' ||
recording.properties.outputMode === 'COMPOSED_QUICK_START') recording.properties.outputMode === 'COMPOSED_QUICK_START')
" "
[src]="recording.thumbnailB64" [src]="recording.url | thumbnailUrl"
/> />
<div class="video-btns"> <div class="video-btns">
<button <button

View File

@ -18,7 +18,7 @@ import { DeleteDialogComponent } from './components/dialogs/delete-recording.com
import { LinkifyPipe } from './pipes/linkify.pipe'; import { LinkifyPipe } from './pipes/linkify.pipe';
import { TranslatePipe } from './pipes/translate.pipe'; import { TranslatePipe } from './pipes/translate.pipe';
import { StreamTypesEnabledPipe, ParticipantStreamsPipe } from './pipes/participant.pipe'; import { StreamTypesEnabledPipe, ParticipantStreamsPipe } from './pipes/participant.pipe';
import { DurationFromSecondsPipe, SearchByStringPropertyPipe } from './pipes/recording.pipe'; import { DurationFromSecondsPipe, SearchByStringPropertyPipe, ThumbnailFromUrlPipe } from './pipes/recording.pipe';
import { OpenViduAngularConfig } from './config/openvidu-angular.config'; import { OpenViduAngularConfig } from './config/openvidu-angular.config';
import { CdkOverlayContainer } from './config/custom-cdk-overlay'; import { CdkOverlayContainer } from './config/custom-cdk-overlay';
@ -102,6 +102,7 @@ const privateComponents = [
ParticipantStreamsPipe, ParticipantStreamsPipe,
DurationFromSecondsPipe, DurationFromSecondsPipe,
SearchByStringPropertyPipe, SearchByStringPropertyPipe,
ThumbnailFromUrlPipe,
StreamTypesEnabledPipe, StreamTypesEnabledPipe,
TranslatePipe TranslatePipe
], ],

View File

@ -50,3 +50,21 @@ export class SearchByStringPropertyPipe implements PipeTransform {
}); });
} }
} }
/**
* @internal
*/
@Pipe({
name: 'thumbnailUrl'
})
export class ThumbnailFromUrlPipe implements PipeTransform {
transform(url: string): string {
if(url.includes('.mp4')){
const lastPart = url.split('/').pop();
let thumbnailUrl = lastPart?.replace('mp4', 'jpg');
thumbnailUrl = `recordings/${thumbnailUrl?.split('.')[0]}/${thumbnailUrl}`;
return thumbnailUrl;
}
return '';
}
}