AV1 encoder wrapper tweaks for Chrome Remote Desktop [chromium/src : main]

721 views
Skip to first unread message

Joe Downing (Gerrit)

unread,
Jun 2, 2022, 6:33:37 PM6/2/22
to poscia...@chromium.org, Lambros Lambrou, Chromium LUCI CQ, chromium...@chromium.org, chromotin...@chromium.org

Attention is currently required from: Lambros Lambrou.

View Change

1 comment:

To view, visit change 3687980. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: Ieccc2a2e2f96e94f6dd5137c5ccb22492da3c878
Gerrit-Change-Number: 3687980
Gerrit-PatchSet: 1
Gerrit-Owner: Joe Downing <joe...@chromium.org>
Gerrit-Reviewer: Joe Downing <joe...@chromium.org>
Gerrit-Reviewer: Lambros Lambrou <lambros...@chromium.org>
Gerrit-Attention: Lambros Lambrou <lambros...@chromium.org>
Gerrit-Comment-Date: Thu, 02 Jun 2022 22:33:32 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment

Marco Paniconi (Gerrit)

unread,
Jun 3, 2022, 1:49:05 AM6/3/22
to Joe Downing, poscia...@chromium.org, Lambros Lambrou, Chromium LUCI CQ, chromium...@chromium.org, chromotin...@chromium.org

Attention is currently required from: Joe Downing, Lambros Lambrou.

View Change

4 comments:

  • File remoting/codec/webrtc_video_encoder_av1.cc:

    • Patch Set #1, Line 97: error = aom_codec_control(codec.get(), AV1E_SET_ENABLE_TPL_MODEL, 0);

      These next 3 controls (line 97,99,101) are duplicated below (line 133,135,137), so they can be removed here. Sorry about that.

    • Patch Set #1, Line 139: error = aom_codec_control(codec.get(), AV1E_SET_AQ_MODE, 3);

      prefer to move this AQ_MODE control higher up, after the CPUUSED control (line 70), since it's an important setting.

    • Patch Set #1, Line 141:

      can you also add these settings, shouldn't change performance since some of these are off by default, or won't do anything in REALTIME build, but good to add anyway:
      (- ,AV1E_SET_NOISE_SENSITIVITY, 0)
      (-, AV1E_SET_ENABLE_PAETH_INTRA, 0
      (- ,AV1E_SET_ENABLE_QM, 0);
      (- ,AV1E_SET_ENABLE_RECT_PARTITIONS, 0);
      (- ,AV1E_SET_ENABLE_RESTORATION, 0);
      (- ,AV1E_SET_ENABLE_SMOOTH_INTERINTRA, 0);
      (- ,AV1E_SET_ENABLE_TX64, 0);
      (- ,AV1E_SET_MAX_REFERENCE_FRAMES, 3);

    • Patch Set #1, Line 225: config_.rc_overshoot_pct = 15;

      can you replace 224,225 and add 2 more:
      cfg_.rc_undershoot_pct = 50;
      cfg_.rc_overshoot_pct = 50;
      cfg_.rc_buf_initial_sz = 600;
      cfg_.rc_buf_optimal_sz = 600;
      cfg_.rc_buf_sz = 1000;

To view, visit change 3687980. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: Ieccc2a2e2f96e94f6dd5137c5ccb22492da3c878
Gerrit-Change-Number: 3687980
Gerrit-PatchSet: 1
Gerrit-Owner: Joe Downing <joe...@chromium.org>
Gerrit-Reviewer: Joe Downing <joe...@chromium.org>
Gerrit-Reviewer: Lambros Lambrou <lambros...@chromium.org>
Gerrit-Reviewer: Marco Paniconi <mar...@google.com>
Gerrit-Attention: Joe Downing <joe...@chromium.org>
Gerrit-Attention: Lambros Lambrou <lambros...@chromium.org>
Gerrit-Comment-Date: Fri, 03 Jun 2022 05:48:49 +0000

Joe Downing (Gerrit)

unread,
Jun 3, 2022, 1:01:43 PM6/3/22
to poscia...@chromium.org, Marco Paniconi, Lambros Lambrou, Chromium LUCI CQ, chromium...@chromium.org, chromotin...@chromium.org

Attention is currently required from: Lambros Lambrou, Marco Paniconi.

Patch set 2:Commit-Queue +1

View Change

4 comments:

  • File remoting/codec/webrtc_video_encoder_av1.cc:

    • These next 3 controls (line 97,99,101) are duplicated below (line 133,135,137), so they can be remov […]

      Ugh, I should have checked for dupes, not your fault : )

    • prefer to move this AQ_MODE control higher up, after the CPUUSED control (line 70), since it's an im […]

      Done

    • can you also add these settings, shouldn't change performance since some of these are off by default […]

      Done

    • can you replace 224,225 and add 2 more: […]

      Done

To view, visit change 3687980. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: Ieccc2a2e2f96e94f6dd5137c5ccb22492da3c878
Gerrit-Change-Number: 3687980
Gerrit-PatchSet: 2
Gerrit-Owner: Joe Downing <joe...@chromium.org>
Gerrit-Reviewer: Joe Downing <joe...@chromium.org>
Gerrit-Reviewer: Lambros Lambrou <lambros...@chromium.org>
Gerrit-Reviewer: Marco Paniconi <mar...@google.com>
Gerrit-Attention: Marco Paniconi <mar...@google.com>
Gerrit-Attention: Lambros Lambrou <lambros...@chromium.org>
Gerrit-Comment-Date: Fri, 03 Jun 2022 17:01:36 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Comment-In-Reply-To: Marco Paniconi <mar...@google.com>
Gerrit-MessageType: comment

