Re-upload of https://codereview.chromium.org/1673183002/.

Enable H.264 video WebRTC behind run-time flag and add
WebRtcBrowserTest for H.264.

The compile flag |rtc_use_h264| defaults to
|proprietary_codecs| which is used on some Chromium bots
and in the official Chrome build. The new run-time flag
|kWebRtcH264WithOpenH264FFmpeg| determines if the
|rtc_use_h264| encoder/decoder will be used at runtime.

The run-time flag is off by default.

This CL:
- Adds run-time flag and a new build target for it. It is
placed in content/public/common/ because it
can't/shouldn't be placed in the webrtc repo and
peer_connection_dependency_factory.cc lives in
content/renderer/media/webrtc/.
- Moves renderer_features and its generated header file
target from content/renderer/ to content/public/common/
to not break include rules and renames it to
common_features.
- Based on the run-time flag, enables or disables H.264
in peer_connection_dependency_factory.cc.
- If flag is on, runs a new H.264 browser test.

BUG=chromium:500605, chromium:468365

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

Cr-Commit-Position: refs/heads/master@{#377556}
12 files changed