pub struct DecodedFrame {
pub envelope: FrameEnvelope,
pub decode_event: Option<CUevent>,
pub event_return: Option<Sender<CUevent>>,
}Expand description
A decoded NV12 frame with an optional CUDA event for cross-stream sync.
When produced by a real hardware decoder (NVDEC), decode_event carries
the event recorded on decode_stream after the D2D copy. The preprocess
stage calls cuStreamWaitEvent(preprocess_stream, event) before reading
the texture — this ensures the decode data is ready without CPU-blocking.
Mock decoders set both fields to None.
Fields§
§envelope: FrameEnvelope§decode_event: Option<CUevent>CUDA event recorded after decode completes. None for mock decoders.
event_return: Option<Sender<CUevent>>Channel to return used events to the decoder’s EventPool for reuse.
Trait Implementations§
impl Send for DecodedFrame
Auto Trait Implementations§
impl Freeze for DecodedFrame
impl RefUnwindSafe for DecodedFrame
impl !Sync for DecodedFrame
impl Unpin for DecodedFrame
impl UnsafeUnpin for DecodedFrame
impl UnwindSafe for DecodedFrame
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