From 5072b9092284e96428ed919dbeed60c46dd96ba4 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 4 Jun 2020 15:03:30 +0200 Subject: Sort AP files by resolution desc --- server/models/video/video-format-utils.ts | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'server/models/video') diff --git a/server/models/video/video-format-utils.ts b/server/models/video/video-format-utils.ts index d71a3a5db..6d38815bb 100644 --- a/server/models/video/video-format-utils.ts +++ b/server/models/video/video-format-utils.ts @@ -175,6 +175,12 @@ function streamingPlaylistsModelToFormattedJSON (video: MVideo, playlists: MStre }) } +function sortByResolutionDesc (fileA: MVideoFile, fileB: MVideoFile) { + if (fileA.resolution < fileB.resolution) return 1 + if (fileA.resolution === fileB.resolution) return 0 + return -1 +} + function videoFilesModelToFormattedJSON ( model: MVideo | MStreamingPlaylistVideo, baseUrlHttp: string, @@ -183,7 +189,8 @@ function videoFilesModelToFormattedJSON ( ): VideoFile[] { const video = extractVideo(model) - return videoFiles + return [ ...videoFiles ] + .sort(sortByResolutionDesc) .map(videoFile => { return { resolution: { @@ -200,11 +207,6 @@ function videoFilesModelToFormattedJSON ( metadataUrl: video.getVideoFileMetadataUrl(videoFile, baseUrlHttp) } as VideoFile }) - .sort((a, b) => { - if (a.resolution.id < b.resolution.id) return 1 - if (a.resolution.id === b.resolution.id) return 0 - return -1 - }) } function addVideoFilesInAPAcc ( @@ -214,7 +216,9 @@ function addVideoFilesInAPAcc ( baseUrlWs: string, files: MVideoFile[] ) { - for (const file of files) { + const sortedFiles = [ ...files ].sort(sortByResolutionDesc) + + for (const file of sortedFiles) { acc.push({ type: 'Link', mediaType: MIMETYPES.VIDEO.EXT_MIMETYPE[file.extname] as any, -- cgit v1.2.3