Type
VideoSampleTransformationDescription
A fully-resolved description of a video sample transformation, with all defaults and constraints baked in.
The order of operations must be:
- Pixel aspect ratio normalization (always applied)
- Rotation
- Crop
- Resize using fit
ts
type VideoSampleTransformationDescription = {
width: number;
height: number;
fit: 'fill' | 'contain' | 'cover';
rotation: Rotation;
crop: CropRectangle;
alpha: 'keep' | 'discard';
};See Rotation and CropRectangle.
Used by
Properties
width
ts
width: number;The width in pixels to resize the frames to.
height
ts
height: number;The height in pixels to resize the frames to.
fit
ts
fit: 'fill' | 'contain' | 'cover';The fitting algorithm.
'fill'will stretch the image to fill the entire box, potentially altering aspect ratio.'contain'will contain the entire image within the box while preserving aspect ratio. This may lead to letterboxing.'cover'will scale the image until the entire box is filled, while preserving aspect ratio.
rotation
ts
rotation: Rotation;The clockwise rotation by which to rotate the frames. Rotation is applied before resizing.
See Rotation.
crop
ts
crop: CropRectangle;The rectangular region of the frames to crop to, clamped to the dimensions of the frame. Cropping is performed after rotation but before resizing.
See CropRectangle.
alpha
ts
alpha: 'discard' | 'keep';Whether to discard or keep the transparency information of the video sample.