Skip to content
Snippets Groups Projects

Two changes are included: (1) disable fractional MVD for UHD sequences (M0312...

Merged LI JINGYA requested to merge lijingya/VVCSoftware_VTM:master into master
1 unresolved thread

Two changes are included: (1) disable fractional MVD for UHD sequences (M0312 & M0255) (2) encoder optimization for MMVD (M0823)

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
1427 1427 {
1428 1428 pcSlice->setDisFracMMVD( true );
1429 1429 }
1430 #if JVET_M0312_FRACMMVD_SWITCH_FOR_UHD
1431 bool useIntegerMVD = (pcPic->lwidth()*pcPic->lheight() > 1920 * 1080);
  • Couple things here: first of all, merge requests should not include multiple items. I don't see the meeting notes saying anything about adopting something from M0312 and I don't see this described in document M0832. Also this seems to conflict with the call to setDisFracMMVD on line 1428 (just above).

  • Author Contributor

    Sorry for the confusion.
    this adoption comes from notes for JVET-M0854:

    JVET-M0854 CE4-related: Combination of CE4.4.4a and CE4.4.5b [T. Hashimoto, E. Sasaki, T. Ikai (Sharp), J. Li, R.-L. Liao, C. S. Lim (Panasonic)] [late] This contribution reports results of combining CE4.4.4.a and CE4.4.5.b. It shows 0.2% B-D rate reduction with 100% encoding time and 100% decoding time in RA condition and 0% B-D rate reduction with 100% encoding time and 100% decoding time in LDB condition, compared to a VTM3+4.4.5* anchor. Reviewed in Track B Thu 17 Jan 1600. The aspect of 4.4.5.b was already resolved by adoption of M0255 (via explicit signalling). Aspect of 4.4.4a should be investigated in ongoing CE.

    the aspect 4.4.5.b comes from M0312. It is a revisited item and is adopted based on M0255. More detail: M0255 disables fractional MVD table for MMVD if the picture is judged as screen content 4.4.5.b disables fractional MVD table for UHD pictures. Both methods signal whether fractional MVD table with a picture level flag. Therefore it is less like a conflict, They are setting the same flag using two different conditions from M0255 and 4.4.5.b.

    Questions: (1) Shall I put M0854 instead of M0312? They both contain CE4.4.5.b which is adopted. (2) Shall I make separate merge request for M0312 and M0823?

  • changed this line in version 3 of the diff

  • Please register or sign in to reply
  • Author Contributor

    Additional information: during the meeting, it was agreed that M0823 shall be used as base of MMVD proposals and was adopted. And 4.4.5.b was proposed on top of M0823 (results are in M0312) and adopted during revisit for M0854.

    Edited by LI JINGYA
  • The notes that you quote don't really say anything about how the MMVD precision (tile_group_fracmmvd_disabled_flag, a.k.a. explicit signalling from M0255) should be set. The code that you are adding here overrides the value set by the M0255 code. Where is the justification for doing this?

  • Author Contributor

    I see. You are right. My code has problem. It is supposed to use same signalling method from M0255. But shall not override M0255. I shall change the code as follows:

    #if JVET_M0312_FRACMMVD_SWITCH_FOR_UHD if (!pcSlice->getDisFracMMVD()) { bool useIntegerMVD = (pcPic->lwidth()*pcPic->lheight() > 1920 * 1080); pcSlice->setDisFracMMVD(useIntegerMVD); } #endif

    Is that OK?

  • Author Contributor

    I don't understand why the website cannot detect line break...

    #if JVET_M0312_FRACMMVD_SWITCH_FOR_UHD

    if (!pcSlice->getDisFracMMVD()) {

    bool useIntegerMVD = (pcPic->lwidth()*pcPic->lheight() > 1920 * 1080);
    
    pcSlice->setDisFracMMVD(useIntegerMVD);

    }

    #endif

  • Author Contributor

    Is this change OK?

      if ( hashRatio > totalCtu * hashThreshold )
      {
        pcSlice->setDisFracMMVD( true );
      }
    #if JVET_M0312_FRACMMVD_SWITCH_FOR_UHD
      if (!pcSlice->getDisFracMMVD()) {
        bool useIntegerMVD = (pcPic->lwidth()*pcPic->lheight() > 1920 * 1080);
        pcSlice->setDisFracMMVD(useIntegerMVD);
      }
    #endif
  • LI JINGYA added 16 commits

    added 16 commits

    Compare with previous version

  • LI JINGYA added 1 commit

    added 1 commit

    • 3d0f0acb - M0823: Encoder optimization for MMVD

    Compare with previous version

  • LI JINGYA added 4 commits

    added 4 commits

    Compare with previous version

  • Author Contributor

    I will make separate commit for M0823 and M0854. Above is commit for M0823

  • merged

  • Frank Bossen mentioned in commit 4da88d8b

    mentioned in commit 4da88d8b

  • Please register or sign in to reply
    Loading