pub trait DecoderBackend: Send {
    type Session: DecoderSession;
    // Required methods
    fn get_capabilities(&self) -> Capability;
    fn new_session(
        &mut self,
        format: Format,
    ) -> Result<Self::Session, VideoError>;
    // Provided method
    fn into_trait_object(
        self,
    ) -> Box<dyn DecoderBackend<Session = Box<dyn DecoderSession>>>
       where Self: Sized + 'static { ... }
}Required Associated Types§
type Session: DecoderSession
Required Methods§
sourcefn get_capabilities(&self) -> Capability
 
fn get_capabilities(&self) -> Capability
Return the decoding capabilities for this backend instance.
sourcefn new_session(&mut self, format: Format) -> Result<Self::Session, VideoError>
 
fn new_session(&mut self, format: Format) -> Result<Self::Session, VideoError>
Create a new decoding session for the passed format.
Provided Methods§
sourcefn into_trait_object(
    self,
) -> Box<dyn DecoderBackend<Session = Box<dyn DecoderSession>>>where
    Self: Sized + 'static,
 
fn into_trait_object(
    self,
) -> Box<dyn DecoderBackend<Session = Box<dyn DecoderSession>>>where
    Self: Sized + 'static,
Turn this backend into a trait object, allowing the same decoder to operate on a set of different backends.