From 454c20fa7cdb05eba7f1be3c83389b54807af0b3 Mon Sep 17 00:00:00 2001 From: Rigel Kent Date: Fri, 15 Jan 2021 15:56:56 +0100 Subject: stricter youtubedl format selectors (#3516) * stricter youtubedl format selectors make sure selectors avoid av1, and otherwise match as closely to the maximum resolution enabled for transcoding * add support for merge formats in youtubedl * avoid vp9.2 in youtubedl to avoid any HDR * move getEnabledResolutions, safer replace of imported extension * add test for youtube-dl selectors --- shared/extra-utils/videos/video-imports.ts | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'shared/extra-utils/videos/video-imports.ts') diff --git a/shared/extra-utils/videos/video-imports.ts b/shared/extra-utils/videos/video-imports.ts index 52e0075fb..259b8a314 100644 --- a/shared/extra-utils/videos/video-imports.ts +++ b/shared/extra-utils/videos/video-imports.ts @@ -4,7 +4,28 @@ import { makeGetRequest, makeUploadRequest } from '../requests/requests' import { HttpStatusCode } from '../../../shared/core-utils/miscs/http-error-codes' function getYoutubeVideoUrl () { - return 'http://www.youtube.com/watch?v=msX3jv1XdvM' + return 'https://www.youtube.com/watch?v=msX3jv1XdvM' +} + +function getYoutubeHDRVideoUrl () { + /** + * The video is used to check format-selection correctness wrt. HDR, + * which brings its own set of oddities outside of a MediaSource. + * FIXME: refactor once HDR is supported at playback + * + * The video needs to have the following format_ids: + * (which you can check by using `youtube-dl -F`): + * - 303 (1080p webm vp9) + * - 299 (1080p mp4 avc1) + * - 335 (1080p webm vp9.2 HDR) + * + * 15 jan. 2021: TEST VIDEO NOT CURRENTLY PROVIDING + * - 400 (1080p mp4 av01) + * - 315 (2160p webm vp9 HDR) + * - 337 (2160p webm vp9.2 HDR) + * - 401 (2160p mp4 av01 HDR) + */ + return 'https://www.youtube.com/watch?v=MSJ25EqI19c' } function getMagnetURI () { @@ -61,6 +82,7 @@ function getMyVideoImports (url: string, token: string, sort?: string) { export { getBadVideoUrl, getYoutubeVideoUrl, + getYoutubeHDRVideoUrl, importVideo, getMagnetURI, getMyVideoImports, -- cgit v1.2.3