Skip to main content

AbrAlgorithm

Trait AbrAlgorithm 

Source
pub trait AbrAlgorithm: Send + Sync {
    // Required methods
    fn select_rendition<'a>(
        &self,
        renditions: &'a [Rendition],
        context: &AbrContext,
    ) -> Option<&'a Rendition>;
    fn update(&mut self, measurement: &BandwidthMeasurement);
    fn name(&self) -> &'static str;
}
Expand description

ABR algorithm trait

Required Methods§

Source

fn select_rendition<'a>( &self, renditions: &'a [Rendition], context: &AbrContext, ) -> Option<&'a Rendition>

Select the best rendition given current conditions

Source

fn update(&mut self, measurement: &BandwidthMeasurement)

Update algorithm state with new measurement

Source

fn name(&self) -> &'static str

Get algorithm name

Implementors§