Fix torrent metadata update for hls

pull/4624/head
Chocobozzz 2021-12-09 11:23:02 +01:00
parent 2acb622cb8
commit 6ba93fa639
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
3 changed files with 11 additions and 17 deletions

View File

@ -135,7 +135,7 @@ async function run () {
for (const file of (playlist?.VideoFiles || [])) {
console.log('Updating fragmented torrent file %s of video %s.', file.resolution, video.uuid)
await updateTorrentMetadata(video, file)
await updateTorrentMetadata(playlist, file)
await file.save()
}

View File

@ -202,9 +202,18 @@ function updateSchedule (videoInstance: MVideoFullLight, videoInfoToUpdate: Vide
}
async function updateTorrentsMetadata (video: MVideoFullLight) {
for (const file of video.getAllFiles()) {
for (const file of (video.VideoFiles || [])) {
await updateTorrentMetadata(video, file)
await file.save()
}
const hls = video.getHLSPlaylist()
if (!hls) return
for (const file of (hls.VideoFiles || [])) {
await updateTorrentMetadata(hls, file)
await file.save()
}
}

View File

@ -1539,21 +1539,6 @@ export class VideoModel extends Model<Partial<AttributesOnly<VideoModel>>> {
return this.VideoChannel.Account.Actor.Server?.isBlocked() || this.VideoChannel.Account.isBlocked()
}
getAllFiles () {
let files: MVideoFile[] = []
if (Array.isArray(this.VideoFiles)) {
files = files.concat(this.VideoFiles)
}
const hls = this.getHLSPlaylist()
if (hls) {
files = files.concat(hls.VideoFiles)
}
return files
}
getQualityFileBy<T extends MVideoWithFile> (this: T, fun: (files: MVideoFile[], it: (file: MVideoFile) => number) => MVideoFile) {
// We first transcode to WebTorrent format, so try this array first
if (Array.isArray(this.VideoFiles) && this.VideoFiles.length !== 0) {