struct Stream<T: EncoderSession> {Show 15 fields
    id: u32,
    src_params: Params,
    dst_params: Params,
    dst_bitrate: Bitrate,
    dst_profile: Profile,
    dst_h264_level: Option<Level>,
    force_keyframe: bool,
    encoder_session: Option<T>,
    received_input_buffers_event: bool,
    src_resources: BTreeMap<u32, InputResource>,
    encoder_input_buffer_ids: BTreeMap<u32, u32>,
    dst_resources: BTreeMap<u32, OutputResource>,
    encoder_output_buffer_ids: BTreeMap<u32, u32>,
    pending_commands: BTreeSet<PendingCommand>,
    eos_manager: EosBufferManager,
}Fields§
§id: u32§src_params: Params§dst_params: Params§dst_bitrate: Bitrate§dst_profile: Profile§dst_h264_level: Option<Level>§force_keyframe: bool§encoder_session: Option<T>§received_input_buffers_event: bool§src_resources: BTreeMap<u32, InputResource>§encoder_input_buffer_ids: BTreeMap<u32, u32>§dst_resources: BTreeMap<u32, OutputResource>§encoder_output_buffer_ids: BTreeMap<u32, u32>§pending_commands: BTreeSet<PendingCommand>§eos_manager: EosBufferManagerImplementations§
source§impl<T: EncoderSession> Stream<T>
 
impl<T: EncoderSession> Stream<T>
fn new<E: Encoder<Session = T>>( id: u32, src_resource_type: ResourceType, dst_resource_type: ResourceType, desired_format: Format, encoder: &EncoderDevice<E>, ) -> Result<Self, VideoError>
fn has_encode_session(&self) -> bool
fn set_encode_session<U: Encoder<Session = T>>( &mut self, encoder: &mut U, wait_ctx: &WaitContext<Token>, ) -> Result<(), VideoError>
fn clear_encode_session( &mut self, wait_ctx: &WaitContext<Token>, ) -> Result<(), VideoError>
fn require_input_buffers( &mut self, input_count: u32, input_frame_width: u32, input_frame_height: u32, output_buffer_size: u32, ) -> Option<Vec<VideoEvtResponseType>>
fn processed_input_buffer( &mut self, input_buffer_id: u32, ) -> Option<Vec<VideoEvtResponseType>>
fn processed_output_buffer( &mut self, output_buffer_id: u32, bytesused: u32, keyframe: bool, timestamp: u64, ) -> Option<Vec<VideoEvtResponseType>>
fn flush_response( &mut self, flush_done: bool, ) -> Option<Vec<VideoEvtResponseType>>
fn notify_error(&self, error: VideoError) -> Option<Vec<VideoEvtResponseType>>
Auto Trait Implementations§
impl<T> Freeze for Stream<T>where
    T: Freeze,
impl<T> RefUnwindSafe for Stream<T>where
    T: RefUnwindSafe,
impl<T> Send for Stream<T>where
    T: Send,
impl<T> Sync for Stream<T>where
    T: Sync,
impl<T> Unpin for Stream<T>where
    T: Unpin,
impl<T> UnwindSafe for Stream<T>where
    T: UnwindSafe,
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<T> Downcast for Twhere
    T: Any,
 
impl<T> Downcast for Twhere
    T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
 
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert 
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
 
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert 
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
 
fn as_any(&self) -> &(dyn Any + 'static)
Convert 
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
 
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert 
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.