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, ClockTime);
fn set_latency(&self, min_latency: ClockTime, max_latency: 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

fn allocate_output_frame(
    &self,
    frame: &mut VideoCodecFrame<'_>,
    params: Option<&BufferPoolAcquireParams>
) -> Result<FlowSuccess, FlowError>
[src]

This is supported on crate feature v1_12 only.

fn frame(&self, frame_number: i32) -> Option<VideoCodecFrame<'_>>[src]

fn frames(&self) -> Vec<VideoCodecFrame<'_>>[src]

fn oldest_frame(&self) -> Option<VideoCodecFrame<'_>>[src]

fn allocator(&self) -> (Option<Allocator>, AllocationParams)[src]

fn finish_frame(
    &self,
    frame: VideoCodecFrame<'_>
) -> Result<FlowSuccess, FlowError>
[src]

fn release_frame(&self, frame: VideoCodecFrame<'_>)[src]

fn drop_frame(
    &self,
    frame: VideoCodecFrame<'_>
) -> Result<FlowSuccess, FlowError>
[src]

fn latency(&self) -> (ClockTime, ClockTime)[src]

fn set_latency(&self, min_latency: ClockTime, max_latency: ClockTime)[src]

fn output_state(&self) -> Option<VideoCodecState<'static, Readable>>[src]

fn set_output_state(
    &self,
    fmt: VideoFormat,
    width: u32,
    height: u32,
    reference: Option<&VideoCodecState<'_, Readable>>
) -> Result<VideoCodecState<'_, InNegotiation<'_>>, FlowError>
[src]

fn set_interlaced_output_state(
    &self,
    fmt: VideoFormat,
    mode: VideoInterlaceMode,
    width: u32,
    height: u32,
    reference: Option<&VideoCodecState<'_, Readable>>
) -> Result<VideoCodecState<'_, InNegotiation<'_>>, FlowError>
[src]

This is supported on crate feature v1_16 only.

fn negotiate<'a>(
    &'a self,
    output_state: VideoCodecState<'a, InNegotiation<'a>>
) -> Result<(), FlowError>
[src]

fn error<T: MessageErrorDomain>(
    &self,
    weight: i32,
    code: T,
    message: Option<&str>,
    debug: Option<&str>,
    file: &str,
    function: &str,
    line: u32
) -> Result<FlowSuccess, FlowError>
[src]

Loading content...

Implementors

impl<O: IsA<VideoDecoder>> VideoDecoderExtManual for O[src]

fn allocate_output_frame(
    &self,
    frame: &mut VideoCodecFrame<'_>,
    params: Option<&BufferPoolAcquireParams>
) -> Result<FlowSuccess, FlowError>
[src]

This is supported on crate feature v1_12 only.

fn allocator(&self) -> (Option<Allocator>, AllocationParams)[src]

fn finish_frame(
    &self,
    frame: VideoCodecFrame<'_>
) -> Result<FlowSuccess, FlowError>
[src]

fn release_frame(&self, frame: VideoCodecFrame<'_>)[src]

fn drop_frame(
    &self,
    frame: VideoCodecFrame<'_>
) -> Result<FlowSuccess, FlowError>
[src]

fn latency(&self) -> (ClockTime, ClockTime)[src]

fn set_latency(&self, min_latency: ClockTime, max_latency: ClockTime)[src]

fn frame(&self, frame_number: i32) -> Option<VideoCodecFrame<'_>>[src]

fn frames(&self) -> Vec<VideoCodecFrame<'_>>[src]

fn oldest_frame(&self) -> Option<VideoCodecFrame<'_>>[src]

fn output_state(&self) -> Option<VideoCodecState<'static, Readable>>[src]

fn set_output_state(
    &self,
    fmt: VideoFormat,
    width: u32,
    height: u32,
    reference: Option<&VideoCodecState<'_, Readable>>
) -> Result<VideoCodecState<'_, InNegotiation<'_>>, FlowError>
[src]

fn set_interlaced_output_state(
    &self,
    fmt: VideoFormat,
    mode: VideoInterlaceMode,
    width: u32,
    height: u32,
    reference: Option<&VideoCodecState<'_, Readable>>
) -> Result<VideoCodecState<'_, InNegotiation<'_>>, FlowError>
[src]

This is supported on crate feature v1_16 only.

fn negotiate<'a>(
    &'a self,
    output_state: VideoCodecState<'a, InNegotiation<'a>>
) -> Result<(), FlowError>
[src]

fn error<T: MessageErrorDomain>(
    &self,
    weight: i32,
    code: T,
    message: Option<&str>,
    debug: Option<&str>,
    file: &str,
    function: &str,
    line: u32
) -> Result<FlowSuccess, FlowError>
[src]

Loading content...