X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=shared%2Fmodels%2Fvideos%2Fvideo-transcoding.model.ts;h=83b8e98a018e946a435a949697ea96847a86d94d;hb=b46cf4b920984492df598c1b61179acfc7f6f22e;hp=06b555c16034380a46e62547f063344ff7208aa3;hpb=1896bca09e088b0da9d5e845407ecebae330618c;p=github%2FChocobozzz%2FPeerTube.git diff --git a/shared/models/videos/video-transcoding.model.ts b/shared/models/videos/video-transcoding.model.ts index 06b555c16..83b8e98a0 100644 --- a/shared/models/videos/video-transcoding.model.ts +++ b/shared/models/videos/video-transcoding.model.ts @@ -2,17 +2,33 @@ import { VideoResolution } from './video-resolution.enum' // Types used by plugins and ffmpeg-utils -export type EncoderOptionsBuilder = (params: { +export type EncoderOptionsBuilderParams = { input: string + resolution: VideoResolution + + // Could be null for "merge audio" transcoding fps?: number + + // Could be undefined if we could not get input bitrate (some RTMP streams for example) + inputBitrate: number + inputRatio: number + + // For lives streamNum?: number -}) => Promise | EncoderOptions +} + +export type EncoderOptionsBuilder = (params: EncoderOptionsBuilderParams) => Promise | EncoderOptions export interface EncoderOptions { copy?: boolean // Copy stream? Default to false - outputOptions: string[] + scaleFilter?: { + name: string + } + + inputOptions?: string[] + outputOptions?: string[] } // All our encoders