Lines Matching refs:frames

128 MediaTrackAudioSupplier::Read(void* buffer, int64 pos, int64 frames)
131 frames);
134 //printf("MediaTrackAudioSupplier::Read(%p, %lld, %lld)\n", buffer, pos, frames);
144 // Fill the frames after the end of the track with silence.
145 if (fCountFrames > 0 && pos + frames > fCountFrames) {
147 ReadSilence(SkipFrames(buffer, size), frames - size);
148 frames = size;
151 TRACE(" after eliminating the frames after the track end: %p, %lld, %lld\n",
152 buffer, pos, frames);
181 printf(" need to skip %lld frames\n", pos - keyFrame);
184 printf(" skipped %lu frames (full buffer)\n", framesPerBuffer);
191 printf(" skipped %lu frames (rest)\n", framesPerBuffer);
196 while (frames > 0) {
197 printf(" reading %lu frames (full buffer)\n", framesPerBuffer);
198 int64 sizeToRead = min_c(size, frames * bytesPerFrame);
201 frames -= framesPerBuffer;
206 // read the cached frames
208 if (frames > 0)
209 _ReadCachedFrames(buffer, pos, frames, time);
211 TRACE(" after reading from cache: %p, %lld, %lld\n", buffer, pos, frames);
213 // read the remaining (uncached) frames
214 if (frames > 0)
215 _ReadUncachedFrames(buffer, pos, frames, time);
259 // Find out, if the track has key frames: as a heuristic we
298 // copies /frames/ frames at position /position/ from the source to the
304 int64 position, int64 frames) const
311 memcpy(target, source, frames * frameSize);
317 // copies /frames/ frames at position /position/ from the source to the
323 int64 position, int64 frames) const
326 frames);
444 int64 frames) const
451 int32 endFrame = min(position + frames, buffer->offset + buffer->size);
499 // buffer pointer as well as position and number of frames are adjusted
504 int64& frames, bigtime_t time)
509 _GetBuffersFor(buffers, pos, frames);
516 int64 size = min(frames, buffer->offset + buffer->size - pos);
519 frames -= size;
529 if (buffer->offset < pos + frames
530 && buffer->offset + buffer->size >= pos + frames) {
532 int64 size = min(frames, pos + frames - buffer->offset);
534 pos + frames - size, size);
535 frames -= size;
542 /*! Reads /frames/ frames from /position/ into /buffer/. The frames are not
543 read from the cache, but read frames are cached, if possible.
549 int64 frames, bigtime_t time)
555 if (frames > 0) {
562 // read the frames
563 // TODO: Calculate timeout, 0.25 times duration of "frames" seems good.
565 while (error == B_OK && frames > 0) {
571 int64 size = min(position + frames,
577 frames -= size;
588 // Ensure that all frames up to the next key frame are cached.
610 if (error != B_OK && frames > 0)
611 ReadSilence(buffer, frames);