Lines Matching refs:frame
171 // Final frame. Check to determine whether to stop.
217 SkCodecPrintf("Error getting frameInfo for frame %i\n",
230 for (Frame* frame : { &fRestoreFrame, &fDecodingFrame }) {
231 if (frameToDecode == frame->fIndex) {
233 swap(fDisplayFrame, *frame);
241 // The following code makes an effort to avoid overwriting a frame that will
242 // be used again. If frame |i| is_restore_previous, frame |i+1| will not
243 // depend on frame |i|, so do not overwrite frame |i-1|, which may be needed
244 // for frame |i+1|.
253 // do not overwrite a frame which could possibly be used in the
262 auto validPriorFrame = [&frameInfo, &frameToDecode](const Frame& frame) {
263 if (SkCodec::kNoFrame == frame.fIndex ||
264 is_restore_previous(frame.fDisposalMethod)) {
268 return frame.fIndex >= frameInfo.fRequiredFrame && frame.fIndex < frameToDecode;
272 // fDecodingFrame is a good frame to use for this one, but we
279 SkCodecPrintf("Failed to allocate pixels for frame\n");
288 SkCodecPrintf("Failed to restore frame\n");
306 SkCodecPrintf("error %i, frame %i of %i\n", result, frameToDecode, fFrameCount);
320 // HEIF doesn't know the frame duration until after decoding. Update to
323 // latter, it is a frame that was previously decoded, so it has the
363 // This SkBitmap may be reused later to decode the following frame. But Frame::init