InputController initialization refactoring [chromium/src : main]

0 views
Skip to first unread message

Pablo Barrera González (Gerrit)

unread,
Jul 8, 2026, 5:40:15 AM (yesterday) Jul 8
to chromium...@chromium.org, feature-me...@chromium.org, chrome-intell...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org, chrome-intelligence-te...@google.com

Pablo Barrera González has uploaded the change for review

Commit message

InputController initialization refactoring

Moving MaybeSetUpAudioProcessing out of the constructor because it might fail.
After this change InputController::Create returns a valid pointer even if
VoiceIsolation can't be created. Any error during creation is communicated
through event_handler_.
Bug: 512016773
Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2

Change diff


Change information

Files:
  • M services/audio/input_controller.cc
  • M services/audio/input_controller.h
  • M services/audio/input_controller_unittest.cc
Change size: M
Delta: 3 files changed, 88 insertions(+), 85 deletions(-)
Open in Gerrit

Related details

Attention set is empty
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: newchange
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
Gerrit-Change-Number: 8064706
Gerrit-PatchSet: 1
Gerrit-Owner: Pablo Barrera González <barr...@google.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Olga Sharonova (Gerrit)

unread,
Jul 8, 2026, 8:13:13 AM (yesterday) Jul 8
to Pablo Barrera González, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
Attention needed from Pablo Barrera González

Olga Sharonova added 3 comments

File services/audio/input_controller.h
Line 253, Patchset 2 (Latest): media::AecdumpRecordingManager* aecdump_recording_manager,
Olga Sharonova . unresolved

Not needed?

