Skip to content

Reduncancy and lack of normative clarity around interaction with constraints #28

Description

@jan-ivar

This spec loosely mentions "Echo-cancellation", "noise suppression", and "boost intelligibility of the incoming signal" (autoGainControl?) and implies a control surface to those features.

There seems to be significant overlap here with track constraints. E.g.:

track.contentHint = "music";
await track.applyConstraints({
  echoCancellation: true,
  noiseSuppression: true,
  autoGainControl: true,
});
track.contentHint = "music";
console.log(track.getSettings().echoCancellation); // true or false?
console.log(track.getSettings().noiseSuppression); // true or false?
console.log(track.getSettings().autoGainControl);  // true or false?

My guess would be true on account of "These settings are not intended to replace encoder-level settings completely but rather complement them with a simpler hint"—even though we're not dealing with encoders here.

There also seems to be a missed opportunity here to make things normatively testable. E.g.:

// Assuming unconstrained track
track.contentHint = "music";
console.log(track.getSettings().echoCancellation); // false
console.log(track.getSettings().noiseSuppression); // false
console.log(track.getSettings().autoGainControl);  // false

The lack of testable steps feels like a general problem, so I'll open a separate issue on that.

Activity

  1. aboba commented on Aug 9, 2019

    @aboba
    Contributor

    Related Issue (for video): #24

  2. alvestrand commented on Mar 12, 2020

    @alvestrand
    Contributor

    I think this is addressed now - please reopen if not.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions