跳到主要内容

SwsFlags

搜索

枚举 SwsFlags 

源代码
#[repr(i32)]
pub enum SwsFlags {
Show 20 variants SWS_FAST_BILINEAR = 1, SWS_BILINEAR = 2, SWS_BICUBIC = 4, SWS_X = 8, SWS_POINT = 16, SWS_AREA = 32, SWS_BICUBLIN = 64, SWS_GAUSS = 128, SWS_SINC = 256, SWS_LANCZOS = 512, SWS_SPLINE = 1_024, SWS_STRICT = 2_048, SWS_PRINT_INFO = 4_096, SWS_FULL_CHR_H_INT = 8_192, SWS_FULL_CHR_H_INP = 16_384, SWS_ACCURATE_RND = 262_144, SWS_BITEXACT = 524_288, SWS_UNSTABLE = 1_048_576, SWS_DIRECT_BGR = 32_768, SWS_ERROR_DIFFUSION = 8_388_608,
}

Variants§

§

SWS_FAST_BILINEAR = 1

< fast bilinear filtering

§

SWS_BILINEAR = 2

< bilinear filtering

§

SWS_BICUBIC = 4

< 2-tap cubic B-spline

§

SWS_X = 8

< experimental

§

SWS_POINT = 16

< nearest neighbor

§

SWS_AREA = 32

< area averaging

§

SWS_BICUBLIN = 64

< bicubic luma, bilinear chroma

§

SWS_GAUSS = 128

< gaussian approximation

§

SWS_SINC = 256

< unwindowed sinc

§

SWS_LANCZOS = 512

< 3-tap sinc/sinc

§

SWS_SPLINE = 1_024

< cubic Keys spline

§

SWS_STRICT = 2_048

Return an error on underspecified conversions. Without this flag, unspecified fields are defaulted to sensible values.

§

SWS_PRINT_INFO = 4_096

Emit verbose log of scaling parameters.

§

SWS_FULL_CHR_H_INT = 8_192

Perform full chroma upsampling when upscaling to RGB.

For example, when converting 50x50 yuv420p to 100x100 rgba, setting this flag will scale the chroma plane from 25x25 to 100x100 (4:4:4), and then convert the 100x100 yuv444p image to rgba in the final output step.

Without this flag, the chroma plane is instead scaled to 50x100 (4:2:2), with a single chroma sample being reused for both of the horizontally adjacent RGBA output pixels.

§

SWS_FULL_CHR_H_INP = 16_384

Perform full chroma interpolation when downscaling RGB sources.

For example, when converting a 100x100 rgba source to 50x50 yuv444p, setting this flag will generate a 100x100 (4:4:4) chroma plane, which is then downscaled to the required 50x50.

Without this flag, the chroma plane is instead generated at 50x100 (dropping every other pixel), before then being downscaled to the required 50x50 resolution.

§

SWS_ACCURATE_RND = 262_144

Force bit-exact output. This will prevent the use of platform-specific optimizations that may lead to slight difference in rounding, in favor of always maintaining exact bit output compatibility with the reference C code.

Note: It is recommended to set both of these flags simultaneously.

§

SWS_BITEXACT = 524_288

Force bit-exact output. This will prevent the use of platform-specific optimizations that may lead to slight difference in rounding, in favor of always maintaining exact bit output compatibility with the reference C code.

Note: It is recommended to set both of these flags simultaneously.

§

SWS_UNSTABLE = 1_048_576

Allow using experimental new code paths. This may be faster, slower, or produce different output, with semantics subject to change at any point in time. For testing and debugging purposes only.

§

SWS_DIRECT_BGR = 32_768

< This flag has no effect

§

SWS_ERROR_DIFFUSION = 8_388_608

< Set SwsContext.dither instead

trait 实现§

源代码§

impl Clone for SwsFlags

源代码§

fn clone(&self) -> SwsFlags

Returns a duplicate of the value. 阅读更多
1.0.0 · 源代码§

fn clone_from(&mut self, source: &Self)

source 执行拷贝赋值。 阅读更多
源代码§

impl Debug for SwsFlags

源代码§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

使用给定的格式化器格式化该值。 阅读更多
源代码§

impl Hash for SwsFlags

源代码§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. 阅读更多
1.3.0 · 源代码§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. 阅读更多
源代码§

impl PartialEq for SwsFlags

源代码§

fn eq(&self, other: &SwsFlags) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · 源代码§

fn ne(&self, other: &Rhs) -> bool

测试 !=。默认实现几乎总是足够的,没有充分理由不应被重写。
源代码§

impl Copy for SwsFlags

源代码§

impl Eq for SwsFlags

源代码§

impl StructuralPartialEq for SwsFlags

自动 trait 实现§

blanket 实现§

源代码§

impl<T> Any for T
where T: 'static + ?Sized,

源代码§

fn type_id(&self) -> TypeId

获取 selfTypeId阅读更多
源代码§

impl<T> Borrow<T> for T
where T: ?Sized,

源代码§

fn borrow(&self) -> &T

从拥有的值不可变地借用。 阅读更多
源代码§

impl<T> BorrowMut<T> for T
where T: ?Sized,

源代码§

fn borrow_mut(&mut self) -> &mut T

从拥有的值可变地借用。 阅读更多
源代码§

impl<T> CloneToUninit for T
where T: Clone,

源代码§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
self 执行拷贝赋值到 dest阅读更多
源代码§

impl<T> From<T> for T

源代码§

fn from(t: T) -> T

原样返回参数。

源代码§

impl<T, U> Into<U> for T
where U: From<T>,

源代码§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U 实现选择执行的操作。

源代码§

impl<T> ToOwned for T
where T: Clone,

源代码§

type Owned = T

获取所有权后得到的类型。
源代码§

fn to_owned(&self) -> T

通常通过克隆,从借用数据创建拥有的数据。 阅读更多
源代码§

fn clone_into(&self, target: &mut T)

通常通过克隆,使用借用数据替换拥有的数据。 阅读更多
源代码§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

源代码§

type Error = Infallible

转换出错时返回的类型。
源代码§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

执行该转换。
源代码§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

源代码§

type Error = <U as TryFrom<T>>::Error

转换出错时返回的类型。
源代码§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

执行该转换。