This is a reland of 1b8ef63876ebfa55a51c8ca9b1d8206bf8233e01. It was previously reverted (https://webrtc-review.googlesource.com/c/src/+/175008) but the revert was found to be unnecessary. Original change's description: > Add an optional override for AudioRecord device > > This is important when we have multiple named devices connected over > USB (eg. "Webcam", "Microphone", "Headset") and there is some way to > choose a specific input device to route from. > > Bug: b/154440591 > Change-Id: I8dc1801a5e4db7f7bb439e855d43897c1f7d8bc4 > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/173748 > Commit-Queue: Robin Lee <rgl@google.com> > Reviewed-by: Sami Kalliomäki <sakal@webrtc.org> > Reviewed-by: Henrik Andreassson <henrika@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#31130} TBR=henrika@webrtc.org,sakal@webrtc.org,rgl@google.com Bug: b/154440591, b/155256727 Change-Id: Ic9bf8305c85552a0dc0d2cde6190988423e7fc70 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/175084 Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org> Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org> Cr-Commit-Position: refs/heads/master@{#31255}