Struct framing::video::PlanarFrame
[−]
[src]
pub struct PlanarFrame<T> { /* fields omitted */ }
A planar frame.
Each plane is made up of one-byte subpixels, and the planes are stored contiguously in memory, in the order specified by the pixel itself. So, for example, a BGRA planar frame would have all the B bytes in order, then all the G bytes, then the R bytes, and finally the A bytes, with each plane covering the entire image in row-major order.
Methods
impl<T: ByteChannels> PlanarFrame<T>
[src]
fn from_bytes(width: usize, height: usize, bytes: Bytes) -> Self
Creates a new frame backed by the provided byte source.
Panics
Panics if the length of the buffer is not
width * height * bytes_per_pixel
.
fn bytes(&self) -> Bytes
Returns a read-only view into the frame's byte source.
This function is not as slow as you'd expect, because Bytes
is
actually reference-counted.
fn new<U>(frame: U) -> Self where
U: VideoFrame<Pixel = T> + Sync,
U: VideoFrame<Pixel = T> + Sync,
Creates a new frame using the given function to fill the buffer.
It is guaranteed that the mapping will be called exactly once for
each of the integers in the range [0, width) * [0, height)
.
Trait Implementations
impl<T: Clone> Clone for PlanarFrame<T>
[src]
fn clone(&self) -> PlanarFrame<T>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl<T: Debug> Debug for PlanarFrame<T>
[src]
impl<T: ByteChannels> VideoFrame for PlanarFrame<T>
[src]
type Pixel = T
The kind of pixel that the frame is made of.
fn width(&self) -> usize
The width of the frame in pixels.
fn height(&self) -> usize
The height of the frame in pixels.
unsafe fn pixel(&self, x: usize, y: usize) -> Self::Pixel
Gets the pixel at the specified zero-indexed coordinates. Read more