Marco Paniconi (Gerrit)

unread,
Jun 3, 2022, 1:42:50 PM6/3/22
to Joe Downing, poscia...@chromium.org, Lambros Lambrou, Chromium LUCI CQ, chromium...@chromium.org, chromotin...@chromium.org

Attention is currently required from: Joe Downing, Lambros Lambrou.

View Change

1 comment:

To view, visit change 3687980. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: Ieccc2a2e2f96e94f6dd5137c5ccb22492da3c878
Gerrit-Change-Number: 3687980
Gerrit-PatchSet: 2
Gerrit-Owner: Joe Downing <joe...@chromium.org>
Gerrit-Reviewer: Joe Downing <joe...@chromium.org>
Gerrit-Reviewer: Lambros Lambrou <lambros...@chromium.org>
Gerrit-Reviewer: Marco Paniconi <mar...@google.com>
Gerrit-Attention: Joe Downing <joe...@chromium.org>
Gerrit-Attention: Lambros Lambrou <lambros...@chromium.org>
Gerrit-Comment-Date: Fri, 03 Jun 2022 17:42:42 +0000

Lambros Lambrou (Gerrit)

unread,
Jun 3, 2022, 1:55:22 PM6/3/22
to Joe Downing, poscia...@chromium.org, Marco Paniconi, Chromium LUCI CQ, chromium...@chromium.org, chromotin...@chromium.org

Attention is currently required from: Joe Downing.

Patch set 2:Code-Review +1

View Change

    To view, visit change 3687980. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ieccc2a2e2f96e94f6dd5137c5ccb22492da3c878
    Gerrit-Change-Number: 3687980
    Gerrit-PatchSet: 2
    Gerrit-Owner: Joe Downing <joe...@chromium.org>
    Gerrit-Reviewer: Joe Downing <joe...@chromium.org>
    Gerrit-Reviewer: Lambros Lambrou <lambros...@chromium.org>
    Gerrit-Reviewer: Marco Paniconi <mar...@google.com>
    Gerrit-Attention: Joe Downing <joe...@chromium.org>
    Gerrit-Comment-Date: Fri, 03 Jun 2022 17:55:16 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: Yes
    Gerrit-MessageType: comment

    Joe Downing (Gerrit)

    unread,
    Jun 3, 2022, 2:01:17 PM6/3/22
    to poscia...@chromium.org, Lambros Lambrou, Marco Paniconi, Chromium LUCI CQ, chromium...@chromium.org, chromotin...@chromium.org

    Patch set 2:Commit-Queue +2

    View Change

    1 comment:

    To view, visit change 3687980. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ieccc2a2e2f96e94f6dd5137c5ccb22492da3c878
    Gerrit-Change-Number: 3687980
    Gerrit-PatchSet: 2
    Gerrit-Owner: Joe Downing <joe...@chromium.org>
    Gerrit-Reviewer: Joe Downing <joe...@chromium.org>
    Gerrit-Reviewer: Lambros Lambrou <lambros...@chromium.org>
    Gerrit-Reviewer: Marco Paniconi <mar...@google.com>
    Gerrit-Comment-Date: Fri, 03 Jun 2022 18:01:10 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    Gerrit-MessageType: comment

    Chromium LUCI CQ (Gerrit)

    unread,
    Jun 3, 2022, 2:14:49 PM6/3/22
    to Joe Downing, poscia...@chromium.org, Lambros Lambrou, Marco Paniconi, chromium...@chromium.org, chromotin...@chromium.org

    Chromium LUCI CQ submitted this change.

    View Change


    Approvals: Lambros Lambrou: Looks good to me Joe Downing: Commit
    AV1 encoder wrapper tweaks for Chrome Remote Desktop

    This CL sets a number of encoder parameters tht we suggested by the WebM
    folks. Initial testing with these values indicates a ~2X increase in
    framerate and makes the codec usable (though it still seems a tad slower
    than VP9 in my initial testing). I've also removed a NOTIMPL log from the
    encoding path as it is way too chatty when using AV1.

    Change-Id: Ieccc2a2e2f96e94f6dd5137c5ccb22492da3c878
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3687980
    Reviewed-by: Lambros Lambrou <lambros...@chromium.org>
    Commit-Queue: Joe Downing <joe...@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1010661}
    ---
    M remoting/codec/webrtc_video_encoder_av1.cc
    M remoting/protocol/webrtc_video_encoder_wrapper.cc
    2 files changed, 97 insertions(+), 15 deletions(-)


    To view, visit change 3687980. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ieccc2a2e2f96e94f6dd5137c5ccb22492da3c878
    Gerrit-Change-Number: 3687980
    Gerrit-PatchSet: 3
    Gerrit-Owner: Joe Downing <joe...@chromium.org>
    Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
    Gerrit-Reviewer: Joe Downing <joe...@chromium.org>
    Gerrit-Reviewer: Lambros Lambrou <lambros...@chromium.org>
    Gerrit-Reviewer: Marco Paniconi <mar...@google.com>
    Gerrit-MessageType: merged
    Reply all
    Reply to author
    Forward
    0 new messages