[][src]Trait gstreamer_video::VideoDecoderExtManual

pub trait VideoDecoderExtManual: 'static {
    fn allocate_output_frame(
        &self,
        frame: &mut VideoCodecFrame<'_>,
        params: Option<&BufferPoolAcquireParams>
    ) -> Result<FlowSuccess, FlowError>;
fn get_frame(&self, frame_number: i32) -> Option<VideoCodecFrame<'_>>;
fn get_frames(&self) -> Vec<VideoCodecFrame<'_>>;
fn get_oldest_frame(&self) -> Option<VideoCodecFrame<'_>>;
fn get_allocator(&self) -> (Option<Allocator>, AllocationParams);
fn have_frame(&self) -> Result<FlowSuccess, FlowError>;
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 get_latency(&self) -> (ClockTime, ClockTime);
fn set_latency(&self, min_latency: ClockTime, max_latency: ClockTime);
fn get_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>

fn get_frame(&self, frame_number: i32) -> Option<VideoCodecFrame<'_>>

fn get_frames(&self) -> Vec<VideoCodecFrame<'_>>

fn get_oldest_frame(&self) -> Option<VideoCodecFrame<'_>>

fn get_allocator(&self) -> (Option<Allocator>, AllocationParams)

fn have_frame(&self) -> Result<FlowSuccess, FlowError>

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 get_latency(&self) -> (ClockTime, ClockTime)

fn set_latency(&self, min_latency: ClockTime, max_latency: ClockTime)

fn get_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>

Loading content...

Implementors

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

Loading content...