aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/controllers/api/videos
diff options
context:
space:
mode:
authorRigel Kent <sendmemail@rigelk.eu>2021-01-15 15:56:56 +0100
committerGitHub <noreply@github.com>2021-01-15 15:56:56 +0100
commit454c20fa7cdb05eba7f1be3c83389b54807af0b3 (patch)
treee9b364da69eaf88f0470414c506c3b5631984c60 /server/controllers/api/videos
parentd43c6b1ffc5e6c895f9e9f9de6625f17a9755c20 (diff)
downloadPeerTube-454c20fa7cdb05eba7f1be3c83389b54807af0b3.tar.gz
PeerTube-454c20fa7cdb05eba7f1be3c83389b54807af0b3.tar.zst
PeerTube-454c20fa7cdb05eba7f1be3c83389b54807af0b3.zip
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
Diffstat (limited to 'server/controllers/api/videos')
-rw-r--r--server/controllers/api/videos/import.ts12
1 files changed, 6 insertions, 6 deletions
diff --git a/server/controllers/api/videos/import.ts b/server/controllers/api/videos/import.ts
index 82e084c54..9702e219a 100644
--- a/server/controllers/api/videos/import.ts
+++ b/server/controllers/api/videos/import.ts
@@ -146,9 +146,10 @@ async function addYoutubeDLImport (req: express.Request, res: express.Response)
146 } catch (err) { 146 } catch (err) {
147 logger.info('Cannot fetch information from import for URL %s.', targetUrl, { err }) 147 logger.info('Cannot fetch information from import for URL %s.', targetUrl, { err })
148 148
149 return res.status(HttpStatusCode.BAD_REQUEST_400).json({ 149 return res.status(HttpStatusCode.BAD_REQUEST_400)
150 error: 'Cannot fetch remote information of this URL.' 150 .json({
151 }).end() 151 error: 'Cannot fetch remote information of this URL.'
152 })
152 } 153 }
153 154
154 const video = buildVideo(res.locals.videoChannel.id, body, youtubeDLInfo) 155 const video = buildVideo(res.locals.videoChannel.id, body, youtubeDLInfo)
@@ -219,9 +220,8 @@ async function addYoutubeDLImport (req: express.Request, res: express.Response)
219 videoImportId: videoImport.id, 220 videoImportId: videoImport.id,
220 generateThumbnail: !thumbnailModel, 221 generateThumbnail: !thumbnailModel,
221 generatePreview: !previewModel, 222 generatePreview: !previewModel,
222 fileExt: youtubeDLInfo.fileExt 223 fileExt: `.${youtubeDLInfo.ext || 'mp4'}`,
223 ? `.${youtubeDLInfo.fileExt}` 224 mergeExt: youtubeDLInfo.mergeExt ? `.${youtubeDLInfo.mergeExt}` : ''
224 : '.mp4'
225 } 225 }
226 await JobQueue.Instance.createJobWithPromise({ type: 'video-import', payload }) 226 await JobQueue.Instance.createJobWithPromise({ type: 'video-import', payload })
227 227