X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Fvideo-paths.ts;h=53fc8e81d5fcf6f82cb7016c0747701eb647c9ab;hb=9129b7694d577322327ee79e9b9aa64deee92765;hp=63011cdb2a12987b31f873284154e6a7cdd3e6e5;hpb=d7a25329f9e607894d29ab342b9cb66638b56dc0;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/video-paths.ts b/server/lib/video-paths.ts index 63011cdb2..53fc8e81d 100644 --- a/server/lib/video-paths.ts +++ b/server/lib/video-paths.ts @@ -1,15 +1,15 @@ -import { isStreamingPlaylist, MStreamingPlaylistVideo, MVideo, MVideoFile } from '@server/typings/models' -import { extractVideo } from './videos' +import { isStreamingPlaylist, MStreamingPlaylistVideo, MVideo, MVideoFile, MVideoUUID } from '@server/types/models' import { join } from 'path' import { CONFIG } from '@server/initializers/config' -import { HLS_STREAMING_PLAYLIST_DIRECTORY } from '@server/initializers/constants' +import { HLS_REDUNDANCY_DIRECTORY, HLS_STREAMING_PLAYLIST_DIRECTORY } from '@server/initializers/constants' +import { extractVideo } from '@server/helpers/video' // ################## Video file name ################## function getVideoFilename (videoOrPlaylist: MVideo | MStreamingPlaylistVideo, videoFile: MVideoFile) { const video = extractVideo(videoOrPlaylist) - if (isStreamingPlaylist(videoOrPlaylist)) { + if (videoFile.isHLS()) { return generateVideoStreamingPlaylistName(video.uuid, videoFile.resolution) } @@ -25,15 +25,24 @@ function generateWebTorrentVideoName (uuid: string, resolution: number, extname: } function getVideoFilePath (videoOrPlaylist: MVideo | MStreamingPlaylistVideo, videoFile: MVideoFile, isRedundancy = false) { - if (isStreamingPlaylist(videoOrPlaylist)) { + if (videoFile.isHLS()) { const video = extractVideo(videoOrPlaylist) - return join(HLS_STREAMING_PLAYLIST_DIRECTORY, video.uuid, getVideoFilename(videoOrPlaylist, videoFile)) + + return join(getHLSDirectory(video), getVideoFilename(videoOrPlaylist, videoFile)) } const baseDir = isRedundancy ? CONFIG.STORAGE.REDUNDANCY_DIR : CONFIG.STORAGE.VIDEOS_DIR return join(baseDir, getVideoFilename(videoOrPlaylist, videoFile)) } +// ################## Streaming playlist ################## + +function getHLSDirectory (video: MVideoUUID, isRedundancy = false) { + const baseDir = isRedundancy ? HLS_REDUNDANCY_DIRECTORY : HLS_STREAMING_PLAYLIST_DIRECTORY + + return join(baseDir, video.uuid) +} + // ################## Torrents ################## function getTorrentFileName (videoOrPlaylist: MVideo | MStreamingPlaylistVideo, videoFile: MVideoFile) { @@ -60,5 +69,7 @@ export { getVideoFilePath, getTorrentFileName, - getTorrentFilePath + getTorrentFilePath, + + getHLSDirectory }