Struct Framed

Source
pub struct Framed<W: Write + 'static + Send + Sync> {
    pub frame_idx_start: u32,
    pub source_fps: f32,
    pub scale: f64,
    /* private fields */
}
Expand description

Attributes of a framed video -> ADΔER transcode

Fields§

§frame_idx_start: u32

Index of the first frame to be read from the input video

§source_fps: f32

FPS of the input video. Set automatically by Framed::new()

§scale: f64

Scale of the input video. Input frames are resized to this scale before transcoding.

Implementations§

Source§

impl<W: Write + 'static + Send + Sync> Framed<W>

Source

pub fn new( input_path: PathBuf, color_input: bool, scale: f64, ) -> Result<Framed<W>, SourceError>

Create a new Framed source

Source

pub fn frame_start(self, frame_idx_start: u32) -> Result<Self, SourceError>

Set the start frame of the source

Source

pub fn auto_time_parameters( self, ref_time: DeltaT, delta_t_max: DeltaT, time_mode: Option<TimeMode>, ) -> Result<Self, SourceError>

Automatically derive the ticks per second from the source FPS and ref_time

Source

pub fn get_ref_time(&self) -> u32

Get the number of ticks each frame is said to span

Source

pub fn get_last_input_frame(&self) -> &Frame

Get the previous input frame

Trait Implementations§

Source§

impl<W: Write + 'static + Send + Sync> From<Framed<W>> for AdderSource<W>

Source§

fn from(v: Framed<W>) -> AdderSource<W>

Converts to this type from the input type.
Source§

impl<W: Write + 'static + Send + Sync> Source<W> for Framed<W>

Source§

fn consume(&mut self) -> Result<Vec<Vec<Event>>, SourceError>

Get pixel-wise intensities directly from source frame, and integrate them with ref_time (the number of ticks each frame is said to span)

Source§

fn crf(&mut self, crf: u8)

Set the Constant Rate Factor (CRF) quality setting for the encoder. 0 is lossless, 9 is worst quality.
Source§

fn get_video_mut(&mut self) -> &mut Video<W>

Get a mutable reference to the Video object associated with this Source.
Source§

fn get_video_ref(&self) -> &Video<W>

Get an immutable reference to the Video object associated with this Source.
Source§

fn get_video(self) -> Video<W>

Get the Video object associated with this Source, consuming the Source in the process.
Source§

fn get_input(&self) -> Option<&Frame>

Get the input frame from the source
Source§

fn get_running_input_bitrate(&self) -> f64

Get the last-calculated bitrate of the input (in bits per second)
Source§

impl<W: Write + 'static + Send + Sync> TryInto<Framed<W>> for AdderSource<W>

Source§

type Error = &'static str

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<Framed<W>, <Self as TryInto<Framed<W>>>::Error>

Performs the conversion.
Source§

impl<W: Write + 'static + Send + Sync> VideoBuilder<W> for Framed<W>

Source§

fn crf(self, crf: u8) -> Self

Set the Constant Rate Factor (CRF) quality setting for the encoder. 0 is lossless, 9 is worst quality.
Source§

fn quality_manual( self, c_thresh_baseline: u8, c_thresh_max: u8, delta_t_max_multiplier: u32, c_increase_velocity: u8, feature_c_radius_denom: f32, ) -> Self

Manually set the parameters dictating quality
Source§

fn chunk_rows(self, chunk_rows: usize) -> Self

Set the chunk rows
Source§

fn time_parameters( self, tps: DeltaT, ref_time: DeltaT, delta_t_max: DeltaT, time_mode: Option<TimeMode>, ) -> Result<Self, SourceError>

Set the time parameters
Source§

fn write_out( self, source_camera: SourceCamera, time_mode: TimeMode, pixel_multi_mode: PixelMultiMode, adu_interval: Option<usize>, encoder_type: EncoderType, encoder_options: EncoderOptions, write: W, ) -> Result<Box<Self>, SourceError>

Set the Encoder
Source§

fn detect_features( self, detect_features: bool, show_features: ShowFeatureMode, ) -> Self

Set whether or not to detect features, and whether or not to display the features
Source§

impl<W: Write + Send + Sync> Sync for Framed<W>

Auto Trait Implementations§

§

impl<W> Freeze for Framed<W>
where W: Freeze,

§

impl<W> !RefUnwindSafe for Framed<W>

§

impl<W> Send for Framed<W>

§

impl<W> Unpin for Framed<W>
where W: Unpin,

§

impl<W> !UnwindSafe for Framed<W>

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<Src, Dst> LosslessTryInto<Dst> for Src
where Dst: LosslessTryFrom<Src>,

Source§

fn lossless_try_into(self) -> Option<Dst>

Performs the conversion.
Source§

impl<Src, Dst> LossyInto<Dst> for Src
where Dst: LossyFrom<Src>,

Source§

fn lossy_into(self) -> Dst

Performs the conversion.
Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
Source§

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

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

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

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

impl<T> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> ErasedDestructor for T
where T: 'static,