Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Video Encoding > High Efficiency Video Coding (HEVC)

Reply
 
Thread Tools Search this Thread Display Modes
Old 22nd August 2016, 07:00   #1  |  Link
asdf013cv
Registered User
 
Join Date: Jul 2016
Posts: 17
Cannot find the derivation process of ref_idx_lX.

I am reading the H.265 standard.

In 8.5.3.2, if merge_flag[ xPb ][ yPb ] is not equal to 1, and if inter_pred_idc[ xPb ][ yPb ] is equal to PRED_LX or PRED_BI,
refIdxLX is set to ref_idx_lX[ xPb ][ yPb ].

However, I cannot find derivation process of ref_idx_lX after searching the keyword ref_idx_lX or ref_idx_l0.
How does the ref_idx_lX come from?

By the way, another question, will merge_flag[ xPb ][ yPb ] set to 1 when the 8.5.3.2.1 is invoked at the first time in the whole encoding process? (Because 8.5.3.2.3 requires MvLX, which is defined after the process 8.5.3.2. If merge_flag[ xPb ][ yPb ] is equal to 1, it seems that MvLX is not available.)
asdf013cv is offline   Reply With Quote
Old 22nd August 2016, 19:27   #2  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,343
ref_idx_l0 and ref_idx_l1 are coded as part of the prediction unit, see 7.3.8.6/7.4.9.6
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is online now   Reply With Quote
Old 23rd August 2016, 07:12   #3  |  Link
asdf013cv
Registered User
 
Join Date: Jul 2016
Posts: 17
Quote:
Originally Posted by nevcairiel View Post
ref_idx_l0 and ref_idx_l1 are coded as part of the prediction unit, see 7.3.8.6/7.4.9.6
But in 7.3.8.6, it only gives ref_idx_l0[ x0 ][ y0 ].
In 7.4.9.6, the description of ref_idx_l0 is "ref_idx_l0[ x0 ][ y0 ] specifies the list 0 reference picture index for the current prediction unit."
This is difficult to understand for me.

For example, the description of num_tile_columns_minus1 is
"num_tile_columns_minus1 plus 1 specifies the number of tile columns partitioning the picture. num_tile_columns_minus1 shall be in the range of 0 to PicWidthInCtbsY − 1, inclusive."
And to know what CtbAddrRsToTs[ ctbAddrRs ] exactly is, the standard gives the code (in 6.5.1).
All of them are clearly defined.

However, I cannot find what value is assigned to ref_idx_l0 and how to get the value.
asdf013cv is offline   Reply With Quote
Old 24th August 2016, 22:13   #4  |  Link
FancyMouse
Registered User
 
Join Date: Sep 2014
Posts: 12
Quote:
Originally Posted by asdf013cv View Post
But in 7.3.8.6, it only gives ref_idx_l0[ x0 ][ y0 ].
l1 is a few lines below, in PU as well.
FancyMouse is offline   Reply With Quote
Old 25th August 2016, 06:01   #5  |  Link
asdf013cv
Registered User
 
Join Date: Jul 2016
Posts: 17
Quote:
Originally Posted by FancyMouse View Post
l1 is a few lines below, in PU as well.
uh
Code:
...
if( num_ref_idx_l0_active_minus1 > 0 )
    ref_idx_l0[ x0 ][ y0 ]
...
if( num_ref_idx_l1_active_minus1 > 0 )
    ref_idx_l1[ x0 ][ y0 ]
...
What is the value of ref_idx_l0 and ref_idx_l1 exactly???
asdf013cv is offline   Reply With Quote
Reply

Tags
hevc. h.265

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 17:42.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.