[Mp4-tech] About the definition of num_ref_frames

Gary Sullivan garysull windows.microsoft.com
Wed Apr 20 18:48:57 EDT 2005


H.B. et al,
Please note the definition of MaxDpbSize in Annex A of the current document:
MaxDpbSize is equal to ( 1024 * MaxDPB / ( PicWidthInMbs * FrameHeightInMbs * 384 ), 16 ) 
Therefore num_ref_frames cannot exceed 16.
An encoder can keep a long-term reference picture in the DPB as long as it wants to.
Best regards,
Gary Sullivan
________________________________
	From: mp4-tech-bounces lists.mpegif.org [mailto:mp4-tech-bounces lists.mpegif.org] On Behalf Of ??(Huang-Bin)
	Sent: Wednesday, April 20, 2024 4:55 AM
	To: mp4-tech lists.mpegif.org
	Subject: [Mp4-tech] About the definition of num_ref_frames
	Hi all,
	I am confused about that the parameter in JM is different with 
	the definition of H.264 recommendation.
	In recommendation document JVT-G050(It seems to be a old version), I check some definitions in 7.4 as below:
	[=============
	num_ref_frames specifies the maximum total number of short-term and long-term reference frames, complementary reference field pairs, and non-paired reference fields used by the decoding process for inter prediction of any picture in the sequence. num_ref_frames also determines the size of the sliding window operation as specified in subclause 8.2.5.3. The value of num_ref_frames shall be in the range of 0 to 16, inclusive.
	max_long_term_frame_idx_plus1 minus 1 specifies the maximum value of long-term frame index allowed for long-term reference pictures (until receipt of another value of max_long_term_frame_idx_plus1). The value of max_long_term_frame_idx_plus1 shall be in the range of 0 to num_ref_frames, inclusive.
	=============]
	Here the text "The value of num_ref_frames shall be in the range of 0 to 16, inclusive"
	is obey the parameter in JM.
	However, I download the latest recommendation document from ITU web-site
	the definitions change as below:
	[=============
	num_ref_frames specifies the maximum number of short-term and long-term reference frames, complementary reference field pairs, and non-paired reference fields that may be used by the decoding process for inter prediction of any picture in the sequence. num_ref_frames also determines the size of the sliding window operation as specified in subclause 8.2.5.3. The value of num_ref_frames shall be in the range of 0 to MaxDpbSize (as specified in subclause A.3.1), inclusive.
	=============]
	It defines the maximum value of num_ref_frame is 0 to MaxDpbSize instead of 0 to 16.
	For example , if we use the profile with the level value equal to 5, and the picure format is CIF,
	we might have a huge amount DPB size to store many reference frames in CIF format. 
	At this situation, We can store more than '16' reference frames(including short-term and long-term) in the DPB.
	So, the questions are:
	Qn 1>
	Why does JM restrict the parameter 'NumberReferenceFrames' in the range 1-16 ?
	("NumberReferenceFrames =  5  # Number of previous frames used for inter motion search (1-16)")
	Can we set the parameter "NumberReferenceFrames" more than '16' for reference if the DPB size is enough ?(In JM)
	Qn 2>
	Can the long-term reference picture stay in the DPB as long as the encoder wants it to ?
	(Will the parameter'NumberReferenceFrames' restrict the logh-term reference index ?)
	Qn 3>
	Could anyone tell me that the meaning of the parameter in JM 'PList0Reference'  ?
	Best regards,
	H.B.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: /pipermail/mp4-tech/attachments/20050420/ea0db566/attachment-0001.html


More information about the Mp4-tech mailing list