pub struct FanoutOutput { /* private fields */ }Expand description
A StreamOutput wrapper that fans frames out to multiple targets.
Create with FanoutOutput::new, passing a Vec<Box<dyn StreamOutput>>.
Every call to push_video, push_audio,
or finish is forwarded to all targets in order.
§Failure behaviour
When one or more targets return an error, the remaining targets still
receive the frame. All errors are collected and returned as a single
StreamError::FanoutFailure.
Implementations§
Source§impl FanoutOutput
impl FanoutOutput
Trait Implementations§
Source§impl StreamOutput for FanoutOutput
impl StreamOutput for FanoutOutput
Source§fn push_video(&mut self, frame: &VideoFrame) -> Result<(), StreamError>
fn push_video(&mut self, frame: &VideoFrame) -> Result<(), StreamError>
Push one video frame into the stream.
Source§fn push_audio(&mut self, frame: &AudioFrame) -> Result<(), StreamError>
fn push_audio(&mut self, frame: &AudioFrame) -> Result<(), StreamError>
Push one audio frame into the stream.
Auto Trait Implementations§
impl Freeze for FanoutOutput
impl !RefUnwindSafe for FanoutOutput
impl Send for FanoutOutput
impl !Sync for FanoutOutput
impl Unpin for FanoutOutput
impl UnsafeUnpin for FanoutOutput
impl !UnwindSafe for FanoutOutput
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