pub struct TwccSenderInterceptor { /* private fields */ }Expand description
Numbers every departing RTP packet so the remote can report on it
(draft-holmer-rmcat-transport-wide-cc-extensions-01).
§Where this belongs in the chain
Between the pacer and the send history, near the wire. Numbering identifies a transmission, not a packet, so it has to happen after the pacer has decided what actually leaves and before the history records it — a retransmission is a separate transmission and gets its own number.
Under the nested chain this could not hold: a retransmission left from the NACK responder’s own queue and never reached the tagger at all.
Trait Implementations§
Source§impl Default for TwccSenderInterceptor
impl Default for TwccSenderInterceptor
Source§fn default() -> TwccSenderInterceptor
fn default() -> TwccSenderInterceptor
Returns the “default value” for a type. Read more
Source§impl Interceptor for TwccSenderInterceptor
impl Interceptor for TwccSenderInterceptor
Source§fn bind_local_stream(&mut self, info: &StreamInfo)
fn bind_local_stream(&mut self, info: &StreamInfo)
bind_local_stream lets you modify any outgoing RTP packets. It is called once for per LocalStream. The returned method
will be called once per rtp packet.
Source§fn unbind_local_stream(&mut self, info: &StreamInfo)
fn unbind_local_stream(&mut self, info: &StreamInfo)
unbind_local_stream is called when the Stream is removed. It can be used to clean up any data related to that track.
Source§fn bind_remote_stream(&mut self, _info: &StreamInfo)
fn bind_remote_stream(&mut self, _info: &StreamInfo)
bind_remote_stream lets you modify any incoming RTP packets. It is called once for per RemoteStream. The returned method
will be called once per rtp packet.
Source§fn unbind_remote_stream(&mut self, _info: &StreamInfo)
fn unbind_remote_stream(&mut self, _info: &StreamInfo)
unbind_remote_stream is called when the Stream is removed. It can be used to clean up any data related to that track.
Source§impl Protocol<TransportMessage<AttributedPacket>, TransportMessage<AttributedPacket>, ()> for TwccSenderInterceptor
impl Protocol<TransportMessage<AttributedPacket>, TransportMessage<AttributedPacket>, ()> for TwccSenderInterceptor
Source§type Rout = TransportMessage<AttributedPacket>
type Rout = TransportMessage<AttributedPacket>
Output read message type Read more
Source§type Wout = TransportMessage<AttributedPacket>
type Wout = TransportMessage<AttributedPacket>
Output write message type Read more
Source§fn handle_read(&mut self, msg: TaggedPacket) -> Result<(), Self::Error>
fn handle_read(&mut self, msg: TaggedPacket) -> Result<(), Self::Error>
Handle an incoming read message. Read more
Source§fn handle_write(&mut self, msg: TaggedPacket) -> Result<(), Self::Error>
fn handle_write(&mut self, msg: TaggedPacket) -> Result<(), Self::Error>
Handle an outgoing write message. Read more
Source§fn handle_timeout(&mut self, _now: Instant) -> Result<(), Self::Error>
fn handle_timeout(&mut self, _now: Instant) -> Result<(), Self::Error>
Handle a timeout event. Read more
Source§fn poll_timeout(&mut self) -> Option<Self::Time>
fn poll_timeout(&mut self) -> Option<Self::Time>
Poll for the next timeout deadline. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for TwccSenderInterceptor
impl !UnwindSafe for TwccSenderInterceptor
impl Freeze for TwccSenderInterceptor
impl Send for TwccSenderInterceptor
impl Sync for TwccSenderInterceptor
impl Unpin for TwccSenderInterceptor
impl UnsafeUnpin for TwccSenderInterceptor
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