bool iAudioTrackReader.read(iDecoderQueues queues) { if (EOF) { Thread.Sleep(1); return(false); } int cb = getFrameSize(); var span = queues.dequeueEmpty(out int idx, cb); lock (clusters.syncRoot) readCurrentFrame(span); queues.enqueueEncoded(idx, cb, timestamp); advance(); return(true); }
bool iAudioTrackReader.read(iDecoderQueues queues) { if (sampleReader.EOF) { Thread.Sleep(1); return(false); } int cbSample = sampleReader.seek(stream); Span <byte> span = queues.dequeueEmpty(out int idx, cbSample); stream.read(span); queues.enqueueEncoded(idx, cbSample, sampleReader.timestamp); sampleReader.advance(); return(true); }