File services/audio/input_controller.cc
Line 372, Patchset 2 (Latest): std::make_unique<StatsReporter>(reference_signal_provider, this)) {
Olga Sharonova . unresolved

I'd very much like to avoid passing reference_signal_provider twice in some elegant way, but if it's too much work we can be sloppy here.

Line 441, Patchset 2 (Latest): event_handler_->OnError(STREAM_CREATE_ERROR);
Olga Sharonova . unresolved

This needs to be moved into DoCreate, to keep the separation of concerns. (so I suggest we return kOk, kVoiceIsolationFailure, kUnknown - or something like that)

Open in Gerrit

Related details

Attention is currently required from:
  • Pablo Barrera González
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
    Gerrit-Change-Number: 8064706
    Gerrit-PatchSet: 2
    Gerrit-Owner: Pablo Barrera González <barr...@google.com>
    Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
    Gerrit-Attention: Pablo Barrera González <barr...@google.com>
    Gerrit-Comment-Date: Wed, 08 Jul 2026 12:12:55 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Pablo Barrera González (Gerrit)

    unread,
    Jul 8, 2026, 11:12:05 AM (yesterday) Jul 8
    to Olga Sharonova, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
    Attention needed from Olga Sharonova

    Pablo Barrera González added 3 comments

    File services/audio/input_controller.h
    Line 253, Patchset 2 (Latest): media::AecdumpRecordingManager* aecdump_recording_manager,
    Olga Sharonova . resolved

    Not needed?

    Pablo Barrera González

    Acknowledged

    File services/audio/input_controller.cc
    Line 372, Patchset 2 (Latest): std::make_unique<StatsReporter>(reference_signal_provider, this)) {
    Olga Sharonova . unresolved

    I'd very much like to avoid passing reference_signal_provider twice in some elegant way, but if it's too much work we can be sloppy here.

    Pablo Barrera González

    Not clear.

    StatsReperter is already used in the constructor, so we need to have it as soon as possible. And I can't now build the StatsReporte in Create() to pass it to the constructor because it does need to know the controller it's connected to.

    Line 441, Patchset 2 (Latest): event_handler_->OnError(STREAM_CREATE_ERROR);
    Olga Sharonova . unresolved

    This needs to be moved into DoCreate, to keep the separation of concerns. (so I suggest we return kOk, kVoiceIsolationFailure, kUnknown - or something like that)

    Pablo Barrera González

    I can move the code, no problem. I put it here to initialize the VoiceIsolation only once it was clear nothing else was failing, but likely it's not the best place.

    I don't understand the part about returning kVoiceIsolationFailure, etc. What is returning these error codes? DoCreate?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Olga Sharonova
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
    Gerrit-Change-Number: 8064706
    Gerrit-PatchSet: 2
    Gerrit-Owner: Pablo Barrera González <barr...@google.com>
    Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
    Gerrit-Attention: Olga Sharonova <ol...@chromium.org>
    Gerrit-Comment-Date: Wed, 08 Jul 2026 15:11:45 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Olga Sharonova <ol...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Olga Sharonova (Gerrit)

    unread,
    Jul 8, 2026, 11:16:14 AM (yesterday) Jul 8
    to Pablo Barrera González, Olga Sharonova, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
    Attention needed from Olga Sharonova and Pablo Barrera González

    Olga Sharonova added 2 comments

    File services/audio/input_controller.cc
    Line 372, Patchset 2 (Latest): std::make_unique<StatsReporter>(reference_signal_provider, this)) {
    Olga Sharonova . unresolved

    I'd very much like to avoid passing reference_signal_provider twice in some elegant way, but if it's too much work we can be sloppy here.

    Pablo Barrera González

    Not clear.

    StatsReperter is already used in the constructor, so we need to have it as soon as possible. And I can't now build the StatsReporte in Create() to pass it to the constructor because it does need to know the controller it's connected to.

    Olga Sharonova

    "Used" is a very high word. We just log AEC type We can do it in MaybeSetUpAudioProcessing

    Line 441, Patchset 2 (Latest): event_handler_->OnError(STREAM_CREATE_ERROR);
    Olga Sharonova . unresolved

    This needs to be moved into DoCreate, to keep the separation of concerns. (so I suggest we return kOk, kVoiceIsolationFailure, kUnknown - or something like that)

    Pablo Barrera González

    I can move the code, no problem. I put it here to initialize the VoiceIsolation only once it was clear nothing else was failing, but likely it's not the best place.

    I don't understand the part about returning kVoiceIsolationFailure, etc. What is returning these error codes? DoCreate?

    Olga Sharonova

    No, this function will return them, and DoCreate will make a decision continue or not (separation of concerns: it's not a business of this function to make this decision).

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Olga Sharonova
    • Pablo Barrera González
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
    Gerrit-Change-Number: 8064706
    Gerrit-PatchSet: 2
    Gerrit-Owner: Pablo Barrera González <barr...@google.com>
    Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
    Gerrit-CC: Olga Sharonova <ol...@google.com>
    Gerrit-Attention: Olga Sharonova <ol...@chromium.org>
    Gerrit-Attention: Pablo Barrera González <barr...@google.com>
    Gerrit-Comment-Date: Wed, 08 Jul 2026 15:15:56 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Olga Sharonova <ol...@chromium.org>
    Comment-In-Reply-To: Pablo Barrera González <barr...@google.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Pablo Barrera González (Gerrit)

    unread,
    Jul 8, 2026, 11:39:34 AM (24 hours ago) Jul 8
    to Olga Sharonova, Olga Sharonova, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
    Attention needed from Olga Sharonova and Olga Sharonova

    Pablo Barrera González added 1 comment

    File services/audio/input_controller.cc
    Line 372, Patchset 2 (Latest): std::make_unique<StatsReporter>(reference_signal_provider, this)) {
    Olga Sharonova . unresolved

    I'd very much like to avoid passing reference_signal_provider twice in some elegant way, but if it's too much work we can be sloppy here.

    Pablo Barrera González

    Not clear.

    StatsReperter is already used in the constructor, so we need to have it as soon as possible. And I can't now build the StatsReporte in Create() to pass it to the constructor because it does need to know the controller it's connected to.

    Olga Sharonova

    "Used" is a very high word. We just log AEC type We can do it in MaybeSetUpAudioProcessing

    Pablo Barrera González

    MaybeSetUpAudioProcessing is only used it we are in CHROME_WIDE_ECHO_CANCELLATION. Do we need the log if CHROME_WIDE_ECHO_CANCELLATION is not set?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Olga Sharonova
    • Olga Sharonova
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
    Gerrit-Change-Number: 8064706
    Gerrit-PatchSet: 2
    Gerrit-Owner: Pablo Barrera González <barr...@google.com>
    Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
    Gerrit-CC: Olga Sharonova <ol...@google.com>
    Gerrit-Attention: Olga Sharonova <ol...@chromium.org>
    Gerrit-Attention: Olga Sharonova <ol...@google.com>
    Gerrit-Comment-Date: Wed, 08 Jul 2026 15:39:17 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Olga Sharonova <ol...@chromium.org>
    Comment-In-Reply-To: Olga Sharonova <ol...@google.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Olga Sharonova (Gerrit)

    unread,
    Jul 8, 2026, 11:44:17 AM (24 hours ago) Jul 8
    to Pablo Barrera González, Olga Sharonova, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
    Attention needed from Olga Sharonova and Pablo Barrera González

    Olga Sharonova added 1 comment

    File services/audio/input_controller.cc
    Line 372, Patchset 2 (Latest): std::make_unique<StatsReporter>(reference_signal_provider, this)) {
    Olga Sharonova . unresolved

    I'd very much like to avoid passing reference_signal_provider twice in some elegant way, but if it's too much work we can be sloppy here.

    Pablo Barrera González

    Not clear.

    StatsReperter is already used in the constructor, so we need to have it as soon as possible. And I can't now build the StatsReporte in Create() to pass it to the constructor because it does need to know the controller it's connected to.

    Olga Sharonova

    "Used" is a very high word. We just log AEC type We can do it in MaybeSetUpAudioProcessing

    Pablo Barrera González

    MaybeSetUpAudioProcessing is only used it we are in CHROME_WIDE_ECHO_CANCELLATION. Do we need the log if CHROME_WIDE_ECHO_CANCELLATION is not set?

    Olga Sharonova

    We need stats reporter.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Olga Sharonova
    • Pablo Barrera González
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
    Gerrit-Change-Number: 8064706
    Gerrit-PatchSet: 2
    Gerrit-Owner: Pablo Barrera González <barr...@google.com>
    Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
    Gerrit-CC: Olga Sharonova <ol...@google.com>
    Gerrit-Attention: Olga Sharonova <ol...@chromium.org>
    Gerrit-Attention: Pablo Barrera González <barr...@google.com>
    Gerrit-Comment-Date: Wed, 08 Jul 2026 15:43:58 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Pablo Barrera González (Gerrit)

    unread,
    Jul 8, 2026, 12:37:04 PM (23 hours ago) Jul 8
    to Olga Sharonova, Olga Sharonova, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
    Attention needed from Olga Sharonova and Olga Sharonova

    Pablo Barrera González added 2 comments

    File services/audio/input_controller.cc
    Line 372, Patchset 2: std::make_unique<StatsReporter>(reference_signal_provider, this)) {
    Olga Sharonova . resolved

    I'd very much like to avoid passing reference_signal_provider twice in some elegant way, but if it's too much work we can be sloppy here.

    Pablo Barrera González

    Not clear.

    StatsReperter is already used in the constructor, so we need to have it as soon as possible. And I can't now build the StatsReporte in Create() to pass it to the constructor because it does need to know the controller it's connected to.

    Olga Sharonova

    "Used" is a very high word. We just log AEC type We can do it in MaybeSetUpAudioProcessing

    Pablo Barrera González

    MaybeSetUpAudioProcessing is only used it we are in CHROME_WIDE_ECHO_CANCELLATION. Do we need the log if CHROME_WIDE_ECHO_CANCELLATION is not set?

    Pablo Barrera González

    Ok, let's move it to DoCreate.

    Line 441, Patchset 2: event_handler_->OnError(STREAM_CREATE_ERROR);
    Olga Sharonova . resolved

    This needs to be moved into DoCreate, to keep the separation of concerns. (so I suggest we return kOk, kVoiceIsolationFailure, kUnknown - or something like that)

    Pablo Barrera González

    I can move the code, no problem. I put it here to initialize the VoiceIsolation only once it was clear nothing else was failing, but likely it's not the best place.

    I don't understand the part about returning kVoiceIsolationFailure, etc. What is returning these error codes? DoCreate?

    Olga Sharonova

    No, this function will return them, and DoCreate will make a decision continue or not (separation of concerns: it's not a business of this function to make this decision).

    Pablo Barrera González

    I moved this do DoCreate.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Olga Sharonova
    • Olga Sharonova
    Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement is not satisfiedCode-Review
      • requirement is not satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
      Gerrit-Change-Number: 8064706
      Gerrit-PatchSet: 3
      Gerrit-Owner: Pablo Barrera González <barr...@google.com>
      Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
      Gerrit-CC: Olga Sharonova <ol...@google.com>
      Gerrit-Attention: Olga Sharonova <ol...@chromium.org>
      Gerrit-Attention: Olga Sharonova <ol...@google.com>
      Gerrit-Comment-Date: Wed, 08 Jul 2026 16:36:48 +0000
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Olga Sharonova (Gerrit)

      unread,
      5:13 AM (6 hours ago) 5:13 AM
      to Pablo Barrera González, Olga Sharonova, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
      Attention needed from Olga Sharonova and Pablo Barrera González

      Olga Sharonova added 4 comments

      Patchset-level comments
      File-level comment, Patchset 3 (Latest):
      Olga Sharonova . resolved

      LG in general

      File services/audio/input_controller.cc
      Line 360, Patchset 3 (Latest): const media::AudioParameters& output_params,
      const media::AudioParameters& device_params,
      Olga Sharonova . unresolved

      Why are we passing these here?

      Line 368, Patchset 3 (Latest): stats_reporter_(nullptr) {
      Olga Sharonova . unresolved

      not needed

      Line 713, Patchset 3 (Latest): DoCreateStatsReporter(reference_signal_provider.get());
      Olga Sharonova . unresolved

      We don't need it as a function, just create an object here?

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Olga Sharonova
      • Pablo Barrera González
      Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement is not satisfiedCode-Owners
        • requirement is not satisfiedCode-Review
        • requirement is not satisfiedNo-Unresolved-Comments
        • requirement is not satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: chromium/src
        Gerrit-Branch: main
        Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
        Gerrit-Change-Number: 8064706
        Gerrit-PatchSet: 3
        Gerrit-Owner: Pablo Barrera González <barr...@google.com>
        Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
        Gerrit-CC: Olga Sharonova <ol...@google.com>
        Gerrit-Attention: Olga Sharonova <ol...@google.com>
        Gerrit-Attention: Pablo Barrera González <barr...@google.com>
        Gerrit-Comment-Date: Thu, 09 Jul 2026 09:12:51 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Olga Sharonova (Gerrit)

        unread,
        6:33 AM (5 hours ago) 6:33 AM
        to Pablo Barrera González, Olga Sharonova, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
        Attention needed from Olga Sharonova and Pablo Barrera González

        Olga Sharonova added 1 comment

        File services/audio/input_controller.cc
        Line 447, Patchset 4 (Latest): raw_ptr<MlModelManager> ml_model_manager) {
        Olga Sharonova . unresolved

        Forgot to say: please switch the order of parameters? (usually managers and factories go first, parameters second)

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Olga Sharonova
        • Pablo Barrera González
        Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement is not satisfiedCode-Owners
        • requirement is not satisfiedCode-Review
        • requirement is not satisfiedNo-Unresolved-Comments
        • requirement is not satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: chromium/src
        Gerrit-Branch: main
        Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
        Gerrit-Change-Number: 8064706
        Gerrit-PatchSet: 4
        Gerrit-Owner: Pablo Barrera González <barr...@google.com>
        Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
        Gerrit-CC: Olga Sharonova <ol...@google.com>
        Gerrit-Attention: Olga Sharonova <ol...@google.com>
        Gerrit-Attention: Pablo Barrera González <barr...@google.com>
        Gerrit-Comment-Date: Thu, 09 Jul 2026 10:32:50 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Pablo Barrera González (Gerrit)

        unread,
        7:33 AM (4 hours ago) 7:33 AM
        to Olga Sharonova, Olga Sharonova, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
        Attention needed from Olga Sharonova and Olga Sharonova

        Pablo Barrera González added 4 comments

        File services/audio/input_controller.cc
        Line 360, Patchset 3: const media::AudioParameters& output_params,
        const media::AudioParameters& device_params,
        Olga Sharonova . resolved

        Why are we passing these here?

        Pablo Barrera González

        Done

        Line 368, Patchset 3: stats_reporter_(nullptr) {
        Olga Sharonova . resolved

        not needed

        Pablo Barrera González

        Done

        Line 447, Patchset 4: raw_ptr<MlModelManager> ml_model_manager) {
        Olga Sharonova . resolved

        Forgot to say: please switch the order of parameters? (usually managers and factories go first, parameters second)

        Pablo Barrera González

        Done

        Line 713, Patchset 3: DoCreateStatsReporter(reference_signal_provider.get());
        Olga Sharonova . resolved

        We don't need it as a function, just create an object here?

        Pablo Barrera González

        Done

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Olga Sharonova
        • Olga Sharonova
        Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement is not satisfiedCode-Owners
          • requirement is not satisfiedCode-Review
          • requirement is not satisfiedReview-Enforcement
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
          Gerrit-Change-Number: 8064706
          Gerrit-PatchSet: 5
          Gerrit-Owner: Pablo Barrera González <barr...@google.com>
          Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
          Gerrit-CC: Olga Sharonova <ol...@google.com>
          Gerrit-Attention: Olga Sharonova <ol...@chromium.org>
          Gerrit-Attention: Olga Sharonova <ol...@google.com>
          Gerrit-Comment-Date: Thu, 09 Jul 2026 11:33:17 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: No
          Comment-In-Reply-To: Olga Sharonova <ol...@chromium.org>
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Olga Sharonova (Gerrit)

          unread,
          8:19 AM (3 hours ago) 8:19 AM
          to Pablo Barrera González, Olga Sharonova, chromium...@chromium.org, chrome-intell...@chromium.org, chrome-intelligence-te...@google.com, feature-me...@chromium.org, marinacio...@chromium.org, olka+...@chromium.org
          Attention needed from Olga Sharonova and Pablo Barrera González

          Olga Sharonova voted and added 6 comments

          Votes added by Olga Sharonova

          Code-Review+1

          6 comments

          Patchset-level comments
          File-level comment, Patchset 5 (Latest):
          Olga Sharonova . resolved

          LGTM

          File services/audio/input_controller.h
          Line 321, Patchset 5 (Latest): std::unique_ptr<media::VoiceIsolation> MaybeCreateVoiceIsolation(
          Olga Sharonova . unresolved

          nit: add empty line

          Line 311, Patchset 5 (Latest): // processing components. If returns false if there is an issue that prevents
          // DoCreate to continue executing.
          Olga Sharonova . unresolved

          delete

          File services/audio/input_controller.cc
          Line 448, Patchset 5 (Latest): std::unique_ptr<media::VoiceIsolation> voice_isolation = nullptr;
          Olga Sharonova . unresolved

          drop

          Line 453, Patchset 5 (Latest): if (model_handle && model_handle->Get()) {
          Olga Sharonova . unresolved
          if (!model_handle || !model_handle->Get()) {
          return nullptr;
          }
          Line 456, Patchset 5 (Latest): voice_isolation = std::make_unique<media::VoiceIsolation>();
          Olga Sharonova . unresolved

          return std::make_unique<media::VoiceIsolation>();

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Olga Sharonova
          • Pablo Barrera González
          Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement satisfiedCode-Owners
          • requirement is not satisfiedCode-Review
          • requirement is not satisfiedNo-Unresolved-Comments
          • requirement satisfiedReview-Enforcement
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I4f9e418d0ccf4eda0eab9a4d2294c7cbde244af2
          Gerrit-Change-Number: 8064706
          Gerrit-PatchSet: 5
          Gerrit-Owner: Pablo Barrera González <barr...@google.com>
          Gerrit-Reviewer: Olga Sharonova <ol...@chromium.org>
          Gerrit-CC: Olga Sharonova <ol...@google.com>
          Gerrit-Attention: Olga Sharonova <ol...@google.com>
          Gerrit-Attention: Pablo Barrera González <barr...@google.com>
          Gerrit-Comment-Date: Thu, 09 Jul 2026 12:19:30 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: Yes
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy
          Reply all
          Reply to author
          Forward
          0 new messages