pub struct SeekIndex { /* private fields */ }
Expand description

A SeekIndex stores SeekPoints (generally a sample or frame number to byte offset) within a media stream and provides methods to efficiently search for the nearest SeekPoint(s) given a timestamp.

A SeekIndex does not require complete coverage of the entire media stream. However, the better the coverage, the smaller the manual search range the SeekIndex will return.

Implementations§

source§

impl SeekIndex

source

pub fn new() -> SeekIndex

Create an empty SeekIndex

source

pub fn insert(&mut self, ts: u64, byte_offset: u64, n_frames: u32)

Insert a SeekPoint into the index.

source

pub fn search(&self, frame_ts: u64) -> SeekSearchResult

Search the index to find a bounded range of bytes wherein the specified frame timestamp will be contained. If the index is empty, this function simply returns a result indicating the entire stream should be searched manually.

Trait Implementations§

source§

impl Default for SeekIndex

source§

fn default() -> SeekIndex

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<F, T> IntoSample<T> for F
where T: FromSample<F>,

source§

fn into_sample(self) -> T

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.