pub trait StreamSourceProxyInterface: Send + Sync {
    type DiscardAllPacketsResponseFut: Future<Output = Result<(), Error>> + Send;
    // Required methods
    fn release_packet(&self, packet: &StreamPacket) -> Result<(), Error>;
    fn discard_all_packets(&self) -> Self::DiscardAllPacketsResponseFut;
    fn discard_all_packets_no_reply(&self) -> Result<(), Error>;
}