MCPcopy Create free account
hub / github.com/IENT/YUView / mark_ref_frames

Method mark_ref_frames

YUViewLib/src/parser/AV1/uncompressed_header.cpp:396–416  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

394}
395
396void uncompressed_header::mark_ref_frames(int idLen,
397 std::shared_ptr<sequence_header_obu> seqHeader,
398 GlobalDecodingValues & decValues)
399{
400 unsigned int diffLen = seqHeader->delta_frame_id_length_minus_2 + 2;
401 for (unsigned int i = 0; i < NUM_REF_FRAMES; i++)
402 {
403 if (current_frame_id > (unsigned int)(1 << diffLen))
404 {
405 if (decValues.RefFrameId[i] > (int)current_frame_id ||
406 decValues.RefFrameId[i] < ((int)current_frame_id - (1 << diffLen)))
407 decValues.RefValid[i] = 0;
408 }
409 else
410 {
411 if (decValues.RefFrameId[i] > (int)current_frame_id &&
412 decValues.RefFrameId[i] < (int)((1 << idLen) + current_frame_id - (1 << diffLen)))
413 decValues.RefValid[i] = 0;
414 }
415 }
416}
417
418int uncompressed_header::get_qindex(bool ignoreDeltaQ, int segmentId) const
419{

Callers 1

parseMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected