X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fhelpers%2Fffmpeg-utils.ts;h=c0e9702a8511f66665b977d3777d7f4808a02b56;hb=afbe30e14753554491fe6d812d667767540de0a2;hp=c180da832135cc1c3bc4e4ea743d4efad53eb4bb;hpb=21d141c296541f41e399ec68aa7fa85e53d0dcb8;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/helpers/ffmpeg-utils.ts b/server/helpers/ffmpeg-utils.ts index c180da832..c0e9702a8 100644 --- a/server/helpers/ffmpeg-utils.ts +++ b/server/helpers/ffmpeg-utils.ts @@ -18,7 +18,8 @@ function computeResolutionsToTranscode (videoFileHeight: number) { VideoResolution.H_360P, VideoResolution.H_720P, VideoResolution.H_240P, - VideoResolution.H_1080P + VideoResolution.H_1080P, + VideoResolution.H_4K ] for (const resolution of resolutions) { @@ -197,6 +198,7 @@ async function canDoQuickTranscode (path: string): Promise { // check video params if (videoStream[ 'codec_name' ] !== 'h264') return false + if (videoStream[ 'pix_fmt' ] !== 'yuv420p') return false if (fps < VIDEO_TRANSCODING_FPS.MIN || fps > VIDEO_TRANSCODING_FPS.MAX) return false if (bitRate > getMaxBitrate(resolution.videoFileResolution, fps, VIDEO_TRANSCODING_FPS)) return false @@ -386,14 +388,15 @@ namespace audio { export namespace bitrate { const baseKbitrate = 384 - const toBits = (kbits: number): number => { return kbits * 8000 } + const toBits = (kbits: number) => kbits * 8000 export const aac = (bitrate: number): number => { switch (true) { - case bitrate > toBits(baseKbitrate): - return baseKbitrate - default: - return -1 // we interpret it as a signal to copy the audio stream as is + case bitrate > toBits(baseKbitrate): + return baseKbitrate + + default: + return -1 // we interpret it as a signal to copy the audio stream as is } } @@ -404,12 +407,14 @@ namespace audio { made here are not made to be accurate, especially with good mp3 encoders. */ switch (true) { - case bitrate <= toBits(192): - return 128 - case bitrate <= toBits(384): - return 256 - default: - return baseKbitrate + case bitrate <= toBits(192): + return 128 + + case bitrate <= toBits(384): + return 256 + + default: + return baseKbitrate } } }