Trait gstreamer_video::prelude::VideoDecoderExtManual[][src]

pub trait VideoDecoderExtManual: 'static {
Show methods fn allocate_output_frame(
        &self,
        frame: &mut VideoCodecFrame<'_>,
        params: Option<&BufferPoolAcquireParams>
    ) -> Result<FlowSuccess, FlowError>;
fn frame(&self, frame_number: i32) -> Option<VideoCodecFrame<'_>>;
fn frames(&self) -> Vec<VideoCodecFrame<'_>>;
fn oldest_frame(&self) -> Option<VideoCodecFrame<'_>>;
fn allocator(&self) -> (Option<Allocator>, AllocationParams);
fn finish_frame(
        &self,
        frame: VideoCodecFrame<'_>
    ) -> Result<FlowSuccess, FlowError>;
fn release_frame(&self, frame: VideoCodecFrame<'_>);
fn drop_frame(
        &self,
        frame: VideoCodecFrame<'_>
    ) -> Result<FlowSuccess, FlowError>;
fn latency(&self) -> (ClockTime, Option<ClockTime>);
fn set_latency(
        &self,
        min_latency: ClockTime,
        max_latency: impl Into<Option<ClockTime>>
    );
fn output_state(&self) -> Option<VideoCodecState<'static, Readable>>;
fn set_output_state(
        &self,
        fmt: VideoFormat,
        width: u32,
        height: u32,
        reference: Option<&VideoCodecState<'_, Readable>>
    ) -> Result<VideoCodecState<'_, InNegotiation<'_>>, FlowError>;
fn set_interlaced_output_state(
        &self,
        fmt: VideoFormat,
        mode: VideoInterlaceMode,
        width: u32,
        height: u32,
        reference: Option<&VideoCodecState<'_, Readable>>
    ) -> Result<VideoCodecState<'_, InNegotiation<'_>>, FlowError>;
fn negotiate<'a>(
        &'a self,
        output_state: VideoCodecState<'a, InNegotiation<'a>>
    ) -> Result<(), FlowError>;
fn error<T: MessageErrorDomain>(
        &self,
        weight: i32,
        code: T,
        message: Option<&str>,
        debug: Option<&str>,
        file: &str,
        function: &str,
        line: u32
    ) -> Result<FlowSuccess, FlowError>;
}

Required methods

This is supported on crate feature v1_12 only.
This is supported on crate feature v1_16 only.

Implementors