pub struct AvifEncoder<W> {
inner: W,
encoder: Encoder,
}
Expand description
AVIF Encoder.
Writes one image into the chosen output.
Fields§
§inner: W
§encoder: Encoder
Implementations§
Source§impl<W: Write> AvifEncoder<W>
impl<W: Write> AvifEncoder<W>
Sourcepub fn new_with_speed_quality(w: W, speed: u8, quality: u8) -> Self
pub fn new_with_speed_quality(w: W, speed: u8, quality: u8) -> Self
Create a new encoder with a specified speed and quality that writes its output to w
.
speed
accepts a value in the range 1-10, where 1 is the slowest and 10 is the fastest.
Slower speeds generally yield better compression results.
quality
accepts a value in the range 1-100, where 1 is the worst and 100 is the best.
Sourcepub fn with_colorspace(self, color_space: ColorSpace) -> Self
pub fn with_colorspace(self, color_space: ColorSpace) -> Self
Encode with the specified color_space
.
Sourcepub fn with_num_threads(self, num_threads: Option<usize>) -> Self
pub fn with_num_threads(self, num_threads: Option<usize>) -> Self
Configures rayon
thread pool size.
The default None
is to use all threads in the default rayon
thread pool.
Source§impl<W: Write> AvifEncoder<W>
impl<W: Write> AvifEncoder<W>
fn set_color(&mut self, _color: ExtendedColorType)
fn encode_as_img<'buf>( fallback: &'buf mut Vec<u8>, data: &'buf [u8], width: u32, height: u32, color: ExtendedColorType, ) -> ImageResult<RgbColor<'buf>>
Trait Implementations§
Source§impl<W: Write> ImageEncoder for AvifEncoder<W>
impl<W: Write> ImageEncoder for AvifEncoder<W>
Source§fn write_image(
self,
data: &[u8],
width: u32,
height: u32,
color: ExtendedColorType,
) -> ImageResult<()>
fn write_image( self, data: &[u8], width: u32, height: u32, color: ExtendedColorType, ) -> ImageResult<()>
Encode image data with the indicated color type.
The encoder currently requires all data to be RGBA8, it will be converted internally if necessary. When data is suitably aligned, i.e. u16 channels to two bytes, then the conversion may be more efficient.
Source§fn set_icc_profile(
&mut self,
icc_profile: Vec<u8>,
) -> Result<(), UnsupportedError>
fn set_icc_profile( &mut self, icc_profile: Vec<u8>, ) -> Result<(), UnsupportedError>
Auto Trait Implementations§
impl<W> Freeze for AvifEncoder<W>where
W: Freeze,
impl<W> RefUnwindSafe for AvifEncoder<W>where
W: RefUnwindSafe,
impl<W> Send for AvifEncoder<W>where
W: Send,
impl<W> Sync for AvifEncoder<W>where
W: Sync,
impl<W> Unpin for AvifEncoder<W>where
W: Unpin,
impl<W> UnwindSafe for AvifEncoder<W>where
W: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more