### IMPORTANT NOTES
* The minimum ffmpeg version required is now 4.1
+ * Deprecate static routes that will be removed in 3.0 (you may not have to do anything if you used paths returned by the video REST API):
+ * `/static/avatars/`: use `/lazy-static/avatars/` instead
+ * `/static/previews/`: use `/lazy-static/previews/` instead
+ * `/static/video-captions/`: use `/lazy-static/video-captions/` instead
* Use `playlistPosition` URL parameter for playlists instead of `videoId` to set the current playlist position
### Maintenance
}
const LAZY_STATIC_PATHS = {
AVATARS: '/lazy-static/avatars/',
- PREVIEWS: '/static/previews/',
- VIDEO_CAPTIONS: '/static/video-captions/'
+ PREVIEWS: '/lazy-static/previews/',
+ VIDEO_CAPTIONS: '/lazy-static/video-captions/'
}
// Cache control
const expectedHtml = '<iframe width="560" height="315" sandbox="allow-same-origin allow-scripts" ' +
`src="http://localhost:${server.port}/videos/embed/${server.video.uuid}" ` +
'frameborder="0" allowfullscreen></iframe>'
- const expectedThumbnailUrl = 'http://localhost:' + server.port + '/static/previews/' + server.video.uuid + '.jpg'
+ const expectedThumbnailUrl = 'http://localhost:' + server.port + '/lazy-static/previews/' + server.video.uuid + '.jpg'
expect(res.body.html).to.equal(expectedHtml)
expect(res.body.title).to.equal(server.video.name)
const caption1: VideoCaption = res.body.data[0]
expect(caption1.language.id).to.equal('ar')
expect(caption1.language.label).to.equal('Arabic')
- expect(caption1.captionPath).to.equal('/static/video-captions/' + videoUUID + '-ar.vtt')
+ expect(caption1.captionPath).to.equal('/lazy-static/video-captions/' + videoUUID + '-ar.vtt')
await testCaptionFile(server.url, caption1.captionPath, 'Subtitle good 1.')
const caption2: VideoCaption = res.body.data[1]
expect(caption2.language.id).to.equal('zh')
expect(caption2.language.label).to.equal('Chinese')
- expect(caption2.captionPath).to.equal('/static/video-captions/' + videoUUID + '-zh.vtt')
+ expect(caption2.captionPath).to.equal('/lazy-static/video-captions/' + videoUUID + '-zh.vtt')
await testCaptionFile(server.url, caption2.captionPath, 'Subtitle good 2.')
}
})
const caption1: VideoCaption = res.body.data[0]
expect(caption1.language.id).to.equal('ar')
expect(caption1.language.label).to.equal('Arabic')
- expect(caption1.captionPath).to.equal('/static/video-captions/' + videoUUID + '-ar.vtt')
+ expect(caption1.captionPath).to.equal('/lazy-static/video-captions/' + videoUUID + '-ar.vtt')
await testCaptionFile(server.url, caption1.captionPath, 'Subtitle good 2.')
}
})
const caption1: VideoCaption = res.body.data[0]
expect(caption1.language.id).to.equal('ar')
expect(caption1.language.label).to.equal('Arabic')
- expect(caption1.captionPath).to.equal('/static/video-captions/' + videoUUID + '-ar.vtt')
+ expect(caption1.captionPath).to.equal('/lazy-static/video-captions/' + videoUUID + '-ar.vtt')
const expected = 'WEBVTT FILE\r\n' +
'\r\n' +
expect(caption.language.id).to.equal('zh')
expect(caption.language.label).to.equal('Chinese')
- expect(caption.captionPath).to.equal('/static/video-captions/' + videoUUID + '-zh.vtt')
+ expect(caption.captionPath).to.equal('/lazy-static/video-captions/' + videoUUID + '-zh.vtt')
await testCaptionFile(server.url, caption.captionPath, 'Subtitle good 2.')
}
})
const res = await importVideo(servers[0].url, servers[0].accessToken, attributes)
expect(res.body.video.name).to.equal('small video - youtube')
expect(res.body.video.thumbnailPath).to.equal(`/static/thumbnails/${res.body.video.uuid}.jpg`)
- expect(res.body.video.previewPath).to.equal(`/static/previews/${res.body.video.uuid}.jpg`)
+ expect(res.body.video.previewPath).to.equal(`/lazy-static/previews/${res.body.video.uuid}.jpg`)
await testImage(servers[0].url, 'video_import_thumbnail', res.body.video.thumbnailPath)
await testImage(servers[0].url, 'video_import_preview', res.body.video.previewPath)