]>
Commit | Line | Data |
---|---|---|
1 | ||
2 | import { VideoImportCreate } from '../../models/videos' | |
3 | import { makeGetRequest, makeUploadRequest } from '../requests/requests' | |
4 | import { HttpStatusCode } from '../../../shared/core-utils/miscs/http-error-codes' | |
5 | ||
6 | function getYoutubeVideoUrl () { | |
7 | return 'https://www.youtube.com/watch?v=msX3jv1XdvM' | |
8 | } | |
9 | ||
10 | function getYoutubeHDRVideoUrl () { | |
11 | /** | |
12 | * The video is used to check format-selection correctness wrt. HDR, | |
13 | * which brings its own set of oddities outside of a MediaSource. | |
14 | * FIXME: refactor once HDR is supported at playback | |
15 | * | |
16 | * The video needs to have the following format_ids: | |
17 | * (which you can check by using `youtube-dl <url> -F`): | |
18 | * - 303 (1080p webm vp9) | |
19 | * - 299 (1080p mp4 avc1) | |
20 | * - 335 (1080p webm vp9.2 HDR) | |
21 | * | |
22 | * 15 jan. 2021: TEST VIDEO NOT CURRENTLY PROVIDING | |
23 | * - 400 (1080p mp4 av01) | |
24 | * - 315 (2160p webm vp9 HDR) | |
25 | * - 337 (2160p webm vp9.2 HDR) | |
26 | * - 401 (2160p mp4 av01 HDR) | |
27 | */ | |
28 | return 'https://www.youtube.com/watch?v=qR5vOXbZsI4' | |
29 | } | |
30 | ||
31 | function getMagnetURI () { | |
32 | // eslint-disable-next-line max-len | |
33 | return 'magnet:?xs=https%3A%2F%2Fpeertube2.cpy.re%2Fstatic%2Ftorrents%2Fb209ca00-c8bb-4b2b-b421-1ede169f3dbc-720.torrent&xt=urn:btih:0f498834733e8057ed5c6f2ee2b4efd8d84a76ee&dn=super+peertube2+video&tr=wss%3A%2F%2Fpeertube2.cpy.re%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fpeertube2.cpy.re%2Ftracker%2Fannounce&ws=https%3A%2F%2Fpeertube2.cpy.re%2Fstatic%2Fwebseed%2Fb209ca00-c8bb-4b2b-b421-1ede169f3dbc-720.mp4' | |
34 | } | |
35 | ||
36 | function getBadVideoUrl () { | |
37 | return 'https://download.cpy.re/peertube/bad_video.mp4' | |
38 | } | |
39 | ||
40 | function getGoodVideoUrl () { | |
41 | return 'https://download.cpy.re/peertube/good_video.mp4' | |
42 | } | |
43 | ||
44 | function importVideo ( | |
45 | url: string, | |
46 | token: string, | |
47 | attributes: VideoImportCreate & { torrentfile?: string }, | |
48 | statusCodeExpected = HttpStatusCode.OK_200 | |
49 | ) { | |
50 | const path = '/api/v1/videos/imports' | |
51 | ||
52 | let attaches: any = {} | |
53 | if (attributes.torrentfile) attaches = { torrentfile: attributes.torrentfile } | |
54 | ||
55 | return makeUploadRequest({ | |
56 | url, | |
57 | path, | |
58 | token, | |
59 | attaches, | |
60 | fields: attributes, | |
61 | statusCodeExpected | |
62 | }) | |
63 | } | |
64 | ||
65 | function getMyVideoImports (url: string, token: string, sort?: string) { | |
66 | const path = '/api/v1/users/me/videos/imports' | |
67 | ||
68 | const query = {} | |
69 | if (sort) query['sort'] = sort | |
70 | ||
71 | return makeGetRequest({ | |
72 | url, | |
73 | query, | |
74 | path, | |
75 | token, | |
76 | statusCodeExpected: HttpStatusCode.OK_200 | |
77 | }) | |
78 | } | |
79 | ||
80 | // --------------------------------------------------------------------------- | |
81 | ||
82 | export { | |
83 | getBadVideoUrl, | |
84 | getYoutubeVideoUrl, | |
85 | getYoutubeHDRVideoUrl, | |
86 | importVideo, | |
87 | getMagnetURI, | |
88 | getMyVideoImports, | |
89 | getGoodVideoUrl | |
90 | } |