Propagate audible state from player to the containing tab.

This is part 1 (chromium),
part 2 (clank) is https://chrome-internal-review.googlesource.com/#/c/195455/

This CL is only about propagation/plumbing.
Neither the reporting of audible state my players nor the consumption
(UI notification) are implemented.

This patch creates a new object AudioMonitorAndroid and
attaches it to MediaWebContentsObserver. The AudioMonitorAndroid
maintains the audible state for the tab. It receives notifications
from MediaPlayerAndroid objects and sends the resulting
notification to the WebContents.

BUG=414810

Review URL: https://codereview.chromium.org/896673003

Cr-Commit-Position: refs/heads/master@{#318823}
23 files changed