pub(crate) fn start(&mut self, time: fasync::Time) -> Result<()> {
        if self.start_time.is_some() || self.format.is_none() {
            return Err(Error::InvalidState);
        }
        self.start_time = Some(time);
        if self.frames_between_notifications > 0 {
            self.next_notify_frame = 0;
        }
        if let Some(w) = self.waker.take() {
            debug!("ringing the waker to start");
            w.wake();
        }
        Ok(())
    }
/// Start the audio clock for the buffer at `time`
/// Can't start if the format has not been set.
Start the audio clock for the buffer at `time`
Can't start if the format has not been set.
Start the audio clock for the buffer at ` time ` Can ' t start if the format has not been set .
pub(crate) fn start(&mut self, time: fasync::Time) -> Result<()> {
        if self.start_time.is_some() || self.format.is_none() {
            return Err(Error::InvalidState);
        }
        self.start_time = Some(time);
        if self.frames_between_notifications > 0 {
            self.next_notify_frame = 0;
        }
        if let Some(w) = self.waker.take() {
            debug!("ringing the waker to start");
            w.wake();
        }
        Ok(())
    }
pub ( crate ) fn start ( & mut self , time : fasync :: Time ) -> Result < ( ) > { if self . start_time . is_some ( ) || self . format . is_none ( ) { return Err ( Error :: InvalidState ) ; } self . start_time = Some ( time ) ; if self . frames_between_notifications > 0 { self . next_notify_frame = 0 ; } if let Some ( w ) = self . waker . take ( ) { debug ! ( " " ) ; w . wake ( ) ; } Ok ( ( ) ) }
Start the audio clock for the buffer at `time`
Can't start if the format has not been set.
Start the audio clock for the buffer at ` time ` Can ' t start if the format has not been set .
&mut self
time
fasync::Time
&mut self
time
fasync::Time