diff options
Diffstat (limited to 'server/lib/transcoding/web-transcoding.ts')
-rw-r--r-- | server/lib/transcoding/web-transcoding.ts | 28 |
1 files changed, 2 insertions, 26 deletions
diff --git a/server/lib/transcoding/web-transcoding.ts b/server/lib/transcoding/web-transcoding.ts index 22bd238ae..7cc8f20bc 100644 --- a/server/lib/transcoding/web-transcoding.ts +++ b/server/lib/transcoding/web-transcoding.ts | |||
@@ -3,8 +3,8 @@ import { copyFile, move, remove, stat } from 'fs-extra' | |||
3 | import { basename, join } from 'path' | 3 | import { basename, join } from 'path' |
4 | import { computeOutputFPS } from '@server/helpers/ffmpeg' | 4 | import { computeOutputFPS } from '@server/helpers/ffmpeg' |
5 | import { createTorrentAndSetInfoHash } from '@server/helpers/webtorrent' | 5 | import { createTorrentAndSetInfoHash } from '@server/helpers/webtorrent' |
6 | import { VideoModel } from '@server/models/video/video' | ||
6 | import { MVideoFile, MVideoFullLight } from '@server/types/models' | 7 | import { MVideoFile, MVideoFullLight } from '@server/types/models' |
7 | import { toEven } from '@shared/core-utils' | ||
8 | import { ffprobePromise, getVideoStreamDuration, getVideoStreamFPS, TranscodeVODOptionsType } from '@shared/ffmpeg' | 8 | import { ffprobePromise, getVideoStreamDuration, getVideoStreamFPS, TranscodeVODOptionsType } from '@shared/ffmpeg' |
9 | import { VideoResolution, VideoStorage } from '@shared/models' | 9 | import { VideoResolution, VideoStorage } from '@shared/models' |
10 | import { CONFIG } from '../../initializers/config' | 10 | import { CONFIG } from '../../initializers/config' |
@@ -13,8 +13,7 @@ import { generateWebTorrentVideoFilename } from '../paths' | |||
13 | import { buildFileMetadata } from '../video-file' | 13 | import { buildFileMetadata } from '../video-file' |
14 | import { VideoPathManager } from '../video-path-manager' | 14 | import { VideoPathManager } from '../video-path-manager' |
15 | import { buildFFmpegVOD } from './shared' | 15 | import { buildFFmpegVOD } from './shared' |
16 | import { computeResolutionsToTranscode } from './transcoding-resolutions' | 16 | import { buildOriginalFileResolution } from './transcoding-resolutions' |
17 | import { VideoModel } from '@server/models/video/video' | ||
18 | 17 | ||
19 | // Optimize the original video file and replace it. The resolution is not changed. | 18 | // Optimize the original video file and replace it. The resolution is not changed. |
20 | export async function optimizeOriginalVideofile (options: { | 19 | export async function optimizeOriginalVideofile (options: { |
@@ -248,26 +247,3 @@ export async function onWebTorrentVideoFileTranscoding (options: { | |||
248 | mutexReleaser() | 247 | mutexReleaser() |
249 | } | 248 | } |
250 | } | 249 | } |
251 | |||
252 | // --------------------------------------------------------------------------- | ||
253 | |||
254 | function buildOriginalFileResolution (inputResolution: number) { | ||
255 | if (CONFIG.TRANSCODING.ALWAYS_TRANSCODE_ORIGINAL_RESOLUTION === true) { | ||
256 | return toEven(inputResolution) | ||
257 | } | ||
258 | |||
259 | const resolutions = computeResolutionsToTranscode({ | ||
260 | input: inputResolution, | ||
261 | type: 'vod', | ||
262 | includeInput: false, | ||
263 | strictLower: false, | ||
264 | // We don't really care about the audio resolution in this context | ||
265 | hasAudio: true | ||
266 | }) | ||
267 | |||
268 | if (resolutions.length === 0) { | ||
269 | return toEven(inputResolution) | ||
270 | } | ||
271 | |||
272 | return Math.max(...resolutions) | ||
273 | } | ||