Skip to content

Speed5 tools off - #5436

Open
yeqing-wu wants to merge 3 commits into
AOMediaCodec:av2-encfrom
yeqing-wu:speed5_tools_off
Open

yeqing-wu wants to merge 3 commits into
AOMediaCodec:av2-encfrom
yeqing-wu:speed5_tools_off

Conversation

@yeqing-wu

@yeqing-wu yeqing-wu commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

Do not squash and then merge. Let's do the rebase and keep all three commits so that we can keep the record of the BD rate results of each change.

  1. Turn off palette intra mode at speed >= 5 for non-screen content

STATS_CHANGED
Anchor: c5df831
Speed 5 (cpu-used=5): FG16 CTC (33 frames, class A1 and A2, RA)

  Class          Y      Cb      Cr    wAvg   Enc%   Dec%
  A1         -0.03    0.19   -0.01   -0.02   98.6   100
  A2          0.05    0.22    0.08    0.06   99.0   100
  Avg w/o B2  0.03    0.21    0.05    0.04   98.9   100
  1. Turn off one-sided compound at speed >= 5

STATS_CHANGED
Anchor: c5df831
Speed 5 (cpu-used=5): FG16 CTC (33 frames, class A1 and A2, RA)

  Class          Y      Cb      Cr    wAvg   Enc%   Dec%
  A1          0.05    0.11    0.16    0.05   98.6   101
  A2          0.04    0.18    0.30    0.06   98.2    99
  Avg w/o B2  0.04    0.16    0.26    0.06   98.3   100
  1. Turn off TIP RefineMV/OPFL at speed >= 5
    STATS_CHANGED
    Anchor: c5df831
    Speed 5 (cpu-used=5): FG16 CTC (33 frames, class A1 and A2, RA)
  Class          Y      Cb      Cr    wAvg   Enc%   Dec%
  A1          0.71    0.66    0.45    0.70    82     86
  A2          0.74    0.41    0.58    0.72    89     86
  Avg w/o B2  0.73    0.48    0.54    0.71    87     86

Comment thread av2/encoder/encoder.c Outdated
seq->enable_tip = seq->single_picture_header_flag ? 0 : tool_cfg->enable_tip;
seq->enable_tip_refinemv = tool_cfg->enable_tip_refinemv;
// Force TIP RefineMV/OPFL off at speed >= 5.
seq->enable_tip_refinemv =

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe it is better to set speed related feature in one place as other speed features? By the way, I also turned this off for LC mode in set_good_speed_features_lc_dec_framesize_independent().

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @yunqingwang1.

At first, I thought that seq_params was set in av2_init_seq_coding_tools(), which is called before av2_set_speed_features_framesize_independent(). Then, seq_params is locked at the first key frame, preventing downstream readers from modifying it. However, after reviewing your LC mode code, I realized my understanding was incorrect. I will modify the code as you suggested.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, modified as you suggested.

STATS_CHANGED

Anchor: c5df831
Speed 5 (cpu-used=5): FG16 CTC (33 frames, class A1 and A2, RA)

  Class          Y      Cb      Cr    wAvg   Enc%   Dec%
  A1         -0.03    0.19   -0.01   -0.02   98.6   100
  A2          0.05    0.22    0.08    0.06   99.0   100
  Avg w/o B2  0.03    0.21    0.05    0.04   98.9   100
STATS_CHANGED

Anchor: c5df831
Speed 5 (cpu-used=5): FG16 CTC (33 frames, class A1 and A2, RA)

  Class          Y      Cb      Cr    wAvg   Enc%   Dec%
  A1          0.05    0.11    0.16    0.05   98.6   101
  A2          0.04    0.18    0.30    0.06   98.2    99
  Avg w/o B2  0.04    0.16    0.26    0.06   98.3   100
STATS_CHANGED

Anchor: c5df831
Speed 5 (cpu-used=5): FG16 CTC (33 frames, class A1 and A2, RA)

  Class          Y      Cb      Cr    wAvg   Enc%   Dec%
  A1          0.71    0.66    0.45    0.70    82     86
  A2          0.74    0.41    0.58    0.72    89     86
  Avg w/o B2  0.73    0.48    0.54    0.71    87     86
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants