Remove media::VideoFrame from media::VideoCaptureDevice::Client interface

The VideoCaptureDevice::Client interface will have to return buffers that are not
wrapped in media::VideoFrame objects, for upcoming compatibility with capturing
to texture mailboxes.  Implement this by making the ReserveForProducer() entry
point return a new Client::Buffer object that caches the memory and size of the
reservation.  The lifetime of the reservation is managed by the lifetime of the
Buffer object, not by the media::VideoFrame that we previously returned.

Pursuant to this, VideoCaptureBufferPool is changed to remove entry points that
return pre-constructed media::VideoFrame objects.  The responsibility for
managing the rotation/letterboxing state of buffers is also moved out of
VideoCaptureBufferPool into its user, VideoCaptureController.

Also: media::VideoFrame::WrapExternalSharedMemory() is renamed to
media::VideoFrame::WrapExternalPackedMemory(), as not all users will expect to
wrap shared memory.  media::VideoFrame::PlaneAllocationSize() is added to
facilitate querying the planar size of just one plane of a packed allocation.

BUG=269312
TEST=local build, run apprtc on CrOS snow, unittests and apprtc on desktop Linux

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@236279 0039d316-1c4b-4281-b951-d872f2087c98
[Android] Send minidump service intent as root.

Also improve exception message.

BUG=None
NOTRY=True

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

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