Make sure MediaStreamVideoSource support cropping.

Currently cropping is done for Chrome in libjingle. But as part of project Piranha plant we want to make sure local MediaStreamVideoTracks do not depend on libjingle and that the implementation is on par with what libjingle supports.

This cl creates a new wrapped media::VideoFrame with a changed view_rect when cropping is needed.
When the frame is provided to a PeerConnection via WebRtcVideoCapturerAdapter the frame is copied using
libyuv to a tightly packed frame.

Note that libyuv is already used in libjingle from the render process and is used by Chrome in the browser process.

BUG=334241, 349450

TBR Jam for content_tests.gypi change.

R=joi@chromium.org, mflodman@chromium.org, tommi@chromium.org
TBR=jam

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255573 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 255573
Run JSON schema tests in components_unittests on iOS.

components_unittests now copies test data files as needed on iOS, and thus
these tests (which use test data files) can now be run on iOS.

R=droger@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255574 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 255574