pub struct EncodeStageTimings {
pub video_input_ready_wait: Duration,
pub video_send_frame: Duration,
pub video_receive_packet: Duration,
pub video_mux_write: Duration,
pub audio_send_frame: Duration,
pub audio_receive_packet: Duration,
pub audio_mux_write: Duration,
}Expand description
Where one encode sink’s wall time went, split into codec, packet drain and mux write so a change in one is visible.
Fields§
§video_input_ready_wait: DurationWaiting before avcodec_send_frame for the GPU to finish a surface the encoder cannot wait
for itself. Zero on paths whose encoder waits on the GPU or takes CPU frames.
video_send_frame: Durationavcodec_send_frame for video: the codec itself.
video_receive_packet: Durationavcodec_receive_packet for video.
video_mux_write: Durationav_interleaved_write_frame for video packets.
audio_send_frame: Durationavcodec_send_frame for audio.
audio_receive_packet: Durationavcodec_receive_packet for audio.
audio_mux_write: Durationav_interleaved_write_frame for audio packets.
Implementations§
Trait Implementations§
Source§impl Clone for EncodeStageTimings
impl Clone for EncodeStageTimings
impl Copy for EncodeStageTimings
Source§impl Debug for EncodeStageTimings
impl Debug for EncodeStageTimings
Source§impl Default for EncodeStageTimings
impl Default for EncodeStageTimings
impl Eq for EncodeStageTimings
Source§impl PartialEq for EncodeStageTimings
impl PartialEq for EncodeStageTimings
impl StructuralPartialEq for EncodeStageTimings
Auto Trait Implementations§
impl Freeze for EncodeStageTimings
impl RefUnwindSafe for EncodeStageTimings
impl Send for EncodeStageTimings
impl Sync for EncodeStageTimings
impl Unpin for EncodeStageTimings
impl UnsafeUnpin for EncodeStageTimings
impl UnwindSafe for EncodeStageTimings
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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