Trait gstreamer_video::prelude::VideoEncoderExtManual [−][src]
pub trait VideoEncoderExtManual: 'static {
fn allocate_output_frame(
&self,
frame: &mut VideoCodecFrame<'_>,
size: usize
) -> 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: Option<VideoCodecFrame<'_>>
) -> Result<FlowSuccess, FlowError>;
fn finish_subframe(
&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,
caps: Caps,
reference: Option<&VideoCodecState<'_, Readable>>
) -> Result<VideoCodecState<'_, InNegotiation<'_>>, FlowError>;
fn negotiate<'a>(
&'a self,
output_state: VideoCodecState<'a, InNegotiation<'a>>
) -> Result<(), FlowError>;
}Required methods
fn allocate_output_frame(
&self,
frame: &mut VideoCodecFrame<'_>,
size: usize
) -> Result<FlowSuccess, FlowError>[src]
fn allocate_output_frame(
&self,
frame: &mut VideoCodecFrame<'_>,
size: usize
) -> 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 finish_frame(
&self,
frame: Option<VideoCodecFrame<'_>>
) -> Result<FlowSuccess, FlowError>[src]fn finish_subframe(
&self,
frame: &VideoCodecFrame<'_>
) -> Result<FlowSuccess, FlowError>[src]
fn finish_subframe(
&self,
frame: &VideoCodecFrame<'_>
) -> Result<FlowSuccess, FlowError>[src]This is supported on crate feature
v1_18 only.fn output_state(&self) -> Option<VideoCodecState<'static, Readable>>[src]fn set_output_state(
&self,
caps: Caps,
reference: Option<&VideoCodecState<'_, Readable>>
) -> Result<VideoCodecState<'_, InNegotiation<'_>>, FlowError>[src]fn negotiate<'a>(
&'a self,
output_state: VideoCodecState<'a, InNegotiation<'a>>
) -> Result<(), FlowError>[src]Implementors
fn allocate_output_frame(
&self,
frame: &mut VideoCodecFrame<'_>,
size: usize
) -> Result<FlowSuccess, FlowError>[src]
fn allocate_output_frame(
&self,
frame: &mut VideoCodecFrame<'_>,
size: usize
) -> Result<FlowSuccess, FlowError>[src]This is supported on crate feature
v1_12 only.This is supported on crate feature
v1_18 only.fn set_output_state(
&self,
caps: Caps,
reference: Option<&VideoCodecState<'_, Readable>>
) -> Result<VideoCodecState<'_, InNegotiation<'_>>, FlowError>[src]fn negotiate<'a>(
&'a self,
output_state: VideoCodecState<'a, InNegotiation<'a>>
) -> Result<(), FlowError>[src]