import { VideoTranscodingProfilesManager } from '@server/lib/transcoding/default-transcoding-profiles'
import { isAbleToUploadVideo } from '@server/lib/user'
import { addOptimizeOrMergeAudioJob } from '@server/lib/video'
+import { removeHLSPlaylist, removeWebTorrentFile } from '@server/lib/video-file'
import { VideoPathManager } from '@server/lib/video-path-manager'
import { approximateIntroOutroAdditionalSize } from '@server/lib/video-studio'
import { UserModel } from '@server/models/user/user'
} from '@shared/extra-utils'
import {
VideoStudioEditionPayload,
- VideoStudioTaskPayload,
+ VideoStudioTask,
VideoStudioTaskCutPayload,
VideoStudioTaskIntroPayload,
VideoStudioTaskOutroPayload,
- VideoStudioTaskWatermarkPayload,
- VideoStudioTask
+ VideoStudioTaskPayload,
+ VideoStudioTaskWatermarkPayload
} from '@shared/models'
import { logger, loggerTagsFactory } from '../../../helpers/logger'
logger.info('Process video studio edition of %s in job %d.', payload.videoUUID, job.id, lTags)
- const video = await VideoModel.loadAndPopulateAccountAndServerAndTags(payload.videoUUID)
+ const video = await VideoModel.loadFull(payload.videoUUID)
// No video, maybe deleted?
if (!video) {
await move(editionResultPath, outputPath)
await createTorrentAndSetInfoHashFromPath(video, newFile, outputPath)
-
await removeAllFiles(video, newFile)
await newFile.save()
}
async function removeAllFiles (video: MVideoWithAllFiles, webTorrentFileException: MVideoFile) {
- const hls = video.getHLSPlaylist()
-
- if (hls) {
- await video.removeStreamingPlaylistFiles(hls)
- await hls.destroy()
- }
+ await removeHLSPlaylist(video)
for (const file of video.VideoFiles) {
if (file.id === webTorrentFileException.id) continue
- await video.removeWebTorrentFileAndTorrent(file)
- await file.destroy()
+ await removeWebTorrentFile(video, file.id)
}
}