options property
CompressOptions
get
options
The size limits this level stands for. They follow what video_compress
did on Android, where it limited the shorter side; the bitrate now comes
from the output size instead of being fixed.
Implementation
CompressOptions get options => switch (this) {
VideoQuality.DefaultQuality => const CompressOptions(maxShortSide: 720),
VideoQuality.LowQuality => const CompressOptions(maxShortSide: 360),
VideoQuality.MediumQuality => const CompressOptions(maxShortSide: 640),
// video_compress kept the size and fixed 3.7 Mbps, which made 4K blocky.
VideoQuality.HighestQuality =>
const CompressOptions(maxShortSide: 1080),
VideoQuality.Res640x480Quality =>
const CompressOptions(maxShortSide: 480, maxLongSide: 640),
VideoQuality.Res960x540Quality =>
const CompressOptions(maxShortSide: 540, maxLongSide: 960),
VideoQuality.Res1280x720Quality =>
const CompressOptions(maxShortSide: 720, maxLongSide: 1280),
VideoQuality.Res1920x1080Quality =>
const CompressOptions(maxShortSide: 1080, maxLongSide: 1920),
};